41 lines
No EOL
20 KiB
JavaScript
41 lines
No EOL
20 KiB
JavaScript
new function(){function x(b,d,p,f,k,n){return{tag:b,key:d,attrs:p,children:f,text:k,dom:n,domSize:void 0,state:{},events:void 0,instance:void 0,skip:!1}}x.normalize=function(b){return b instanceof Array?x("[",void 0,void 0,x.normalizeChildren(b),void 0,void 0):null!=b&&"object"!==typeof b?x("#",void 0,void 0,b,void 0,void 0):b};x.normalizeChildren=function(b){for(var d=0;d<b.length;d++)b[d]=x.normalize(b[d]);return b};var P=/(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g,
|
|
G={},A=function(b){if(null==b||"string"!==typeof b&&null==b.view)throw Error("The selector must be either a string or a component.");if("string"===typeof b&&void 0===G[b]){for(var d,p,f=[],k={};d=P.exec(b);){var n=d[1],l=d[2];""===n&&""!==l?p=l:"#"===n?k.id=l:"."===n?f.push(l):"["===d[3][0]&&((n=d[6])&&(n=n.replace(/\\(["'])/g,"$1").replace(/\\\\/g,"\\")),k[d[4]]=n||!0)}0<f.length&&(k.className=f.join(" "));G[b]=function(b,d){var g=!1,f,n,m=b.className||b["class"],l;for(l in k)b[l]=k[l];void 0!==
|
|
m&&(void 0!==b["class"]&&(b["class"]=void 0,b.className=m),void 0!==k.className&&(b.className=k.className+" "+m));for(l in b)if("key"!==l){g=!0;break}d instanceof Array&&1==d.length&&null!=d[0]&&"#"===d[0].tag?n=d[0].children:f=d;return x(p||"div",b.key,g?b:void 0,f,n,void 0)}}var t;null!=arguments[1]&&("object"!==typeof arguments[1]||void 0!==arguments[1].tag||arguments[1]instanceof Array)?f=1:(t=arguments[1],f=2);if(arguments.length===f+1)d=arguments[f]instanceof Array?arguments[f]:[arguments[f]];
|
|
else for(d=[];f<arguments.length;f++)d.push(arguments[f]);return"string"===typeof b?G[b](t||{},x.normalizeChildren(d)):x(b,t&&t.key,t||{},x.normalizeChildren(d),void 0,void 0)},I=function(b){function d(c,a,e,g,b,d,r){for(;e<g;e++){var q=a[e];null!=q&&w(c,p(q,b,r),d)}}function p(c,a,e){var g=c.tag;null!=c.attrs&&J(c.attrs,c,a);if("string"===typeof g)switch(g){case "#":return c.dom=z.createTextNode(c.children);case "<":return f(c);case "[":var b=z.createDocumentFragment();null!=c.children&&(g=c.children,
|
|
d(b,g,0,g.length,a,null,e));c.dom=b.firstChild;c.domSize=b.childNodes.length;return b;default:var m=c.tag;switch(c.tag){case "svg":e="http://www.w3.org/2000/svg";break;case "math":e="http://www.w3.org/1998/Math/MathML"}var r=(g=c.attrs)&&g.is,m=e?r?z.createElementNS(e,m,{is:r}):z.createElementNS(e,m):r?z.createElement(m,{is:r}):z.createElement(m);c.dom=m;if(null!=g)for(b in r=e,g)h(c,b,null,g[b],r);null!=c.text&&(""!==c.text?m.textContent=c.text:c.children=[x("#",void 0,void 0,c.text,void 0,void 0)]);
|
|
null!=c.children&&(b=c.children,d(m,b,0,b.length,a,null,e),a=c.attrs,"select"===c.tag&&null!=a&&("value"in a&&h(c,"value",null,a.value,void 0),"selectedIndex"in a&&h(c,"selectedIndex",null,a.selectedIndex,void 0)));return m}else return c.state||(c.state={}),K(c.state,c.tag),J(c.tag,c,a),c.instance=x.normalize(c.tag.view.call(c.state,c)),null!=c.instance?(a=p(c.instance,a,e),c.dom=c.instance.dom,c.domSize=null!=c.dom?c.instance.domSize:0,c=a):(c.domSize=0,c=D),c}function f(c){var a={caption:"table",
|
|
thead:"table",tbody:"table",tfoot:"table",tr:"tbody",th:"tr",td:"tr",colgroup:"table",col:"colgroup"}[(c.children.match(/^\s*?<(\w+)/im)||[])[1]]||"div",a=z.createElement(a);a.innerHTML=c.children;c.dom=a.firstChild;c.domSize=a.childNodes.length;c=z.createDocumentFragment();for(var e;e=a.firstChild;)c.appendChild(e);return c}function k(c,a,e,g,b,m){if(a!==e&&(null!=a||null!=e))if(null==a)d(c,e,0,e.length,g,b,void 0);else if(null==e)u(c,a,0,a.length,e);else{var r;a:{if(null!=a.pool&&Math.abs(a.pool.length-
|
|
e.length)<=Math.abs(a.length-e.length)&&(r=e[0]&&e[0].children&&e[0].children.length||0,Math.abs((a.pool[0]&&a.pool[0].children&&a.pool[0].children.length||0)-r)<=Math.abs((a[0]&&a[0].children&&a[0].children.length||0)-r))){r=!0;break a}r=!1}r&&(a=a.concat(a.pool));if(a.length===e.length&&null!=e[0]&&null==e[0].key)for(var q=0;q<a.length;q++)a[q]===e[q]||null==a[q]&&null==e[q]||(null==a[q]?w(c,p(e[q],g,m),t(a,q+1,b)):null==e[q]?u(c,a,q,q+1,e):n(c,a[q],e[q],g,t(a,q+1,b),r,m),r&&a[q].tag===e[q].tag&&
|
|
w(c,l(a[q]),t(a,q+1,b)));else{for(var B=q=0,f=a.length-1,y=e.length-1,k;f>=q&&y>=B;){var h=a[q],v=e[B];if(h===v)q++,B++;else if(null!=h&&null!=v&&h.key===v.key)q++,B++,n(c,h,v,g,t(a,q,b),r,m),r&&h.tag===v.tag&&w(c,l(h),b);else if(h=a[f],h===v)f--,B++;else if(null!=h&&null!=v&&h.key===v.key)n(c,h,v,g,t(a,f+1,b),r,m),B<y&&w(c,l(h),t(a,q,b)),f--,B++;else break}for(;f>=q&&y>=B;){h=a[f];v=e[y];if(h===v)f--;else if(null!=h&&null!=v&&h.key===v.key)n(c,h,v,g,t(a,f+1,b),r,m),r&&h.tag===v.tag&&w(c,l(h),b),
|
|
null!=h.dom&&(b=h.dom),f--;else{if(!k){k=a;var h=f,z={},x;for(x=0;x<h;x++){var C=k[x];null!=C&&(C=C.key,null!=C&&(z[C]=x))}k=z}null!=v&&(h=k[v.key],null!=h?(z=a[h],n(c,z,v,g,t(a,f+1,b),r,m),w(c,l(z),b),a[h].skip=!0,null!=z.dom&&(b=z.dom)):(v=p(v,g,void 0),w(c,v,b),b=v))}y--;if(y<B)break}d(c,e,B,y+1,g,b,m);u(c,a,q,f+1,e)}}}function n(c,a,e,b,d,y,r){var q=a.tag;if(q===e.tag){e.state=a.state;e.events=a.events;var B;var v;null!=e.attrs&&"function"===typeof e.attrs.onbeforeupdate&&(B=e.attrs.onbeforeupdate.call(e.state,
|
|
e,a));"string"!==typeof e.tag&&"function"===typeof e.tag.onbeforeupdate&&(v=e.tag.onbeforeupdate.call(e.state,e,a));void 0===B&&void 0===v||B||v?B=!1:(e.dom=a.dom,e.domSize=a.domSize,e.instance=a.instance,B=!0);if(!B)if(null!=e.attrs&&A(e.attrs,e,b,y),"string"===typeof q)switch(q){case "#":a.children.toString()!==e.children.toString()&&(a.dom.nodeValue=e.children);e.dom=a.dom;break;case "<":a.children!==e.children?(l(a),w(c,f(e),d)):(e.dom=a.dom,e.domSize=a.domSize);break;case "[":k(c,a.children,
|
|
e.children,b,d,r);a=0;b=e.children;e.dom=null;if(null!=b){for(var u=0;u<b.length;u++)c=b[u],null!=c&&null!=c.dom&&(null==e.dom&&(e.dom=c.dom),a+=c.domSize||1);1!==a&&(e.domSize=a)}break;default:c=r;d=e.dom=a.dom;switch(e.tag){case "svg":c="http://www.w3.org/2000/svg";break;case "math":c="http://www.w3.org/1998/Math/MathML"}"textarea"===e.tag&&(null==e.attrs&&(e.attrs={}),null!=e.text&&(e.attrs.value=e.text));y=a.attrs;r=e.attrs;q=c;if(null!=r)for(u in r)h(e,u,y&&y[u],r[u],q);if(null!=y)for(u in y)null!=
|
|
r&&u in r||("o"!==u[0]||"n"!==u[1]||m(u)?"key"!==u&&e.dom.removeAttribute(u):C(e,u,void 0));null!=a.text&&null!=e.text&&""!==e.text?a.text.toString()!==e.text.toString()&&(a.dom.firstChild.nodeValue=e.text):(null!=a.text&&(a.children=[x("#",void 0,void 0,a.text,void 0,a.dom.firstChild)]),null!=e.text&&(e.children=[x("#",void 0,void 0,e.text,void 0,void 0)]),k(d,a.children,e.children,b,null,c))}else e.instance=x.normalize(e.tag.view.call(e.state,e)),A(e.tag,e,b,y),null!=e.instance?(null==a.instance?
|
|
w(c,p(e.instance,b,r),d):n(c,a.instance,e.instance,b,d,y,r),e.dom=e.instance.dom,e.domSize=e.instance.domSize):null!=a.instance?(g(c,a.instance,null,!1),e.dom=void 0,e.domSize=0):(e.dom=a.dom,e.domSize=a.domSize)}else g(c,a,null,!1),w(c,p(e,b,void 0),d)}function l(c){var a=c.domSize;if(null!=a||null==c.dom){var e=z.createDocumentFragment();if(0<a){for(c=c.dom;--a;)e.appendChild(c.nextSibling);e.insertBefore(c,e.firstChild)}return e}return c.dom}function t(c,a,e){for(;a<c.length;a++)if(null!=c[a]&&
|
|
null!=c[a].dom)return c[a].dom;return e}function w(c,a,e){e&&e.parentNode?c.insertBefore(a,e):c.appendChild(a)}function u(c,a,e,b,d){for(;e<b;e++){var h=a[e];null!=h&&(h.skip?h.skip=!1:g(c,h,d,!1))}}function g(c,a,e,b){if(!1===b){var d=0,h=0;b=function(){++h===d&&g(c,a,e,!0)};a.attrs&&a.attrs.onbeforeremove&&(d++,a.attrs.onbeforeremove.call(a.state,a,b));"string"!==typeof a.tag&&a.tag.onbeforeremove&&(d++,a.tag.onbeforeremove.call(a.state,a,b));if(0<d)return}y(a);if(a.dom){b=a.domSize||1;if(1<b)for(var r=
|
|
a.dom;--b;)c.removeChild(r.nextSibling);null!=a.dom.parentNode&&c.removeChild(a.dom);null==e||null!=a.domSize||v(a.attrs)||"string"!==typeof a.tag||(e.pool?e.pool.push(a):e.pool=[a])}}function y(c){c.attrs&&c.attrs.onremove&&c.attrs.onremove.call(c.state,c);"string"!==typeof c.tag&&c.tag.onremove&&c.tag.onremove.call(c.state,c);if(null!=c.instance)y(c.instance);else if(c=c.children,c instanceof Array)for(var a=0;a<c.length;a++){var e=c[a];null!=e&&y(e)}}function h(c,a,e,b,g){var d=c.dom;if("key"!==
|
|
a&&(e!==b||"value"===a||"checked"===a||"selectedIndex"===a||"selected"===a&&c.dom===z.activeElement||"object"===typeof b)&&"undefined"!==typeof b&&!m(a)){var r=a.indexOf(":");if(-1<r&&"xlink"===a.substr(0,r))d.setAttributeNS("http://www.w3.org/1999/xlink",a.slice(r+1),b);else if("o"===a[0]&&"n"===a[1]&&"function"===typeof b)C(c,a,b);else if("style"===a)if(c=e,c===b&&(d.style.cssText="",c=null),null==b)d.style.cssText="";else if("string"===typeof b)d.style.cssText=b;else{"string"===typeof c&&(d.style.cssText=
|
|
"");for(var q in b)d.style[q]=b[q];if(null!=c&&"string"!==typeof c)for(q in c)q in b||(d.style[q]="")}else if(a in d&&"href"!==a&&"list"!==a&&"form"!==a&&void 0===g){if("input"!==c.tag||"value"!==a||c.dom.value!==b||c.dom!==z.activeElement)d[a]=b}else"boolean"===typeof b?b?d.setAttribute(a,""):d.removeAttribute(a):d.setAttribute("className"===a?"class":a,b)}}function m(c){return"oninit"===c||"oncreate"===c||"onupdate"===c||"onremove"===c||"onbeforeremove"===c||"onbeforeupdate"===c}function v(c){return null!=
|
|
c&&(c.oncreate||c.onupdate||c.onbeforeremove||c.onremove)}function C(c,a,b){var g=c.dom,d=function(a){var c=b.call(g,a);"function"===typeof H&&H.call(g,a);return c};if(a in g)g[a]=d;else{var h=a.slice(2);void 0===c.events&&(c.events={});null!=c.events[a]&&g.removeEventListener(h,c.events[a],!1);"function"===typeof b&&(c.events[a]=d,g.addEventListener(h,c.events[a],!1))}}function J(c,a,b){"function"===typeof c.oninit&&c.oninit.call(a.state,a);"function"===typeof c.oncreate&&b.push(c.oncreate.bind(a.state,
|
|
a))}function A(c,a,b,g){g?J(c,a,b):"function"===typeof c.onupdate&&b.push(c.onupdate.bind(a.state,a))}function K(c,a){Object.keys(a).forEach(function(b){c[b]=a[b]})}var z=b.document,D=z.createDocumentFragment(),H;return{render:function(c,a){var b=[],g=z.activeElement;null==c.vnodes&&(c.textContent="");a instanceof Array||(a=[a]);k(c,c.vnodes,x.normalizeChildren(a),b,null,void 0);c.vnodes=a;for(var d=0;d<b.length;d++)b[d]();z.activeElement!==g&&g.focus()},setEventCallback:function(c){return H=c}}}(window),
|
|
F=function(b){function d(b,f){if(f instanceof Array)for(var l=0;l<f.length;l++)d(b+"["+l+"]",f[l]);else if("[object Object]"===Object.prototype.toString.call(f))for(l in f)d(b+"["+l+"]",f[l]);else p.push(encodeURIComponent(b)+(null!=f&&""!==f?"="+encodeURIComponent(f):""))}if("[object Object]"!==Object.prototype.toString.call(b))return"";var p=[],f;for(f in b)d(f,b[f]);return p.join("&")},M=function(b){function d(){function a(){0<arguments.length&&arguments[0]!==E&&f(a,arguments[0],void 0);return a._state.value}
|
|
p(a,arguments);0<arguments.length&&arguments[0]!==E&&f(a,arguments[0],void 0);return a}function p(a,c){a.constructor=d;a._state={id:I++,value:void 0,error:void 0,state:0,derive:void 0,recover:void 0,deps:{},parents:[],errorStream:void 0,endStream:void 0};a.map=D;a.ap=K;a.of=d;a.valueOf=z;a.toJSON=G;a.toString=z;a.run=g;a["catch"]=y;Object.defineProperties(a,{error:{get:function(){if(!a._state.errorStream){var c=function(){0<arguments.length&&arguments[0]!==E&&f(a,void 0,arguments[0]);return a._state.error};
|
|
p(c,[]);v(c,[a],F,F);a._state.errorStream=c}return a._state.errorStream}},end:{get:function(){if(!a._state.endStream){var c=d();c.map(function(b){!0===b&&(A(a),A(c));return b});a._state.endStream=c}return a._state.endStream}}})}function f(a,c,b){k(a,c,b);for(var e in a._state.deps)l(a._state.deps[e],!1);a._state.changed=!1;for(var g in a._state.deps)a._state.deps[g]._state.changed=!1}function k(a,c,b){b=w(c,b);if(void 0!==b&&"function"===typeof a._state.recover){if(!t(a,n,!0))return}else n(a,c,b);
|
|
a._state.changed=!0;2!==a._state.state&&(a._state.state=1)}function n(a,c,b){a._state.value=c;a._state.error=b}function l(a,b){var g=a._state.parents;0<g.length&&g.filter(H).length===g.length&&(b||0<g.filter(c).length)&&(g=g.filter(e),0<g.length?k(a,void 0,g[0]._state.error):t(a,k,!1))}function t(a,c,b){try{var g=b?a._state.recover():a._state.derive();if(g===E)return!1;c(a,g,void 0)}catch(e){c(a,void 0,null!=e.__error?e.__error:e),null==e.__error&&u(a,e)}return!0}function w(a,c){null!=a&&a.constructor===
|
|
d&&(c=void 0!==a._state.error?a._state.error:w(a._state.value,a._state.error));return c}function u(a,c){0===Object.keys(a._state.deps).length&&setTimeout(function(){0===Object.keys(a._state.deps).length&&b(c)},0)}function g(a){var c=d(),b=this;return v(c,[b],function(){return m(c,a(b()))},void 0)}function y(a){var c=d(),b=this;return v(c,[b],function(){return b._state.value},function(){return m(c,a(b._state.error))})}function h(a,b){return v(d(),b,function(){var g=b.filter(e);if(0<g.length)throw{__error:g[0]._state.error};
|
|
return a.apply(this,b.concat([b.filter(c)]))},void 0)}function m(a,c){if(null!=c&&c.constructor===d){var b=c,g=function(){k(a,b._state.value,b._state.error);for(var c in a._state.deps)l(a._state.deps[c],!1)};b.map(g)["catch"](function(a){g();throw{__error:a};});if(0===b._state.state)return E;if(b._state.error)throw{__error:b._state.error};c=b._state.value}return c}function v(c,b,g,e){var d=c._state;d.derive=g;d.recover=e;d.parents=b.filter(a);x(c,d.parents);l(c,!0);return c}function x(a,c){for(var b=
|
|
0;b<c.length;b++)c[b]._state.deps[a._state.id]=a,x(a,c[b]._state.parents)}function A(a){for(var c=0;c<a._state.parents.length;c++)delete a._state.parents[c]._state.deps[a._state.id];for(var b in a._state.deps){var c=a._state.deps[b],g=c._state.parents.indexOf(a);-1<g&&c._state.parents.splice(g,1)}a._state.state=2;a._state.deps={}}function D(a){return h(function(c){return a(c())},[this])}function K(a){return h(function(a,c){return a()(c())},[this,a])}function z(){return this._state.value}function G(){return null!=
|
|
this._state.value&&"function"===typeof this._state.value.toJSON?this._state.value.toJSON():this._state.value}function H(a){return 1===a._state.state}function c(a){return a._state.changed}function a(a){return 2!==a._state.state}function e(a){return a._state.error}var I=0,F=function(){},E={};d.merge=function(a){return h(function(){return a.map(function(a){return a()})},a)};d.combine=h;d.reject=function(a){var c=d();c.error(a);return c};d.HALT=E;return d},L=function(b,d){function p(b,d){if(null==d)return b;
|
|
for(var h=b.match(/:[^\/]+/gi)||[],f=0;f<h.length;f++){var u=h[f].slice(1);null!=d[u]&&(b=b.replace(h[f],d[u]),delete d[u])}return b}function f(b,d){var f=F(d);if(""!==f){var m=0>b.indexOf("?")?"?":"&";b+=m+f}return b}function k(b){try{return""!==b?JSON.parse(b):null}catch(d){throw Error(b);}}function n(b){return b.responseText}function l(b,d){if("function"===typeof b)if(d instanceof Array)for(var f=0;f<d.length;f++)d[f]=new b(d[f]);else return new b(d);return d}var t=M(d),w=0,u;return{request:function(d){var w=
|
|
t();void 0!==d.initialValue&&w(d.initialValue);var h="boolean"===typeof d.useBody?d.useBody:"GET"!==d.method&&"TRACE"!==d.method;"function"!==typeof d.serialize&&(d.serialize="undefined"!==typeof FormData&&d.data instanceof FormData?function(b){return b}:JSON.stringify);"function"!==typeof d.deserialize&&(d.deserialize=k);"function"!==typeof d.extract&&(d.extract=n);d.url=p(d.url,d.data);h?d.data=d.serialize(d.data):d.url=f(d.url,d.data);var m=new b.XMLHttpRequest;m.open(d.method,d.url,"boolean"===
|
|
typeof d.async?d.async:!0,"string"===typeof d.user?d.user:void 0,"string"===typeof d.password?d.password:void 0);d.serialize===JSON.stringify&&h&&m.setRequestHeader("Content-Type","application/json; charset=utf-8");d.deserialize===k&&m.setRequestHeader("Accept","application/json, text/*");"function"===typeof d.config&&(m=d.config(m,d)||m);m.onreadystatechange=function(){if(4===m.readyState){try{var b=d.extract!==n?d.extract(m,d):d.deserialize(d.extract(m,d));if(200<=m.status&&300>m.status)w(l(d.type,
|
|
b));else{var f=Error(m.responseText),h;for(h in b)f[h]=b[h];w.error(f)}}catch(k){w.error(k)}"function"===typeof u&&u()}};h?m.send(d.data):m.send();return w},jsonp:function(d){var k=t();void 0!==d.initialValue&&k(d.initialValue);var h=d.callbackName||"_mithril_"+Math.round(1E16*Math.random())+"_"+w++,m=b.document.createElement("script");b[h]=function(f){m.parentNode.removeChild(m);k(l(d.type,f));"function"===typeof u&&u();delete b[h]};m.onerror=function(){m.parentNode.removeChild(m);k.error(Error("JSONP request failed"));
|
|
"function"===typeof u&&u();delete b[h]};null==d.data&&(d.data={});d.url=p(d.url,d.data);d.data[d.callbackKey||"callback"]=h;m.src=f(d.url,d.data);b.document.documentElement.appendChild(m);return k},setCompletionCallback:function(b){u=b}}}(window,console.error.bind(console)),D=function(){var b=[];return{subscribe:b.push.bind(b),unsubscribe:function(d){d=b.indexOf(d);-1<d&&b.splice(d,1)},publish:function(){for(var d=0;d<b.length;d++)b[d].apply(this,arguments)}}}();L.setCompletionCallback(D.publish);
|
|
var N=function(b){if(""===b||null==b)return{};"?"===b.charAt(0)&&(b=b.slice(1));b=b.split("&");for(var d={},p={},f=0;f<b.length;f++){var k=b[f].split("="),n=decodeURIComponent(k[0]),k=2===k.length?decodeURIComponent(k[1]):"",l=Number(k);""!==k&&!isNaN(l)||"NaN"===k?k=l:"true"===k?k=!0:"false"===k?k=!1:(l=new Date(k),isNaN(l.getTime())||(k=l));var l=n.split(/\]\[?|\[/),t=d;-1<n.indexOf("[")&&l.pop();for(var w=0;w<l.length;w++){var n=l[w],u=l[w+1],u=""==u||!isNaN(parseInt(u,10)),g=w===l.length-1;""===
|
|
n&&(n=l.slice(0,w).join(),null==p[n]&&(p[n]=0),n=p[n]++);null==t[n]&&(t[n]=g?k:u?[]:{});t=t[n]}}return d},Q=function(b){function d(d){var f=b.location[d].replace(/(?:%[a-f89][a-f0-9])+/gim,decodeURIComponent);"pathname"===d&&"/"!==f[0]&&(f="/"+f);return f}function p(b,d,f){var k=b.indexOf("?"),h=b.indexOf("#"),m=-1<k?k:-1<h?h:b.length;if(-1<k){var k=N(b.slice(k+1,-1<h?h:b.length)),l;for(l in k)d[l]=k[l]}if(-1<h)for(l in d=N(b.slice(h+1)),d)f[l]=d[l];return b.slice(0,m)}function f(){switch(t.charAt(0)){case "#":return d("hash").slice(t.length);
|
|
case "?":return d("search").slice(t.length)+d("hash");default:return d("pathname").slice(t.length)+d("search")+d("hash")}}function k(d,f,g){var k={},h={};d=p(d,k,h);if(null!=f){for(var m in f)k[m]=f[m];d=d.replace(/:([^\/]+)/g,function(b,d){delete k[d];return f[d]})}(m=F(k))&&(d+="?"+m);(h=F(h))&&(d+="#"+h);n?(g&&g.replace?b.history.replaceState(null,null,t+d):b.history.pushState(null,null,t+d),b.onpopstate()):b.location.href=t+d}var n="function"===typeof b.history.pushState,l="function"===typeof setImmediate?
|
|
setImmediate:setTimeout,t="#!";return{setPrefix:function(b){t=b},getPath:f,setPath:k,defineRoutes:function(d,k,g){function y(){var b=f(),m={},n=p(b,m,m);l(function(){for(var f in d){var l=new RegExp("^"+f.replace(/:[^\/]+?\.{3}/g,"(.*?)").replace(/:[^\/]+/g,"([^\\/]+)")+"/?$");if(l.test(n)){n.replace(l,function(){for(var g=f.match(/:[^\/]+/g)||[],l=[].slice.call(arguments,1,-2),n=0;n<g.length;n++)m[g[n].replace(/:|\./g,"")]=decodeURIComponent(l[n]);k(d[f],m,b,f)});return}}g(b,m)})}n?b.onpopstate=
|
|
y:"#"===t.charAt(0)&&(b.onhashchange=y);y();return y},link:function(b){b.dom.setAttribute("href",t+b.attrs.href);b.dom.onclick=function(d){d.preventDefault();d.redraw=!1;k(b.attrs.href,void 0,void 0)}}}},R=function(b){var d=0,p=null,f="function"===typeof requestAnimationFrame?requestAnimationFrame:setTimeout;return function(k){var n=Date.now();!0===k||0===d||16<=n-d?(d=n,b()):null===p&&(p=f(function(){p=null;b();d=Date.now()},16-(n-d)))}},O=function(b,d,p,f){f=R(f);null!=d&&d.setEventCallback(function(b){!1!==
|
|
b.redraw&&p.publish()});null!=p&&(b.redraw&&p.unsubscribe(b.redraw),p.subscribe(f));return b.redraw=f};A.route=function(b,d,p){var f=Q(b);b=function(b,n,l){var t=null,w="div";l=f.defineRoutes(l,function(f,g,l,h){g.path=l;g.route=h;if("function"===typeof f.onmatch)if("function"!==typeof f.view&&(f.view=function(b){return b}),h=function(h){t=l;w=h;d.render(b,f.view(x(h,null,g,void 0,void 0,void 0)))},l!==t)f.onmatch(x(f,null,g,void 0,void 0,void 0),h);else h(w);else d.render(b,x(f,null,g,void 0,void 0,
|
|
void 0))},function(){f.setPath(n,null,{replace:!0})});O(b,d,p,l)};b.link=f.link;b.prefix=f.setPrefix;b.set=f.setPath;b.get=f.getPath;return b}(window,I,D);var S={view:function(){}};A.mount=function(b,d){return function(p,f){d.unsubscribe(p.redraw);O(p,b,d,function(){b.render(p,x(null===f?S:f,void 0,void 0,void 0,void 0,void 0))})();null===f&&(d.unsubscribe(p.redraw),delete p.redraw)}}(I,D);A.trust=function(b){return x("<",void 0,void 0,b,void 0,void 0)};A.withAttr=function(b,d,p){return function(f){return d.call(p||
|
|
this,b in f.currentTarget?f.currentTarget[b]:f.currentTarget.getAttribute(b))}};A.prop=M(console.log.bind(console));A.render=I.render;A.redraw=D.publish;A.request=L.request;A.jsonp=L.jsonp;A.version="1.0.0";"undefined"!==typeof module?module.exports=A:window.m=A}; |