snakeskin
Advanced tools
Comparing version 3.2.5 to 3.3.0
{ | ||
"name": "Snakeskin", | ||
"main": "build/snakeskin.js", | ||
"version": "3.2.5", | ||
"version": "3.3.0", | ||
"homepage": "https://github.com/kobezzza/Snakeskin", | ||
@@ -6,0 +6,0 @@ "authors": [ |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
if (!Array.isArray) { | ||
@@ -37,14 +32,9 @@ var toString = Object.prototype.toString; | ||
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** @namespace */ | ||
var Snakeskin = { | ||
/** | ||
* Версия движка | ||
* Версия Snakeskin | ||
* @type {!Array} | ||
*/ | ||
VERSION: [3, 2, 5], | ||
VERSION: [3, 3, 0], | ||
@@ -77,9 +67,4 @@ /** | ||
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** | ||
* Импортировать свойства объекта в пространство имён Snakeskin.Filters | ||
* Импортировать свойства заданного объекта в пространство имён Snakeskin.Filters | ||
* | ||
@@ -86,0 +71,0 @@ * @param {!Object} filters - исходный объект |
@@ -1,1 +0,1 @@ | ||
var __NEJS_THIS__=this;if(!Array.isArray){var toString=Object.prototype.toString;Array.isArray=function(a){return"[object Array]"===toString.call(a)}}String.prototype.trim||(String.prototype.trim=function(){for(var a=this.replace(/^\s\s*/,""),b=a.length,c=/\s/;c.test(a.charAt(--b)););return a.substring(0,b+1)});var __NEJS_THIS__=this,Snakeskin={VERSION:[3,2,5],Directions:{},Filters:{},Vars:{},cache:{}};!function(a){Snakeskin.importFilters=function(a,b){var c=Snakeskin.Filters;if(b)for(var d=b.split("."),e=0;e<d.length;e++)c[d[e]]||(c[d[e]]={}),c=c[d[e]];for(var f in a)a.hasOwnProperty(f)&&(c[f]=a[f])};var b={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},c=/[&<>"'\/]/g,d=function(a){return b[a]};Snakeskin.Filters.html=function(a){return(a+"").replace(c,d)},Snakeskin.Filters.undef=function(a){return void 0!==a?a:""};var e={"&":"&","<":"<",">":">",""":'"',"'":"'","/":"/"},f=/&|<|>|"|'|//g,g=function(a){return e[a]};Snakeskin.Filters.uhtml=function(a){return(a+"").replace(f,g)};var h=/<\/?[^>]+>/g;Snakeskin.Filters.stripTags=function(a){return(a+"").replace(h,"")};var i=/%5B/g,j=/%5D/g;Snakeskin.Filters.uri=function(a){return encodeURI(a+"").replace(i,"[").replace(j,"]")},Snakeskin.Filters.upper=function(a){return(a+"").toUpperCase()},Snakeskin.Filters.ucfirst=function(a){return a+="",a.charAt(0).toUpperCase()+a.substring(1)},Snakeskin.Filters.lower=function(a){return(a+"").toLowerCase()},Snakeskin.Filters.lcfirst=function(a){return a+="",a.charAt(0).toLowerCase()+a.substring(1)},Snakeskin.Filters.trim=function(a){return(a+"").trim()};var k=/\s{2,}/g;Snakeskin.Filters.collapse=function(a){return(a+"").replace(k," ").trim()},Snakeskin.Filters.truncate=function(a,b,c){if(a+="",!a||a.length<=b)return a;for(var d,e=a.substring(0,b-1),f=e.length;f--&&c;)if(" "===e.charAt(f))d=f;else if(void 0!==d)break;return(void 0!==d?e.substring(0,d):e)+"…"},Snakeskin.Filters.repeat=function(a,b){return new Array(b+1||3).join(a)},Snakeskin.Filters.remove=function(a,b){return(a+"").replace(b,"")},Snakeskin.Filters.replace=function(a,b,c){return(a+"").replace(b,c)},Snakeskin.Filters.json=function(a){return"object"==typeof a?JSON.stringify(a):a+""},a&&(module.exports=Snakeskin)}("undefined"==typeof window); | ||
var __NEJS_THIS__=this;if(!Array.isArray){var toString=Object.prototype.toString;Array.isArray=function(a){return"[object Array]"===toString.call(a)}}String.prototype.trim||(String.prototype.trim=function(){for(var a=this.replace(/^\s\s*/,""),b=a.length,c=/\s/;c.test(a.charAt(--b)););return a.substring(0,b+1)});var __NEJS_THIS__=this,Snakeskin={VERSION:[3,3,0],Directions:{},Filters:{},Vars:{},cache:{}};!function(a){Snakeskin.importFilters=function(a,b){var c=Snakeskin.Filters;if(b)for(var d=b.split("."),e=0;e<d.length;e++)c[d[e]]||(c[d[e]]={}),c=c[d[e]];for(var f in a)a.hasOwnProperty(f)&&(c[f]=a[f])};var b={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},c=/[&<>"'\/]/g,d=function(a){return b[a]};Snakeskin.Filters.html=function(a){return(a+"").replace(c,d)},Snakeskin.Filters.undef=function(a){return void 0!==a?a:""};var e={"&":"&","<":"<",">":">",""":'"',"'":"'","/":"/"},f=/&|<|>|"|'|//g,g=function(a){return e[a]};Snakeskin.Filters.uhtml=function(a){return(a+"").replace(f,g)};var h=/<\/?[^>]+>/g;Snakeskin.Filters.stripTags=function(a){return(a+"").replace(h,"")};var i=/%5B/g,j=/%5D/g;Snakeskin.Filters.uri=function(a){return encodeURI(a+"").replace(i,"[").replace(j,"]")},Snakeskin.Filters.upper=function(a){return(a+"").toUpperCase()},Snakeskin.Filters.ucfirst=function(a){return a+="",a.charAt(0).toUpperCase()+a.substring(1)},Snakeskin.Filters.lower=function(a){return(a+"").toLowerCase()},Snakeskin.Filters.lcfirst=function(a){return a+="",a.charAt(0).toLowerCase()+a.substring(1)},Snakeskin.Filters.trim=function(a){return(a+"").trim()};var k=/\s{2,}/g;Snakeskin.Filters.collapse=function(a){return(a+"").replace(k," ").trim()},Snakeskin.Filters.truncate=function(a,b,c){if(a+="",!a||a.length<=b)return a;for(var d,e=a.substring(0,b-1),f=e.length;f--&&c;)if(" "===e.charAt(f))d=f;else if(void 0!==d)break;return(void 0!==d?e.substring(0,d):e)+"…"},Snakeskin.Filters.repeat=function(a,b){return new Array(b+1||3).join(a)},Snakeskin.Filters.remove=function(a,b){return(a+"").replace(b,"")},Snakeskin.Filters.replace=function(a,b,c){return(a+"").replace(b,c)},Snakeskin.Filters.json=function(a){return"object"==typeof a?JSON.stringify(a):a+""},a&&(module.exports=Snakeskin)}("undefined"==typeof window); |
@@ -1,2 +0,2 @@ | ||
var __NEJS_THIS__=this;if(!Array.isArray){var toString=Object.prototype.toString;Array.isArray=function(a){return"[object Array]"===toString.call(a)}}String.prototype.trim||(String.prototype.trim=function(){for(var a=this.replace(/^\s\s*/,""),b=a.length,c=/\s/;c.test(a.charAt(--b)););return a.substring(0,b+1)});var __NEJS_THIS__=this,Snakeskin={VERSION:[3,2,5],Directions:{},Filters:{},Vars:{},cache:{}};!function(a){function b(a,b){var c=this;for(var d in this)this[d]&&this[d].init&&(this[d]=this[d].init());this.commonJS=b.commonJS,this.scope=b.scope||[],this.proto=b.proto,this.info=b.info,this.name=null,this.canWrite=!0,this.space=!1,this.strongSpace=!1,this.superStrongSpace=!1,this.ignoreRgxp=null,this.text=!1,this.i=-1,this.blockStructure=null,this.blockTable=null,this.structure={name:"root",parent:null,vars:b.vars||{},childs:[]},this.inlineDir=null,this.strongDir=null,this.returnStrongDir=null,this.quotContent=[],this.cDataContent=[],this.source=String(a).replace(/{cdata}([\s\S]*?){(?:\/cdata|end cdata)}/gm,function(a,b){return c.cDataContent.push(b),"{__appendLine__ "+(b.match(/[\n\r]/g)||"").length+"}__SNAKESKIN_CDATA__"+(c.cDataContent.length-1)+"_"}),this.res=(b.proto?"":"/* This code is generated automatically, don't alter it. */")+(b.commonJS?'var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {':"")}Snakeskin.importFilters=function(a,b){var c=Snakeskin.Filters;if(b)for(var d=b.split("."),e=0;e<d.length;e++)c[d[e]]||(c[d[e]]={}),c=c[d[e]];for(var f in a)a.hasOwnProperty(f)&&(c[f]=a[f])};var c={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},d=/[&<>"'\/]/g,e=function(a){return c[a]};Snakeskin.Filters.html=function(a){return(a+"").replace(d,e)},Snakeskin.Filters.undef=function(a){return void 0!==a?a:""};var f={"&":"&","<":"<",">":">",""":'"',"'":"'","/":"/"},g=/&|<|>|"|'|//g,h=function(a){return f[a]};Snakeskin.Filters.uhtml=function(a){return(a+"").replace(g,h)};var i=/<\/?[^>]+>/g;Snakeskin.Filters.stripTags=function(a){return(a+"").replace(i,"")};var j=/%5B/g,k=/%5D/g;Snakeskin.Filters.uri=function(a){return encodeURI(a+"").replace(j,"[").replace(k,"]")},Snakeskin.Filters.upper=function(a){return(a+"").toUpperCase()},Snakeskin.Filters.ucfirst=function(a){return a+="",a.charAt(0).toUpperCase()+a.substring(1)},Snakeskin.Filters.lower=function(a){return(a+"").toLowerCase()},Snakeskin.Filters.lcfirst=function(a){return a+="",a.charAt(0).toLowerCase()+a.substring(1)},Snakeskin.Filters.trim=function(a){return(a+"").trim()};var l=/\s{2,}/g;Snakeskin.Filters.collapse=function(a){return(a+"").replace(l," ").trim()},Snakeskin.Filters.truncate=function(a,b,c){if(a+="",!a||a.length<=b)return a;for(var d,e=a.substring(0,b-1),f=e.length;f--&&c;)if(" "===e.charAt(f))d=f;else if(void 0!==d)break;return(void 0!==d?e.substring(0,d):e)+"…"},Snakeskin.Filters.repeat=function(a,b){return new Array(b+1||3).join(a)},Snakeskin.Filters.remove=function(a,b){return(a+"").replace(b,"")},Snakeskin.Filters.replace=function(a,b,c){return(a+"").replace(b,c)},Snakeskin.Filters.json=function(a){return"object"==typeof a?JSON.stringify(a):a+""};var m={"true":{},"false":{}},n={"true":{},"false":{}},o={},p={},q={},r={},s={},t={},u={},v={},w={},x={},y={},z={},A={},B={},C={},D={__SNAKESKIN_RESULT__:!0,__SNAKESKIN_CDATA__:!0,__I_PROTO__:!0,__I__:!0,__TMP__:!0,__TMP_LENGTH__:!0,__KEY__:!0,$_:!0},E={'"':!0,"'":!0,"/":!0},F={"-":!0,"+":!0,"*":!0,",":!0,";":!0,"=":!0,"|":!0,"&":!0,"?":!0,":":!0,"(":!0,"{":!0};Snakeskin.DirObj=b,b.prototype.save=function(a){return this.tplName&&C[this.tplName]===!1?!1:(this.res+=a,!0)},b.prototype.isSimpleOutput=function(){if("end"!==this.name&&this.strongDir)throw this.error('Directive "'+this.structure.name+'" can not be used with a "'+this.strongDir+'"');return!(this.parentTplName||this.protoStart||this.proto&&this.proto.parentTplName)},b.prototype.isAdvTest=function(){return!(this.proto||this.protoLink||(!this.parentTplName||this.hasParentBlock({block:!0,proto:!0}))&&this.parentTplName)},b.prototype.initTemplateCache=function(a){return r[a]={},q[a]={},s[a]=0,t[a]={},u[a]=0,v[a]={},this},b.prototype.startDir=function(a,b,c){var d=this;"undefined"==typeof c&&(c={}),a=a||this.name,b=b||{},this.inlineDir=!1;var e=c||{},f=this.structure;if(f.vars){var g=Object(f.vars);for(var h in g)g.hasOwnProperty(h)&&(e[h]=g[h])}var i={name:a,parent:f,childs:[],vars:e,params:b,sys:!!A[a]};if(f.childs.push(i),this.structure=i,this.blockStructure&&("block"===a||"proto"===a)){var j={name:a,parent:this.blockStructure,childs:[],params:b},k=a+"_"+b.name;this.blockTable[k]===!0&&(j.drop=!0),this.blockTable[k]=j;var l=function(a){for(var b=0;b<a.length;b++){var c=a[b],e=c.name+"_"+c.params.name;d.blockTable[e]?d.blockTable[e].drop=!0:d.blockTable[e]=!0,c.childs&&l(c.childs)}};this.parentTplName&&p[this.parentTplName][k]&&p[this.parentTplName][k].childs&&l(p[this.parentTplName][k].childs),this.blockStructure.childs.push(j),this.blockStructure=j}return this},b.prototype.startInlineDir=function(a,b){"undefined"==typeof b&&(b={}),a=a||this.name,this.inlineDir=!0;var c={name:a,parent:this.structure,params:b};if(this.structure.childs.push(c),this.structure=c,this.blockStructure&&"const"===a){var d={name:a,parent:this.blockStructure,params:b};this.blockTable[a+"_"+b.name]=d,this.blockStructure.childs.push(d),this.blockStructure=d}return this},b.prototype.endDir=function(){var a=this.structure.name;return this.structure=this.structure.parent,!this.blockStructure||"block"!==a&&"proto"!==a||(this.blockStructure=this.blockStructure.parent),this},b.prototype.has=function(a,b){for(var c=b||this.structure;;){if(a[c.name]||c.name===a)return!0;if(!c.parent||"root"===c.parent.name)return!1;c=c.parent}},b.prototype.hasParent=function(a){return this.structure.parent?this.has(a,this.structure.parent):!1},b.prototype.hasParentBlock=function(a){return this.blockStructure&&this.blockStructure.parent?this.has(a,this.blockStructure.parent):!1},b.prototype.declVar=function(a,b){if("undefined"==typeof b&&(b=!1),!b&&(t[this.tplName][a]||v[this.tplName][a]))throw this.error('Variable "'+a+'" is already defined as constant');for(var c=this.structure;!c.vars;)c=this.structure.parent;var d="__"+a+"_"+(this.proto?this.proto.name:"")+"_"+c.name+"_"+this.i;return c.vars[a]={value:d,useWith:!!this.scope.length},this.varCache[this.tplName][a]=!0,d},b.prototype.multiDeclVar=function(a,b){"undefined"==typeof b&&(b=!0);for(var c=0,d="",e="var ",f={"(":!0,"[":!0,"{":!0},g={")":!0,"]":!0,"}":!0},h=a.length,i=0;h>i;i++){var j=a.charAt(i);if(f[j]?c++:g[j]&&c--,","!==j&&i!==h-1||c)d+=j;else{i===h-1&&(d+=j);var k=d.split("="),l=this.declVar(k[0].trim());k[0]=l+" ",e+=this.prepareOutput(k.join("=")+",",!0,null,!0),d=""}}if(c)throw this.error("Invalid syntax");return e.slice(0,-1)+(b?";":"")};var G={VERSION:[1,0,8],isLocal:"undefined"==typeof window?!!global.EscaperIsLocal:!1};"undefined"!=typeof window||G.isLocal||(module.exports=exports=G),function(){var a={'"':!0,"'":!0,"/":!0},b={g:!0,m:!0,i:!0},c={"-":!0,"+":!0,"*":!0,",":!0,";":!0,"=":!0,"|":!0,"&":!0,"?":!0,":":!0,"(":!0,"{":!0},d={};G.quotContent=[],G.replace=function(e,f,g,h){f=!!f;var i=e,j=g||this.quotContent;if(j===this.quotContent&&d[i]&&d[i][f])return d[i][f];for(var k,l,m,n,o=!0,p=!1,q=0,r=!1,s=!1,t=0;t<e.length;t++){var u=e.charAt(t),v=e.charAt(t-1),w=e.charAt(t+1);if(l)("\n"===w&&"//"===l||"/"===u&&"*"===v&&"/*"===l)&&(l=!1,f&&(m=e.substring(q,t+1),n="__ESCAPER_QUOT__"+j.length+"_",j.push(m),e=e.substring(0,q)+n+e.substring(t+1),t+=n.length-m.length));else{if(!k){if("/"===u){switch(w){case"*":l="/*";break;case"/":l="//"}if(l){q=t;continue}}c[u]?o=!0:/[^\s\/]/.test(u)&&(o=!1);var x=!1;h&&("|"===u&&/[a-z]/i.test(w)?(s=!0,o=!1,x=!0):s&&/[\s]/.test(u)&&(s=!1,o=!0,x=!0)),x||(c[u]?o=!0:/[^\s\/]/.test(u)&&(o=!1))}if("/"===k&&!p)switch(u){case"[":r=!0;break;case"]":r=!1}if(a[u]&&("/"===u?o:!0)&&!k)k=u,q=t;else if(k&&("\\"===u||p))p=!p;else if(a[u]&&k===u&&!p&&("/"===k?!r:!0)){if("/"===u)for(var y in b)b.hasOwnProperty(y)&&b[e.charAt(t+1)]&&t++;k=!1,m=e.substring(q,t+1),n="__ESCAPER_QUOT__"+j.length+"_",j.push(m),e=e.substring(0,q)+n+e.substring(t+1),t+=n.length-m.length}}}return j===this.quotContent&&(d[i]=d[i]||{},d[i][f]=e),e},G.paste=function(a,b){var c=b||this.quotContent;return a.replace(/__ESCAPER_QUOT__(\d+)_/gm,function(a,b){return c[b]})}}();b.prototype.applyDefEscape=function(a){return a.replace(/\\/gm,"\\\\").replace(/'/gm,"\\'")},b.prototype.escapeNextLine=function(a){return a.replace(/\n/gm,"\\n").replace(/\v/gm,"\\v").replace(/\r/gm,"\\r")},"undefined"==typeof window&&(global.EscaperIsLocal=!0),b.prototype.replaceDangerBlocks=function(a){return G.replace(a,!0,this.quotContent,!0)},b.prototype.pasteDangerBlocks=function(a){return G.paste(a,this.quotContent)};b.prototype.getExtStr=function(a){function b(a,b){return a.val>b.val?1:a.val===b.val?0:-1}for(var c,d=x[a],e=o[d],f=0,g=[],h=p[a],i=0;6>i;i++){var j,k,l;0===i?(c="block_",j=q[a],k=q[d]):2===i?(c="const_",j=t[a],k=t[d],f=u[d],l=null):4===i&&(c="proto_",j=r[a],k=r[d],f=s[d],l=null);var m;for(var n in j)if(j.hasOwnProperty(n)){var v=0,w=j[n],y=!h[c+n].drop&&k[n];4===i&&y&&w.argsDecl!==y.argsDecl&&(w.from-=w.length,y.from-=y.length);var z=o[a].substring(w.from,w.to);y&&(m=z.length-o[d].substring(y.from,y.to).length);var A=y?y.from:f;g.sort(b);for(var B=0;B<g.length&&g[B].val<A;B++)v+=g[B].adv;y&&i%2===0?(i>1&&(l=y.from+v+z.length,f+=m,l>f&&(f=l+(4===i?5:1))),e=e.substring(0,y.from+v)+z+e.substring(y.to+v),g.push({val:y.from,adv:m})):y||(1===i?e+="{block "+n+"}"+z+"{end}":(3===i||5===i)&&(null===l&&(l=f,f+=v),z=3===i?"{"+z+"}":"{proto "+n+w.argsDecl+"}"+z+"{end}",e=e.substring(0,f)+z+e.substring(f),g.push({val:l,adv:z.length}),f+=z.length))}}return e};b.prototype.genErrorAdvInfo=function(a){"undefined"==typeof a&&(a=this.info);var b="";if(!a)return b;for(var c in a)a.hasOwnProperty(c)&&(b+=a[c].innerHTML?c+": (class: "+(a[c].className||"undefined")+", id: "+(a[c].id||"undefined")+"), ":c+": "+a[c]+", ");return b.replace(/, $/,"")},b.prototype.error=function(a){var b=new Error(a+", "+this.genErrorAdvInfo());return b.name="Snakeskin Error",b};Snakeskin.compile=function(c,d,e,f){"undefined"==typeof f&&(f={});var g=d&&!("boolean"==typeof d||d instanceof Boolean==!0),h=!!(g?d.commonJS||d.context:d),i=g?d.context||{}:{};e=e||{},e.line=e.line||1;var j=c.innerHTML;j&&(e.node=c,j=j.replace(/\s*?\n/,""));var k=j||c;if(a&&h&&n[h][k]){var l=n[h][k];for(var o in l)l.hasOwnProperty(o)&&(i[o]=l[o]);return m[h][k]}if(m[h][k])return m[h][k];for(var p,q,r,s=new b(String(k),{info:e,commonJS:h,proto:f.proto,scope:f.scope,vars:f.vars}),t=!1,u="",v=0,w=!1,x=!1,z=!1,A=!1,B=!1,C=!1,D=/[\r\n\v]/,G=/\s/,H=/[^\s\/]/,I=/[a-z]/i,J=/[^\s]+/m,K=/[^\s]+\s*/m;++s.i<s.source.length;){var L=s.source,M=L.charAt(s.i),N=M;if(D.test(M)&&e.line++,G.test(M)){if(t)M=p?s.escapeNextLine(M):" ";else if(s.structure.parent){if(s.space||s.strongSpace||s.superStrongSpace)continue;M=s.ignoreRgxp&&s.ignoreRgxp.test(M)?"":" ",M&&(s.space=!0)}else if(!z&&!A)continue}else"{"===M||t||(r=s.space),s.space=!1;if(!p){var O=M+L.charAt(s.i+1),P=O+L.charAt(s.i+2);if(!x)if("/"===M){if("///"===P)z=P,s.i+=2;else if("/*"===O)"/**"!==P||s.structure.parent?(z=O,s.i++):(w=!0,A=!0);else if("*"===L.charAt(s.i-1)){if("/*"===z){z=!1;continue}w&&(w=!1)}}else if(D.test(N)&&"///"===z){z=!1;continue}if(("\\"===M||x)&&(x=!x),z||x)continue;if(!A)if("{"===M){if(!t){q=!0,t=!0;continue}v++}else if(!("}"!==M||v&&v--)){t=!1;var Q=u.length;if(u=s.replaceDangerBlocks(u).trim(),!u)throw s.error("Directive is not defined");var R=u.charAt(0),S=u.substr(0,2);y[S]?u=y[S](u):y[R]&&(u=y[R](u));var T=J.exec(u)[0];T=Snakeskin.Directions[T]?T:"const";var U=Snakeskin.Directions[T](s,"const"!==T?u.replace(K,""):u,Q);!s.text&&r&&(s.space=!0),s.text=!1,U===!1&&(t=!1,w=!1),u="";continue}}if(t){if(w&&s.isSimpleOutput()&&(s.save("';"),w=!1),!p){var V=!1;"|"===M&&I.test(L.charAt(s.i+1))?(C=!0,q=!1,V=!0):C&&G.test(M)&&(C=!1,q=!0,V=!0),V||(F[M]?q=!0:H.test(M)&&(q=!1))}E[M]&&("/"===M?q&&u:!0)&&!p?p=M:p&&("\\"===M||B)?B=!B:E[M]&&p===M&&!B&&(p=!1),u+=M}else{if(s.structure.parent)s.startInlineDir("text"),s.isSimpleOutput()&&(w||(s.save("__SNAKESKIN_RESULT__ += '"),w=!0),s.save(s.applyDefEscape(M))),s.inlineDir=null,s.structure=s.structure.parent;else{if(!A)throw s.error("Text can't be used in the global space (except jsDoc)");s.save(s.applyDefEscape(M))}w||(A=!1)}}if(s.structure.parent)throw s.error("Missing closing or opening tag in the template");if(s.res=s.pasteDangerBlocks(s.res).replace(/__SNAKESKIN_CDATA__(\d+)_/g,function(a,b){return s.escapeNextLine(s.cDataContent[b]).replace(/'/gm,"'")}).replace(/__SNAKESKIN_RESULT__ \+= '';/g,""),s.res+=s.proto?"":"/* Snakeskin templating system. Generated at: "+(new Date).toString()+". */",s.res+=h?"}":"",s.proto)return s.res;for(var W in s.preProtos)if(s.preProtos.hasOwnProperty(W))throw s.error('Template "'+W+'" is not defined');return a?h?(new Function("exports","require",s.res)(i,require),i.init(Snakeskin),n[h][k]=i):global.eval(s.res):new Function(s.res)(),m[h][k]=s.res,a||h||setTimeout(function(){try{var a=new Blob([s.res],{type:"application/javascript"}),b=document.createElement("script");b.src=URL.createObjectURL(a),document.head.appendChild(b)}catch(c){}},50),s.res};Snakeskin.addDirective=function(a,b,c,d){if(b=b||{},A[a]=!!b.sys,b.replacers){var e=b.replacers;for(var f in e)e.hasOwnProperty(f)&&(y[f]=e[f])}z[a]=b.strongDirs,Snakeskin.Directions[a]=function(d,e,f){switch(b.placement){case"template":if(!d.structure.parent)throw d.error('Directive "'+a+'" can only be used within a "template" or "proto"');break;case"global":if(d.structure.parent)throw d.error('Directive "'+a+'" can be used only within the global space');break;default:if(b.placement&&d.hasParent(b.placement))throw d.error('Directive "'+a+'" can be used only within a "'+b.placement+'"')}if(b.notEmpty&&!e)throw this.error("Invalid syntax");if(d.name=a,d.strongDir&&z[d.strongDir][a]&&(d.returnStrongDir={child:a,dir:d.strongDir},d.strongDir=null,d.strongSpace=!1),b.text&&(d.text=!0),c.call(d,e,f),d.inlineDir===!0){var g=d.structure.name;d.inlineDir=null,d.structure=d.structure.parent,d.blockStructure&&"const"===g&&(d.blockStructure=d.blockStructure.parent)}z[a]&&(d.strongDir=a,d.strongSpace=!0)},Snakeskin.Directions[a+"End"]=d};var H={"+":!0,"++":!0,"-":!0,"--":!0,"~":!0,"~~":!0,"!":!0,"!!":!0,arguments:!0,"break":!0,"case":!0,"catch":!0,"continue":!0,"delete":!0,"do":!0,"else":!0,"false":!0,finnaly:!0,"for":!0,"function":!0,"if":!0,"in":!0,"instanceof":!0,"new":!0,"null":!0,"return":!0,"switch":!0,"this":!0,"throw":!0,"true":!0,"try":!0,"typeof":!0,"var":!0,"const":!0,let:!0,"void":!0,"while":!0,"with":!0,"class":!0,"debugger":!0,"interface":!0},I={"new":!0},J={"var":!0,"const":!0,let:!0};b.prototype.replaceTplVars=function(a){a=this.pasteDangerBlocks(a);for(var b,c,d=0,e="",f=!1,g=!0,h=!1,i=function(a){return a.replace(/\\/gm,"\\\\").replace(/('|")/gm,"\\$1")},j=/[\r\n\v]/,k=/[^\s\/]/,l="",m=0;m<a.length;m++){var n=a.charAt(m),o=n+a.charAt(m+1);if(d||"${"!==o){if(d||(l+=i(n)),d){if(("\\"===n||f)&&(f=!f),!f){var p=o+a.charAt(m+2);if("/"===n){if("///"===p)b="///",m+=2;else if("/*"===o)b="/*",m++;else if("*"===a.charAt(m-1)&&"/*"===b){b=!1;continue}}else j.test(n)&&"///"===b&&(b=!1)}if(b)continue;c||(F[n]?g=!0:k.test(n)&&(g=!1)),E[n]&&("/"===n?g:!0)&&!c?c=n:c&&("\\"===n||h)?h=!h:E[n]&&c===n&&!h&&(c=!1),c||("{"===n?d++:"}"===n&&d--),d?e+=n:(f=!1,l+="' + "+this.prepareOutput(this.replaceDangerBlocks(e))+" + '")}}else d++,e="",m++}return l},b.prototype.isSyOL=function(a,b,c){for(var d,e=/\S/,f=b;f--;){var g=a.charAt(f);if(e.test(g)){d="?"===g;break}}if(!d)for(var h=c;h<a.length;h++){var i=a.charAt(h);if(e.test(i))return":"===i}return!1},b.prototype.isNextAssign=function(a,b){for(var c=/\S/,d=b;d<a.length;d++){var e=a.charAt(d);if(c.test(e))return"="===e&&"="!==a.charAt(d+1)}return!1},b.prototype.getWord=function(a,b){for(var c="",d="",e={"(":!0,"[":!0},f={")":!0,"]":!0},g=0,h=0,i=null,j=0,k=0,l=/[@#$+\-~!\w\[\]().]/,m=b;m<a.length;m++,k++){var n=a.charAt(m);if(!(g||l.test(n)||" "===n&&I[c]))break;if(null!==i&&(g>1||1===g&&!f[n])&&(i+=n),e[n])null===i&&(h=k+1,i=""),g++;else if(f[n]){if(!g)break;g--,g||(d=d?d.substring(0,h+j)+(i&&this.prepareOutput(i,!0))+d.substring(k+j+i.length):c.substring(0,h)+(i&&this.prepareOutput(i,!0))+c.substring(k),j=d.length-c.length,i=null)}c+=n,d&&(d+=n)}return{word:c,finalWord:d||c}},b.prototype.prepareOutput=function(a,b,c,d){function e(a){if(K.test(a)){var b=L.exec(a);b[1]=b[1].replace(M,N),a=b.slice(1).join("")}else a=a.replace(M,N);return a}function f(a){if(K.test(a)){var b=L.exec(a);a=b[1]}var c=M.exec(a);return c?c[0]:null}var g=a,h=0,i=0,j=[],k=!1,l=!1,m=[],n=[],o=!d,p=0,q=this.scope,r=!!q.length,s=0,u=0,w=0,x=!1,y=this.structure.childs?this.structure.vars:this.structure.parent.vars,z=/([$\w]*)(.*)/,A=/^__ESCAPER_QUOT__\d+_/,B=/Snakeskin\.Filters/,C=/[@#$+\-~!\w]/i,D=/[^@#$\w\[\].]/,E=/[!$a-z_]/i,F=/[0-9]/,G=/#(?:\d+|)/,I=/#(\d+)/,K=/\[|\./,L=/([^.[]+)(.*)/,M=/[^-+!]+/,N=function(a){return y[a]?y[a].value:a};if(!a)throw this.error("Invalid syntax");for(var O=a.length,P=0;O>P;P++){var Q,R,S=a.charAt(P),T=a.charAt(P+1),U=a.charAt(P+2);if(!R){if("("===S&&(k?i++:(j.unshift([P+u]),h++)),o&&!p&&C.test(S)){var V,W,X=this.getWord(a,P),Y=X.word,Z=X.finalWord,$=u+s,_=!(H[Y]||i||B.test(Y)||Q||!isNaN(Number(Y))||A.test(Y)||this.isSyOL(a,P,P+Y.length));if(F.test(S))V=Z;else if("@"===S&&_)r?(V=Z.substring("@"===T?2:1),W=z.exec(V),V="@"===T?"Snakeskin.Vars['"+W[1]+"']"+W[2]:e(V)):(W=z.exec(Z.substring("@"===T?2:1)),V="Snakeskin.Vars['"+W[1]+"']"+W[2]);else{var ab=Z.replace(G,"");if(_&&r){var bb=y[f(ab)];if(bb&&bb.useWith)V=e(ab);else{var cb=null;"#"===S&&(cb=I.exec(Z),cb=cb?cb[1]:1,cb++);var db=q[0];q.push(ab);var eb=cb=cb?q.length-cb:cb,fb=q.length;if(null!==cb&&0>=cb)V=e(ab);else{V=e(db);for(var gb=1;fb>gb;gb++)cb=cb?cb-1:cb,null===cb||cb>0?V+="."+q[gb]:gb===fb-1&&(V=(eb>0?V+".":"")+q[gb])}q.pop()}}else V=_?e(ab):ab}if(_&&this.isNextAssign(a,P+Y.length)&&(t[this.tplName][V]||v[this.tplName][V]))throw this.error('Constant "'+V+'" is already defined');if(J[Z]?p=2:!_||b&&!c||(V="Snakeskin.Filters.undef("+V+")"),u+=V.length-Y.length,o=!1,k){var hb=m.length-1;m[hb]+=V,n[hb]+=Y,w+=V.length-Y.length}else g=g.substring(0,P+$)+V+g.substring(P+Y.length+$);P+=Y.length-2,R=1;continue}if(D.test(S)&&(o=!0,p>0&&p--),k){if(")"!==S||i){var ib=m.length-1;m[ib]+=S,n[ib]+=S}}else if(")"===S){if("|"!==T||!E.test(U)){h&&h--,j.shift();continue}l=!0}}if(P===O-1&&h&&")"!==S)throw this.error("Missing closing or opening parenthesis in the template");if(k&&!i&&(")"===S||P===O-1)){for(var jb=j[0],kb=u-w+s,lb=g.substring(jb[0]+(h?s:0),jb[1]+kb),mb=[],nb=0;nb<m.length;nb++)"!html"!==m[nb]?mb.push(m[nb]):h||(x=!0);m=mb;for(var ob=lb,pb=0;pb<m.length;pb++){for(var qb=m[pb].split(" "),rb=qb.slice(1).join("").trim(),sb=qb.shift().split("."),tb="",ub=0;ub<sb.length;ub++)tb+="['"+sb[ub]+"']";ob="($_ = Snakeskin.Filters"+tb+(l||!h?"(":"")+ob+(rb?","+rb:"")+(l||!h?")":"")+")"}var vb=n.join().length+1;g=h?g.substring(0,jb[0]+s)+ob+g.substring(jb[1]+kb+vb):ob,j.shift(),m=[],n=[],k=!1,h&&(h--,l=!1),u+=ob.length-lb.length-vb,h||(s+=u-w,u=0,w=0)}if(")"===S&&i&&!R&&(i--,!i)){var wb=m.length-1,xb=m[wb];m[wb]=this.prepareOutput(xb,!0,null,!0),u+=m[wb].length-xb.length,w+=m[wb].length-xb.length,P===O-1&&(P--,R=1)}Q="|"===S,R&&R--,"|"===T&&E.test(U)&&(o=!1,k||(h?j[0].push(P+1):j.push([0,P+1])),k=!0,i||(m.push(U),n.push(U),P+=2))}return(x||b?"":"Snakeskin.Filters.html(")+g+(x||b?"":")")};Snakeskin.addDirective("setBEM",{placement:"global",notEmpty:!0},function(a){this.startInlineDir();var b=a.match(/(.*?),\s+(.*)/);try{B[b[1]]=new Function("return {"+this.pasteDangerBlocks(b[2])+"}")()}catch(c){throw this.error("Invalid syntax")}}),Snakeskin.addDirective("bem",{placement:"template",notEmpty:!0,text:!0},function(a){if(this.startDir(null,{tag:/^\(/.test(a)?/\((.*?)\)/.exec(a)[1]:null}),this.isSimpleOutput()){var b=this.structure.params;a=b.tag?a.replace(/^.*?\)(.*)/,"$1"):a;var c=a.trim().split(","),d=c[0];b.original=B[d]&&B[d].tag,c[0]+="'",a=c.join(","),this.save("__SNAKESKIN_RESULT__ += '<"+(b.tag||b.original||"div")+' class="i-block" data-params="{name: \\\''+this.replaceTplVars(a.replace(/\s+/g," "))+"}\">';")}},function(){if(this.isSimpleOutput()){var a=this.structure.params;this.save("__SNAKESKIN_RESULT__ += '</"+(a.tag||a.original||"div")+">';")}});Snakeskin.addDirective("block",{placement:"template",sys:!0,notEmpty:!0},function(a){if(this.startDir(null,{name:a}),this.isAdvTest()){if(q[this.tplName][a])throw this.error('Block "'+a+'" is already defined');q[this.tplName][a]={from:this.i-this.startTemplateI+1}}},function(a,b){if(this.isAdvTest()){var c=q[this.tplName][this.structure.params.name];c.to=this.i-this.startTemplateI-b-1,c.content=this.source.substring(this.startTemplateI).substring(c.from,c.to)}});Snakeskin.addDirective("call",{placement:"template",notEmpty:!0,text:!0},function(a){this.startInlineDir(),this.isSimpleOutput()&&this.save("__SNAKESKIN_RESULT__ += "+this.prepareOutput(a,!0)+";")});Snakeskin.addDirective("const",null,function(a,b){var c=this.tplName,d=/^[@#$a-z_][$\w\[\].'"\s]*=[^=]/i,e=this.scope.length?d:/^[$a-z_][$\w\[\].'"\s]*=[^=]/i;if(e.test(a)){var f=a.split("=");if(!f[1]||!f[1].trim())throw this.error("Invalid syntax");var g=f[0].trim(),h=g.charAt(0);if("#"===h||"@"===h)throw this.error("Can't declare constant \""+g+'" with the context modifier');if(this.structure.parent){if(this.startInlineDir("const",{name:g}),this.isSimpleOutput()&&this.save(this.prepareOutput((/[.\[]/.test(g)?"":"var ")+a+";",!0)),this.isAdvTest()){if(t[c][g]?!t[c][g].tmp:v[c][g])throw this.error('Constant "'+g+'" is already defined');if(this.varCache[c][g])throw this.error('Constant "'+g+'" is already defined as variable');if(D[g])throw this.error("Can't declare constant \""+g+'", try another name');t[c][g]={from:this.i-this.startTemplateI-b,to:this.i-this.startTemplateI},u[c]=this.i-this.startTemplateI+1}}else this.startInlineDir("globalVar"),this.save("if (typeof Snakeskin !== 'undefined') { Snakeskin.Vars."+this.prepareOutput(a,!0,null,!0)+"; }")}else{if(!this.structure.parent)throw this.error('Directive "output" can only be used within a "template" or "proto"');if(this.startInlineDir("output"),this.isSimpleOutput()){if(this.text=!0,/^[@#$a-z_][$\w\[\].'"\s+-\/*><^]*=[^=]/.test(a))return void this.save(this.prepareOutput(a,!0)+";");this.save("__SNAKESKIN_RESULT__ += "+this.prepareOutput(a)+";")}}});Snakeskin.addDirective("for",{placement:"template",notEmpty:!0},function(a){if(this.startDir(),this.isSimpleOutput()){var b=a.split(";");if(3!==b.length)throw this.error("Invalid syntax");var c=/var /;this.save("for ("+(c.test(b[0])?this.multiDeclVar(b[0].replace(c,"")):this.prepareOutput(b[0],!0))+this.prepareOutput(b.slice(1).join(";"),!0)+") {")}}),Snakeskin.addDirective("while",{placement:"template",notEmpty:!0},function(a){"do"==this.structure.name?(this.isSimpleOutput()&&this.save("} while ("+this.prepareOutput(a,!0)+");"),Snakeskin.Directions.end(this)):(this.startDir(),this.isSimpleOutput()&&this.save("while ("+this.prepareOutput(a,!0)+") {"))}),Snakeskin.addDirective("repeat",{placement:"template",sys:!0},function(){this.startDir(),this.isSimpleOutput()&&this.save("do {")}),Snakeskin.addDirective("do",{placement:"template",sys:!0},function(){this.startDir(),this.isSimpleOutput()&&this.save("do {")}),Snakeskin.addDirective("until",{placement:"template",notEmpty:!0},function(a){if("repeat"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "repeat"');this.isSimpleOutput()&&this.save("} while ("+this.prepareOutput(a,!0)+");"),Snakeskin.Directions.end(this)}),Snakeskin.addDirective("break",{placement:"template"},function(){if(this.startInlineDir(),!this.hasParent({repeat:!0,"while":!0,"do":!0,forEach:!0,forIn:!0}))throw this.error('Directive "'+this.name+'" can only be used with a cycles');this.isSimpleOutput()&&(this.save("break;"),this.space=!0)}),Snakeskin.addDirective("continue",{placement:"template"},function(){if(this.startInlineDir(),!this.hasParent({repeat:!0,"while":!0,"do":!0,forEach:!0,forIn:!0}))throw this.error('Directive "'+this.name+'" can only be used with a cycles');this.isSimpleOutput()&&(this.save("continue;"),this.space=!0)});Snakeskin.addDirective("data",{placement:"template",notEmpty:!0,text:!0,replacers:{"=":function(a){return a.replace(/^=/,"data ")}}},function(a){this.startInlineDir(),this.isSimpleOutput()&&this.save("__SNAKESKIN_RESULT__ += '"+this.replaceTplVars(a)+"';")}),Snakeskin.addDirective("decl",{placement:"template",notEmpty:!0,text:!0,replacers:{"{":function(a){return a.replace(/^\{/,"decl ")}}},function(a){if(this.startInlineDir(),this.isSimpleOutput()){a=this.replaceTplVars(a);var b,c=/^\{+/.exec(a)||[""],d=/\}+$/.exec(a)||[""];try{b=new Array(d[0].length-c[0].length+1).join("{")}catch(e){throw this.error("Invalid syntax")}this.save("__SNAKESKIN_RESULT__ += '{"+b+a+"}';")}}),Snakeskin.addDirective("attr",{placement:"template",notEmpty:!0,text:!0},function(a){if(this.startInlineDir(),this.isSimpleOutput()){var b=a.match(/(.*?),\s+(.*)/);if(!b)throw this.error("Invalid syntax");b[1]="-"===b[1].charAt(0)?"'data-' + "+b[1].slice(1):b[1],b[2]=this.prepareOutput(b[2],!0),this.save("if ("+b[2]+") {__SNAKESKIN_RESULT__ += ' ' + "+b[1]+" + '=\"' + ("+b[2]+") + '\"';}")}});Snakeskin.addDirective("end",{replacers:{"/":function(a){return a.replace(/^\//,"end ")}}},function(a){var b=this.structure;if(!b.parent)throw this.error('Invalid call "end"');if(a&&a!==b.name)throw this.error("Invalid closing tag, expected: "+b.name+", declared: "+a);z[b.name]&&(this.strongDir=null,this.strongSpace=!1),this.returnStrongDir&&this.returnStrongDir.child===b.name&&(this.strongDir=this.returnStrongDir.dir,this.strongSpace=!0,this.returnStrongDir=null),Snakeskin.Directions[b.name+"End"]?Snakeskin.Directions[b.name+"End"].apply(this,arguments):!b.sys&&this.isSimpleOutput()&&this.save("};"),this.endDir()});Snakeskin.addDirective("super",{placement:"template"},function(a,b){var c={block:!0,proto:!0,"const":!0};if(this.parentTplName){for(var d,e=this.blockStructure;;){if(c[e.name]){switch(e.name){case"proto":d=r[this.parentTplName][e.params.name];break;case"block":d=q[this.parentTplName][e.params.name]}if(d)break}if(!e.parent||"root"===e.parent.name)break;e=e.parent}d&&(this.source=this.source.substring(0,this.i-b-1)+d.content+this.source.substring(this.i+1),this.i-=b+1)}});Snakeskin.addDirective("forEach",{placement:"template",notEmpty:!0},function(a){var b=this;if(this.startDir(),this.isSimpleOutput()){var c=a.split("=>"),d=c[0];if(c.length>2)throw this.error("Invalid syntax");var e=c[1]?c[1].trim().split(","):[],f=this.multiDeclVar("__TMP__ = "+d),g=this.prepareOutput("__TMP__",!0),h="";e.length>=6&&(h+=this.multiDeclVar("__TMP_LENGTH__ = 0")+"for ("+this.multiDeclVar("__KEY__",!1)+"in "+g+") {if (!"+g+".hasOwnProperty("+this.prepareOutput("__KEY__",!0)+")) {continue;}"+this.prepareOutput("__TMP_LENGTH__++;",!0)+"}");var i=f+"if ("+g+") {if (Array.isArray("+g+")) {"+this.multiDeclVar("__TMP_LENGTH__ = __TMP__.length")+"for ("+this.multiDeclVar("__I__ = -1")+this.prepareOutput("++__I__ < __TMP_LENGTH__;",!0)+") {"+function(){for(var a="",c=0;c<e.length;c++)switch(c){case 0:a+=b.multiDeclVar(e[c]+" = __TMP__[__I__]");break;case 1:a+=b.multiDeclVar(e[c]+" = __I__");break;case 2:a+=b.multiDeclVar(e[c]+" = __TMP__");break;case 3:a+=b.multiDeclVar(e[c]+" = __I__ === 0");break;case 4:a+=b.multiDeclVar(e[c]+" = __I__ === __TMP_LENGTH__ - 1");break;case 5:a+=b.multiDeclVar(e[c]+" = __TMP_LENGTH__")}return a}(),j="} else {"+h+this.multiDeclVar("__I__ = -1")+"for ("+this.multiDeclVar("__KEY__",!1)+"in "+g+") {if (!"+g+".hasOwnProperty("+this.prepareOutput("__KEY__",!0)+")) {continue;}"+this.prepareOutput("__I__++;",!0)+function(){for(var a="",c=0;c<e.length;c++)switch(c){case 0:a+=b.multiDeclVar(e[c]+" = __TMP__[__KEY__]");break;case 1:a+=b.multiDeclVar(e[c]+" = __KEY__");break;case 2:a+=b.multiDeclVar(e[c]+" = __TMP__");break;case 3:a+=b.multiDeclVar(e[c]+" = __I__");break;case 4:a+=b.multiDeclVar(e[c]+" = __I__ === 0");break;case 5:a+=b.multiDeclVar(e[c]+" = __I__ === __TMP_LENGTH__ - 1");break;case 6:a+=b.multiDeclVar(e[c]+" = __TMP_LENGTH__")}return a}();this.save(i),this.structure.params={from:this.res.length,end:j}}},function(){if(this.isSimpleOutput()){var a=this.structure.params;this.save("}"+a.end+this.res.substring(a.from)+"}}}")}}),Snakeskin.addDirective("$forEach",{placement:"template",notEmpty:!0},function(a){var b=a.split("=>");if(b.length>3)throw this.error("Invalid syntax");if(this.startDir(null,{params:b[2]?b[1]:null}),this.isSimpleOutput()){for(var c=(b[2]||b[1]||"").split(","),d=0;d<c.length;d++){var e=c[d].trim();e&&(c[d]=this.declVar(e))}this.save("$C("+this.prepareOutput(b[0],!0)+").forEach(function ("+c.join(",")+") {")}},function(){if(this.isSimpleOutput()){var a=this.structure.params.params;this.save(a?"}, "+this.prepareOutput(a,!0)+");":"});")}}),Snakeskin.addDirective("forIn",{placement:"template",notEmpty:!0},function(a){var b=this;if(this.startDir(),this.isSimpleOutput()){var c=a.split("=>"),d=c[0];if(c.length>2)throw this.error("Invalid syntax");var e=c[1]?c[1].trim().split(","):[],f=this.multiDeclVar("__TMP__ = "+d),g=this.prepareOutput("__TMP__",!0),h="";e.length>=6&&(h+=this.multiDeclVar("__TMP_LENGTH__ = 0")+"for ("+this.multiDeclVar("key",!1)+"in "+g+") {"+this.prepareOutput("__TMP_LENGTH__++;",!0)+"}");var i=f+"if ("+g+") {"+h+this.multiDeclVar("__I__ = -1")+"for ("+this.multiDeclVar("__KEY__",!1)+"in "+g+") {"+this.prepareOutput("__I__++;",!0)+function(){for(var a="",c=0;c<e.length;c++)switch(c){case 0:a+=b.multiDeclVar(e[c]+" = __TMP__[__KEY__]");break;case 1:a+=b.multiDeclVar(e[c]+" = __KEY__");break;case 2:a+=b.multiDeclVar(e[c]+" = __TMP__");break;case 3:a+=b.multiDeclVar(e[c]+" = __I__");break;case 4:a+=b.multiDeclVar(e[c]+" = __I__ === 0");break;case 5:a+=b.multiDeclVar(e[c]+" = __I__ === __TMP_LENGTH__ - 1");break;case 6:a+=b.multiDeclVar(e[c]+" = __TMP_LENGTH__")}return a}();this.save(i)}},function(){this.isSimpleOutput()&&this.save("}}")});Snakeskin.addDirective("if",{placement:"template",notEmpty:!0},function(a){this.startDir(),this.isSimpleOutput()&&this.save("if ("+this.prepareOutput(a,!0)+") {")}),Snakeskin.addDirective("elseIf",{placement:"template",notEmpty:!0},function(a){if("if"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "if"');this.isSimpleOutput()&&this.save("} else if ("+this.prepareOutput(a,!0)+") {")}),Snakeskin.addDirective("else",{placement:"template"},function(){if("if"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "if"');this.isSimpleOutput()&&this.save("} else {")}),Snakeskin.addDirective("switch",{placement:"template",notEmpty:!0,strongDirs:{"case":!0,"default":!0}},function(a){this.startDir(),this.isSimpleOutput()&&this.save("switch ("+this.prepareOutput(a,!0)+") {")}),Snakeskin.addDirective("case",{placement:"template",notEmpty:!0,replacers:{">":function(a){return a.replace(/^>/,"case ")},"/>":function(a){return a.replace(/^\/>/,"end case")}}},function(a){if(!this.has("switch"))throw this.error('Directive "'+this.name+'" can only be used within a "switch"');this.startDir(),this.isSimpleOutput()&&this.save("case "+this.prepareOutput(a,!0)+": {")},function(){this.isSimpleOutput()&&this.save("} break;")}),Snakeskin.addDirective("default",{placement:"template"},function(){if(!this.has("switch"))throw this.error('Directive "'+this.name+'" can only be used within a "switch"');this.startDir(),this.isSimpleOutput()&&this.save("default: {")});Snakeskin.addDirective("__appendLine__",null,function(a){if(!this.structure.parent)throw this.error('Directive "cdata" can only be used within a "template" or "proto"'); | ||
this.startInlineDir("cdata"),this.isSimpleOutput(),this.info.line+=parseInt(a)}),Snakeskin.addDirective("__protoWhile__",null,function(a){if(this.startDir(),this.isSimpleOutput()){var b=this.prepareOutput("__I_PROTO__",!0);r[this.tplName][this.proto.name].i=b,this.save(b+":while ("+this.prepareOutput(a,!0)+") {")}}),Snakeskin.addDirective("__const__",null,function(a,b){var c=a.split("=")[0].trim();this.startInlineDir("const",{name:c}),this.isSimpleOutput()&&this.save(this.prepareOutput("var "+a+";",!0)),this.isAdvTest()&&(t[this.tplName][c]={from:this.i-this.startTemplateI-b,to:this.i-this.startTemplateI,tmp:!0},u[this.tplName]=this.i-this.startTemplateI+1)});b.prototype.protoStart=!1,b.prototype.preProtos={},b.prototype.protoLink=null,b.prototype.returnArgs=function(a,b){for(var c="",d=0;d<a.length;d++){var e=this.prepareOutput(b[d]||"null",!0),f=a[d][0],g=a[d][1];c+="var "+f+" = "+(void 0!==g?e?"typeof "+e+" !== 'undefined' && "+e+" !== null ? "+e+":"+g:g:e||"void 0")+";"}return c},Snakeskin.addDirective("proto",{sys:!0,notEmpty:!0},function(a,b){var c=a.match(/[^(]+/)[0],d=c.split("->");if(d[1]&&(c=d[1].trim(),this.tplName||(this.tplName=this.pasteDangerBlocks(d[0]).trim(),this.preProtos[this.tplName]=this.preProtos[this.tplName]||{text:"",line:0},this.preProtos[this.tplName].startLine=this.info.line,this.protoLink=c)),!c||!this.tplName)throw this.error("Invalid syntax");if(this.startDir(null,{name:c,startTemplateI:this.i+1,from:this.i-b-1}),this.isAdvTest()){if(r[this.tplName][c])throw this.error('Proto "'+c+'" is already defined');var e=a.match(/\((.*?)\)/),f=[];if(e)for(var g=e[1].split(","),h=0;h<g.length;h++){var i=g[h].split("=");i[0]=this.declVar(i[0].trim(),!0),f.push(i)}r[this.tplName][c]={length:b,from:this.i-this.startTemplateI+1,argsDecl:e?e[0]:"",args:f,calls:{}}}this.parentTplName||(this.protoStart=!0)},function(a,b){var c=this.tplName,d=this.structure.params;if(this.protoLink===d.name){var e=this.preProtos[this.tplName];e.text+=this.source.substring(d.from,this.i+1),e.line+=this.info.line-e.startLine,this.protoLink=null,this.tplName=null,this.hasParentBlock("proto")||(this.protoStart=!1)}else if(!this.protoLink){var f=r[c][d.name];this.isAdvTest()&&(f.to=this.i-this.startTemplateI-b-1,f.content=this.source.substring(this.startTemplateI).substring(f.from,f.to),s[c]=this.i-this.startTemplateI+1,f.body=Snakeskin.compile("{template "+c+"()}{var __I_PROTO__ = 1}{__protoWhile__ __I_PROTO__--}"+this.source.substring(d.startTemplateI,this.i-b-1)+"{end}{end}",null,null,{scope:this.scope,vars:this.structure.vars,proto:{name:d.name,parentTplName:this.parentTplName,pos:this.res.length,ctx:this}}));var g=this.backTable[d.name];if(g&&!g.protoStart){for(var h=f.args,i=!0,j=0;j<g.length;j++){var k=g[j];if(this.canWrite)if(k.outer){var l=this.structure.vars;this.structure.vars=k.vars,k.argsStr=this.returnArgs(h,k.args),this.structure.vars=l,i=!1}else this.res=this.res.substring(0,k.pos)+this.returnArgs(h,k.args)+r[c][d.name].body+this.res.substring(k.pos)}i&&(delete this.backTable[d.name],this.backTableI--)}}this.protoLink&&this.protoLink!==d.name||this.hasParentBlock("proto")||(this.protoStart=!1)}),b.prototype.backTable={init:function(){return{}}},b.prototype.backTableI=0,Snakeskin.addDirective("apply",{placement:"template",notEmpty:!0},function(a){if(this.startInlineDir(),this.isSimpleOutput()){var b=/[^(]+/.exec(a)[0],c=/\((.*?)\)/.exec(a),d=r[this.tplName],e=d[b],f="";e&&(f=this.returnArgs(e.args,c?c[1].split(","):[]));var g,h=this.proto;if(h&&(g=e&&e.calls[h.name]),this.proto&&this.proto.name===b)this.save(f+this.prepareOutput("__I_PROTO__++",!0)+";");else if(e&&e.body&&!g)this.save(f+e.body);else{this.backTable[b]||(this.backTable[b]=[],this.backTable[b].protoStart=this.protoStart,this.backTableI++);var i=Math.random()+"";this.backTable[b].push({proto:h?d[h.name]:null,pos:this.res.length,label:new RegExp("\\/\\* __APPLY__"+this.tplName.replace(/([.\[])/g,"\\$1")+"_"+b+"_"+i.replace(".","\\.")+" \\*\\/"),args:c,recursive:!!e||!!g}),this.save("/* __APPLY__"+this.tplName+"_"+b+"_"+i+" */"),h&&!e&&(d[h.name].calls[b]=!0)}}});Snakeskin.addDirective("return",{placement:"template"},function(a){this.startInlineDir(),this.isSimpleOutput()&&(this.space=!0,this.save(this.proto?this.prepareOutput("break __I_PROTO__;",!0):a?this.prepareOutput("return "+a+";",!0):"return __SNAKESKIN_RESULT__;"))});Snakeskin.addDirective("with",{placement:"template",sys:!0,notEmpty:!0},function(a){this.startDir(),this.scope.push(a)},function(){this.scope.pop()});Snakeskin.addDirective("&",{placement:"template"},function(){this.startInlineDir(),this.isSimpleOutput()&&(this.space=!0)}),Snakeskin.addDirective("&+",{placement:"template"},function(){this.startInlineDir(),this.isSimpleOutput()&&(this.superStrongSpace=!0)}),Snakeskin.addDirective("&-",{placement:"template"},function(){this.startInlineDir(),this.isSimpleOutput()&&(this.superStrongSpace=!1)}),Snakeskin.addDirective("ignore",{placement:"global"},function(a){this.startInlineDir();for(var b="[",c=a.split(" "),d=c.length;d--;)if(c[d]){if(2!==c[d].length||"%"!==c[d].charAt(0))throw this.error("Invalid syntax");b+="\\"+c[d].charAt(1)}b+="]",this.ignoreRgxp=new RegExp(b)});b.prototype.startTemplateI=0,b.prototype.startTemplateLine=null,b.prototype.tplName=null,b.prototype.parentTplName=null;var K,L;Snakeskin.addDirective("template",{placement:"global",notEmpty:!0},K=function(b){this.startDir(),this.startTemplateI=this.i+1,this.startTemplateLine=this.info.line;try{var c=/(.*?)\(/.exec(b)[1],d=this.pasteDangerBlocks(c)}catch(e){throw this.error("Invalid syntax")}if(!d)throw this.error("Invalid syntax");if(this.info.template=d,"placeholder"===this.name&&(C[d]||(C[d]=!1)),this.tplName=d,this.blockStructure={name:"root",parent:null,childs:[]},this.blockTable={},this.varCache[d]={},!this.proto){var f;if(/\s+extends\s+/m.test(b)){try{f=this.pasteDangerBlocks(/\s+extends\s+(.*)/m.exec(b)[1]),this.parentTplName=f}catch(e){throw this.error("Invalid syntax")}if(void 0===o[f])throw this.error('The specified template ("'+f+'" -> "'+d+'") for inheritance is not defined')}this.initTemplateCache(d),x[d]=f;try{var g=/\((.*?)\)/.exec(b)[1]}catch(e){throw this.error("Invalid syntax")}if(this.save("/* Snakeskin template: "+d+"; "+g.replace(/=(.*?)(?:,|$)/g,"")+" */"),/\.|\[/m.test(c)||this.commonJS){for(var h="",i=/^__ESCAPER_QUOT__\d+_/,j=c.replace(/\[/gm,".").replace(/]/gm,"").split("."),k=j[0],l=j.length,m=1;l>m;m++){var n=j[m];this.save("if (typeof "+(this.commonJS?"exports.":"")+k+" === 'undefined') { "+(this.commonJS?"exports.":1===m?a?"var ":"window.":"")+k+" = {};}"),i.test(n)?k+="["+n+"]":(m===l-1&&(h=n),k+="."+n)}this.save((this.commonJS?"exports.":"")+c+"= function "+h+"(")}else this.save((a?"":"window."+c+" = ")+"function "+c+"(");for(var p=g.split(","),q=w[f],r=w[d]={},s=0;s<p.length;s++){var t=p[s].split("=");t[0]=t[0].trim(),r[t[0]]={i:s,key:t[0],value:t[1]&&this.pasteDangerBlocks(t[1].trim())}}if(q)for(var u in q)if(q.hasOwnProperty(u)){var y=q[u],z=r[u];void 0!==y.value&&(r[u]?z&&void 0===z.value&&(r[u].value=y.value):r[u]={local:!0,i:y.i,key:u,value:y.value})}p=[];var A=[];for(var B in r)if(r.hasOwnProperty(B)){var D=r[B];D.local?A[D.i]=D:p[D.i]=D}for(var E="",F=0;F<p.length;F++){var G=p[F];this.save(G.key),v[d][G.key]=G,void 0!==G.value&&(E+=G.key+" = "+G.key+" !== void 0 && "+G.key+" !== null ? "+G.key+" : "+this.prepareOutput(G.value,!0)+";"),F!==p.length-1&&this.save(",")}for(var H="",I=0;I<A.length;I++){var J=A[I];J&&(H+="{__const__ "+J.key+" = "+J.value+"}")}H&&(this.source=this.source.substring(0,this.i+1)+H+this.source.substring(this.i+1)),this.save(") { "+E+"var __SNAKESKIN_RESULT__ = '', $_;"),this.save("var TPL_NAME = '"+this.applyDefEscape(this.pasteDangerBlocks(c))+"';var PARENT_TPL_NAME;"),f&&this.save("PARENT_TPL_NAME = '"+this.applyDefEscape(this.pasteDangerBlocks(f))+"';"),x[d]&&!f||!this.preProtos[d]||(this.source=this.source.substring(0,this.i+1)+this.preProtos[d].text+this.source.substring(this.i+1),this.info.line-=this.preProtos[d].line,delete this.preProtos[d])}},L=function(a,b){var c=this.tplName;if(this.backTableI&&this.proto){var d=Object(this.backTable),e=this.proto.ctx;e.backTableI+=this.backTableI;for(var f in d)if(d.hasOwnProperty(f)){for(var g=0;g<d[f].length;g++){var h=d[f][g];h.pos+=this.proto.pos,h.outer=!0,h.vars=this.structure.vars}e.backTable[f]=e.backTable[f]?e.backTable[f].concat(d[f]):d[f]}}if(!this.proto){if(o[c]=this.source.substring(this.startTemplateI,this.i-b-1),p[c]=this.blockTable,this.parentTplName)return this.info.line=this.startTemplateLine,this.source=this.source.substring(0,this.startTemplateI)+this.getExtStr(c)+this.source.substring(this.i-b-1),this.initTemplateCache(c),this.startDir(this.structure.name),this.i=this.startTemplateI-1,void(this.parentTplName=null);if(this.backTableI){var i=Object(this.backTable);for(var j in i)if(i.hasOwnProperty(j))for(var k=0;k<i[j].length;k++){var l=i[j][k];if(l.outer){var m=r[c][j];if(!m)throw this.error('Proto "'+j+'" is not defined');this.res=this.res.substring(0,l.pos)+this.res.substring(l.pos).replace(l.label,(l.argsStr||"")+(l.recursive?m.i+"++;":m.body))}}this.backTable={}}this.save("return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['"+this.applyDefEscape(this.pasteDangerBlocks(c))+"'] = "+(this.commonJS?"exports.":"")+c+";}/* Snakeskin template. */"),this.canWrite=!0,this.tplName=null,delete this.info.template}}),Snakeskin.addDirective("placeholder",{placement:"global",notEmpty:!0},K,L);Snakeskin.addDirective("try",{placement:"template"},function(){this.startDir(),this.isSimpleOutput()&&this.save("try {")}),Snakeskin.addDirective("catch",{placement:"template",notEmpty:!0},function(a){if("try"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "try"');this.isSimpleOutput()&&this.save("} catch ("+this.declVar(a)+") {")}),Snakeskin.addDirective("finally",{placement:"template"},function(){if("try"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "try"');this.isSimpleOutput()&&this.save("} finally {")});b.prototype.varCache={init:function(){return{}}},Snakeskin.addDirective("var",{placement:"template",notEmpty:!0,replacers:{":":function(a){return a.replace(/^:/,"var ")}}},function(a){this.startInlineDir(),this.isSimpleOutput()&&this.save(this.multiDeclVar(a))});Snakeskin.addDirective("void",{placement:"template",notEmpty:!0,replacers:{"?":function(a){return a.replace(/^\?/,"void ")}}},function(a){if(/(?:^|\s+)(?:var|const|let) /.test(a))throw this.error('Can\'t declare variables within "void"');this.startInlineDir(),this.isSimpleOutput()&&this.save(this.prepareOutput(a,!0)+";")}),a&&(module.exports=Snakeskin)}("undefined"==typeof window); | ||
var __NEJS_THIS__=this;if(!Array.isArray){var toString=Object.prototype.toString;Array.isArray=function(a){return"[object Array]"===toString.call(a)}}String.prototype.trim||(String.prototype.trim=function(){for(var a=this.replace(/^\s\s*/,""),b=a.length,c=/\s/;c.test(a.charAt(--b)););return a.substring(0,b+1)});var __NEJS_THIS__=this,Snakeskin={VERSION:[3,3,0],Directions:{},Filters:{},Vars:{},cache:{}};!function(a){function b(a,b){var c=this;for(var d in this)this[d]&&this[d].init&&(this[d]=this[d].init());this.commonJS=b.commonJS,this.scope=b.scope||[],this.proto=b.proto,this.info=b.info,this.name=null,this.canWrite=!0,this.space=!1,this.strongSpace=!1,this.superStrongSpace=!1,this.ignoreRgxp=null,this.text=!1,this.i=-1,this.blockStructure=null,this.blockTable=null,this.structure={name:"root",parent:null,vars:b.vars||{},childs:[]},this.inlineDir=null,this.strongDir=null,this.returnStrongDir=null,this.quotContent=[],this.cDataContent=[],this.source=String(a).replace(/{cdata}([\s\S]*?){(?:\/cdata|end cdata)}/gm,function(a,b){return c.cDataContent.push(b),"{__appendLine__ "+(b.match(/[\n\r]/g)||"").length+"}__SNAKESKIN_CDATA__"+(c.cDataContent.length-1)+"_"}),this.res=(b.proto?"":"/* This code is generated automatically, don't alter it. */")+(b.commonJS?'var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {':"")}Snakeskin.importFilters=function(a,b){var c=Snakeskin.Filters;if(b)for(var d=b.split("."),e=0;e<d.length;e++)c[d[e]]||(c[d[e]]={}),c=c[d[e]];for(var f in a)a.hasOwnProperty(f)&&(c[f]=a[f])};var c={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},d=/[&<>"'\/]/g,e=function(a){return c[a]};Snakeskin.Filters.html=function(a){return(a+"").replace(d,e)},Snakeskin.Filters.undef=function(a){return void 0!==a?a:""};var f={"&":"&","<":"<",">":">",""":'"',"'":"'","/":"/"},g=/&|<|>|"|'|//g,h=function(a){return f[a]};Snakeskin.Filters.uhtml=function(a){return(a+"").replace(g,h)};var i=/<\/?[^>]+>/g;Snakeskin.Filters.stripTags=function(a){return(a+"").replace(i,"")};var j=/%5B/g,k=/%5D/g;Snakeskin.Filters.uri=function(a){return encodeURI(a+"").replace(j,"[").replace(k,"]")},Snakeskin.Filters.upper=function(a){return(a+"").toUpperCase()},Snakeskin.Filters.ucfirst=function(a){return a+="",a.charAt(0).toUpperCase()+a.substring(1)},Snakeskin.Filters.lower=function(a){return(a+"").toLowerCase()},Snakeskin.Filters.lcfirst=function(a){return a+="",a.charAt(0).toLowerCase()+a.substring(1)},Snakeskin.Filters.trim=function(a){return(a+"").trim()};var l=/\s{2,}/g;Snakeskin.Filters.collapse=function(a){return(a+"").replace(l," ").trim()},Snakeskin.Filters.truncate=function(a,b,c){if(a+="",!a||a.length<=b)return a;for(var d,e=a.substring(0,b-1),f=e.length;f--&&c;)if(" "===e.charAt(f))d=f;else if(void 0!==d)break;return(void 0!==d?e.substring(0,d):e)+"…"},Snakeskin.Filters.repeat=function(a,b){return new Array(b+1||3).join(a)},Snakeskin.Filters.remove=function(a,b){return(a+"").replace(b,"")},Snakeskin.Filters.replace=function(a,b,c){return(a+"").replace(b,c)},Snakeskin.Filters.json=function(a){return"object"==typeof a?JSON.stringify(a):a+""};var m={"true":{},"false":{}},n={"true":{},"false":{}},o={},p={},q={},r={},s={},t={},u={},v={},w={},x={},y={},z={},A={},B={},C={},D={__SNAKESKIN_RESULT__:!0,__SNAKESKIN_CDATA__:!0,__I_PROTO__:!0,__I__:!0,__TMP__:!0,__TMP_LENGTH__:!0,__KEY__:!0,$_:!0},E={'"':!0,"'":!0,"/":!0},F={"-":!0,"+":!0,"*":!0,",":!0,";":!0,"=":!0,"|":!0,"&":!0,"?":!0,":":!0,"(":!0,"{":!0};Snakeskin.DirObj=b,b.prototype.save=function(a,b,c){return!this.tplName||C[this.tplName]!==!1||b?(c?this.res=this.res.substring(0,c)+a+this.res.substring(c):this.res+=a,!0):!1},b.prototype.isSimpleOutput=function(){if("end"!==this.name&&this.strongDir)throw this.error('Directive "'+this.structure.name+'" can not be used with a "'+this.strongDir+'"');return!(this.parentTplName||this.protoStart||this.proto&&this.proto.parentTplName)},b.prototype.isAdvTest=function(){return!(this.proto||this.protoLink||(!this.parentTplName||this.hasParentBlock({block:!0,proto:!0}))&&this.parentTplName)},b.prototype.initTemplateCache=function(a){return r[a]={},q[a]={},s[a]=0,t[a]={},u[a]=0,v[a]={},this},b.prototype.startDir=function(a,b,c){var d=this;"undefined"==typeof c&&(c={}),a=a||this.name,b=b||{},this.inlineDir=!1;var e=c||{},f=this.structure;if(f.vars){var g=Object(f.vars);for(var h in g)g.hasOwnProperty(h)&&(e[h]=g[h])}var i={name:a,parent:f,childs:[],vars:e,params:b,sys:!!A[a]};if(f.childs.push(i),this.structure=i,this.blockStructure&&("block"===a||"proto"===a)){var j={name:a,parent:this.blockStructure,childs:[],params:b},k=a+"_"+b.name;this.blockTable[k]===!0&&(j.drop=!0),this.blockTable[k]=j;var l=function(a){for(var b=0;b<a.length;b++){var c=a[b],e=c.name+"_"+c.params.name;d.blockTable[e]?d.blockTable[e].drop=!0:d.blockTable[e]=!0,c.childs&&l(c.childs)}};this.parentTplName&&p[this.parentTplName][k]&&p[this.parentTplName][k].childs&&l(p[this.parentTplName][k].childs),this.blockStructure.childs.push(j),this.blockStructure=j}return this},b.prototype.startInlineDir=function(a,b){"undefined"==typeof b&&(b={}),a=a||this.name,this.inlineDir=!0;var c={name:a,parent:this.structure,params:b};if(this.structure.childs.push(c),this.structure=c,this.blockStructure&&"const"===a){var d={name:a,parent:this.blockStructure,params:b};this.blockTable[a+"_"+b.name]=d,this.blockStructure.childs.push(d),this.blockStructure=d}return this},b.prototype.endDir=function(){var a=this.structure.name;return this.structure=this.structure.parent,!this.blockStructure||"block"!==a&&"proto"!==a||(this.blockStructure=this.blockStructure.parent),this},b.prototype.has=function(a,b){for(var c=b||this.structure;;){if(a[c.name]||c.name===a)return!0;if(!c.parent||"root"===c.parent.name)return!1;c=c.parent}},b.prototype.hasParent=function(a){return this.structure.parent?this.has(a,this.structure.parent):!1},b.prototype.hasParentBlock=function(a){return this.blockStructure&&this.blockStructure.parent?this.has(a,this.blockStructure.parent):!1},b.prototype.declVar=function(a,b){if("undefined"==typeof b&&(b=!1),!b&&(t[this.tplName][a]||v[this.tplName][a]))throw this.error('Variable "'+a+'" is already defined as constant');for(var c=this.structure;!c.vars;)c=this.structure.parent;var d="__"+a+"_"+(this.proto?this.proto.name:"")+"_"+c.name+"_"+this.i;return c.vars[a]={value:d,useWith:!!this.scope.length},this.varCache[this.tplName][a]=!0,d},b.prototype.multiDeclVar=function(a,b){"undefined"==typeof b&&(b=!0);for(var c=0,d="",e="var ",f={"(":!0,"[":!0,"{":!0},g={")":!0,"]":!0,"}":!0},h=a.length,i=0;h>i;i++){var j=a.charAt(i);if(f[j]?c++:g[j]&&c--,","!==j&&i!==h-1||c)d+=j;else{i===h-1&&(d+=j);var k=d.split("="),l=this.declVar(k[0].trim());k[0]=l+" ",e+=this.prepareOutput(k.join("=")+",",!0,null,!0),d=""}}if(c)throw this.error("Invalid syntax");return e.slice(0,-1)+(b?";":"")};var G={VERSION:[1,0,8],isLocal:"undefined"==typeof window?!!global.EscaperIsLocal:!1};"undefined"!=typeof window||G.isLocal||(module.exports=exports=G),function(){var a={'"':!0,"'":!0,"/":!0},b={g:!0,m:!0,i:!0},c={"-":!0,"+":!0,"*":!0,",":!0,";":!0,"=":!0,"|":!0,"&":!0,"?":!0,":":!0,"(":!0,"{":!0},d={};G.quotContent=[],G.replace=function(e,f,g,h){f=!!f;var i=e,j=g||this.quotContent;if(j===this.quotContent&&d[i]&&d[i][f])return d[i][f];for(var k,l,m,n,o=!0,p=!1,q=0,r=!1,s=!1,t=0;t<e.length;t++){var u=e.charAt(t),v=e.charAt(t-1),w=e.charAt(t+1);if(l)("\n"===w&&"//"===l||"/"===u&&"*"===v&&"/*"===l)&&(l=!1,f&&(m=e.substring(q,t+1),n="__ESCAPER_QUOT__"+j.length+"_",j.push(m),e=e.substring(0,q)+n+e.substring(t+1),t+=n.length-m.length));else{if(!k){if("/"===u){switch(w){case"*":l="/*";break;case"/":l="//"}if(l){q=t;continue}}c[u]?o=!0:/[^\s\/]/.test(u)&&(o=!1);var x=!1;h&&("|"===u&&/[a-z]/i.test(w)?(s=!0,o=!1,x=!0):s&&/\s/.test(u)&&(s=!1,o=!0,x=!0)),x||(c[u]?o=!0:/[^\s\/]/.test(u)&&(o=!1))}if("/"===k&&!p)switch(u){case"[":r=!0;break;case"]":r=!1}if(a[u]&&("/"===u?o:!0)&&!k)k=u,q=t;else if(k&&("\\"===u||p))p=!p;else if(a[u]&&k===u&&!p&&("/"===k?!r:!0)){if("/"===u)for(var y in b)b.hasOwnProperty(y)&&b[e.charAt(t+1)]&&t++;k=!1,m=e.substring(q,t+1),n="__ESCAPER_QUOT__"+j.length+"_",j.push(m),e=e.substring(0,q)+n+e.substring(t+1),t+=n.length-m.length}}}return j===this.quotContent&&(d[i]=d[i]||{},d[i][f]=e),e},G.paste=function(a,b){var c=b||this.quotContent;return a.replace(/__ESCAPER_QUOT__(\d+)_/gm,function(a,b){return c[b]})}}();b.prototype.applyDefEscape=function(a){return a.replace(/\\/gm,"\\\\").replace(/'/gm,"\\'")},b.prototype.escapeNextLine=function(a){return a.replace(/\n/gm,"\\n").replace(/\v/gm,"\\v").replace(/\r/gm,"\\r")},"undefined"==typeof window&&(global.EscaperIsLocal=!0),b.prototype.replaceDangerBlocks=function(a){return G.replace(a,!0,this.quotContent,!0)},b.prototype.pasteDangerBlocks=function(a){return G.paste(a,this.quotContent)};b.prototype.getExtStr=function(a){function b(a,b){return a.val>b.val?1:a.val===b.val?0:-1}for(var c,d=x[a],e=o[d],f=0,g=[],h=p[a],i=0;6>i;i++){var j,k,l;0===i?(c="block_",j=q[a],k=q[d]):2===i?(c="const_",j=t[a],k=t[d],f=u[d],l=null):4===i&&(c="proto_",j=r[a],k=r[d],f=s[d],l=null);var m;for(var n in j)if(j.hasOwnProperty(n)){var v=0,w=j[n],y=!h[c+n].drop&&k[n];4===i&&y&&w.argsDecl!==y.argsDecl&&(w.from-=w.length,y.from-=y.length);var z=o[a].substring(w.from,w.to);y&&(m=z.length-o[d].substring(y.from,y.to).length);var A=y?y.from:f;g.sort(b);for(var B=0;B<g.length&&g[B].val<A;B++)v+=g[B].adv;y&&i%2===0?(i>1&&(l=y.from+v+z.length,f+=m,l>f&&(f=l+(4===i?5:1))),e=e.substring(0,y.from+v)+z+e.substring(y.to+v),g.push({val:y.from,adv:m})):y||(1===i?e+="{block "+n+"}"+z+"{end}":(3===i||5===i)&&(null===l&&(l=f,f+=v),z=3===i?"{"+z+"}":"{proto "+n+w.argsDecl+"}"+z+"{end}",e=e.substring(0,f)+z+e.substring(f),g.push({val:l,adv:z.length}),f+=z.length))}}return e};b.prototype.genErrorAdvInfo=function(a){a=a||this.info;var b="";if(!a)return b;for(var c in a)a.hasOwnProperty(c)&&(b+=a[c].innerHTML?c+": (class: "+(a[c].className||"undefined")+", id: "+(a[c].id||"undefined")+"), ":c+": "+a[c]+", ");return b.replace(/, $/,"")},b.prototype.error=function(a){var b=new Error(a+", "+this.genErrorAdvInfo());return b.name="Snakeskin Error",b};Snakeskin.compile=function(c,d,e,f){f=f||{};var g=d&&!("boolean"==typeof d||d instanceof Boolean==!0),h=!!(g?d.commonJS||d.context:d),i=g?d.context||{}:{};e=e||{},e.line=e.line||1;var j=c.innerHTML;j&&(e.node=c,j=j.replace(/\s*?\n/,""));var k=j||c;if(a&&h&&n[h][k]){var l=n[h][k];for(var o in l)l.hasOwnProperty(o)&&(i[o]=l[o]);return m[h][k]}if(m[h][k])return m[h][k];for(var p,q,r=new b(String(k),{info:e,commonJS:h,proto:f.proto,scope:f.scope,vars:f.vars}),s=!1,t="",u=0,v=!1,w=!1,x=!1,z=!1,A=!1,B=!1,C=!1,D=!1,G=/[\r\n\v]/,H=/\s/,I=/[^\s\/]/,J=/[a-z]/i,K=/[^\s]+/m,L=/[^\s]+\s*/m;++r.i<r.source.length;){var M=r.source,N=M.charAt(r.i),O=N;if(G.test(N)&&e.line++,H.test(N)){if(s)N=B?r.escapeNextLine(N):" ";else if(r.structure.parent){if(r.space||r.strongSpace||r.superStrongSpace)continue;N=r.ignoreRgxp&&r.ignoreRgxp.test(N)?"":" ",N&&(r.space=!0)}else if(!x&&!z)continue}else"{"===N||s||(q=r.space),r.space=!1;if(!B){var P=N+M.charAt(r.i+1),Q=P+M.charAt(r.i+2);if(!w)if("/"===N){if("///"===Q)x=Q,r.i+=2;else if("/*"===P)"/**"!==Q||r.structure.parent?(x=P,r.i++):(v=!0,z=!0,A=r.res.length);else if("*"===M.charAt(r.i-1)){if("/*"===x){x=!1;continue}v&&(v=!1)}}else if(G.test(O)&&"///"===x){x=!1;continue}if(("\\"===N||w)&&(w=!w),x||w)continue;if(!z)if("{"===N){if(!s){p=!0,s=!0;continue}u++}else if(!("}"!==N||u&&u--)){s=!1;var R=t.length;if(t=r.replaceDangerBlocks(t).trim(),!t)throw r.error("Directive is not defined");var S=t.charAt(0),T=t.substr(0,2);y[T]?t=y[T](t):y[S]&&(t=y[S](t));var U=K.exec(t)[0];U=Snakeskin.Directions[U]?U:"const";var V=Snakeskin.Directions[U](r,"const"!==U?t.replace(L,""):t,R,A);!r.text&&q&&(r.space=!0),A=!1,r.text=!1,V===!1&&(s=!1,v=!1),t="";continue}}if(s){if(v&&r.isSimpleOutput()&&(r.save("';"),v=!1),!B){var W=!1;"|"===N&&J.test(M.charAt(r.i+1))?(D=!0,p=!1,W=!0):D&&H.test(N)&&(D=!1,p=!0,W=!0),W||(F[N]?p=!0:I.test(N)&&(p=!1))}E[N]&&("/"===N?p&&t:!0)&&!B?B=N:B&&("\\"===N||C)?C=!C:E[N]&&B===N&&!C&&(B=!1),t+=N}else{if(r.structure.parent)r.startInlineDir("text"),r.isSimpleOutput()&&(v||(r.save("__SNAKESKIN_RESULT__ += '"),v=!0),r.save(r.applyDefEscape(N))),r.inlineDir=null,r.structure=r.structure.parent;else{if(!z)throw r.error("Text can't be used in the global space (except jsDoc)");r.save(r.applyDefEscape(N))}v||(z=!1)}}if(r.structure.parent)throw r.error("Missing closing or opening tag in the template");if(r.res=r.pasteDangerBlocks(r.res).replace(/__SNAKESKIN_CDATA__(\d+)_/g,function(a,b){return r.escapeNextLine(r.cDataContent[b]).replace(/'/gm,"'")}).replace(/__SNAKESKIN_RESULT__ \+= '';/g,""),r.res+=r.proto?"":"/* Snakeskin templating system. Generated at: "+(new Date).toString()+". */",r.res+=h?"}":"",r.proto)return r.res;for(var X in r.preProtos)if(r.preProtos.hasOwnProperty(X))throw r.error('Template "'+X+'" is not defined');return a?h?(new Function("exports","require",r.res)(i,require),i.init(Snakeskin),n[h][k]=i):global.eval(r.res):new Function(r.res)(),m[h][k]=r.res,a||h||setTimeout(function(){try{var a=new Blob([r.res],{type:"application/javascript"}),b=document.createElement("script");b.src=URL.createObjectURL(a),document.head.appendChild(b)}catch(c){}},50),r.res};Snakeskin.addDirective=function(a,b,c,d){if(b=b||{},A[a]=!!b.sys,b.replacers){var e=b.replacers;for(var f in e)e.hasOwnProperty(f)&&(y[f]=e[f])}z[a]=b.strongDirs,Snakeskin.Directions[a]=function(d,e,f,g){switch(b.placement){case"template":if(!d.structure.parent)throw d.error('Directive "'+a+'" can only be used within a "template" or "proto"');break;case"global":if(d.structure.parent)throw d.error('Directive "'+a+'" can be used only within the global space');break;default:if(b.placement&&d.hasParent(b.placement))throw d.error('Directive "'+a+'" can be used only within a "'+b.placement+'"')}if(b.notEmpty&&!e)throw this.error('Invalid syntax, directive "'+a+'" should have a body');if(d.name=a,d.strongDir&&z[d.strongDir][a]&&(d.returnStrongDir={child:a,dir:d.strongDir},d.strongDir=null,d.strongSpace=!1),b.text&&(d.text=!0),c.call(d,e,f,g),d.inlineDir===!0){var h=d.structure.name;d.inlineDir=null,d.structure=d.structure.parent,d.blockStructure&&"const"===h&&(d.blockStructure=d.blockStructure.parent)}z[a]&&(d.strongDir=a,d.strongSpace=!0)},Snakeskin.Directions[a+"End"]=d};var H={"+":!0,"++":!0,"-":!0,"--":!0,"~":!0,"~~":!0,"!":!0,"!!":!0,arguments:!0,"break":!0,"case":!0,"catch":!0,"continue":!0,"delete":!0,"do":!0,"else":!0,"false":!0,finnaly:!0,"for":!0,"function":!0,"if":!0,"in":!0,"instanceof":!0,"new":!0,"null":!0,"return":!0,"switch":!0,"this":!0,"throw":!0,"true":!0,"try":!0,"typeof":!0,"var":!0,"const":!0,let:!0,"void":!0,"while":!0,"with":!0,"class":!0,"debugger":!0,"interface":!0},I={"new":!0},J={"var":!0,"const":!0,let:!0};b.prototype.replaceTplVars=function(a){a=this.pasteDangerBlocks(a);for(var b,c,d=0,e="",f=!1,g=!0,h=!1,i=function(a){return a.replace(/\\/gm,"\\\\").replace(/('|")/gm,"\\$1")},j=/[\r\n\v]/,k=/[^\s\/]/,l="",m=0;m<a.length;m++){var n=a.charAt(m),o=n+a.charAt(m+1);if(d||"${"!==o){if(d||(l+=i(n)),d){if(("\\"===n||f)&&(f=!f),!f){var p=o+a.charAt(m+2);if("/"===n){if("///"===p)b="///",m+=2;else if("/*"===o)b="/*",m++;else if("*"===a.charAt(m-1)&&"/*"===b){b=!1;continue}}else j.test(n)&&"///"===b&&(b=!1)}if(b)continue;c||(F[n]?g=!0:k.test(n)&&(g=!1)),E[n]&&("/"===n?g:!0)&&!c?c=n:c&&("\\"===n||h)?h=!h:E[n]&&c===n&&!h&&(c=!1),c||("{"===n?d++:"}"===n&&d--),d?e+=n:(f=!1,l+="' + "+this.prepareOutput(this.replaceDangerBlocks(e))+" + '")}}else d++,e="",m++}return l},b.prototype.isSyOL=function(a,b,c){for(var d,e=/\S/,f=b;f--;){var g=a.charAt(f);if(e.test(g)){d="?"===g;break}}if(!d)for(var h=c;h<a.length;h++){var i=a.charAt(h);if(e.test(i))return":"===i}return!1},b.prototype.isNextAssign=function(a,b){for(var c=/\S/,d=b;d<a.length;d++){var e=a.charAt(d);if(c.test(e))return"="===e&&"="!==a.charAt(d+1)}return!1},b.prototype.getWord=function(a,b){for(var c="",d="",e={"(":!0,"[":!0},f={")":!0,"]":!0},g=0,h=0,i=null,j=0,k=0,l=/[@#$+\-~!\w\[\]().]/,m=b;m<a.length;m++,k++){var n=a.charAt(m);if(!(g||l.test(n)||" "===n&&I[c]))break;if(null!==i&&(g>1||1===g&&!f[n])&&(i+=n),e[n])null===i&&(h=k+1,i=""),g++;else if(f[n]){if(!g)break;g--,g||(d=d?d.substring(0,h+j)+(i&&this.prepareOutput(i,!0))+d.substring(k+j+i.length):c.substring(0,h)+(i&&this.prepareOutput(i,!0))+c.substring(k),j=d.length-c.length,i=null)}c+=n,d&&(d+=n)}return{word:c,finalWord:d||c}},b.prototype.prepareOutput=function(a,b,c,d){function e(a){if(K.test(a)){var b=L.exec(a);b[1]=b[1].replace(M,N),a=b.slice(1).join("")}else a=a.replace(M,N);return a}function f(a){if(K.test(a)){var b=L.exec(a);a=b[1]}var c=M.exec(a);return c?c[0]:null}var g=a,h=0,i=0,j=[],k=!1,l=!1,m=[],n=[],o=!d,p=0,q=this.scope,r=!!q.length,s=0,u=0,w=0,x=!1,y=this.structure.childs?this.structure.vars:this.structure.parent.vars,z=/([$\w]*)(.*)/,A=/^__ESCAPER_QUOT__\d+_/,B=/Snakeskin\.Filters/,C=/[@#$+\-~!\w]/i,D=/[^@#$\w\[\].]/,E=/[!$a-z_]/i,F=/[0-9]/,G=/#(?:\d+|)/,I=/#(\d+)/,K=/\[|\./,L=/([^.[]+)(.*)/,M=/[^-+!]+/,N=function(a){return y[a]?y[a].value:a};if(!a)throw this.error("Invalid syntax");for(var O=a.length,P=0;O>P;P++){var Q,R,S=a.charAt(P),T=a.charAt(P+1),U=a.charAt(P+2);if(!R){if("("===S&&(k?i++:(j.unshift([P+u]),h++)),o&&!p&&C.test(S)){var V,W,X=this.getWord(a,P),Y=X.word,Z=X.finalWord,$=u+s,_=!(H[Y]||i||B.test(Y)||Q||!isNaN(Number(Y))||A.test(Y)||this.isSyOL(a,P,P+Y.length));if(F.test(S))V=Z;else if("@"===S&&_)r?(V=Z.substring("@"===T?2:1),W=z.exec(V),V="@"===T?"Snakeskin.Vars['"+W[1]+"']"+W[2]:e(V)):(W=z.exec(Z.substring("@"===T?2:1)),V="Snakeskin.Vars['"+W[1]+"']"+W[2]);else{var ab=Z.replace(G,"");if(_&&r){var bb=y[f(ab)];if(bb&&bb.useWith)V=e(ab);else{var cb=null;"#"===S&&(cb=I.exec(Z),cb=cb?cb[1]:1,cb++);var db=q[0];q.push(ab);var eb=cb=cb?q.length-cb:cb,fb=q.length;if(null!==cb&&0>=cb)V=e(ab);else{V=e(db);for(var gb=1;fb>gb;gb++)cb=cb?cb-1:cb,null===cb||cb>0?V+="."+q[gb]:gb===fb-1&&(V=(eb>0?V+".":"")+q[gb])}q.pop()}}else V=_?e(ab):ab}if(_&&this.isNextAssign(a,P+Y.length)&&(t[this.tplName][V]||v[this.tplName][V]))throw this.error('Constant "'+V+'" is already defined');if(J[Z]?p=2:!_||b&&!c||(V="Snakeskin.Filters.undef("+V+")"),u+=V.length-Y.length,o=!1,k){var hb=m.length-1;m[hb]+=V,n[hb]+=Y,w+=V.length-Y.length}else g=g.substring(0,P+$)+V+g.substring(P+Y.length+$);P+=Y.length-2,R=1;continue}if(D.test(S)&&(o=!0,p>0&&p--),k){if(")"!==S||i){var ib=m.length-1;m[ib]+=S,n[ib]+=S}}else if(")"===S){if("|"!==T||!E.test(U)){h&&h--,j.shift();continue}l=!0}}if(P===O-1&&h&&")"!==S)throw this.error("Missing closing or opening parenthesis in the template");if(k&&!i&&(")"===S||P===O-1)){for(var jb=j[0],kb=u-w+s,lb=g.substring(jb[0]+(h?s:0),jb[1]+kb),mb=[],nb=0;nb<m.length;nb++)"!html"!==m[nb]?mb.push(m[nb]):h||(x=!0);m=mb;for(var ob=lb,pb=0;pb<m.length;pb++){for(var qb=m[pb].split(" "),rb=qb.slice(1).join("").trim(),sb=qb.shift().split("."),tb="",ub=0;ub<sb.length;ub++)tb+="['"+sb[ub]+"']";ob="($_ = Snakeskin.Filters"+tb+(l||!h?"(":"")+ob+(rb?","+rb:"")+(l||!h?")":"")+")"}var vb=n.join().length+1;g=h?g.substring(0,jb[0]+s)+ob+g.substring(jb[1]+kb+vb):ob,j.shift(),m=[],n=[],k=!1,h&&(h--,l=!1),u+=ob.length-lb.length-vb,h||(s+=u-w,u=0,w=0)}if(")"===S&&i&&!R&&(i--,!i)){var wb=m.length-1,xb=m[wb];m[wb]=this.prepareOutput(xb,!0,null,!0),u+=m[wb].length-xb.length,w+=m[wb].length-xb.length,P===O-1&&(P--,R=1)}Q="|"===S,R&&R--,"|"===T&&E.test(U)&&(o=!1,k||(h?j[0].push(P+1):j.push([0,P+1])),k=!0,i||(m.push(U),n.push(U),P+=2))}return(x||b?"":"Snakeskin.Filters.html(")+g+(x||b?"":")")};Snakeskin.addDirective("setBEM",{placement:"global",notEmpty:!0},function(a){this.startInlineDir();var b=a.match(/(.*?),\s+(.*)/);try{B[b[1]]=new Function("return {"+this.pasteDangerBlocks(b[2])+"}")()}catch(c){throw this.error("Invalid syntax")}}),Snakeskin.addDirective("bem",{placement:"template",notEmpty:!0,text:!0},function(a){if(this.startDir(null,{tag:/^\(/.test(a)?/\((.*?)\)/.exec(a)[1]:null}),this.isSimpleOutput()){var b=this.structure.params;a=b.tag?a.replace(/^.*?\)(.*)/,"$1"):a;var c=a.trim().split(","),d=c[0];b.original=B[d]&&B[d].tag,c[0]+="'",a=c.join(","),this.save("__SNAKESKIN_RESULT__ += '<"+(b.tag||b.original||"div")+' class="i-block" data-params="{name: \\\''+this.replaceTplVars(a.replace(/\s+/g," "))+"}\">';")}},function(){if(this.isSimpleOutput()){var a=this.structure.params;this.save("__SNAKESKIN_RESULT__ += '</"+(a.tag||a.original||"div")+">';")}});Snakeskin.addDirective("block",{placement:"template",sys:!0,notEmpty:!0},function(a){if(this.startDir(null,{name:a}),this.isAdvTest()){if(q[this.tplName][a])throw this.error('Block "'+a+'" is already defined');q[this.tplName][a]={from:this.i-this.startTemplateI+1}}},function(a,b){if(this.isAdvTest()){var c=q[this.tplName][this.structure.params.name];c.to=this.i-this.startTemplateI-b-1,c.content=this.source.substring(this.startTemplateI).substring(c.from,c.to)}});Snakeskin.addDirective("call",{placement:"template",notEmpty:!0,text:!0},function(a){this.startInlineDir(),this.isSimpleOutput()&&this.save("__SNAKESKIN_RESULT__ += "+this.prepareOutput(a,!0)+";")});Snakeskin.addDirective("const",null,function(a,b){var c=this.tplName,d=/^[@#$a-z_][$\w\[\].'"\s]*=[^=]/i,e=this.scope.length?d:/^[$a-z_][$\w\[\].'"\s]*=[^=]/i;if(e.test(a)){var f=a.split("=");if(!f[1]||!f[1].trim())throw this.error("Invalid syntax");var g=f[0].trim(),h=g.charAt(0);if("#"===h||"@"===h)throw this.error("Can't declare constant \""+g+'" with the context modifier');if(this.structure.parent){if(this.startInlineDir("const",{name:g}),this.isSimpleOutput()&&this.save(this.prepareOutput((/[.\[]/.test(g)?"":"var ")+a+";",!0)),this.isAdvTest()){if(t[c][g]?!t[c][g].tmp:v[c][g])throw this.error('Constant "'+g+'" is already defined');if(this.varCache[c][g])throw this.error('Constant "'+g+'" is already defined as variable');if(D[g])throw this.error("Can't declare constant \""+g+'", try another name');t[c][g]={from:this.i-this.startTemplateI-b,to:this.i-this.startTemplateI},u[c]=this.i-this.startTemplateI+1}}else this.startInlineDir("globalVar"),this.save("if (typeof Snakeskin !== 'undefined') { Snakeskin.Vars."+this.prepareOutput(a,!0,null,!0)+"; }")}else{if(!this.structure.parent)throw this.error('Directive "output" can only be used within a "template" or "proto"');if(this.startInlineDir("output"),this.isSimpleOutput()){if(this.text=!0,/^[@#$a-z_][$\w\[\].'"\s+-\/*><^]*=[^=]/.test(a))return void this.save(this.prepareOutput(a,!0)+";");this.save("__SNAKESKIN_RESULT__ += "+this.prepareOutput(a)+";")}}});Snakeskin.addDirective("for",{placement:"template",notEmpty:!0},function(a){if(this.startDir(),this.isSimpleOutput()){var b=a.split(";");if(3!==b.length)throw this.error("Invalid syntax");var c=/var /;this.save("for ("+(c.test(b[0])?this.multiDeclVar(b[0].replace(c,"")):this.prepareOutput(b[0],!0))+this.prepareOutput(b.slice(1).join(";"),!0)+") {")}}),Snakeskin.addDirective("while",{placement:"template",notEmpty:!0},function(a){"do"==this.structure.name?(this.isSimpleOutput()&&this.save("} while ("+this.prepareOutput(a,!0)+");"),Snakeskin.Directions.end(this)):(this.startDir(),this.isSimpleOutput()&&this.save("while ("+this.prepareOutput(a,!0)+") {"))}),Snakeskin.addDirective("repeat",{placement:"template",sys:!0},function(){this.startDir(),this.isSimpleOutput()&&this.save("do {")}),Snakeskin.addDirective("do",{placement:"template",sys:!0},function(){this.startDir(),this.isSimpleOutput()&&this.save("do {")}),Snakeskin.addDirective("until",{placement:"template",notEmpty:!0},function(a){if("repeat"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "repeat"');this.isSimpleOutput()&&this.save("} while ("+this.prepareOutput(a,!0)+");"),Snakeskin.Directions.end(this)}),Snakeskin.addDirective("break",{placement:"template"},function(){if(this.startInlineDir(),!this.hasParent({repeat:!0,"while":!0,"do":!0,forEach:!0,forIn:!0}))throw this.error('Directive "'+this.name+'" can only be used with a cycles');this.isSimpleOutput()&&(this.save("break;"),this.space=!0)}),Snakeskin.addDirective("continue",{placement:"template"},function(){if(this.startInlineDir(),!this.hasParent({repeat:!0,"while":!0,"do":!0,forEach:!0,forIn:!0}))throw this.error('Directive "'+this.name+'" can only be used with a cycles');this.isSimpleOutput()&&(this.save("continue;"),this.space=!0)});Snakeskin.addDirective("data",{placement:"template",notEmpty:!0,text:!0,replacers:{"=":function(a){return a.replace(/^=/,"data ")}}},function(a){this.startInlineDir(),this.isSimpleOutput()&&this.save("__SNAKESKIN_RESULT__ += '"+this.replaceTplVars(a)+"';")}),Snakeskin.addDirective("decl",{placement:"template",notEmpty:!0,text:!0,replacers:{"{":function(a){return a.replace(/^\{/,"decl ")}}},function(a){if(this.startInlineDir(),this.isSimpleOutput()){a=this.replaceTplVars(a);var b,c=/^\{+/.exec(a)||[""],d=/\}+$/.exec(a)||[""];try{b=new Array(d[0].length-c[0].length+1).join("{")}catch(e){throw this.error("Invalid syntax")}this.save("__SNAKESKIN_RESULT__ += '{"+b+a+"}';")}}),Snakeskin.addDirective("attr",{placement:"template",notEmpty:!0,text:!0},function(a){if(this.startInlineDir(),this.isSimpleOutput()){var b=a.match(/(.*?),\s+(.*)/);if(!b)throw this.error("Invalid syntax");b[1]="-"===b[1].charAt(0)?"'data-' + "+b[1].slice(1):b[1],b[2]=this.prepareOutput(b[2],!0),this.save("if ("+b[2]+") {__SNAKESKIN_RESULT__ += ' ' + "+b[1]+" + '=\"' + ("+b[2]+") + '\"';}")}});Snakeskin.addDirective("end",{replacers:{"/":function(a){return a.replace(/^\//,"end ")}}},function(a){var b=this.structure;if(!b.parent)throw this.error('Invalid call "end"');if(a&&a!==b.name)throw this.error("Invalid closing tag, expected: "+b.name+", declared: "+a);z[b.name]&&(this.strongDir=null,this.strongSpace=!1),this.returnStrongDir&&this.returnStrongDir.child===b.name&&(this.strongDir=this.returnStrongDir.dir,this.strongSpace=!0,this.returnStrongDir=null),Snakeskin.Directions[b.name+"End"]?Snakeskin.Directions[b.name+"End"].apply(this,arguments):!b.sys&&this.isSimpleOutput()&&this.save("};"),this.endDir()});Snakeskin.addDirective("super",{placement:"template"},function(a,b){var c={block:!0,proto:!0,"const":!0};if(this.parentTplName){for(var d,e=this.blockStructure;;){if(c[e.name]){switch(e.name){case"proto":d=r[this.parentTplName][e.params.name];break;case"block":d=q[this.parentTplName][e.params.name]}if(d)break}if(!e.parent||"root"===e.parent.name)break;e=e.parent}d&&(this.source=this.source.substring(0,this.i-b-1)+d.content+this.source.substring(this.i+1),this.i-=b+1)}});Snakeskin.addDirective("forEach",{placement:"template",notEmpty:!0},function(a){var b=this;if(this.startDir(),this.isSimpleOutput()){var c=a.split("=>"),d=c[0];if(c.length>2)throw this.error("Invalid syntax");var e=c[1]?c[1].trim().split(","):[],f=this.multiDeclVar("__TMP__ = "+d),g=this.prepareOutput("__TMP__",!0),h="";e.length>=6&&(h+=this.multiDeclVar("__TMP_LENGTH__ = 0")+"for ("+this.multiDeclVar("__KEY__",!1)+"in "+g+") {if (!"+g+".hasOwnProperty("+this.prepareOutput("__KEY__",!0)+")) {continue;}"+this.prepareOutput("__TMP_LENGTH__++;",!0)+"}");var i=f+"if ("+g+") {if (Array.isArray("+g+")) {"+this.multiDeclVar("__TMP_LENGTH__ = __TMP__.length")+"for ("+this.multiDeclVar("__I__ = -1")+this.prepareOutput("++__I__ < __TMP_LENGTH__;",!0)+") {"+function(){for(var a="",c=0;c<e.length;c++)switch(c){case 0:a+=b.multiDeclVar(e[c]+" = __TMP__[__I__]");break;case 1:a+=b.multiDeclVar(e[c]+" = __I__");break;case 2:a+=b.multiDeclVar(e[c]+" = __TMP__");break;case 3:a+=b.multiDeclVar(e[c]+" = __I__ === 0");break;case 4:a+=b.multiDeclVar(e[c]+" = __I__ === __TMP_LENGTH__ - 1");break;case 5:a+=b.multiDeclVar(e[c]+" = __TMP_LENGTH__")}return a}(),j="} else {"+h+this.multiDeclVar("__I__ = -1")+"for ("+this.multiDeclVar("__KEY__",!1)+"in "+g+") {if (!"+g+".hasOwnProperty("+this.prepareOutput("__KEY__",!0)+")) {continue;}"+this.prepareOutput("__I__++;",!0)+function(){for(var a="",c=0;c<e.length;c++)switch(c){case 0:a+=b.multiDeclVar(e[c]+" = __TMP__[__KEY__]");break;case 1:a+=b.multiDeclVar(e[c]+" = __KEY__");break;case 2:a+=b.multiDeclVar(e[c]+" = __TMP__");break;case 3:a+=b.multiDeclVar(e[c]+" = __I__");break;case 4:a+=b.multiDeclVar(e[c]+" = __I__ === 0");break;case 5:a+=b.multiDeclVar(e[c]+" = __I__ === __TMP_LENGTH__ - 1");break;case 6:a+=b.multiDeclVar(e[c]+" = __TMP_LENGTH__")}return a}();this.save(i),this.structure.params={from:this.res.length,end:j}}},function(){if(this.isSimpleOutput()){var a=this.structure.params;this.save("}"+a.end+this.res.substring(a.from)+"}}}")}}),Snakeskin.addDirective("$forEach",{placement:"template",notEmpty:!0},function(a){var b=a.split("=>");if(b.length>3)throw this.error("Invalid syntax");if(this.startDir(null,{params:b[2]?b[1]:null}),this.isSimpleOutput()){for(var c=(b[2]||b[1]||"").split(","),d=0;d<c.length;d++){var e=c[d].trim();e&&(c[d]=this.declVar(e))}this.save("$C("+this.prepareOutput(b[0],!0)+").forEach(function ("+c.join(",")+") {")}},function(){if(this.isSimpleOutput()){var a=this.structure.params.params;this.save(a?"}, "+this.prepareOutput(a,!0)+");":"});")}}),Snakeskin.addDirective("forIn",{placement:"template",notEmpty:!0},function(a){var b=this;if(this.startDir(),this.isSimpleOutput()){var c=a.split("=>"),d=c[0];if(c.length>2)throw this.error("Invalid syntax");var e=c[1]?c[1].trim().split(","):[],f=this.multiDeclVar("__TMP__ = "+d),g=this.prepareOutput("__TMP__",!0),h="";e.length>=6&&(h+=this.multiDeclVar("__TMP_LENGTH__ = 0")+"for ("+this.multiDeclVar("key",!1)+"in "+g+") {"+this.prepareOutput("__TMP_LENGTH__++;",!0)+"}");var i=f+"if ("+g+") {"+h+this.multiDeclVar("__I__ = -1")+"for ("+this.multiDeclVar("__KEY__",!1)+"in "+g+") {"+this.prepareOutput("__I__++;",!0)+function(){for(var a="",c=0;c<e.length;c++)switch(c){case 0:a+=b.multiDeclVar(e[c]+" = __TMP__[__KEY__]");break;case 1:a+=b.multiDeclVar(e[c]+" = __KEY__");break;case 2:a+=b.multiDeclVar(e[c]+" = __TMP__");break;case 3:a+=b.multiDeclVar(e[c]+" = __I__");break;case 4:a+=b.multiDeclVar(e[c]+" = __I__ === 0");break;case 5:a+=b.multiDeclVar(e[c]+" = __I__ === __TMP_LENGTH__ - 1");break;case 6:a+=b.multiDeclVar(e[c]+" = __TMP_LENGTH__")}return a}();this.save(i)}},function(){this.isSimpleOutput()&&this.save("}}")});Snakeskin.addDirective("if",{placement:"template",notEmpty:!0},function(a){this.startDir(),this.isSimpleOutput()&&this.save("if ("+this.prepareOutput(a,!0)+") {")}),Snakeskin.addDirective("elseIf",{placement:"template",notEmpty:!0},function(a){if("if"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "if"');this.isSimpleOutput()&&this.save("} else if ("+this.prepareOutput(a,!0)+") {")}),Snakeskin.addDirective("else",{placement:"template"},function(){if("if"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "if"');this.isSimpleOutput()&&this.save("} else {")}),Snakeskin.addDirective("switch",{placement:"template",notEmpty:!0,strongDirs:{"case":!0,"default":!0}},function(a){this.startDir(),this.isSimpleOutput()&&this.save("switch ("+this.prepareOutput(a,!0)+") {")}),Snakeskin.addDirective("case",{placement:"template",notEmpty:!0,replacers:{">":function(a){return a.replace(/^>/,"case ")},"/>":function(a){return a.replace(/^\/>/,"end case")}}},function(a){if(!this.has("switch"))throw this.error('Directive "'+this.name+'" can only be used within a "switch"');this.startDir(),this.isSimpleOutput()&&this.save("case "+this.prepareOutput(a,!0)+": {")},function(){this.isSimpleOutput()&&this.save("} break;")}),Snakeskin.addDirective("default",{placement:"template"},function(){if(!this.has("switch"))throw this.error('Directive "'+this.name+'" can only be used within a "switch"');this.startDir(),this.isSimpleOutput()&&this.save("default: {")});Snakeskin.addDirective("__appendLine__",null,function(a){if(!this.structure.parent)throw this.error('Directive "cdata" can only be used within a "template" or "proto"'); | ||
this.startInlineDir("cdata"),this.isSimpleOutput(),this.info.line+=parseInt(a)}),Snakeskin.addDirective("__protoWhile__",null,function(a){if(this.startDir(),this.isSimpleOutput()){var b=this.prepareOutput("__I_PROTO__",!0);r[this.tplName][this.proto.name].i=b,this.save(b+":while ("+this.prepareOutput(a,!0)+") {")}}),Snakeskin.addDirective("__const__",null,function(a,b){var c=a.split("=")[0].trim();this.startInlineDir("const",{name:c}),this.isSimpleOutput()&&this.save(this.prepareOutput("var "+a+";",!0)),this.isAdvTest()&&(t[this.tplName][c]={from:this.i-this.startTemplateI-b,to:this.i-this.startTemplateI,tmp:!0},u[this.tplName]=this.i-this.startTemplateI+1)});b.prototype.protoStart=!1,b.prototype.preProtos={},b.prototype.protoLink=null,b.prototype.returnArgs=function(a,b){for(var c="",d=0;d<a.length;d++){var e=this.prepareOutput(b[d]||"null",!0),f=a[d][0],g=a[d][1];c+="var "+f+" = "+(void 0!==g?e?"typeof "+e+" !== 'undefined' && "+e+" !== null ? "+e+":"+g:g:e||"void 0")+";"}return c},Snakeskin.addDirective("proto",{sys:!0,notEmpty:!0},function(a,b){var c=a.match(/[^(]+/)[0];if(!c)throw this.error("Invalid prototype declaration");var d=c.split("->");if(d[1]&&(c=d[1].trim(),this.tplName||(this.tplName=this.pasteDangerBlocks(d[0]).trim(),this.preProtos[this.tplName]=this.preProtos[this.tplName]||{text:"",line:0},this.preProtos[this.tplName].startLine=this.info.line,this.protoLink=c)),!c||!this.tplName)throw this.error("Invalid prototype declaration");if(this.startDir(null,{name:c,startTemplateI:this.i+1,from:this.i-b-1}),this.isAdvTest()){if(r[this.tplName][c])throw this.error('Proto "'+c+'" is already defined');var e=a.match(/\((.*?)\)/),f=[];if(e)for(var g=e[1].split(","),h=0;h<g.length;h++){var i=g[h].split("=");i[0]=this.declVar(i[0].trim(),!0),f.push(i)}r[this.tplName][c]={length:b,from:this.i-this.startTemplateI+1,argsDecl:e?e[0]:"",args:f,calls:{}}}this.parentTplName||(this.protoStart=!0)},function(a,b){var c=this.tplName,d=this.structure.params;if(this.protoLink===d.name){var e=this.preProtos[this.tplName];e.text+=this.source.substring(d.from,this.i+1),e.line+=this.info.line-e.startLine,this.protoLink=null,this.tplName=null,this.hasParentBlock("proto")||(this.protoStart=!1)}else if(!this.protoLink){var f=r[c][d.name];this.isAdvTest()&&(f.to=this.i-this.startTemplateI-b-1,f.content=this.source.substring(this.startTemplateI).substring(f.from,f.to),s[c]=this.i-this.startTemplateI+1,f.body=Snakeskin.compile("{template "+c+"()}{var __I_PROTO__ = 1}{__protoWhile__ __I_PROTO__--}"+this.source.substring(d.startTemplateI,this.i-b-1)+"{end}{end}",null,null,{scope:this.scope,vars:this.structure.vars,proto:{name:d.name,recursive:d.recursive,parentTplName:this.parentTplName,pos:this.res.length,ctx:this}}));var g=this.backTable[d.name];if(g&&!g.protoStart){for(var h=f.args,i=!0,j=0;j<g.length;j++){var k=g[j];if(this.canWrite)if(k.outer){var l=this.structure.vars;this.structure.vars=k.vars,k.argsStr=this.returnArgs(h,k.args),this.structure.vars=l,i=!1}else this.res=this.res.substring(0,k.pos)+this.returnArgs(h,k.args)+r[c][d.name].body+this.res.substring(k.pos)}i&&(delete this.backTable[d.name],this.backTableI--)}}this.protoLink&&this.protoLink!==d.name||this.hasParentBlock("proto")||(this.protoStart=!1)}),b.prototype.backTable={init:function(){return{}}},b.prototype.backTableI=0,Snakeskin.addDirective("apply",{placement:"template",notEmpty:!0},function(a){if(this.startInlineDir(),this.isSimpleOutput()){var b=/[^(]+/.exec(a)[0],c=/\((.*?)\)/.exec(a),d=r[this.tplName],e=d[b],f="";e&&(f=this.returnArgs(e.args,c?c[1].split(","):[]));var g,h=this.proto;if(h&&(g=e&&e.calls[h.name]),h&&h.name===b)this.save(f+this.prepareOutput("__I_PROTO__++",!0)+";");else if(e&&e.body&&!g)this.save(f+e.body);else{this.backTable[b]||(this.backTable[b]=[],this.backTable[b].protoStart=this.protoStart,this.backTableI++);var i=Math.random()+"";this.backTable[b].push({proto:h?d[h.name]:null,pos:this.res.length,label:new RegExp("\\/\\* __APPLY__"+this.tplName.replace(/([.\[])/g,"\\$1")+"_"+b+"_"+i.replace(".","\\.")+" \\*\\/"),args:c,recursive:!!e||!!g}),this.save("/* __APPLY__"+this.tplName+"_"+b+"_"+i+" */"),h&&!e&&(d[h.name].calls[b]=!0)}}});Snakeskin.addDirective("return",{placement:"template"},function(a){this.startInlineDir(),this.isSimpleOutput()&&(this.space=!0,this.save(this.proto?this.prepareOutput("break __I_PROTO__;",!0):a?this.prepareOutput("return "+a+";",!0):"return __SNAKESKIN_RESULT__;"))});Snakeskin.addDirective("with",{placement:"template",sys:!0,notEmpty:!0},function(a){this.startDir(),this.scope.push(a)},function(){this.scope.pop()});Snakeskin.addDirective("&",{placement:"template"},function(){this.startInlineDir(),this.isSimpleOutput()&&(this.space=!0)}),Snakeskin.addDirective("&+",{placement:"template"},function(){this.startInlineDir(),this.isSimpleOutput()&&(this.superStrongSpace=!0)}),Snakeskin.addDirective("&-",{placement:"template"},function(){this.startInlineDir(),this.isSimpleOutput()&&(this.superStrongSpace=!1)}),Snakeskin.addDirective("ignore",{placement:"global"},function(a){this.startInlineDir();for(var b="[",c=a.split(" "),d=c.length;d--;)if(c[d]){if(2!==c[d].length||"%"!==c[d].charAt(0))throw this.error("Invalid syntax");b+="\\"+c[d].charAt(1)}b+="]",this.ignoreRgxp=new RegExp(b)});b.prototype.startTemplateI=0,b.prototype.startTemplateLine=null,b.prototype.tplName=null,b.prototype.parentTplName=null;var K,L;Snakeskin.addDirective("template",{placement:"global",notEmpty:!0},K=function(b,c,d){this.startDir(),this.startTemplateI=this.i+1,this.startTemplateLine=this.info.line;try{var e=/(.*?)\(/.exec(b)[1],f=this.pasteDangerBlocks(e)}catch(g){throw this.error("Invalid syntax")}if(!f)throw this.error("Invalid syntax");var h="interface"===this.name;if(this.info.template=f,"template"!==this.name&&(C[f]||(C[f]=!1)),this.tplName=f,this.blockStructure={name:"root",parent:null,childs:[]},this.blockTable={},this.varCache[f]={},!this.proto){var i;if(/\s+extends\s+/m.test(b)){try{i=this.pasteDangerBlocks(/\s+extends\s+(.*)/m.exec(b)[1]),this.parentTplName=i}catch(g){throw this.error("Invalid syntax")}if(void 0===o[i])throw this.error('The specified template ("'+i+'" -> "'+f+'") for inheritance is not defined')}this.initTemplateCache(f),x[f]=i;try{var j=/\((.*?)\)/.exec(b)[1]}catch(g){throw this.error("Invalid syntax")}var k="";if(this.save(k="/* Snakeskin template: "+f+"; "+j.replace(/=(.*?)(?:,|$)/g,"")+" */",h,d),d&&(d+=k.length),/\.|\[/m.test(e)||this.commonJS){for(var l="",m=/^__ESCAPER_QUOT__\d+_/,n=e.replace(/\[/gm,".").replace(/]/gm,"").split("."),p=n[0],q=n.length,r=1;q>r;r++){var s=n[r];this.save(k="if (typeof "+(this.commonJS?"exports.":"")+p+" === 'undefined') { "+(this.commonJS?"exports.":1===r?a?"var ":"window.":"")+p+" = {};}",h,d),d&&(d+=k.length),m.test(s)?p+="["+s+"]":(r===q-1&&(l=s),p+="."+s)}this.save((this.commonJS?"exports.":"")+e+"= function "+l+"(",h)}else this.save((a?"":"window."+e+" = ")+"function "+e+"(",h);for(var t=j.split(","),u=w[i],y=w[f]={},z=0;z<t.length;z++){var A=t[z].split("=");A[0]=A[0].trim(),y[A[0]]={i:z,key:A[0],value:A[1]&&this.pasteDangerBlocks(A[1].trim())}}if(u)for(var B in u)if(u.hasOwnProperty(B)){var D=u[B],E=y[B];void 0!==D.value&&(y[B]?E&&void 0===E.value&&(y[B].value=D.value):y[B]={local:!0,i:D.i,key:B,value:D.value})}t=[];var F=[];for(var G in y)if(y.hasOwnProperty(G)){var H=y[G];H.local?F[H.i]=H:t[H.i]=H}for(var I="",J=0;J<t.length;J++){var K=t[J];this.save(K.key,h),v[f][K.key]=K,void 0!==K.value&&(I+=K.key+" = "+K.key+" !== void 0 && "+K.key+" !== null ? "+K.key+" : "+this.prepareOutput(K.value,!0)+";"),J!==t.length-1?this.save(",",h):this.save(") {",h)}for(var L="",M=0;M<F.length;M++){var N=F[M];N&&(L+="{__const__ "+N.key+" = "+N.value+"}")}L&&(this.source=this.source.substring(0,this.i+1)+L+this.source.substring(this.i+1)),this.save(I+"var __SNAKESKIN_RESULT__ = '', $_;"),this.save("var TPL_NAME = '"+this.applyDefEscape(this.pasteDangerBlocks(e))+"';var PARENT_TPL_NAME;"),i&&this.save("PARENT_TPL_NAME = '"+this.applyDefEscape(this.pasteDangerBlocks(i))+"';"),x[f]&&!i||!this.preProtos[f]||(this.source=this.source.substring(0,this.i+1)+this.preProtos[f].text+this.source.substring(this.i+1),this.info.line-=this.preProtos[f].line,delete this.preProtos[f])}},L=function(a,b){var c=this.tplName;if(this.backTableI&&this.proto){var d=Object(this.backTable),e=this.proto.ctx;e.backTableI+=this.backTableI;for(var f in d)if(d.hasOwnProperty(f)){for(var g=0;g<d[f].length;g++){var h=d[f][g];h.pos+=this.proto.pos,h.outer=!0,h.vars=this.structure.vars}e.backTable[f]=e.backTable[f]?e.backTable[f].concat(d[f]):d[f]}}if(!this.proto){if(o[c]=this.source.substring(this.startTemplateI,this.i-b-1),p[c]=this.blockTable,this.parentTplName)return this.info.line=this.startTemplateLine,this.source=this.source.substring(0,this.startTemplateI)+this.getExtStr(c)+this.source.substring(this.i-b-1),this.initTemplateCache(c),this.startDir(this.structure.name),this.i=this.startTemplateI-1,void(this.parentTplName=null);if(this.backTableI){var i=Object(this.backTable);for(var j in i)if(i.hasOwnProperty(j))for(var k=0;k<i[j].length;k++){var l=i[j][k];if(l.outer){var m=r[c][j];if(!m)throw this.error('Proto "'+j+'" is not defined');this.res=this.res.substring(0,l.pos)+this.res.substring(l.pos).replace(l.label,(l.argsStr||"")+(l.recursive?m.i+"++;":m.body))}}this.backTable={}}var n="interface"===this.structure.name;n?this.save("};",!0):this.save("return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['"+this.applyDefEscape(this.pasteDangerBlocks(c))+"'] = "+(this.commonJS?"exports.":"")+c+";}"),this.save("/* Snakeskin template. */",n),this.canWrite=!0,this.tplName=null,delete this.info.template}}),Snakeskin.addDirective("placeholder",{placement:"global",notEmpty:!0},K,L),Snakeskin.addDirective("interface",{placement:"global",notEmpty:!0},K,L);Snakeskin.addDirective("try",{placement:"template"},function(){this.startDir(),this.isSimpleOutput()&&this.save("try {")}),Snakeskin.addDirective("catch",{placement:"template",notEmpty:!0},function(a){if("try"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "try"');this.isSimpleOutput()&&this.save("} catch ("+this.declVar(a)+") {")}),Snakeskin.addDirective("finally",{placement:"template"},function(){if("try"!==this.structure.name)throw this.error('Directive "'+this.name+'" can only be used with a "try"');this.isSimpleOutput()&&this.save("} finally {")});b.prototype.varCache={init:function(){return{}}},Snakeskin.addDirective("var",{placement:"template",notEmpty:!0,replacers:{":":function(a){return a.replace(/^:/,"var ")}}},function(a){this.startInlineDir(),this.isSimpleOutput()&&this.save(this.multiDeclVar(a))});Snakeskin.addDirective("void",{placement:"template",notEmpty:!0,replacers:{"?":function(a){return a.replace(/^\?/,"void ")}}},function(a){if(/(?:^|\s+)(?:var|const|let) /.test(a))throw this.error('Can\'t declare variables within "void"');this.startInlineDir(),this.isSimpleOutput()&&this.save(this.prepareOutput(a,!0)+";")}),a&&(module.exports=Snakeskin)}("undefined"==typeof window); |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
module.exports = function (grunt) { | ||
@@ -8,0 +3,0 @@ |
#!/usr/bin/env node | ||
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.1.0 | ||
*/ | ||
global.Snakeskin = require('./snakeskin'); | ||
@@ -10,0 +5,0 @@ var Program = require('commander'); |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.2.0 | ||
*/ | ||
/** | ||
@@ -146,3 +141,2 @@ * Объект управления директивами | ||
return '' + | ||
// Количество добавляемых строк | ||
@@ -178,11 +172,19 @@ '{__appendLine__ ' + (data.match(/[\n\r]/g) || '').length + '}' + | ||
/** | ||
* Добавить строку в результирующую строку JavaScript | ||
* Добавить указанную строку в результирующую строку JavaScript | ||
* | ||
* @param {string} str - исходная строка | ||
* @param {?boolean=} [opt_interface=false] - если true, то идёт запись интерфейса шаблона | ||
* @param {(boolean|number)=} [opt_jsDoc] - позиция предущей декларации jsDoc или false | ||
* @return {boolean} | ||
*/ | ||
DirObj.prototype.save = function (str) { | ||
DirObj.prototype.save = function (str, opt_interface, opt_jsDoc) { | ||
var __NEJS_THIS__ = this; | ||
if (!this.tplName || write[this.tplName] !== false) { | ||
this.res += str; | ||
if (!this.tplName || write[this.tplName] !== false || opt_interface) { | ||
if (opt_jsDoc) { | ||
this.res = this.res.substring(0, opt_jsDoc) + str + this.res.substring(opt_jsDoc); | ||
} else { | ||
this.res += str; | ||
} | ||
return true; | ||
@@ -394,3 +396,3 @@ } | ||
/** | ||
* Проверить начилие директивы в цепочке структуры, | ||
* Проверить начилие указанной директивы в цепочке структуры, | ||
* начиная с активной | ||
@@ -420,3 +422,3 @@ * | ||
/** | ||
* Проверить начилие директивы в цепочке структуры | ||
* Проверить начилие указанной директивы в цепочке структуры | ||
* (начальная активная директива исключается) | ||
@@ -437,3 +439,3 @@ * | ||
/** | ||
* Проверить начилие директивы в цепочке блочной структуры | ||
* Проверить начилие указанной директивы в цепочке блочной структуры | ||
* (начальная активная директива исключается) | ||
@@ -454,3 +456,3 @@ * | ||
/** | ||
* Декларировать переменную | ||
* Декларировать указанную переменную | ||
* | ||
@@ -487,3 +489,3 @@ * @param {string} varName - название переменной | ||
/** | ||
* Парсить строку декларации переменных, провести декларацию | ||
* Парсить указанную строку декларации переменных, провести инициализацию, | ||
* и вернуть результирующий вариант для шаблона | ||
@@ -490,0 +492,0 @@ * |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.3 | ||
*/ | ||
/** | ||
* Скомпилировать указанные шаблоны | ||
* | ||
* @param {(!Element|string)} src - ссылка на DOM узел, где лежат шаблоны, или исходный текст шаблонов | ||
* @param {(!Element|string)} src - ссылка на DOM узел, где декларированны шаблоны, или исходный текст шаблонов | ||
* | ||
* @param {Object=} [opt_params] - дополнительные параметры запуска или если true, | ||
* @param {Object=} [opt_params] - дополнительные параметры запуска, или если true, | ||
* то шаблон компилируется с экспортом в стиле commonJS | ||
@@ -29,5 +24,5 @@ * | ||
*/ | ||
Snakeskin.compile = function (src, opt_params, opt_info,opt_sysParams) { | ||
Snakeskin.compile = function (src, opt_params, opt_info, opt_sysParams) { | ||
var __NEJS_THIS__ = this; | ||
if (typeof opt_sysParams === "undefined") { opt_sysParams = {}; } | ||
opt_sysParams = opt_sysParams || {}; | ||
var isObj = opt_params && !(typeof opt_params === 'boolean' || opt_params instanceof Boolean === true); | ||
@@ -97,6 +92,7 @@ | ||
// Если true, то значит идёт JSDoc | ||
var jsDoc = false; | ||
var jsDoc = false, | ||
jsDocStart = false; | ||
// Флаги для обработки литералов строк и регулярных выражений внутри директивы | ||
var bOpen, | ||
var bOpen = false, | ||
bEnd, | ||
@@ -184,2 +180,3 @@ bEscape = false; | ||
jsDoc = true; | ||
jsDocStart = dir.res.length; | ||
@@ -260,3 +257,4 @@ } else { | ||
commandLength | ||
commandLength, | ||
jsDocStart | ||
); | ||
@@ -268,2 +266,3 @@ | ||
jsDocStart = false; | ||
dir.text = false; | ||
@@ -270,0 +269,0 @@ |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** @namespace */ | ||
var Snakeskin = { | ||
/** | ||
* Версия движка | ||
* Версия Snakeskin | ||
* @type {!Array} | ||
*/ | ||
VERSION: [3, 2, 5], | ||
VERSION: [3, 3, 0], | ||
@@ -15,0 +10,0 @@ /** |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.1.0 | ||
*/ | ||
/** | ||
* Добавить новую директиву в пространство имён шаблонизатора | ||
* Добавить новую директиву в пространство имён Snakeskin | ||
* | ||
* @param {string} name - название директивы | ||
* @param {string} name - название добавляемой директивы | ||
* @param {Object} params - дополнительные параметры | ||
* | ||
* @param {?boolean=} [params.text=false] - если true, то декларируется, что директива выводится как текст | ||
* @param {?string=} [params.placement] - если указано, то делается проверка, | ||
* @param {?string=} [params.placement] - если указано, то делается проверка | ||
* где именно размещена директива ('global', 'template', ...) | ||
@@ -23,4 +18,4 @@ * | ||
* | ||
* @param {function(this:DirObj, string, number)} constr - конструктор директивы | ||
* @param {?function(this:DirObj, string, number)=} opt_end - окончание директивы | ||
* @param {function(this:DirObj, string, number, (boolean|number))} constr - конструктор директивы | ||
* @param {?function(this:DirObj, string, number, (boolean|number))=} opt_end - окончание (деструктор) директивы | ||
*/ | ||
@@ -45,3 +40,3 @@ Snakeskin.addDirective = function (name, params, constr, opt_end) { | ||
strongDirs[name] = params.strongDirs; | ||
Snakeskin.Directions[name] = function (dir, command, commandLength) { | ||
Snakeskin.Directions[name] = function (dir, command, commandLength, jsDoc) { | ||
var __NEJS_THIS__ = this; | ||
@@ -71,3 +66,3 @@ switch (params.placement) { | ||
if (params.notEmpty && !command) { | ||
throw this.error('Invalid syntax'); | ||
throw this.error('Invalid syntax, directive "' + name + '" should have a body'); | ||
} | ||
@@ -91,3 +86,3 @@ | ||
constr.call(dir, command, commandLength); | ||
constr.call(dir, command, commandLength, jsDoc); | ||
@@ -94,0 +89,0 @@ if (dir.inlineDir === true) { |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.1 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -49,3 +44,2 @@ 'setBEM', | ||
// Получаем параметры инициализации блока и врапим имя кавычками | ||
command = lastBEM.tag ? command.replace(/^.*?\)(.*)/, '$1') : command; | ||
@@ -52,0 +46,0 @@ var parts = command.trim().split(','); |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'block', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'call', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.1 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'const', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'for', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.1 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'data', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'end', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'super', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.1.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'forEach', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'if', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ '__appendLine__', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.1 | ||
*/ | ||
/** | ||
@@ -26,6 +21,6 @@ * Если true, то значит объявляется прототип | ||
/** | ||
* Вернуть строку декларации аргументов прототипа | ||
* Вернуть строку декларации заданных аргументов прототипа | ||
* | ||
* @param {!Array.<!Array>} protoArgs - массив аргументов прототипа [название, значение по умолчанию] | ||
* @param {!Array} args - массив передаваемых аргументов | ||
* @param {!Array} args - массив заданных аргументов | ||
* @return {string} | ||
@@ -69,5 +64,10 @@ */ | ||
var __NEJS_THIS__ = this; | ||
var name = command.match(/[^(]+/)[0], | ||
parts = name.split('->'); | ||
var name = command.match(/[^(]+/)[0]; | ||
if (!name) { | ||
throw this.error('Invalid prototype declaration'); | ||
} | ||
var parts = name.split('->'); | ||
if (parts[1]) { | ||
@@ -91,3 +91,3 @@ name = parts[1].trim(); | ||
if (!name || !this.tplName) { | ||
throw this.error('Invalid syntax'); | ||
throw this.error('Invalid prototype declaration'); | ||
} | ||
@@ -179,2 +179,3 @@ | ||
name: lastProto.name, | ||
recursive: lastProto.recursive, | ||
parentTplName: this.parentTplName, | ||
@@ -275,3 +276,3 @@ pos: this.res.length, | ||
// Рекурсивный вызов прототипа | ||
if (this.proto && this.proto.name === name) { | ||
if (selfProto && selfProto.name === name) { | ||
this.save(argsStr + this.prepareOutput('__I_PROTO__++', true) + ';'); | ||
@@ -278,0 +279,0 @@ |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'return', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'with', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.1.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ '&', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** | ||
@@ -42,3 +37,3 @@ * Номер итерации объявления шаблона | ||
(start = function (command) { | ||
(start = function (command, commandLength, jsDoc) { | ||
var __NEJS_THIS__ = this; | ||
@@ -65,4 +60,6 @@ this.startDir(); | ||
var iface = this.name === 'interface'; | ||
this.info.template = tplName; | ||
if (this.name === 'placeholder') { | ||
if (this.name !== 'template') { | ||
if (!write[tplName]) { | ||
@@ -116,2 +113,4 @@ write[tplName] = false; | ||
var pos = ''; | ||
// Для возможности удобного пост-парсинга, | ||
@@ -121,9 +120,16 @@ // каждая функция снабжается комментарием вида: | ||
this.save( | ||
'/* Snakeskin template: ' + | ||
(pos = '/* Snakeskin template: ' + | ||
tplName + | ||
'; ' + | ||
args.replace(/=(.*?)(?:,|$)/g, '') + | ||
' */' | ||
' */'), | ||
iface, | ||
jsDoc | ||
); | ||
if (jsDoc) { | ||
jsDoc += pos.length; | ||
} | ||
// Декларация функции | ||
@@ -150,7 +156,14 @@ // с пространством имён или при экспорте в common.js | ||
this.save( | ||
'if (typeof ' + (this.commonJS ? 'exports.' : '') + str + ' === \'undefined\') { ' + | ||
(pos = 'if (typeof ' + (this.commonJS ? 'exports.' : '') + str + ' === \'undefined\') { ' + | ||
(this.commonJS ? 'exports.' : i === 1 ? node ? 'var ' : 'window.' : '') + str + ' = {};' + | ||
'}' | ||
'}'), | ||
iface, | ||
jsDoc | ||
); | ||
if (jsDoc) { | ||
jsDoc += pos.length; | ||
} | ||
if (escaperRgxp.test(el)) { | ||
@@ -167,7 +180,13 @@ str += '[' + el + ']'; | ||
this.save((this.commonJS ? 'exports.' : '') + tmpTplName + '= function ' + lastName + '('); | ||
this.save( | ||
(this.commonJS ? 'exports.' : '') + tmpTplName + '= function ' + lastName + '(', | ||
iface | ||
); | ||
// Без простраства имён | ||
} else { | ||
this.save((!node ? 'window.' + tmpTplName + ' = ': '') + 'function ' + tmpTplName + '('); | ||
this.save( | ||
(!node ? 'window.' + tmpTplName + ' = ': '') + 'function ' + tmpTplName + '(', | ||
iface | ||
); | ||
} | ||
@@ -243,3 +262,3 @@ | ||
this.save(el$2.key); | ||
this.save(el$2.key, iface); | ||
constICache[tplName][el$2.key] = el$2; | ||
@@ -254,3 +273,6 @@ | ||
if (i$1 !== argsList.length - 1) { | ||
this.save(','); | ||
this.save(',', iface); | ||
} else { | ||
this.save(') {', iface); | ||
} | ||
@@ -279,3 +301,3 @@ } | ||
this.save(') { ' + defParams + 'var __SNAKESKIN_RESULT__ = \'\', $_;'); | ||
this.save(defParams + 'var __SNAKESKIN_RESULT__ = \'\', $_;'); | ||
this.save( | ||
@@ -385,11 +407,22 @@ 'var TPL_NAME = \'' + this.applyDefEscape(this.pasteDangerBlocks(tmpTplName)) + '\';' + | ||
this.save( | ||
'return __SNAKESKIN_RESULT__; };' + | ||
'if (typeof Snakeskin !== \'undefined\') {' + | ||
'Snakeskin.cache[\'' + | ||
this.applyDefEscape(this.pasteDangerBlocks(tplName)) + | ||
'\'] = ' + (this.commonJS ? 'exports.' : '') + tplName + ';' + | ||
'}/* Snakeskin template. */' | ||
); | ||
var iface = this.structure.name === 'interface'; | ||
if (iface) { | ||
this.save('};', true); | ||
} else { | ||
this.save( | ||
'return __SNAKESKIN_RESULT__; ' + | ||
'};' + | ||
'if (typeof Snakeskin !== \'undefined\') {' + | ||
'Snakeskin.cache[\'' + | ||
this.applyDefEscape(this.pasteDangerBlocks(tplName)) + | ||
'\'] = ' + (this.commonJS ? 'exports.' : '') + tplName + ';' + | ||
'}' | ||
); | ||
} | ||
this.save('/* Snakeskin template. */', iface); | ||
this.canWrite = true; | ||
@@ -412,2 +445,14 @@ this.tplName = null; | ||
end | ||
); | ||
Snakeskin.addDirective( | ||
'interface', | ||
{ | ||
placement: 'global', | ||
notEmpty: true | ||
}, | ||
start, | ||
end | ||
); |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'try', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
DirObj.prototype.varCache = { | ||
@@ -8,0 +3,0 @@ init: function () { |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
Snakeskin.addDirective( | ||
@@ -8,0 +3,0 @@ 'void', |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** | ||
@@ -15,3 +10,3 @@ * Вывести дополнительную информацию об ошибке | ||
var __NEJS_THIS__ = this; | ||
if (typeof opt_obj === "undefined") { opt_obj = this.info; } | ||
opt_obj = opt_obj || this.info; | ||
var str = ''; | ||
@@ -18,0 +13,0 @@ |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
if (!Array.isArray) { | ||
@@ -8,0 +3,0 @@ var toString = Object.prototype.toString; |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.1 | ||
*/ | ||
/** | ||
* Применить к строке стандартное экранирование | ||
* Применить к указанной строке стандартное экранирование Snakeskin | ||
* | ||
@@ -19,3 +14,3 @@ * @param {string} str - исходная строка | ||
/** | ||
* Экранировать символы перевода строки | ||
* Экранировать символы перевода строки в указанной строке | ||
* | ||
@@ -41,3 +36,3 @@ * @param {string} str - исходная строка | ||
* Заметить блоки вида ' ... ', " ... ", / ... /, // ..., /* ... *\/ на | ||
* __ESCAPER_QUOT__номер_ | ||
* __ESCAPER_QUOT__номер_ в указанной строке | ||
* | ||
@@ -53,3 +48,3 @@ * @param {string} str - исходная строка | ||
/** | ||
* Заметить __ESCAPER_QUOT__номер_ в строке на реальное содержимое | ||
* Заметить __ESCAPER_QUOT__номер_ в указанной строке на реальное содержимое | ||
* | ||
@@ -56,0 +51,0 @@ * @param {string} str - исходная строка |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** | ||
* Импортировать свойства объекта в пространство имён Snakeskin.Filters | ||
* Импортировать свойства заданного объекта в пространство имён Snakeskin.Filters | ||
* | ||
@@ -10,0 +5,0 @@ * @param {!Object} filters - исходный объект |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
var globalCache = { | ||
@@ -55,3 +50,3 @@ 'true': {}, | ||
// Таблица экранирований | ||
// Таблица символов для экранирования | ||
var escapeMap = { | ||
@@ -58,0 +53,0 @@ '"': true, |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
/** | ||
* Вернуть тело шаблона при наследовании | ||
* Вернуть конечное тело заданного шаблона при наследовании | ||
* | ||
@@ -10,0 +5,0 @@ * @param {string} tplName - название шаблона |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.4 | ||
*/ | ||
var blackWordList = { | ||
@@ -62,3 +57,3 @@ '+': true, | ||
/** | ||
* Заменить ${...} в строке на значение вывода | ||
* Заменить ${...} в указанной строке на значение вывода | ||
* | ||
@@ -182,3 +177,3 @@ * @param {string} str - исходная строка | ||
/** | ||
* Вернуть true, если cлово является свойством в литерале объекта | ||
* Вернуть true, если указанное cлово является свойством в литерале объекта | ||
* | ||
@@ -218,3 +213,3 @@ * @param {string} str - исходная строка | ||
/** | ||
* Вернуть true, если следующий не пробельный символ в строке равен присвоению (=) | ||
* Вернуть true, если следующий не пробельный символ в указанной строке равен присвоению (=) | ||
* | ||
@@ -241,3 +236,3 @@ * @param {string} str - исходная строка | ||
/** | ||
* Вернуть целое слово из строки, начиная с указанной позиции | ||
* Вернуть целое слово из заданной строки, начиная с указанной позиции | ||
* | ||
@@ -330,6 +325,6 @@ * @param {string} str - исходная строка | ||
/** | ||
* Подготовить комманду к выводу: | ||
* Подготовить указанную комманду к выводу: | ||
* осуществляется привязка к scope и инициализация фильтров | ||
* | ||
* @param {string} command - текст команды | ||
* @param {string} command - исходный текст команды | ||
* @param {?boolean=} [opt_sys] - если true, то запуск функции считается системным вызовом | ||
@@ -336,0 +331,0 @@ * @param {?boolean=} [opt_isys] - если true, то запуск функции считается вложенным системным вызовом |
{ | ||
"name": "snakeskin", | ||
"version": "3.2.5", | ||
"version": "3.3.0", | ||
"description": "Snakeskin — компилятор блочных шаблонов c поддержкой наследования.", | ||
@@ -5,0 +5,0 @@ "main": "snakeskin.js", |
@@ -258,3 +258,3 @@ # Snakeskin | ||
Объявление шаблона возможно с помощью директив `template` и `placeholder`. | ||
Объявление шаблона возможно с помощью директив `template`, `interface` и `placeholder`. | ||
Шаблон может декларироваться только в глобальной области (т.е. шаблон не может включать в себя другой шаблон). | ||
@@ -314,2 +314,22 @@ | ||
### Директива interface | ||
--- | ||
**Декларация**: *только в глобальной области, необходим закрывающий `end`*. | ||
--- | ||
Директива interface позволяет декларировать шаблон, тело которого будет существовать только на этапе трансляции, | ||
а в скомпилированном файле будет доступен только как интерфейс (пустая функция с входными параметрами). | ||
Синтаксис interface идентичен синтаксису template. | ||
{interface myTpl.myTemplate()} | ||
Тело шаблона | ||
{end} | ||
{interface myTpl['myTemplate']()} | ||
Тело шаблона | ||
{end} | ||
### Директива placeholder | ||
@@ -323,4 +343,4 @@ | ||
Директива placeholder позволяет декларироват шаблоны, которые будут существовать только на этапе трансляции, | ||
но не войдут в скомпилированный файл, т.е. их нельзя будет использовать из внешнего JavaScript. | ||
Директива placeholder позволяет декларировать шаблон, который будет существовать только на этапе трансляции, | ||
но не войдёт в скомпилированный файл, т.е. его нельзя будет никак использовать из внешнего JavaScript. | ||
Синтаксис placeholder идентичен синтаксису template. | ||
@@ -327,0 +347,0 @@ |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
module.exports = require('./build/snakeskin'); |
var __NEJS_THIS__ = this; | ||
/**! | ||
* @status stable | ||
* @version 1.0.0 | ||
*/ | ||
var fs = require('fs'); | ||
@@ -8,0 +3,0 @@ var path = require('path'); |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: cycles_index; i */exports.cycles_index= function (i) { i = i !== void 0 && i !== null ? i : 0;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'cycles_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';for (var __j__for_59 = 0; __j__for_59 < 3; __j__for_59++) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__j__for_59));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';while (i++ < 3) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(i));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';do {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(i));__SNAKESKIN_RESULT__ += ' ';} while (i--);__SNAKESKIN_RESULT__ += ' ';do {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(i));__SNAKESKIN_RESULT__ += ' ';} while (++i < 3);__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['cycles_index'] = exports.cycles_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: cycles_index; i */exports.cycles_index= function (i) {i = i !== void 0 && i !== null ? i : 0;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'cycles_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';for (var __j__for_59 = 0; __j__for_59 < 3; __j__for_59++) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__j__for_59));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';while (i++ < 3) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(i));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';do {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(i));__SNAKESKIN_RESULT__ += ' ';} while (i--);__SNAKESKIN_RESULT__ += ' ';do {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(i));__SNAKESKIN_RESULT__ += ' ';} while (++i < 3);__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['cycles_index'] = exports.cycles_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: data_index; */exports.data_index= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'data_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var a = ' foo ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += '{a: \"' + Snakeskin.Filters.html(($_ = Snakeskin.Filters['ucfirst'](($_ = Snakeskin.Filters['trim'](Snakeskin.Filters.undef(a)))))) + '\"}';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += '{{' + Snakeskin.Filters.html(($_ = Snakeskin.Filters['ucfirst'](($_ = Snakeskin.Filters['trim'](Snakeskin.Filters.undef(a)))))) + '}}';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += '{= {a: "${a|trim|ucfirst}"}}{{${a|trim|ucfirst}}} ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['data_index'] = exports.data_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: data_index; */exports.data_index= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'data_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var a = ' foo ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += '{a: \"' + Snakeskin.Filters.html(($_ = Snakeskin.Filters['ucfirst'](($_ = Snakeskin.Filters['trim'](Snakeskin.Filters.undef(a)))))) + '\"}';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += '{{' + Snakeskin.Filters.html(($_ = Snakeskin.Filters['ucfirst'](($_ = Snakeskin.Filters['trim'](Snakeskin.Filters.undef(a)))))) + '}}';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += '{= {a: "${a|trim|ucfirst}"}}{{${a|trim|ucfirst}}} ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['data_index'] = exports.data_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {if (typeof Snakeskin !== 'undefined') { Snakeskin.Vars.a = String; }/* Snakeskin template: filters_index; */exports.filters_index= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'filters_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var a = {a: String};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(($_ = Snakeskin.Filters['remove'](($_ = Snakeskin.Filters['repeat'](($_ = Snakeskin.Filters['ucfirst'](($_ = Snakeskin.Filters['collapse'](' foo bar ')))),3)),($_=Snakeskin.Filters['repeat']($_=Snakeskin.Filters['trim'](' Foo bar'))))));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ($_ = Snakeskin.Filters['remove']($_ = Snakeskin.Filters['repeat']($_ = Snakeskin.Filters['ucfirst']($_ = Snakeskin.Filters['collapse'](' foo bar ')),3),($_=Snakeskin.Filters['repeat']($_=Snakeskin.Filters['trim'](a.a(' Foo bar')))))) + '<b>1</b>';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(($_ = Snakeskin.Filters['remove']($_ = Snakeskin.Filters['repeat']($_ = Snakeskin.Filters['ucfirst']($_ = Snakeskin.Filters['collapse'](' foo bar ')),3),($_=Snakeskin.Filters['repeat']($_=Snakeskin.Filters['trim'](Snakeskin.Vars['a'](' Foo bar')))))) + '<b>1</b>');__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['filters_index'] = exports.filters_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {if (typeof Snakeskin !== 'undefined') { Snakeskin.Vars.a = String; }/* Snakeskin template: filters_index; */exports.filters_index= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'filters_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var a = {a: String};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(($_ = Snakeskin.Filters['remove'](($_ = Snakeskin.Filters['repeat'](($_ = Snakeskin.Filters['ucfirst'](($_ = Snakeskin.Filters['collapse'](' foo bar ')))),3)),($_=Snakeskin.Filters['repeat']($_=Snakeskin.Filters['trim'](' Foo bar'))))));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ($_ = Snakeskin.Filters['remove']($_ = Snakeskin.Filters['repeat']($_ = Snakeskin.Filters['ucfirst']($_ = Snakeskin.Filters['collapse'](' foo bar ')),3),($_=Snakeskin.Filters['repeat']($_=Snakeskin.Filters['trim'](a.a(' Foo bar')))))) + '<b>1</b>';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(($_ = Snakeskin.Filters['remove']($_ = Snakeskin.Filters['repeat']($_ = Snakeskin.Filters['ucfirst']($_ = Snakeskin.Filters['collapse'](' foo bar ')),3),($_=Snakeskin.Filters['repeat']($_=Snakeskin.Filters['trim'](Snakeskin.Vars['a'](' Foo bar')))))) + '<b>1</b>');__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['filters_index'] = exports.filters_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: inherit_base; val val2 */exports.inherit_base= function (val,val2) { val = val !== void 0 && val !== null ? val : 1;val2 = val2 !== void 0 && val2 !== null ? val2 : 3;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_base';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val2));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val));__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___bar_template_45 = 1;____I_PROTO___bar_template_45:while (____I_PROTO___bar_template_45--) {};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_base'] = exports.inherit_base;}/* Snakeskin template. *//* Snakeskin template: inherit_sub; val */exports.inherit_sub= function (val) { val = val !== void 0 && val !== null ? val : 2;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_sub';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'inherit_base';var val2 = 3;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val2));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val));__SNAKESKIN_RESULT__ += ' ';var __i__proto_314 = typeof null !== 'undefined' && null !== null ? null: 11;var ____I_PROTO___bar_template_44 = 1;____I_PROTO___bar_template_44:while (____I_PROTO___bar_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_314));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += 'my';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_sub'] = exports.inherit_sub;}/* Snakeskin template. *//* Snakeskin template: inherit_superTestConst; */exports.inherit_superTestConst= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_superTestConst';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_55 = 1;____I_PROTO___a_template_55:while (____I_PROTO___a_template_55--) {__SNAKESKIN_RESULT__ += ' ';var foo = 1;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_superTestConst'] = exports.inherit_superTestConst;}/* Snakeskin template. *//* Snakeskin template: inherit_childTestConst; */exports.inherit_childTestConst= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_childTestConst';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'inherit_superTestConst';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_55 = 1;____I_PROTO___a_template_55:while (____I_PROTO___a_template_55--) {__SNAKESKIN_RESULT__ += ' ';var foo = 2;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(foo));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_childTestConst'] = exports.inherit_childTestConst;}/* Snakeskin template. *//* Snakeskin template: inherit_superTestConst2; */exports.inherit_superTestConst2= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_superTestConst2';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_56 = 1;____I_PROTO___a_template_56:while (____I_PROTO___a_template_56--) {__SNAKESKIN_RESULT__ += ' ';var a = 1;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_superTestConst2'] = exports.inherit_superTestConst2;}/* Snakeskin template. *//* Snakeskin template: inherit_childTestConst2; */exports.inherit_childTestConst2= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_childTestConst2';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'inherit_superTestConst2';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_56 = 1;____I_PROTO___a_template_56:while (____I_PROTO___a_template_56--) {__SNAKESKIN_RESULT__ += ' ';var a = 2;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___e_template_56 = 1;____I_PROTO___e_template_56:while (____I_PROTO___e_template_56--) {__SNAKESKIN_RESULT__ += ' ';var j = 1;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(j));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_childTestConst2'] = exports.inherit_childTestConst2;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: inherit_base; val val2 */exports.inherit_base= function (val,val2) {val = val !== void 0 && val !== null ? val : 1;val2 = val2 !== void 0 && val2 !== null ? val2 : 3;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_base';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val2));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val));__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___bar_template_45 = 1;____I_PROTO___bar_template_45:while (____I_PROTO___bar_template_45--) {};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_base'] = exports.inherit_base;}/* Snakeskin template. *//* Snakeskin template: inherit_sub; val */exports.inherit_sub= function (val) {val = val !== void 0 && val !== null ? val : 2;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_sub';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'inherit_base';var val2 = 3;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val2));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(val));__SNAKESKIN_RESULT__ += ' ';var __i__proto_314 = typeof null !== 'undefined' && null !== null ? null: 11;var ____I_PROTO___bar_template_44 = 1;____I_PROTO___bar_template_44:while (____I_PROTO___bar_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_314));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += 'my';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_sub'] = exports.inherit_sub;}/* Snakeskin template. *//* Snakeskin template: inherit_superTestConst; */exports.inherit_superTestConst= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_superTestConst';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_55 = 1;____I_PROTO___a_template_55:while (____I_PROTO___a_template_55--) {__SNAKESKIN_RESULT__ += ' ';var foo = 1;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_superTestConst'] = exports.inherit_superTestConst;}/* Snakeskin template. *//* Snakeskin template: inherit_childTestConst; */exports.inherit_childTestConst= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_childTestConst';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'inherit_superTestConst';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_55 = 1;____I_PROTO___a_template_55:while (____I_PROTO___a_template_55--) {__SNAKESKIN_RESULT__ += ' ';var foo = 2;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(foo));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_childTestConst'] = exports.inherit_childTestConst;}/* Snakeskin template. *//* Snakeskin template: inherit_superTestConst2; */exports.inherit_superTestConst2= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_superTestConst2';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_56 = 1;____I_PROTO___a_template_56:while (____I_PROTO___a_template_56--) {__SNAKESKIN_RESULT__ += ' ';var a = 1;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_superTestConst2'] = exports.inherit_superTestConst2;}/* Snakeskin template. *//* Snakeskin template: inherit_childTestConst2; */exports.inherit_childTestConst2= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'inherit_childTestConst2';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'inherit_superTestConst2';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___a_template_56 = 1;____I_PROTO___a_template_56:while (____I_PROTO___a_template_56--) {__SNAKESKIN_RESULT__ += ' ';var a = 2;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___e_template_56 = 1;____I_PROTO___e_template_56:while (____I_PROTO___e_template_56--) {__SNAKESKIN_RESULT__ += ' ';var j = 1;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(j));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['inherit_childTestConst2'] = exports.inherit_childTestConst2;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: iterators_index1; */exports.iterators_index1= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'iterators_index1';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var ____TMP____forEach_89 = [1, 2, 3] ;if (____TMP____forEach_89) {if (Array.isArray(____TMP____forEach_89)) {var ____TMP_LENGTH____forEach_89 = ____TMP____forEach_89.length;for (var ____I____forEach_89 = -1;++____I____forEach_89 < ____TMP_LENGTH____forEach_89;) {var __el__forEach_89 = ____TMP____forEach_89[____I____forEach_89];var __i__forEach_89 = ____I____forEach_89;var __obj__forEach_89 = ____TMP____forEach_89;var __isFirst__forEach_89 = ____I____forEach_89 === 0;var __isLast__forEach_89 = ____I____forEach_89 === ____TMP_LENGTH____forEach_89 - 1;var __length__forEach_89 = ____TMP_LENGTH____forEach_89;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_89[__i__forEach_89]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_89));__SNAKESKIN_RESULT__ += ' --- ';}} else {var ____TMP_LENGTH____forEach_89 = 0;for (var ____KEY____forEach_89 in ____TMP____forEach_89) {if (!____TMP____forEach_89.hasOwnProperty(____KEY____forEach_89)) {continue;}____TMP_LENGTH____forEach_89++;}var ____I____forEach_89 = -1;for (var ____KEY____forEach_89 in ____TMP____forEach_89) {if (!____TMP____forEach_89.hasOwnProperty(____KEY____forEach_89)) {continue;}____I____forEach_89++;var __el__forEach_89 = ____TMP____forEach_89[____KEY____forEach_89];var __i__forEach_89 = ____KEY____forEach_89;var __obj__forEach_89 = ____TMP____forEach_89;var __isFirst__forEach_89 = ____I____forEach_89;var __isLast__forEach_89 = ____I____forEach_89 === 0;var __length__forEach_89 = ____I____forEach_89 === ____TMP_LENGTH____forEach_89 - 1;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_89[__i__forEach_89]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_89));__SNAKESKIN_RESULT__ += ' --- ';}}}__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['iterators_index1'] = exports.iterators_index1;}/* Snakeskin template. *//* Snakeskin template: iterators_index2; */exports.iterators_index2= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'iterators_index2';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var ____TMP____forEach_255 = {a: 1, b: 2} ;if (____TMP____forEach_255) {if (Array.isArray(____TMP____forEach_255)) {var ____TMP_LENGTH____forEach_255 = ____TMP____forEach_255.length;for (var ____I____forEach_255 = -1;++____I____forEach_255 < ____TMP_LENGTH____forEach_255;) {var __el__forEach_255 = ____TMP____forEach_255[____I____forEach_255];var __key__forEach_255 = ____I____forEach_255;var __obj__forEach_255 = ____TMP____forEach_255;var __i__forEach_255 = ____I____forEach_255 === 0;var __isFirst__forEach_255 = ____I____forEach_255 === ____TMP_LENGTH____forEach_255 - 1;var __isLast__forEach_255 = ____TMP_LENGTH____forEach_255;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__key__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_255[__key__forEach_255]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_255));__SNAKESKIN_RESULT__ += ' --- ';}} else {var ____TMP_LENGTH____forEach_255 = 0;for (var ____KEY____forEach_255 in ____TMP____forEach_255) {if (!____TMP____forEach_255.hasOwnProperty(____KEY____forEach_255)) {continue;}____TMP_LENGTH____forEach_255++;}var ____I____forEach_255 = -1;for (var ____KEY____forEach_255 in ____TMP____forEach_255) {if (!____TMP____forEach_255.hasOwnProperty(____KEY____forEach_255)) {continue;}____I____forEach_255++;var __el__forEach_255 = ____TMP____forEach_255[____KEY____forEach_255];var __key__forEach_255 = ____KEY____forEach_255;var __obj__forEach_255 = ____TMP____forEach_255;var __i__forEach_255 = ____I____forEach_255;var __isFirst__forEach_255 = ____I____forEach_255 === 0;var __isLast__forEach_255 = ____I____forEach_255 === ____TMP_LENGTH____forEach_255 - 1;var __length__forEach_255 = ____TMP_LENGTH____forEach_255;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__key__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_255[__key__forEach_255]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_255));__SNAKESKIN_RESULT__ += ' --- ';}}}__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['iterators_index2'] = exports.iterators_index2;}/* Snakeskin template. *//* Snakeskin template: iterators_index3; */exports.iterators_index3= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'iterators_index3';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var a = Object.create({a: 1});__SNAKESKIN_RESULT__ += ' ';var ____TMP____forIn_448 = a ;if (____TMP____forIn_448) {var ____TMP_LENGTH____forIn_448 = 0;for (var __key__forIn_448 in ____TMP____forIn_448) {____TMP_LENGTH____forIn_448++;}var ____I____forIn_448 = -1;for (var ____KEY____forIn_448 in ____TMP____forIn_448) {____I____forIn_448++;var __el__forIn_448 = ____TMP____forIn_448[____KEY____forIn_448];var __key__forIn_448 = ____KEY____forIn_448;var __obj__forIn_448 = ____TMP____forIn_448;var __i__forIn_448 = ____I____forIn_448;var __isFirst__forIn_448 = ____I____forIn_448 === 0;var __isLast__forIn_448 = ____I____forIn_448 === ____TMP_LENGTH____forIn_448 - 1;var __length__forIn_448 = ____TMP_LENGTH____forIn_448;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__key__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forIn_448[__key__forIn_448]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forIn_448));__SNAKESKIN_RESULT__ += ' --- ';}}__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['iterators_index3'] = exports.iterators_index3;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: iterators_index1; */exports.iterators_index1= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'iterators_index1';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var ____TMP____forEach_89 = [1, 2, 3] ;if (____TMP____forEach_89) {if (Array.isArray(____TMP____forEach_89)) {var ____TMP_LENGTH____forEach_89 = ____TMP____forEach_89.length;for (var ____I____forEach_89 = -1;++____I____forEach_89 < ____TMP_LENGTH____forEach_89;) {var __el__forEach_89 = ____TMP____forEach_89[____I____forEach_89];var __i__forEach_89 = ____I____forEach_89;var __obj__forEach_89 = ____TMP____forEach_89;var __isFirst__forEach_89 = ____I____forEach_89 === 0;var __isLast__forEach_89 = ____I____forEach_89 === ____TMP_LENGTH____forEach_89 - 1;var __length__forEach_89 = ____TMP_LENGTH____forEach_89;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_89[__i__forEach_89]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_89));__SNAKESKIN_RESULT__ += ' --- ';}} else {var ____TMP_LENGTH____forEach_89 = 0;for (var ____KEY____forEach_89 in ____TMP____forEach_89) {if (!____TMP____forEach_89.hasOwnProperty(____KEY____forEach_89)) {continue;}____TMP_LENGTH____forEach_89++;}var ____I____forEach_89 = -1;for (var ____KEY____forEach_89 in ____TMP____forEach_89) {if (!____TMP____forEach_89.hasOwnProperty(____KEY____forEach_89)) {continue;}____I____forEach_89++;var __el__forEach_89 = ____TMP____forEach_89[____KEY____forEach_89];var __i__forEach_89 = ____KEY____forEach_89;var __obj__forEach_89 = ____TMP____forEach_89;var __isFirst__forEach_89 = ____I____forEach_89;var __isLast__forEach_89 = ____I____forEach_89 === 0;var __length__forEach_89 = ____I____forEach_89 === ____TMP_LENGTH____forEach_89 - 1;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_89[__i__forEach_89]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_89));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_89));__SNAKESKIN_RESULT__ += ' --- ';}}}__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['iterators_index1'] = exports.iterators_index1;}/* Snakeskin template. *//* Snakeskin template: iterators_index2; */exports.iterators_index2= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'iterators_index2';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var ____TMP____forEach_255 = {a: 1, b: 2} ;if (____TMP____forEach_255) {if (Array.isArray(____TMP____forEach_255)) {var ____TMP_LENGTH____forEach_255 = ____TMP____forEach_255.length;for (var ____I____forEach_255 = -1;++____I____forEach_255 < ____TMP_LENGTH____forEach_255;) {var __el__forEach_255 = ____TMP____forEach_255[____I____forEach_255];var __key__forEach_255 = ____I____forEach_255;var __obj__forEach_255 = ____TMP____forEach_255;var __i__forEach_255 = ____I____forEach_255 === 0;var __isFirst__forEach_255 = ____I____forEach_255 === ____TMP_LENGTH____forEach_255 - 1;var __isLast__forEach_255 = ____TMP_LENGTH____forEach_255;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__key__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_255[__key__forEach_255]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_255));__SNAKESKIN_RESULT__ += ' --- ';}} else {var ____TMP_LENGTH____forEach_255 = 0;for (var ____KEY____forEach_255 in ____TMP____forEach_255) {if (!____TMP____forEach_255.hasOwnProperty(____KEY____forEach_255)) {continue;}____TMP_LENGTH____forEach_255++;}var ____I____forEach_255 = -1;for (var ____KEY____forEach_255 in ____TMP____forEach_255) {if (!____TMP____forEach_255.hasOwnProperty(____KEY____forEach_255)) {continue;}____I____forEach_255++;var __el__forEach_255 = ____TMP____forEach_255[____KEY____forEach_255];var __key__forEach_255 = ____KEY____forEach_255;var __obj__forEach_255 = ____TMP____forEach_255;var __i__forEach_255 = ____I____forEach_255;var __isFirst__forEach_255 = ____I____forEach_255 === 0;var __isLast__forEach_255 = ____I____forEach_255 === ____TMP_LENGTH____forEach_255 - 1;var __length__forEach_255 = ____TMP_LENGTH____forEach_255;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__key__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forEach_255[__key__forEach_255]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forEach_255));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forEach_255));__SNAKESKIN_RESULT__ += ' --- ';}}}__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['iterators_index2'] = exports.iterators_index2;}/* Snakeskin template. *//* Snakeskin template: iterators_index3; */exports.iterators_index3= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'iterators_index3';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var a = Object.create({a: 1});__SNAKESKIN_RESULT__ += ' ';var ____TMP____forIn_448 = a ;if (____TMP____forIn_448) {var ____TMP_LENGTH____forIn_448 = 0;for (var __key__forIn_448 in ____TMP____forIn_448) {____TMP_LENGTH____forIn_448++;}var ____I____forIn_448 = -1;for (var ____KEY____forIn_448 in ____TMP____forIn_448) {____I____forIn_448++;var __el__forIn_448 = ____TMP____forIn_448[____KEY____forIn_448];var __key__forIn_448 = ____KEY____forIn_448;var __obj__forIn_448 = ____TMP____forIn_448;var __i__forIn_448 = ____I____forIn_448;var __isFirst__forIn_448 = ____I____forIn_448 === 0;var __isLast__forIn_448 = ____I____forIn_448 === ____TMP_LENGTH____forIn_448 - 1;var __length__forIn_448 = ____TMP_LENGTH____forIn_448;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__el__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__key__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__obj__forIn_448[__key__forIn_448]));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isFirst__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__isLast__forIn_448));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__length__forIn_448));__SNAKESKIN_RESULT__ += ' --- ';}}__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['iterators_index3'] = exports.iterators_index3;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: logic_index; i */exports.logic_index= function (i) { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'logic_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';if (i == 1) {__SNAKESKIN_RESULT__ += ' 1 ';} else if (i == 2) {__SNAKESKIN_RESULT__ += '2 ';} else {__SNAKESKIN_RESULT__ += '3 ';};switch (i) {case 1: {__SNAKESKIN_RESULT__ += '1 ';} break;case 2: {__SNAKESKIN_RESULT__ += '2 ';} break;default: {__SNAKESKIN_RESULT__ += '3 ';};};return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['logic_index'] = exports.logic_index;}/* Snakeskin template. *//* Snakeskin template: logic_base; */exports.logic_base= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'logic_base';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += '<span class=""></span> ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['logic_base'] = exports.logic_base;}/* Snakeskin template. *//* Snakeskin template: logic_sub; */exports.logic_sub= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'logic_sub';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'logic_base';__SNAKESKIN_RESULT__ += '<span class=""></span> ';__SNAKESKIN_RESULT__ += ' ';switch (1) {case 1: {__SNAKESKIN_RESULT__ += ' 1 ';} break;};return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['logic_sub'] = exports.logic_sub;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: logic_index; i */exports.logic_index= function (i) {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'logic_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';if (i == 1) {__SNAKESKIN_RESULT__ += ' 1 ';} else if (i == 2) {__SNAKESKIN_RESULT__ += '2 ';} else {__SNAKESKIN_RESULT__ += '3 ';};switch (i) {case 1: {__SNAKESKIN_RESULT__ += '1 ';} break;case 2: {__SNAKESKIN_RESULT__ += '2 ';} break;default: {__SNAKESKIN_RESULT__ += '3 ';};};return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['logic_index'] = exports.logic_index;}/* Snakeskin template. *//* Snakeskin template: logic_base; */exports.logic_base= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'logic_base';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += '<span class=""></span> ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['logic_base'] = exports.logic_base;}/* Snakeskin template. *//* Snakeskin template: logic_sub; */exports.logic_sub= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'logic_sub';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'logic_base';__SNAKESKIN_RESULT__ += '<span class=""></span> ';__SNAKESKIN_RESULT__ += ' ';switch (1) {case 1: {__SNAKESKIN_RESULT__ += ' 1 ';} break;};return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['logic_sub'] = exports.logic_sub;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: param_base; a, b */exports.param_base= function (a,b) { b = b !== void 0 && b !== null ? b : 1;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'param_base';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(b));__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['param_base'] = exports.param_base;}/* Snakeskin template. *//* Snakeskin template: param_child; */exports.param_child= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'param_child';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'param_base';var b = 2;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(b));__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['param_child'] = exports.param_child;}/* Snakeskin template. *//* Snakeskin template: param_child2; */exports.param_child2= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'param_child2';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'param_child';var b = 3;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(b));__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['param_child2'] = exports.param_child2;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: param_base; a, b */exports.param_base= function (a,b) {b = b !== void 0 && b !== null ? b : 1;var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'param_base';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(b));__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['param_base'] = exports.param_base;}/* Snakeskin template. *//* Snakeskin template: param_child; */exports.param_child= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'param_child';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'param_base';var b = 2;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(b));__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['param_child'] = exports.param_child;}/* Snakeskin template. *//* Snakeskin template: param_child2; */exports.param_child2= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'param_child2';var PARENT_TPL_NAME;PARENT_TPL_NAME = 'param_child';var b = 3;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(b));__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['param_child2'] = exports.param_child2;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: proto_index; i */exports.proto_index= function (i) { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___begin_template_44 = 1;____I_PROTO___begin_template_44:while (____I_PROTO___begin_template_44--) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_257 = (1);var ____I_PROTO___f1_template_44 = 1;____I_PROTO___f1_template_44:while (____I_PROTO___f1_template_44--) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_386 = (__i__proto_257);var ____I_PROTO___f2_template_44 = 1;____I_PROTO___f2_template_44:while (____I_PROTO___f2_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_386));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';var __i__proto_386 = (__i__proto_257 + 1);var ____I_PROTO___f2_template_44 = 1;____I_PROTO___f2_template_44:while (____I_PROTO___f2_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_386));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';var __i__proto_311 = 2;var ____I_PROTO___f3_template_44 = 1;____I_PROTO___f3_template_44:while (____I_PROTO___f3_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_311) * 2);__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';var a = {a: 1};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var __i__proto_450 = 2;var ____I_PROTO___f4_template_44 = 1;____I_PROTO___f4_template_44:while (____I_PROTO___f4_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(a.a));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_450));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_index'] = exports.proto_index;}/* Snakeskin template. *//* Snakeskin template: proto_index2.a['foo']; */if (typeof exports.proto_index2 === 'undefined') { exports.proto_index2 = {};}if (typeof exports.proto_index2.a === 'undefined') { exports.proto_index2.a = {};}exports.proto_index2.a['foo']= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_index2.a[\'foo\']';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var __i__proto_690 = 1;var ____I_PROTO___begin_template_54 = 1;____I_PROTO___begin_template_54:while (____I_PROTO___begin_template_54--) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_747 = (1);var ____I_PROTO___f1_template_54 = 1;____I_PROTO___f1_template_54:while (____I_PROTO___f1_template_54--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_747));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_index2.a[\'foo\']'] = exports.proto_index2.a['foo'];}/* Snakeskin template. *//* Snakeskin template: proto_recursive; */exports.proto_recursive= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_recursive';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var __i__proto_833 = 5;var ____I_PROTO___begin_template_48 = 1;____I_PROTO___begin_template_48:while (____I_PROTO___begin_template_48--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_833));__SNAKESKIN_RESULT__ += ' ';if (__i__proto_833) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_833 = --__i__proto_833;____I_PROTO___begin_template_48++;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_recursive'] = exports.proto_recursive;}/* Snakeskin template. *//* Snakeskin template: proto_recursive2; */exports.proto_recursive2= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_recursive2';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var __i__proto_966 = 5;var ____I_PROTO___begin_template_49 = 1;____I_PROTO___begin_template_49:while (____I_PROTO___begin_template_49--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_966));__SNAKESKIN_RESULT__ += ' ';if (__i__proto_966) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_984 = --__i__proto_966;var ____I_PROTO___foo_template_49 = 1;____I_PROTO___foo_template_49:while (____I_PROTO___foo_template_49--) {__SNAKESKIN_RESULT__ += ' ';if (__i__proto_984 === 2) {__SNAKESKIN_RESULT__ += ' ';break ____I_PROTO___foo_template_49;};__SNAKESKIN_RESULT__ += ' ';var __i__proto_966 = (__i__proto_984);____I_PROTO___begin_template_49++;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_recursive2'] = exports.proto_recursive2;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: proto_index; i */exports.proto_index= function (i) {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var ____I_PROTO___begin_template_44 = 1;____I_PROTO___begin_template_44:while (____I_PROTO___begin_template_44--) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_257 = (1);var ____I_PROTO___f1_template_44 = 1;____I_PROTO___f1_template_44:while (____I_PROTO___f1_template_44--) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_386 = (__i__proto_257);var ____I_PROTO___f2_template_44 = 1;____I_PROTO___f2_template_44:while (____I_PROTO___f2_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_386));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';var __i__proto_386 = (__i__proto_257 + 1);var ____I_PROTO___f2_template_44 = 1;____I_PROTO___f2_template_44:while (____I_PROTO___f2_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_386));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';var __i__proto_311 = 2;var ____I_PROTO___f3_template_44 = 1;____I_PROTO___f3_template_44:while (____I_PROTO___f3_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_311) * 2);__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';var a = {a: 1};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var __i__proto_450 = 2;var ____I_PROTO___f4_template_44 = 1;____I_PROTO___f4_template_44:while (____I_PROTO___f4_template_44--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(a.a));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_450));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_index'] = exports.proto_index;}/* Snakeskin template. *//* Snakeskin template: proto_index2.a['foo']; */if (typeof exports.proto_index2 === 'undefined') { exports.proto_index2 = {};}if (typeof exports.proto_index2.a === 'undefined') { exports.proto_index2.a = {};}exports.proto_index2.a['foo']= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_index2.a[\'foo\']';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var __i__proto_690 = 1;var ____I_PROTO___begin_template_54 = 1;____I_PROTO___begin_template_54:while (____I_PROTO___begin_template_54--) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_747 = (1);var ____I_PROTO___f1_template_54 = 1;____I_PROTO___f1_template_54:while (____I_PROTO___f1_template_54--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_747));__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_index2.a[\'foo\']'] = exports.proto_index2.a['foo'];}/* Snakeskin template. *//* Snakeskin template: proto_recursive; */exports.proto_recursive= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_recursive';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var __i__proto_833 = 5;var ____I_PROTO___begin_template_48 = 1;____I_PROTO___begin_template_48:while (____I_PROTO___begin_template_48--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_833));__SNAKESKIN_RESULT__ += ' ';if (__i__proto_833) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_833 = --__i__proto_833;____I_PROTO___begin_template_48++;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_recursive'] = exports.proto_recursive;}/* Snakeskin template. *//* Snakeskin template: proto_recursive2; */exports.proto_recursive2= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'proto_recursive2';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';var __i__proto_966 = 5;var ____I_PROTO___begin_template_49 = 1;____I_PROTO___begin_template_49:while (____I_PROTO___begin_template_49--) {__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(__i__proto_966));__SNAKESKIN_RESULT__ += ' ';if (__i__proto_966) {__SNAKESKIN_RESULT__ += ' ';var __i__proto_984 = --__i__proto_966;var ____I_PROTO___foo_template_49 = 1;____I_PROTO___foo_template_49:while (____I_PROTO___foo_template_49--) {__SNAKESKIN_RESULT__ += ' ';if (__i__proto_984 === 2) {__SNAKESKIN_RESULT__ += ' ';break ____I_PROTO___foo_template_49;};__SNAKESKIN_RESULT__ += ' ';var __i__proto_966 = (__i__proto_984);____I_PROTO___begin_template_49++;__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';};__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['proto_recursive2'] = exports.proto_recursive2;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {if (typeof Snakeskin !== 'undefined') { Snakeskin.Vars.name = 'foo'; }/* Snakeskin template: scope_index; obj */exports.scope_index= function (obj) { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'scope_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var name = 'bar';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(obj.child.name));var __e__with_111 = 'test';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name) + ' ' + Snakeskin.Filters.undef(name) + ' ' + Snakeskin.Filters.undef(obj.child.name) + ' ' + Snakeskin.Filters.undef(obj.child.name) + ' ' + Snakeskin.Filters.undef(name) + ' ' + Snakeskin.Filters.undef(Snakeskin.Vars['name']) + ' ' + Snakeskin.Filters.undef(obj.child.child.name) + ' ' + Snakeskin.Filters.undef(__e__with_111));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['scope_index'] = exports.scope_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {if (typeof Snakeskin !== 'undefined') { Snakeskin.Vars.name = 'foo'; }/* Snakeskin template: scope_index; obj */exports.scope_index= function (obj) {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'scope_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var name = 'bar';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(obj.child.name));var __e__with_111 = 'test';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name) + ' ' + Snakeskin.Filters.undef(name) + ' ' + Snakeskin.Filters.undef(obj.child.name) + ' ' + Snakeskin.Filters.undef(obj.child.name) + ' ' + Snakeskin.Filters.undef(name) + ' ' + Snakeskin.Filters.undef(Snakeskin.Vars['name']) + ' ' + Snakeskin.Filters.undef(obj.child.child.name) + ' ' + Snakeskin.Filters.undef(__e__with_111));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['scope_index'] = exports.scope_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,4 +0,4 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: simple_output; */exports.simple_output= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_output';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var e = {foo: {my: function () { return 1; }}};__SNAKESKIN_RESULT__ += ' ';var a = {foo: 'my', n: 'foo'};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += e[a['n']][a['foo']](1, 2, 3);__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(new String([1, 2, 3]).indexOf()));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(($_ = Snakeskin.Filters['replace']('{foo}',/^{/gim,'')));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(2 / 2);__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_output'] = exports.simple_output;}/* Snakeskin template. *//** | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: simple_output; */exports.simple_output= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_output';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';var e = {foo: {my: function () { return 1; }}};__SNAKESKIN_RESULT__ += ' ';var a = {foo: 'my', n: 'foo'};__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += e[a['n']][a['foo']](1, 2, 3);__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(new String([1, 2, 3]).indexOf()));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(($_ = Snakeskin.Filters['replace']('{foo}',/^{/gim,'')));__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(2 / 2);__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_output'] = exports.simple_output;}/* Snakeskin template. *//* Snakeskin template: simple_index; name lname *//** | ||
* @return string | ||
* {template bar} | ||
*//* Snakeskin template: simple_index; name lname */exports.simple_index= function (name,lname) { name = name !== void 0 && name !== null ? name : 'world';var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' <h1>Hello ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name));__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(lname) ? ' ' + lname : '');__SNAKESKIN_RESULT__ += '!</h1> Foo';__SNAKESKIN_RESULT__ += 'bar///1 ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_index'] = exports.simple_index;}/* Snakeskin template. *//* Snakeskin template: simple_tpl.index; name lname */if (typeof exports.simple_tpl === 'undefined') { exports.simple_tpl = {};}exports.simple_tpl.index= function index(name,lname) { name = name !== void 0 && name !== null ? name : 'world';var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_tpl.index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' <h1>Hello ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name));__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(lname) ? ' ' + lname : '');__SNAKESKIN_RESULT__ += '!</h1> ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_tpl.index'] = exports.simple_tpl.index;}/* Snakeskin template. *//* Snakeskin template: simple_tpl.foo['index']; name lname */if (typeof exports.simple_tpl === 'undefined') { exports.simple_tpl = {};}if (typeof exports.simple_tpl.foo === 'undefined') { exports.simple_tpl.foo = {};}exports.simple_tpl.foo['index']= function (name,lname) { name = name !== void 0 && name !== null ? name : 'world';var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_tpl.foo[\'index\']';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' <h1>Hello ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name));__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(lname) ? ' ' + lname : '');__SNAKESKIN_RESULT__ += '!</h1> ';var a = 1;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(a) === 1 ? 1 : 2);__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_tpl.foo[\'index\']'] = exports.simple_tpl.foo['index'];}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
*/exports.simple_index= function (name,lname) {name = name !== void 0 && name !== null ? name : 'world';var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' <h1>Hello ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name));__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(lname) ? ' ' + lname : '');__SNAKESKIN_RESULT__ += '!</h1> Foo';__SNAKESKIN_RESULT__ += 'bar///1 ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_index'] = exports.simple_index;}/* Snakeskin template. *//* Snakeskin template: simple_tpl.index; name lname */if (typeof exports.simple_tpl === 'undefined') { exports.simple_tpl = {};}exports.simple_tpl.index= function index(name,lname) {name = name !== void 0 && name !== null ? name : 'world';var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_tpl.index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' <h1>Hello ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name));__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(lname) ? ' ' + lname : '');__SNAKESKIN_RESULT__ += '!</h1> ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_tpl.index'] = exports.simple_tpl.index;}/* Snakeskin template. *//* Snakeskin template: simple_tpl.foo['index']; name lname */if (typeof exports.simple_tpl === 'undefined') { exports.simple_tpl = {};}if (typeof exports.simple_tpl.foo === 'undefined') { exports.simple_tpl.foo = {};}exports.simple_tpl.foo['index']= function (name,lname) {name = name !== void 0 && name !== null ? name : 'world';var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'simple_tpl.foo[\'index\']';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' <h1>Hello ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(name));__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(lname) ? ' ' + lname : '');__SNAKESKIN_RESULT__ += '!</h1> ';var a = 1;__SNAKESKIN_RESULT__ += ' ';__SNAKESKIN_RESULT__ += Snakeskin.Filters.html(Snakeskin.Filters.undef(a) === 1 ? 1 : 2);__SNAKESKIN_RESULT__ += ' ';return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['simple_tpl.foo[\'index\']'] = exports.simple_tpl.foo['index'];}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
@@ -1,1 +0,1 @@ | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: try_index; */exports.try_index= function () { var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'try_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';try {__SNAKESKIN_RESULT__ += ' ';foo();__SNAKESKIN_RESULT__ += ' ';} catch (__err__try_61) {__SNAKESKIN_RESULT__ += ' bar ';} finally {__SNAKESKIN_RESULT__ += ' 2 ';};return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['try_index'] = exports.try_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Mar 03 2014 11:49:21 GMT+0400 (Московское время (зима)). */} | ||
/* This code is generated automatically, don't alter it. */var Snakeskin = global.Snakeskin;exports.init = function (obj) { Snakeskin = typeof obj === "object" ? obj : require(obj);delete exports.init;exec();return this;};function exec() {/* Snakeskin template: try_index; */exports.try_index= function () {var __SNAKESKIN_RESULT__ = '', $_;var TPL_NAME = 'try_index';var PARENT_TPL_NAME;__SNAKESKIN_RESULT__ += ' ';try {__SNAKESKIN_RESULT__ += ' ';foo();__SNAKESKIN_RESULT__ += ' ';} catch (__err__try_61) {__SNAKESKIN_RESULT__ += ' bar ';} finally {__SNAKESKIN_RESULT__ += ' 2 ';};return __SNAKESKIN_RESULT__; };if (typeof Snakeskin !== 'undefined') {Snakeskin.cache['try_index'] = exports.try_index;}/* Snakeskin template. *//* Snakeskin templating system. Generated at: Mon Apr 14 2014 18:23:27 GMT+0400 (Московское время (зима)). */} |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
510192
111
1506
8168
17