diff --git a/jsrender-node.js b/jsrender-node.js index 6d5068c..41a9bc0 100644 --- a/jsrender-node.js +++ b/jsrender-node.js @@ -1,4 +1,4 @@ -/*! JsRender v1.0.0: http://jsviews.com/#jsrender */ +/*! JsRender v1.0.1: http://jsviews.com/#jsrender */ /*! **VERSION FOR NODE.JS** (For WEB see http://jsviews.com/download/jsrender.js) */ /* * Best-of-breed templating in browser or on Node.js. @@ -19,7 +19,7 @@ if (typeof exports !== 'object' ) { //========================== Top-level vars ========================== -var versionNumber = "v1.0.0", +var versionNumber = "v1.0.1", // global var is the this object, which is window when running in the usual browser environment @@ -27,20 +27,14 @@ var versionNumber = "v1.0.0", _ocp = "_ocp", // Observable contextual parameter //TODO tmplFnsCache = {}, - $isFunction, $isArray, $templates, $converters, $helpers, $tags, $sub, $subSettings, $subSettingsAdvanced, $viewsSettings, delimOpenChar0, delimOpenChar1, delimCloseChar0, delimCloseChar1, linkChar, setting, baseOnError, - - rPath = /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, - // not object helper view viewProperty pathTokens leafToken - - rParams = /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$_])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, - // lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space - // (left paren? followed by (path? followed by operator) or (path followed by left paren?)) or comma or apos or quot or right paren or space + $isFunction, $isArray, $templates, $converters, $helpers, $tags, $sub, $subSettings, $subSettingsAdvanced, $viewsSettings, + delimOpenChar0, delimOpenChar1, delimCloseChar0, delimCloseChar1, linkChar, setting, baseOnError, isRenderCall, rNewLine = /[ \t]*(\r\n|\n|\r)/g, rUnescapeQuotes = /\\(['"])/g, rEscapeQuotes = /['"\\]/g, // Escape quotes and \ character - rBuildHash = /(?:\x08|^)(onerror:)?(?:(~?)(([\w$_\.]+):)?([^\x08]+))\x08(,)?([^\x08]+)/gi, + rBuildHash = /(?:\x08|^)(onerror:)?(?:(~?)(([\w$.]+):)?([^\x08]+))\x08(,)?([^\x08]+)/gi, rTestElseIf = /^if\s/, rFirstElem = /<(\w+)[>\s]/, rAttrEncode = /[\x00`><"'&=]/g, // Includes > encoding since rConvertMarkers in JsViews does not skip > characters in attribute strings @@ -93,6 +87,12 @@ var versionNumber = "v1.0.0", jsviews: versionNumber, sub: { // subscription, e.g. JsViews integration + rPath: /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, + // not object helper view viewProperty pathTokens leafToken + + rPrm: /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, + // lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space + View: View, Err: JsViewsError, tmplFn: tmplFn, @@ -2044,12 +2044,13 @@ function paramStructure(parts, type) { function parseParams(params, pathBindings, tmpl, isLinkExpr) { function parseTokens(all, lftPrn0, lftPrn, bound, path, operator, err, eq, path2, late, prn, comma, lftPrn2, apos, quot, rtPrn, rtPrnDot, prn2, space, index, full) { - // /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, - // lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space - // (left paren? followed by (path? followed by operator) or (path followed by paren?)) or comma or apos or quot or right paren or space + // /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, + //lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space + // (left paren? followed by (path? followed by operator) or (path followed by paren?)) or comma or apos or quot or right paren or space + function parsePath(allPath, not, object, helper, view, viewProperty, pathTokens, leafToken) { - //rPath = /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, - // not object helper view viewProperty pathTokens leafToken + // /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, + // not object helper view viewProperty pathTokens leafToken var subPath = object === "."; if (object) { path = path.slice(not.length); @@ -2198,7 +2199,7 @@ function parseParams(params, pathBindings, tmpl, isLinkExpr) { bindings && ((bindings = bndCtx.bd = pathBindings[named] = []), bindings.skp = !bound), path + ':') : path // path - ? (path.split("^").join(".").replace(rPath, parsePath) + ? (path.split("^").join(".").replace($sub.rPath, parsePath) + (prn // some.fncall( ? (bndCtx = bndStack[++parenDepth] = {bd: []}, fnCall[parenDepth] = rtSq, prn) @@ -2242,7 +2243,7 @@ function parseParams(params, pathBindings, tmpl, isLinkExpr) { if (params[0] === "@") { params = params.replace(rBracketQuote, "."); } - result = (params + (tmpl ? " " : "")).replace(rParams, parseTokens); + result = (params + (tmpl ? " " : "")).replace($sub.rPrm, parseTokens); return !parenDepth && result || syntaxError(params); // Syntax error if unbalanced parens in params expression } diff --git a/jsrender.js b/jsrender.js index 9d36d36..2db0bf3 100644 --- a/jsrender.js +++ b/jsrender.js @@ -1,4 +1,4 @@ -/*! JsRender v1.0.0: http://jsviews.com/#jsrender */ +/*! JsRender v1.0.1: http://jsviews.com/#jsrender */ /*! **VERSION FOR WEB** (For NODE.JS see http://jsviews.com/download/jsrender-node.js) */ /* * Best-of-breed templating in browser or on Node.js. @@ -44,25 +44,19 @@ var setGlobals = $ === false; // Only set globals if script block in browser (no $ = $ && $.fn ? $ : global.jQuery; // $ is jQuery passed in by CommonJS loader (Browserify), or global jQuery. -var versionNumber = "v1.0.0", +var versionNumber = "v1.0.1", jsvStoreName, rTag, rTmplString, topView, $views, $expando, _ocp = "_ocp", // Observable contextual parameter //TODO tmplFnsCache = {}, - $isFunction, $isArray, $templates, $converters, $helpers, $tags, $sub, $subSettings, $subSettingsAdvanced, $viewsSettings, delimOpenChar0, delimOpenChar1, delimCloseChar0, delimCloseChar1, linkChar, setting, baseOnError, - - rPath = /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, - // not object helper view viewProperty pathTokens leafToken - - rParams = /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$_])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, - // lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space - // (left paren? followed by (path? followed by operator) or (path followed by left paren?)) or comma or apos or quot or right paren or space + $isFunction, $isArray, $templates, $converters, $helpers, $tags, $sub, $subSettings, $subSettingsAdvanced, $viewsSettings, + delimOpenChar0, delimOpenChar1, delimCloseChar0, delimCloseChar1, linkChar, setting, baseOnError, isRenderCall, rNewLine = /[ \t]*(\r\n|\n|\r)/g, rUnescapeQuotes = /\\(['"])/g, rEscapeQuotes = /['"\\]/g, // Escape quotes and \ character - rBuildHash = /(?:\x08|^)(onerror:)?(?:(~?)(([\w$_\.]+):)?([^\x08]+))\x08(,)?([^\x08]+)/gi, + rBuildHash = /(?:\x08|^)(onerror:)?(?:(~?)(([\w$.]+):)?([^\x08]+))\x08(,)?([^\x08]+)/gi, rTestElseIf = /^if\s/, rFirstElem = /<(\w+)[>\s]/, rAttrEncode = /[\x00`><"'&=]/g, // Includes > encoding since rConvertMarkers in JsViews does not skip > characters in attribute strings @@ -118,6 +112,12 @@ var versionNumber = "v1.0.0", jsviews: versionNumber, sub: { // subscription, e.g. JsViews integration + rPath: /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, + // not object helper view viewProperty pathTokens leafToken + + rPrm: /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, + // lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space + View: View, Err: JsViewsError, tmplFn: tmplFn, @@ -2092,12 +2092,13 @@ function paramStructure(parts, type) { function parseParams(params, pathBindings, tmpl, isLinkExpr) { function parseTokens(all, lftPrn0, lftPrn, bound, path, operator, err, eq, path2, late, prn, comma, lftPrn2, apos, quot, rtPrn, rtPrnDot, prn2, space, index, full) { - // /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, - // lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space - // (left paren? followed by (path? followed by operator) or (path followed by paren?)) or comma or apos or quot or right paren or space + // /(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g, + //lftPrn0 lftPrn bound path operator err eq path2 late prn comma lftPrn2 apos quot rtPrn rtPrnDot prn2 space + // (left paren? followed by (path? followed by operator) or (path followed by paren?)) or comma or apos or quot or right paren or space + function parsePath(allPath, not, object, helper, view, viewProperty, pathTokens, leafToken) { - //rPath = /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, - // not object helper view viewProperty pathTokens leafToken + // /^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g, + // not object helper view viewProperty pathTokens leafToken var subPath = object === "."; if (object) { path = path.slice(not.length); @@ -2246,7 +2247,7 @@ function parseParams(params, pathBindings, tmpl, isLinkExpr) { bindings && ((bindings = bndCtx.bd = pathBindings[named] = []), bindings.skp = !bound), path + ':') : path // path - ? (path.split("^").join(".").replace(rPath, parsePath) + ? (path.split("^").join(".").replace($sub.rPath, parsePath) + (prn // some.fncall( ? (bndCtx = bndStack[++parenDepth] = {bd: []}, fnCall[parenDepth] = rtSq, prn) @@ -2290,7 +2291,7 @@ function parseParams(params, pathBindings, tmpl, isLinkExpr) { if (params[0] === "@") { params = params.replace(rBracketQuote, "."); } - result = (params + (tmpl ? " " : "")).replace(rParams, parseTokens); + result = (params + (tmpl ? " " : "")).replace($sub.rPrm, parseTokens); return !parenDepth && result || syntaxError(params); // Syntax error if unbalanced parens in params expression } diff --git a/jsrender.min.js b/jsrender.min.js index 661eea4..61f25fd 100644 --- a/jsrender.min.js +++ b/jsrender.min.js @@ -1,4 +1,4 @@ -/*! JsRender v1.0.0: http://jsviews.com/#jsrender */ +/*! JsRender v1.0.1: http://jsviews.com/#jsrender */ /*! **VERSION FOR WEB** (For NODE.JS see http://jsviews.com/download/jsrender-node.js) */ -!function(e,t){var n=t.jQuery;"object"==typeof exports?module.exports=n?e(t,n):function(n){if(n&&!n.fn)throw"Provide jQuery or null";return e(t,n)}:"function"==typeof define&&define.amd?define(function(){return e(t)}):e(t,!1)}(function(e,t){"use strict";function n(e,t){return function(){var n,r=this,i=r.base;return r.base=e,n=t.apply(r,arguments),r.base=i,n}}function r(e,t){return ae(t)&&(t=n(e?e._d?e:n(s,e):s,t),t._d=(e&&e._d||0)+1),t}function i(e,t){var n,i=t.props;for(n in i)!Oe.test(n)||e[n]&&e[n].fix||(e[n]="convert"!==n?r(e.constructor.prototype[n],i[n]):i[n])}function o(e){return e}function s(){return""}function a(e){try{throw console.log("JsRender dbg breakpoint: "+e),"dbg breakpoint"}catch(t){}return this.base?this.baseApply(arguments):e}function d(e){this.name=(t.link?"JsViews":"JsRender")+" Error",this.message=e||this.name}function l(e,t){if(e){for(var n in t)e[n]=t[n];return e}}function p(e,t,n){return e?de(e)?p.apply(oe,e):(we=n?n[0]:we,/^(\W|_){5}$/.test(e+t+we)||S("Invalid delimiters"),he=e[0],_e=e[1],be=t[0],xe=t[1],ge.delimiters=[he+_e,be+xe,we],e="\\"+he+"(\\"+we+")?\\"+_e,t="\\"+be+"\\"+xe,re="(?:(\\w+(?=[\\/\\s\\"+be+"]))|(\\w+)?(:)|(>)|(\\*))\\s*((?:[^\\"+be+"]|\\"+be+"(?!\\"+xe+"))*?)",fe.rTag="(?:"+re+")",re=new RegExp("(?:"+e+re+"(\\/)?|\\"+he+"(\\"+we+")?\\"+_e+"(?:(?:\\/(\\w+))\\s*|!--[\\s\\S]*?--))"+t,"g"),fe.rTmpl=new RegExp("^\\s|\\s$|<.*>|([^\\\\]|^)[{}]|"+e+".*"+t),me):ge.delimiters}function u(e,t){t||e===!0||(t=e,e=void 0);var n,r,i,o,s=this,a="root"===t;if(e){if(o=t&&s.type===t&&s,!o)if(n=s.views,s._.useKey){for(r in n)if(o=t?n[r].get(e,t):n[r])break}else for(r=0,i=n.length;!o&&r1,v=f.ctx;if(n){if(f._||(p=f.index,f=f.tag),u=f,v&&v.hasOwnProperty(n)||(v=ue).hasOwnProperty(n)){if(a=v[n],"tag"===n||"tagCtx"===n||"root"===n||"parentTags"===n||f._.it===n)return a}else v=void 0;if((!ke&&f.tagCtx||f.linked)&&(a&&a._cxp||(f=f.tagCtx||ae(a)?f:(f=f.scope||f,!f.isTop&&f.ctx.tag||f),void 0!==a&&f.tagCtx&&(f=f.tagCtx.view.scope),v=f._ocps,a=v&&v.hasOwnProperty(n)&&v[n]||a,a&&a._cxp||!i&&!g||((v||(f._ocps=f._ocps||{}))[n]=a=[{_ocp:a,_vw:u,_key:n}],a._cxp={path:Te,ind:0,updateValue:function(e,n){return t.observable(a[0]).setProperty(Te,e),this}})),d=a&&a._cxp)){if(arguments.length>2)return s=a[1]?fe._ceo(a[1].deps):[Te],s.unshift(a[0]),s._cxp=d,s;if(p=d.tagElse,c=a[1]?d.tag&&d.tag.cvtArgs?d.tag.cvtArgs(p,1)[d.ind]:a[1](a[0].data,a[0],fe):a[0]._ocp,g)return a&&c!==r&&fe._ucp(n,r,f,d),f;a=c}return a&&ae(a)&&(o=function(){return a.apply(this&&this!==e?this:u,arguments)},l(o,a),o._vw=u),o||a}}function m(e){return e&&(e.fn?e:this.getRsc("templates",e)||le(e))}function h(e,t,n,r){var o,s,a,d,p="number"==typeof n&&t.tmpl.bnds[n-1],u=t._lc;if(void 0===r&&p&&p._lr&&(r=""),void 0!==r?n=r={props:{},args:[r]}:p&&(n=p(t.data,t,fe)),p=p._bd&&p,e||p){if(o=u&&u.tag,n.view=t,!o){if(o=l(new fe._tg,{_:{bnd:p,unlinked:!0,lt:n.lt},inline:!u,tagName:":",convert:e,flow:!0,tagCtx:n,tagCtxs:[n],_is:"tag"}),a=n.args.length,a>1)for(d=o.bindTo=[];a--;)d.unshift(a);u&&(u.tag=o,o.linkCtx=u),n.ctx=Q(n.ctx,(u?u.view:t).ctx),i(o,n)}o._er=r&&s,o.ctx=n.ctx||o.ctx||{},n.ctx=void 0,s=o.cvtArgs()[0],o._er=r&&s}else s=n.args[0];return s=p&&t._.onRender?t._.onRender(s,t,o):s,void 0!=s?s:""}function _(e,t){var n,r,i,o,s,a,d,l=this;if(l.tagName){if(a=l,l=(a.tagCtxs||[l])[e||0],!l)return}else a=l.tag;if(s=a.bindFrom,o=l.args,(d=a.convert)&&""+d===d&&(d="true"===d?void 0:l.view.getRsc("converters",d)||S("Unknown converter: '"+d+"'")),d&&!t&&(o=o.slice()),s){for(i=[],n=s.length;n--;)r=s[n],i.unshift(b(l,r));t&&(o=i)}if(d){if(d=d.apply(a,i||o),void 0===d)return o;if(s=s||[0],n=s.length,de(d)&&d.length===n||(d=[d],s=[0],n=1),t)o=d;else for(;n--;)r=s[n],+r===r&&(o[r]=d[n])}return o}function b(e,t){return e=e[+t===t?"args":"props"],e&&e[t]}function x(e){return this.cvtArgs(e,1)}function w(e,t){var n,r,i=this;if(""+t===t){for(;void 0===n&&i;)r=i.tmpl&&i.tmpl[e],n=r&&r[t],i=i.parent;return n||oe[e][t]}}function y(e,t,n,r,o,s){function a(e){var t=d[e];if(void 0!==t)for(t=de(t)?t:[t],m=t.length;m--;)J=t[m],isNaN(parseInt(J))||(t[m]=parseInt(J));return t||[0]}t=t||ie;var d,l,p,u,c,f,g,m,h,w,y,k,C,T,j,A,N,R,F,V,$,M,E,I,D,J,U,q,K,L,B=0,H="",W=t._lc||!1,Z=t.ctx,z=n||t.tmpl,G="number"==typeof r&&t.tmpl.bnds[r-1];for("tag"===e._is?(d=e,e=d.tagName,r=d.tagCtxs,p=d.template):(l=t.getRsc("tags",e)||S("Unknown tag: {{"+e+"}} "),p=l.template),void 0===s&&G&&(G._lr=l.lateRender&&G._lr!==!1||G._lr)&&(s=""),void 0!==s?(H+=s,r=s=[{props:{},args:[],params:{props:{}}}]):G&&(r=G(t.data,t,fe)),g=r.length;B0&&(s=n)){if(!s)if(/^\.\/[^\\:*?"<>]*$/.test(n))(a=le[e=e||n])?n=a:s=document.getElementById(n);else if(t.fn&&!fe.rTmpl.test(n))try{s=t(n,document)[0]}catch(d){}s&&("SCRIPT"!==s.tagName&&S(n+": Use script block, not "+s.tagName),i?n=s.innerHTML:(o=s.getAttribute(He),o&&(o!==We?(n=le[o],delete le[o]):t.fn&&(n=t.data(s)[We])),o&&n||(e=e||(t.fn?We:n),n=A(e,s.innerHTML,r,i)),n.tmplName=e=e||o,e!==We&&(le[e]=n),s.setAttribute(He,e),t.fn&&t.data(s,We,n))),s=void 0}else n.fn||(n=void 0);return n}var s,a,d=n=n||"";if(fe._html=pe.html,0===i&&(i=void 0,d=o(d)),i=i||(n.markup?n.bnds?l({},n):n:{}),i.tmplName=i.tmplName||e||"unnamed",r&&(i._parentTmpl=r),!d&&n.markup&&(d=o(n.markup))&&d.fn&&(d=d.markup),void 0!==d)return d.render||n.render?d.tmpls&&(a=d):(n=V(d,i),J(d.replace(Fe,"\\$&"),n)),a||(a=l(function(){return a.render.apply(a,arguments)},n),C(a)),a}function N(e,t){return ae(e)?e.call(t):e}function R(e){for(var t=[],n=0,r=e.length;nO-(U||0))){if(U=I.slice(U,O+i.length),q!==!0)if(K=s||f[m-1].bd,L=K[K.length-1],L&&L.prm){for(;L.sb&&L.sb.prm;)L=L.sb;B=L.sb={path:L.sb,bnd:L.bnd}}else K.push(B={path:K.pop()});M=_e+":"+U+" onerror=''"+be,q=v[M],q||(v[M]=!0,v[M]=q=J(M,n,!0)),q!==!0&&B&&(B._cpfn=q,B.prm=c.bd,B.bnd=B.bnd||B.path&&B.path.indexOf("^")>=0)}return l?(l=!F,l?i:R+'"'):d?(d=!V,d?i:R+'"'):(b?(_[m]=O++,c=f[++m]={bd:[]},b):"")+(P?m?"":(g=I.slice(g,O),(o?(o=a=s=!1,"\b"):"\b,")+g+(g=O+i.length,u&&t.push(c.bd=[]),"\b")):C?(m&&D(e),u&&t.pop(),o="_"+w,a=x,g=O+i.length,u&&(u=c.bd=t[o]=[],u.skp=!x),w+":"):w?w.split("^").join(".").replace(je,S)+(A?(c=f[++m]={bd:[]},h[m]=Q,A):y):y?y:$?($=h[m]||$,h[m]=!1,c=f[--m],$+(A?(c=f[++m],h[m]=Q,A):"")):N?(h[m]||D(e),","):p?"":(l=F,d=V,'"'))}D(e)}var o,s,a,d,l,p,u=t&&t[0],c={bd:u},f={0:c},g=0,v=(n?n.links:u&&(u.links=u.links||{}))||ie.tmpl.links,m=0,h={},_={};return"@"===e[0]&&(e=e.replace(Ue,".")),p=(e+(n?" ":"")).replace(Ae,i),!m&&p||D(e)}function B(e,t,n){var r,i,o,s,a,d,l,p,u,c,f,g,v,m,h,_,b,x,w,y,k,C,T,j,A,N,R,F,$,M,E,P,O,I=0,S=ve.useViews||t.useViews||t.tags||t.templates||t.helpers||t.converters,J="",q={},L=e.length;for(""+t===t?(x=n?'data-link="'+t.replace(Ne," ").slice(1,-1)+'"':t,t=0):(x=t.tmplName||"unnamed",t.allowCode&&(q.allowCode=!0),t.debug&&(q.debug=!0),f=t.bnds,b=t.tmpls),r=0;r":s+o):(k&&(w=V(C,q),w.tmplName=x+"/"+o,w.useViews=w.useViews||S,B(k,w),S=w.useViews,b.push(w)),A||(y=o,S=S||o&&(!ce[o]||!ce[o].flow),j=J,J=""),T=e[r+1],T=T&&"else"===T[0]),$=F?";\ntry{\nret+=":"\n+",m="",h="",N&&(g||M||s&&s!==Be||E)){if(R=new Function("data,view,j,u","// "+x+" "+ ++I+" "+o+P+"{"+a+"};"+O),R._er=F,R._tag=o,R._bd=!!g,R._lr=E,n)return R;U(R,g),_='c("'+s+'",view,',c=!0,m=_+I+",",h=")"}if(J+=N?(n?(F?"try{\n":"")+"return ":$)+(c?(c=void 0,S=u=!0,_+(R?(f[I-1]=R,I):"{"+a+"}")+")"):">"===o?(l=!0,"h("+v[0]+")"):(p=!0,"((v="+v[0]+")!=null?v:"+(n?"null)":'"")'))):(d=!0,"\n{view:view,content:false,tmpl:"+(k?b.length:"false")+","+a+"},"),y&&!T){if(J="["+J.slice(0,-1)+"]",_='t("'+y+'",view,this,',n||g){if(J=new Function("data,view,j,u"," // "+x+" "+I+" "+y+P+J+O),J._er=F,J._tag=y,g&&U(f[I-1]=J,g),J._lr=E,n)return J;m=_+I+",undefined,",h=")"}J=j+$+_+(g&&I||J)+")",g=0,y=0}F&&!T&&(S=!0,J+=";\n}catch(e){ret"+(n?"urn ":"+=")+m+"j._err(e,view,"+F+")"+h+";}"+(n?"":"ret=ret"))}J="// "+x+(q.debug?"\ndebugger;":"")+"\nvar v"+(d?",t=j._tag":"")+(u?",c=j._cnvt":"")+(l?",h=j._html":"")+(n?(i[8]?", ob":"")+";\n":',ret=""')+J+(n?"\n":";\nreturn ret;");try{J=new Function("data,view,j,u",J)}catch(Q){D("Compiled template code:\n\n"+J+'\n: "'+(Q.message||Q)+'"')}return t&&(t.fn=J,t.useViews=!!S),J}function Q(e,t){return e&&e!==t?t?l(l({},t),e):e:t&&l({},t)}function H(e,n){var r,i,o=[];if(typeof e===Qe||ae(e))for(r in e)i=e[r],r===se||!e.hasOwnProperty(r)||n.props.noFunctions&&t.isFunction(i)||o.push({key:r,prop:i});return W(o,n)}function W(e,n){var r,i,o,s=n.tag,a=n.props,d=n.params.props,l=a.filter,p=a.sort,u=p===!0,c=parseInt(a.step),f=a.reverse?-1:1;if(!de(e))return e;if(u||p&&""+p===p?(r=e.map(function(e,t){return e=u?e:g(e,p),{i:t,v:""+e===e?e.toLowerCase():e}}),r.sort(function(e,t){return e.v>t.v?f:e.ve.length?e.length:+o,e=e.slice(i,o)),c>1){for(i=0,o=e.length,r=[];i=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g,Ne=/[ \t]*(\r\n|\n|\r)/g,Re=/\\(['"])/g,Fe=/['"\\]/g,Ve=/(?:\x08|^)(onerror:)?(?:(~?)(([\w$_\.]+):)?([^\x08]+))\x08(,)?([^\x08]+)/gi,$e=/^if\s/,Me=/<(\w+)[>\s]/,Ee=/[\x00`><"'&=]/g,Pe=/[\x00`><\"'&=]/,Oe=/^on[A-Z]|^convert(Back)?$/,Ie=/^\#\d+_`[\s\S]*\/\d+_`$/,Se=Ee,De=/[&<>]/g,Je=/&(amp|gt|lt);/g,Ue=/\[['"]?|['"]?\]/g,qe=0,Ke={"&":"&","<":"<",">":">","\0":"�","'":"'",'"':""","`":"`","=":"="},Le={amp:"&",gt:">",lt:"<"},Be="html",Qe="object",He="data-jsv-tmpl",We="jsvTmpl",Ze="For #index in nested block use #getIndex().",ze={},Ge=e.jsrender,Xe=Ge&&t&&!t.render,Ye={template:{compile:A},tag:{compile:T},viewModel:{compile:F},helper:{},converter:{}};if(oe={jsviews:Ce,sub:{View:k,Err:d,tmplFn:J,parse:L,extend:l,extendCtx:Q,syntaxErr:D,onStore:{template:function(e,t){null===t?delete ze[e]:e&&(ze[e]=t)}},addSetting:M,settings:{allowCode:!1},advSet:s,_thp:i,_gm:r,_tg:function(){},_cnvt:h,_tag:y,_er:S,_err:I,_cp:o,_sq:function(e){return"constructor"===e&&D(""),e}},settings:{delimiters:p,advanced:function(e){return e?(l(ve,e),fe.advSet(),me):ve}},map:E},(d.prototype=new Error).constructor=d,c.depends=function(){return[this.get("item"),"index"]},f.depends="index",k.prototype={get:u,getIndex:f,ctxPrm:v,getRsc:w,_getTmpl:m,_getOb:g,_is:"view"},fe=oe.sub,me=oe.settings,!(Ge||t&&t.render)){for(ne in Ye)$(ne,Ye[ne]);if(pe=oe.converters,ue=oe.helpers,ce=oe.tags,fe._tg.prototype={baseApply:j,cvtArgs:_,bndArgs:x,ctxPrm:v},ie=fe.topView=new k,t){if(t.fn.render=Z,se=t.expando,t.observable){if(Ce!==(Ce=t.views.jsviews))throw"JsObservable requires JsRender "+Ce;l(fe,t.views.sub),oe.map=t.views.map}}else t={},te&&(e.jsrender=t),t.renderFile=t.__express=t.compile=function(){throw"Node.js: use npm jsrender, or jsrender-node.js"},t.isFunction=function(e){return"function"==typeof e},t.isArray=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},fe._jq=function(e){e!==t&&(l(e,t),t=e,t.fn.render=Z,delete t.jsrender,se=t.expando)},t.jsrender=Ce;ge=fe.settings,ge.allowCode=!1,ae=t.isFunction,t.render=ze,t.views=oe,t.templates=le=oe.templates;for(ye in ge)M(ye);(me.debugMode=function(e){return void 0===e?ge.debugMode:(ge.debugMode=e,ge.onError=e+""===e?function(){return e}:ae(e)?e:void 0,me)})(!1),ve=ge.advanced={useViews:!1,_jsv:!1},ce({"if":{render:function(e){var t=this,n=t.tagCtx,r=t.rendering.done||!e&&(n.args.length||!n.index)?"":(t.rendering.done=!0,void(t.selected=n.index));return r},contentCtx:!0,flow:!0},"for":{sortDataMap:E(W),init:function(e,t){var n,r,i,o=this,s=o.tagCtxs;for(n=s.length;n--;)r=s[n],i=r.props,r.argDefault=void 0===i.end||r.args.length>0,r.argDefault!==!1&&de(r.args[0])&&(void 0!==i.sort||r.params.props.start||r.params.props.end||void 0!==i.step||i.filter||i.reverse)&&(i.dataMap=o.sortDataMap)},render:function(e){var t,n,r,i,o,s=this,a=s.tagCtx,d=a.argDefault===!1,l=a.props,p=d||a.args.length,u="",c=0;if(!s.rendering.done){if(t=p?e:a.view.data,d)for(d=l.reverse?"unshift":"push",i=+l.end,o=+l.step||1,t=[],r=+l.start||0;(i-r)*o>0;r+=o)t[d](r);void 0!==t&&(n=de(t),u+=a.render(t,!p||l.noIteration),c+=n?t.length:1),(s.rendering.done=c)&&(s.selected=a.index)}return u},flow:!0},props:{baseTag:"for",dataMap:E(H),init:s,flow:!0},include:{flow:!0},"*":{render:o,flow:!0},":*":{render:o,flow:!0},dbg:ue.dbg=pe.dbg=a}),pe({html:X,attr:X,encode:Y,unencode:ee,url:function(e){return void 0!=e?encodeURI(""+e):null===e?e:""}})}return ge=fe.settings,de=(t||Ge).isArray,me.delimiters("{{","}}","^"),Xe&&Ge.views.sub._jq(t),t||Ge},window); +!function(e,t){var n=t.jQuery;"object"==typeof exports?module.exports=n?e(t,n):function(n){if(n&&!n.fn)throw"Provide jQuery or null";return e(t,n)}:"function"==typeof define&&define.amd?define(function(){return e(t)}):e(t,!1)}(function(e,t){"use strict";function n(e,t){return function(){var n,r=this,i=r.base;return r.base=e,n=t.apply(r,arguments),r.base=i,n}}function r(e,t){return se(t)&&(t=n(e?e._d?e:n(a,e):a,t),t._d=(e&&e._d||0)+1),t}function i(e,t){var n,i=t.props;for(n in i)!Me.test(n)||e[n]&&e[n].fix||(e[n]="convert"!==n?r(e.constructor.prototype[n],i[n]):i[n])}function o(e){return e}function a(){return""}function s(e){try{throw console.log("JsRender dbg breakpoint: "+e),"dbg breakpoint"}catch(t){}return this.base?this.baseApply(arguments):e}function d(e){this.name=(t.link?"JsViews":"JsRender")+" Error",this.message=e||this.name}function l(e,t){if(e){for(var n in t)e[n]=t[n];return e}}function p(e,t,n){return e?de(e)?p.apply(oe,e):(we=n?n[0]:we,/^(\W|_){5}$/.test(e+t+we)||S("Invalid delimiters"),he=e[0],_e=e[1],be=t[0],xe=t[1],ge.delimiters=[he+_e,be+xe,we],e="\\"+he+"(\\"+we+")?\\"+_e,t="\\"+be+"\\"+xe,re="(?:(\\w+(?=[\\/\\s\\"+be+"]))|(\\w+)?(:)|(>)|(\\*))\\s*((?:[^\\"+be+"]|\\"+be+"(?!\\"+xe+"))*?)",fe.rTag="(?:"+re+")",re=new RegExp("(?:"+e+re+"(\\/)?|\\"+he+"(\\"+we+")?\\"+_e+"(?:(?:\\/(\\w+))\\s*|!--[\\s\\S]*?--))"+t,"g"),fe.rTmpl=new RegExp("^\\s|\\s$|<.*>|([^\\\\]|^)[{}]|"+e+".*"+t),me):ge.delimiters}function u(e,t){t||e===!0||(t=e,e=void 0);var n,r,i,o,a=this,s="root"===t;if(e){if(o=t&&a.type===t&&a,!o)if(n=a.views,a._.useKey){for(r in n)if(o=t?n[r].get(e,t):n[r])break}else for(r=0,i=n.length;!o&&r1,v=f.ctx;if(n){if(f._||(p=f.index,f=f.tag),u=f,v&&v.hasOwnProperty(n)||(v=ue).hasOwnProperty(n)){if(s=v[n],"tag"===n||"tagCtx"===n||"root"===n||"parentTags"===n||f._.it===n)return s}else v=void 0;if((!ke&&f.tagCtx||f.linked)&&(s&&s._cxp||(f=f.tagCtx||se(s)?f:(f=f.scope||f,!f.isTop&&f.ctx.tag||f),void 0!==s&&f.tagCtx&&(f=f.tagCtx.view.scope),v=f._ocps,s=v&&v.hasOwnProperty(n)&&v[n]||s,s&&s._cxp||!i&&!g||((v||(f._ocps=f._ocps||{}))[n]=s=[{_ocp:s,_vw:u,_key:n}],s._cxp={path:Te,ind:0,updateValue:function(e,n){return t.observable(s[0]).setProperty(Te,e),this}})),d=s&&s._cxp)){if(arguments.length>2)return a=s[1]?fe._ceo(s[1].deps):[Te],a.unshift(s[0]),a._cxp=d,a;if(p=d.tagElse,c=s[1]?d.tag&&d.tag.cvtArgs?d.tag.cvtArgs(p,1)[d.ind]:s[1](s[0].data,s[0],fe):s[0]._ocp,g)return s&&c!==r&&fe._ucp(n,r,f,d),f;s=c}return s&&se(s)&&(o=function(){return s.apply(this&&this!==e?this:u,arguments)},l(o,s),o._vw=u),o||s}}function m(e){return e&&(e.fn?e:this.getRsc("templates",e)||le(e))}function h(e,t,n,r){var o,a,s,d,p="number"==typeof n&&t.tmpl.bnds[n-1],u=t._lc;if(void 0===r&&p&&p._lr&&(r=""),void 0!==r?n=r={props:{},args:[r]}:p&&(n=p(t.data,t,fe)),p=p._bd&&p,e||p){if(o=u&&u.tag,n.view=t,!o){if(o=l(new fe._tg,{_:{bnd:p,unlinked:!0,lt:n.lt},inline:!u,tagName:":",convert:e,flow:!0,tagCtx:n,tagCtxs:[n],_is:"tag"}),s=n.args.length,s>1)for(d=o.bindTo=[];s--;)d.unshift(s);u&&(u.tag=o,o.linkCtx=u),n.ctx=Q(n.ctx,(u?u.view:t).ctx),i(o,n)}o._er=r&&a,o.ctx=n.ctx||o.ctx||{},n.ctx=void 0,a=o.cvtArgs()[0],o._er=r&&a}else a=n.args[0];return a=p&&t._.onRender?t._.onRender(a,t,o):a,void 0!=a?a:""}function _(e,t){var n,r,i,o,a,s,d,l=this;if(l.tagName){if(s=l,l=(s.tagCtxs||[l])[e||0],!l)return}else s=l.tag;if(a=s.bindFrom,o=l.args,(d=s.convert)&&""+d===d&&(d="true"===d?void 0:l.view.getRsc("converters",d)||S("Unknown converter: '"+d+"'")),d&&!t&&(o=o.slice()),a){for(i=[],n=a.length;n--;)r=a[n],i.unshift(b(l,r));t&&(o=i)}if(d){if(d=d.apply(s,i||o),void 0===d)return o;if(a=a||[0],n=a.length,de(d)&&d.length===n||(d=[d],a=[0],n=1),t)o=d;else for(;n--;)r=a[n],+r===r&&(o[r]=d[n])}return o}function b(e,t){return e=e[+t===t?"args":"props"],e&&e[t]}function x(e){return this.cvtArgs(e,1)}function w(e,t){var n,r,i=this;if(""+t===t){for(;void 0===n&&i;)r=i.tmpl&&i.tmpl[e],n=r&&r[t],i=i.parent;return n||oe[e][t]}}function y(e,t,n,r,o,a){function s(e){var t=d[e];if(void 0!==t)for(t=de(t)?t:[t],m=t.length;m--;)J=t[m],isNaN(parseInt(J))||(t[m]=parseInt(J));return t||[0]}t=t||ie;var d,l,p,u,c,f,g,m,h,w,y,k,C,T,j,A,N,P,R,F,V,$,M,I,D,J,U,q,K,L,B=0,H="",W=t._lc||!1,Z=t.ctx,z=n||t.tmpl,G="number"==typeof r&&t.tmpl.bnds[r-1];for("tag"===e._is?(d=e,e=d.tagName,r=d.tagCtxs,p=d.template):(l=t.getRsc("tags",e)||S("Unknown tag: {{"+e+"}} "),p=l.template),void 0===a&&G&&(G._lr=l.lateRender&&G._lr!==!1||G._lr)&&(a=""),void 0!==a?(H+=a,r=a=[{props:{},args:[],params:{props:{}}}]):G&&(r=G(t.data,t,fe)),g=r.length;B0&&(a=n)){if(!a)if(/^\.\/[^\\:*?"<>]*$/.test(n))(s=le[e=e||n])?n=s:a=document.getElementById(n);else if(t.fn&&!fe.rTmpl.test(n))try{a=t(n,document)[0]}catch(d){}a&&("SCRIPT"!==a.tagName&&S(n+": Use script block, not "+a.tagName),i?n=a.innerHTML:(o=a.getAttribute(Be),o&&(o!==Qe?(n=le[o],delete le[o]):t.fn&&(n=t.data(a)[Qe])),o&&n||(e=e||(t.fn?Qe:n),n=A(e,a.innerHTML,r,i)),n.tmplName=e=e||o,e!==Qe&&(le[e]=n),a.setAttribute(Be,e),t.fn&&t.data(a,Qe,n))),a=void 0}else n.fn||(n=void 0);return n}var a,s,d=n=n||"";if(fe._html=pe.html,0===i&&(i=void 0,d=o(d)),i=i||(n.markup?n.bnds?l({},n):n:{}),i.tmplName=i.tmplName||e||"unnamed",r&&(i._parentTmpl=r),!d&&n.markup&&(d=o(n.markup))&&d.fn&&(d=d.markup),void 0!==d)return d.render||n.render?d.tmpls&&(s=d):(n=F(d,i),J(d.replace(Ne,"\\$&"),n)),s||(s=l(function(){return s.render.apply(s,arguments)},n),C(s)),s}function N(e,t){return se(e)?e.call(t):e}function P(e){for(var t=[],n=0,r=e.length;nO-(U||0))){if(U=I.slice(U,O+i.length),q!==!0)if(K=a||f[m-1].bd,L=K[K.length-1],L&&L.prm){for(;L.sb&&L.sb.prm;)L=L.sb;B=L.sb={path:L.sb,bnd:L.bnd}}else K.push(B={path:K.pop()});$=_e+":"+U+" onerror=''"+be,q=v[$],q||(v[$]=!0,v[$]=q=J($,n,!0)),q!==!0&&B&&(B._cpfn=q,B.prm=c.bd,B.bnd=B.bnd||B.path&&B.path.indexOf("^")>=0)}return l?(l=!R,l?i:P+'"'):d?(d=!F,d?i:P+'"'):(b?(_[m]=O++,c=f[++m]={bd:[]},b):"")+(E?m?"":(g=I.slice(g,O),(o?(o=s=a=!1,"\b"):"\b,")+g+(g=O+i.length,u&&t.push(c.bd=[]),"\b")):C?(m&&D(e),u&&t.pop(),o="_"+w,s=x,g=O+i.length,u&&(u=c.bd=t[o]=[],u.skp=!x),w+":"):w?w.split("^").join(".").replace(fe.rPath,S)+(A?(c=f[++m]={bd:[]},h[m]=Q,A):y):y?y:V?(V=h[m]||V,h[m]=!1,c=f[--m],V+(A?(c=f[++m],h[m]=Q,A):"")):N?(h[m]||D(e),","):p?"":(l=R,d=F,'"'))}D(e)}var o,a,s,d,l,p,u=t&&t[0],c={bd:u},f={0:c},g=0,v=(n?n.links:u&&(u.links=u.links||{}))||ie.tmpl.links,m=0,h={},_={};return"@"===e[0]&&(e=e.replace(De,".")),p=(e+(n?" ":"")).replace(fe.rPrm,i),!m&&p||D(e)}function B(e,t,n){var r,i,o,a,s,d,l,p,u,c,f,g,v,m,h,_,b,x,w,y,k,C,T,j,A,N,P,R,V,$,M,E,O,I=0,S=ve.useViews||t.useViews||t.tags||t.templates||t.helpers||t.converters,J="",q={},L=e.length;for(""+t===t?(x=n?'data-link="'+t.replace(je," ").slice(1,-1)+'"':t,t=0):(x=t.tmplName||"unnamed",t.allowCode&&(q.allowCode=!0),t.debug&&(q.debug=!0),f=t.bnds,b=t.tmpls),r=0;r":a+o):(k&&(w=F(C,q),w.tmplName=x+"/"+o,w.useViews=w.useViews||S,B(k,w),S=w.useViews,b.push(w)),A||(y=o,S=S||o&&(!ce[o]||!ce[o].flow),j=J,J=""),T=e[r+1],T=T&&"else"===T[0]),V=R?";\ntry{\nret+=":"\n+",m="",h="",N&&(g||$||a&&a!==Ke||M)){if(P=new Function("data,view,j,u","// "+x+" "+ ++I+" "+o+E+"{"+s+"};"+O),P._er=R,P._tag=o,P._bd=!!g,P._lr=M,n)return P;U(P,g),_='c("'+a+'",view,',c=!0,m=_+I+",",h=")"}if(J+=N?(n?(R?"try{\n":"")+"return ":V)+(c?(c=void 0,S=u=!0,_+(P?(f[I-1]=P,I):"{"+s+"}")+")"):">"===o?(l=!0,"h("+v[0]+")"):(p=!0,"((v="+v[0]+")!=null?v:"+(n?"null)":'"")'))):(d=!0,"\n{view:view,content:false,tmpl:"+(k?b.length:"false")+","+s+"},"),y&&!T){if(J="["+J.slice(0,-1)+"]",_='t("'+y+'",view,this,',n||g){if(J=new Function("data,view,j,u"," // "+x+" "+I+" "+y+E+J+O),J._er=R,J._tag=y,g&&U(f[I-1]=J,g),J._lr=M,n)return J;m=_+I+",undefined,",h=")"}J=j+V+_+(g&&I||J)+")",g=0,y=0}R&&!T&&(S=!0,J+=";\n}catch(e){ret"+(n?"urn ":"+=")+m+"j._err(e,view,"+R+")"+h+";}"+(n?"":"ret=ret"))}J="// "+x+(q.debug?"\ndebugger;":"")+"\nvar v"+(d?",t=j._tag":"")+(u?",c=j._cnvt":"")+(l?",h=j._html":"")+(n?(i[8]?", ob":"")+";\n":',ret=""')+J+(n?"\n":";\nreturn ret;");try{J=new Function("data,view,j,u",J)}catch(Q){D("Compiled template code:\n\n"+J+'\n: "'+(Q.message||Q)+'"')}return t&&(t.fn=J,t.useViews=!!S),J}function Q(e,t){return e&&e!==t?t?l(l({},t),e):e:t&&l({},t)}function H(e,n){var r,i,o=[];if(typeof e===Le||se(e))for(r in e)i=e[r],r===ae||!e.hasOwnProperty(r)||n.props.noFunctions&&t.isFunction(i)||o.push({key:r,prop:i});return W(o,n)}function W(e,n){var r,i,o,a=n.tag,s=n.props,d=n.params.props,l=s.filter,p=s.sort,u=p===!0,c=parseInt(s.step),f=s.reverse?-1:1;if(!de(e))return e;if(u||p&&""+p===p?(r=e.map(function(e,t){return e=u?e:g(e,p),{i:t,v:""+e===e?e.toLowerCase():e}}),r.sort(function(e,t){return e.v>t.v?f:e.ve.length?e.length:+o,e=e.slice(i,o)),c>1){for(i=0,o=e.length,r=[];i\s]/,Ve=/[\x00`><"'&=]/g,$e=/[\x00`><\"'&=]/,Me=/^on[A-Z]|^convert(Back)?$/,Ee=/^\#\d+_`[\s\S]*\/\d+_`$/,Oe=Ve,Ie=/[&<>]/g,Se=/&(amp|gt|lt);/g,De=/\[['"]?|['"]?\]/g,Je=0,Ue={"&":"&","<":"<",">":">","\0":"�","'":"'",'"':""","`":"`","=":"="},qe={amp:"&",gt:">",lt:"<"},Ke="html",Le="object",Be="data-jsv-tmpl",Qe="jsvTmpl",He="For #index in nested block use #getIndex().",We={},Ze=e.jsrender,ze=Ze&&t&&!t.render,Ge={template:{compile:A},tag:{compile:T},viewModel:{compile:R},helper:{},converter:{}};if(oe={jsviews:Ce,sub:{rPath:/^(!*?)(?:null|true|false|\d[\d.]*|([\w$]+|\.|~([\w$]+)|#(view|([\w$]+))?)([\w$.^]*?)(?:[.[^]([\w$]+)\]?)?)$/g,rPrm:/(\()(?=\s*\()|(?:([([])\s*)?(?:(\^?)(~?[\w$.^]+)?\s*((\+\+|--)|\+|-|~(?![\w$])|&&|\|\||===|!==|==|!=|<=|>=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g,View:k,Err:d,tmplFn:J,parse:L,extend:l,extendCtx:Q,syntaxErr:D,onStore:{template:function(e,t){null===t?delete We[e]:e&&(We[e]=t)}},addSetting:$,settings:{allowCode:!1},advSet:a,_thp:i,_gm:r,_tg:function(){},_cnvt:h,_tag:y,_er:S,_err:I,_cp:o,_sq:function(e){return"constructor"===e&&D(""),e}},settings:{delimiters:p,advanced:function(e){return e?(l(ve,e),fe.advSet(),me):ve}},map:M},(d.prototype=new Error).constructor=d,c.depends=function(){return[this.get("item"),"index"]},f.depends="index",k.prototype={get:u,getIndex:f,ctxPrm:v,getRsc:w,_getTmpl:m,_getOb:g,_is:"view"},fe=oe.sub,me=oe.settings,!(Ze||t&&t.render)){for(ne in Ge)V(ne,Ge[ne]);if(pe=oe.converters,ue=oe.helpers,ce=oe.tags,fe._tg.prototype={baseApply:j,cvtArgs:_,bndArgs:x,ctxPrm:v},ie=fe.topView=new k,t){if(t.fn.render=Z,ae=t.expando,t.observable){if(Ce!==(Ce=t.views.jsviews))throw"JsObservable requires JsRender "+Ce;l(fe,t.views.sub),oe.map=t.views.map}}else t={},te&&(e.jsrender=t),t.renderFile=t.__express=t.compile=function(){throw"Node.js: use npm jsrender, or jsrender-node.js"},t.isFunction=function(e){return"function"==typeof e},t.isArray=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},fe._jq=function(e){e!==t&&(l(e,t),t=e,t.fn.render=Z,delete t.jsrender,ae=t.expando)},t.jsrender=Ce;ge=fe.settings,ge.allowCode=!1,se=t.isFunction,t.render=We,t.views=oe,t.templates=le=oe.templates;for(ye in ge)$(ye);(me.debugMode=function(e){return void 0===e?ge.debugMode:(ge.debugMode=e,ge.onError=e+""===e?function(){return e}:se(e)?e:void 0,me)})(!1),ve=ge.advanced={useViews:!1,_jsv:!1},ce({"if":{render:function(e){var t=this,n=t.tagCtx,r=t.rendering.done||!e&&(n.args.length||!n.index)?"":(t.rendering.done=!0,void(t.selected=n.index));return r},contentCtx:!0,flow:!0},"for":{sortDataMap:M(W),init:function(e,t){var n,r,i,o=this,a=o.tagCtxs;for(n=a.length;n--;)r=a[n],i=r.props,r.argDefault=void 0===i.end||r.args.length>0,r.argDefault!==!1&&de(r.args[0])&&(void 0!==i.sort||r.params.props.start||r.params.props.end||void 0!==i.step||i.filter||i.reverse)&&(i.dataMap=o.sortDataMap)},render:function(e){var t,n,r,i,o,a=this,s=a.tagCtx,d=s.argDefault===!1,l=s.props,p=d||s.args.length,u="",c=0;if(!a.rendering.done){if(t=p?e:s.view.data,d)for(d=l.reverse?"unshift":"push",i=+l.end,o=+l.step||1,t=[],r=+l.start||0;(i-r)*o>0;r+=o)t[d](r);void 0!==t&&(n=de(t),u+=s.render(t,!p||l.noIteration),c+=n?t.length:1),(a.rendering.done=c)&&(a.selected=s.index)}return u},flow:!0},props:{baseTag:"for",dataMap:M(H),init:a,flow:!0},include:{flow:!0},"*":{render:o,flow:!0},":*":{render:o,flow:!0},dbg:ue.dbg=pe.dbg=s}),pe({html:X,attr:X,encode:Y,unencode:ee,url:function(e){return void 0!=e?encodeURI(""+e):null===e?e:""}})}return ge=fe.settings,de=(t||Ze).isArray,me.delimiters("{{","}}","^"),ze&&Ze.views.sub._jq(t),t||Ze},window); //# sourceMappingURL=jsrender.min.js.map diff --git a/jsrender.min.js.map b/jsrender.min.js.map index 31ea519..48b540c 100644 --- a/jsrender.min.js.map +++ b/jsrender.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["jsrender.js"],"names":["factory","global","$","jQuery","exports","module","fn","define","amd","getDerivedMethod","baseMethod","method","ret","tag","this","prevBase","base","apply","arguments","getMethod","$isFunction","_d","noop","tagHandlersFromProps","tagCtx","prop","props","rHasHandlers","test","fix","constructor","prototype","retVal","val","dbgBreak","console","log","e","baseApply","JsViewsError","message","name","link","$extend","target","source","$viewsDelimiters","openChars","closeChars","$isArray","$views","linkChar","error","delimOpenChar0","delimOpenChar1","delimCloseChar0","delimCloseChar1","$subSettings","delimiters","rTag","$sub","RegExp","rTmpl","$viewsSettings","getView","inner","type","undefined","views","i","l","found","view","root","_","useKey","get","length","parent","getNestedIndex","index","getIndex","getPathObject","ob","path","ltOb","prevOb","tokens","split","lt","contextParameter","key","value","wrapped","deps","res","obsCtxPrm","tagElse","callView","newRes","storeView","isUpdate","isRenderCall","store","ctx","hasOwnProperty","$helpers","it","linked","_cxp","scope","isTop","_ocps","_ocp","_vw","_key","ind","updateValue","observable","setProperty","_ceo","unshift","cvtArgs","data","_ucp","getTemplate","tmpl","getRsc","$templates","convertVal","converter","onError","argsLen","bindTo","boundTag","bnds","linkCtx","_lc","_lr","args","_bd","_tg","bnd","unlinked","inline","tagName","convert","flow","tagCtxs","_is","extendCtx","_er","onRender","convertArgs","bound","boundArgs","bindFrom","slice","argOrProp","context","convertBoundArgs","getResource","resourceType","itemName","renderTag","parentView","bindToOrBindFrom","bindArray","m","isNaN","parseInt","topView","tagDef","template","tags","attr","parentTag","n","itemRet","tagCtxCtx","ctxPrm","initVal","content","callInit","mapDef","thisMap","bdArgs","tagDataMap","contentCtx","bindFromLength","bindToLength","linkedElement","defaultCtx","parentTmpl","lateRender","params","tmpls","render","renderContent","bndArgs","_getTmpl","init","_ctr","ths","arrVws","dataBoundOnly","dataMap","map","parents","parentTags","rendering","rndr","argDefault","linkedCtxParam","fromIndex","toIndex","_dfAt","noVws","HTML","_cp","cvt","src","unmap","tgt","rWrappedInViewMarker","links","renderWithViews","$converters","html","View","contentTmpl","parentView_","self_","self","isArray","id","viewId","scp","indexStr","push","splice","compileChildResources","storeName","storeNames","resources","jsvStores","compileTag","Tag","baseTag","compiledDef","depends","$tags","_parentTmpl","compileTmpl","options","lookupTemplate","currentName","nodeType","elem","document","getElementById","innerHTML","getAttribute","tmplAttr","jsvTmpl","tmplName","setAttribute","compiledTmpl","tmplOrMarkup","_html","markup","tmplObject","tmplFn","replace","rEscapeQuotes","getDefaultVal","defaultVal","call","unmapArray","modelArr","arr","compileViewModel","GetNew","vm","iterate","action","getterType","j","g","getters","getter","viewModels","JSON","parse","merge","viewModel","$expando","getterNames","mod","assigned","newModArr","k","model","$observable","refresh","concat","charAt","extend","proto","body","privField","set","Function","htmlTag","wrapMap","$subSettingsAdvanced","_wm","rFirstElem","exec","toLowerCase","div","trim","registerStore","storeSettings","theStore","item","compile","thisStore","onStore","OBJECT","getTgt","addSetting","st","Map","baseMap","noIteration","isTopRenderCall","prevData","prevIndex","result","useViews","setItemVar","newCtx","itemVar","newView","childView","itemResult","swapContent","outerOnRender","noLinking","_wrp","syntaxError","nl","helpers","contentView","onRenderError","fallback","Err","isLinkExpr","convertBack","hasElse","pushprecedingContent","shift","loc","substr","rNewLine","blockTagCheck","block","parseTag","all","bind","colon","codeTag","slash","bind2","closeBlock","late","openTagName","isLateOb","pathBindings","ctxProps","paramsArgs","paramsProps","paramsCtxProps","useTrigger","allowCode","rUnescapeQuotes","rTestElseIf","current","substring","stack","pop","parseParams","rBuildHash","onerror","isCtxPrm","keyToken","keyValue","arg","param","hasHandlers","newNode","parsedParam","bindings","astTop","buildCode","setPaths","pathsArr","paths","skp","paramStructure","parts","parseTokens","lftPrn0","lftPrn","operator","err","eq","path2","prn","comma","lftPrn2","apos","quot","rtPrn","rtPrnDot","prn2","space","full","parsePath","allPath","not","object","helper","viewProperty","pathTokens","leafToken","subPath","binds","named","bindto","_jsvto","bndCtx","bd","theOb","_cpfn","sb","pathStart","parenDepth","join","expr","exprFn","newOb","rtSq","aposed","quoted","boundName","bndStack","prm","tmplLinks","indexOf","paramIndex","rPath","fnCall","0","rBracketQuote","rParams","ast","node","hasTag","hasEncoder","getsVal","hasCnvt","useCnvt","tmplBindings","boundOnErrStart","boundOnErrEnd","tagRender","nestedTmpls","nestedTmpl","tagAndElses","nextIsElse","oldCode","isElse","isGetVal","tagCtxFn","tagStart","trigger","retStrOpen","retStrClose","tmplBindingKey","templates","converters","code","tmplOptions","debug","debugMode","_tag","parentContext","getTargetProps","noFunctions","isFunction","getTargetSorted","mapped","start","end","propParams","filter","sort","directSort","step","reverse","v","a","b","onFilter","sorted","paged","$fnRender","tmplElem","jquery","getCharEntity","ch","charEntities","charCodeAt","getCharFromEntity","match","token","charsFromEntities","htmlEncode","text","rIsHtml","rHtmlEncode","dataEncode","rDataEncode","dataUnencode","rDataUnencode","setGlobals","jsvStoreName","setting","versionNumber","rAttrEncode","&","<",">","\u0000","'","\"","`","=","amp","gt","$render","jsr","jsrender","jsrToJq","jsviews","sub","syntaxErr","settings","advSet","_thp","_gm","_cnvt","_err","_sq","advanced","Error","_getOb","expando","renderFile","__express","Array","obj","_jq","jq","_jsv","if","done","selected","for","sortDataMap","cloned","range","include","*",":*","dbg","encode","unencode","url","encodeURI","window"],"mappings":"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","file":"jsrender.min.js","sourcesContent":["/*! JsRender v1.0.0: http://jsviews.com/#jsrender */\n/*! **VERSION FOR WEB** (For NODE.JS see http://jsviews.com/download/jsrender-node.js) */\n/*\n * Best-of-breed templating in browser or on Node.js.\n * Does not require jQuery, or HTML DOM\n * Integrates with JsViews (http://jsviews.com/#jsviews)\n *\n * Copyright 2018, Boris Moore\n * Released under the MIT License.\n */\n\n//jshint -W018, -W041, -W120\n\n(function(factory, global) {\n\t// global var is the this object, which is window when running in the usual browser environment\n\tvar $ = global.jQuery;\n\n\tif (typeof exports === \"object\") { // CommonJS e.g. Browserify\n\t\tmodule.exports = $\n\t\t\t? factory(global, $)\n\t\t\t: function($) { // If no global jQuery, take optional jQuery passed as parameter: require('jsrender')(jQuery)\n\t\t\t\tif ($ && !$.fn) {\n\t\t\t\t\tthrow \"Provide jQuery or null\";\n\t\t\t\t}\n\t\t\t\treturn factory(global, $);\n\t\t\t};\n\t} else if (typeof define === \"function\" && define.amd) { // AMD script loader, e.g. RequireJS\n\t\tdefine(function() {\n\t\t\treturn factory(global);\n\t\t});\n\t} else { // Browser using plain