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