Bundled output for commit d50d53f31d [skip ci]
This commit is contained in:
parent
d50d53f31d
commit
684a394d97
3 changed files with 48 additions and 47 deletions
|
|
@ -18,7 +18,7 @@ mithril.js [](https://ww
|
|||
|
||||
## What is Mithril?
|
||||
|
||||
A modern client-side Javascript framework for building Single Page Applications. It's small (<!-- size -->8.46 KB<!-- /size --> gzipped), fast and provides routing and XHR utilities out of the box.
|
||||
A modern client-side Javascript framework for building Single Page Applications. It's small (<!-- size -->8.48 KB<!-- /size --> gzipped), fast and provides routing and XHR utilities out of the box.
|
||||
|
||||
Mithril is used by companies like Vimeo and Nike, and open source platforms like Lichess 👍.
|
||||
|
||||
|
|
|
|||
|
|
@ -294,6 +294,7 @@ var _8 = function($window, Promise) {
|
|||
xhr.setRequestHeader("Accept", "application/json, text/*")
|
||||
}
|
||||
if (args.withCredentials) xhr.withCredentials = args.withCredentials
|
||||
if (args.timeout) xhr.timeout = args.timeout
|
||||
for (var key in args.headers) if ({}.hasOwnProperty.call(args.headers, key)) {
|
||||
xhr.setRequestHeader(key, args.headers[key])
|
||||
}
|
||||
|
|
|
|||
92
mithril.min.js
vendored
92
mithril.min.js
vendored
|
|
@ -1,46 +1,46 @@
|
|||
(function(){function x(a,c,e,f,n,k){return{tag:a,key:c,attrs:e,children:f,text:n,dom:k,domSize:void 0,state:void 0,events:void 0,instance:void 0,skip:!1}}function N(a){for(var c in a)if(C.call(a,c))return!1;return!0}function A(a){var c=arguments[1],e=2;if(null==a||"string"!==typeof a&&"function"!==typeof a&&"function"!==typeof a.view)throw Error("The selector must be either a string or a component.");if("string"===typeof a){var f;if(!(f=O[a])){var n="div";for(var k=[],g={};f=S.exec(a);){var p=f[1],
|
||||
m=f[2];""===p&&""!==m?n=m:"#"===p?g.id=m:"."===p?k.push(m):"["===f[3][0]&&((p=f[6])&&(p=p.replace(/\\(["'])/g,"$1").replace(/\\\\/g,"\\")),"class"===f[4]?k.push(p):g[f[4]]=""===p?p:p||!0)}0<k.length&&(g.className=k.join(" "));f=O[a]={tag:n,attrs:g}}}if(null==c)c={};else if("object"!==typeof c||null!=c.tag||Array.isArray(c))c={},e=1;if(arguments.length===e+1)n=arguments[e],Array.isArray(n)||(n=[n]);else for(n=[];e<arguments.length;)n.push(arguments[e++]);e=x.normalizeChildren(n);if("string"===typeof a){n=
|
||||
!1;var l,z;k=c.className||c["class"];if(!N(f.attrs)&&!N(c)){g={};for(var b in c)C.call(c,b)&&(g[b]=c[b]);c=g}for(b in f.attrs)C.call(f.attrs,b)&&(c[b]=f.attrs[b]);void 0!==k&&(void 0!==c["class"]&&(c["class"]=void 0,c.className=k),null!=f.attrs.className&&(c.className=f.attrs.className+" "+k));for(b in c)if(C.call(c,b)&&"key"!==b){n=!0;break}Array.isArray(e)&&1===e.length&&null!=e[0]&&"#"===e[0].tag?z=e[0].children:l=e;return x(f.tag,c.key,n?c:void 0,l,z)}return x(a,c.key,c,e)}function T(a){var c=
|
||||
0,e=null,f="function"===typeof requestAnimationFrame?requestAnimationFrame:setTimeout;return function(){var n=Date.now()-c;null===e&&(e=f(function(){e=null;a();c=Date.now()},16-n))}}x.normalize=function(a){return Array.isArray(a)?x("[",void 0,void 0,x.normalizeChildren(a),void 0,void 0):null!=a&&"object"!==typeof a?x("#",void 0,void 0,!1===a?"":a,void 0,void 0):a};x.normalizeChildren=function(a){for(var c=0;c<a.length;c++)a[c]=x.normalize(a[c]);return a};var S=/(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g,
|
||||
O={},C={}.hasOwnProperty;A.trust=function(a){null==a&&(a="");return x("<",void 0,void 0,a,void 0,void 0)};A.fragment=function(a,c){return x("[",a.key,a,x.normalizeChildren(c),void 0,void 0)};var q=function(a){function c(a,b){return function F(c){var y;try{if(!b||null==c||"object"!==typeof c&&"function"!==typeof c||"function"!==typeof(y=c.then))l(function(){b||0!==a.length||console.error("Possible unhandled promise rejection:",c);for(var e=0;e<a.length;e++)a[e](c);n.length=0;k.length=0;m.state=b;m.retry=
|
||||
function(){F(c)}});else{if(c===f)throw new TypeError("Promise can't be resolved w/ itself");e(y.bind(c))}}catch(V){p(V)}}}function e(a){function b(b){return function(a){0<c++||b(a)}}var c=0,m=b(p);try{a(b(g),m)}catch(F){m(F)}}if(!(this instanceof q))throw Error("Promise must be called with `new`");if("function"!==typeof a)throw new TypeError("executor must be a function");var f=this,n=[],k=[],g=c(n,!0),p=c(k,!1),m=f._instance={resolvers:n,rejectors:k},l="function"===typeof setImmediate?setImmediate:
|
||||
setTimeout;e(a)};q.prototype.then=function(a,c){function e(a,c,e,g){c.push(function(b){if("function"!==typeof a)e(b);else try{n(a(b))}catch(v){k&&k(v)}});"function"===typeof f.retry&&g===f.state&&f.retry()}var f=this._instance,n,k,g=new q(function(a,c){n=a;k=c});e(a,f.resolvers,n,!0);e(c,f.rejectors,k,!1);return g};q.prototype["catch"]=function(a){return this.then(null,a)};q.resolve=function(a){return a instanceof q?a:new q(function(c){c(a)})};q.reject=function(a){return new q(function(c,e){e(a)})};
|
||||
q.all=function(a){return new q(function(c,e){var f=a.length,n=0,k=[];if(0===a.length)c([]);else for(var g=0;g<a.length;g++)(function(g){function m(a){n++;k[g]=a;n===f&&c(k)}null==a[g]||"object"!==typeof a[g]&&"function"!==typeof a[g]||"function"!==typeof a[g].then?m(a[g]):a[g].then(m,e)})(g)})};q.race=function(a){return new q(function(c,e){for(var f=0;f<a.length;f++)a[f].then(c,e)})};"undefined"!==typeof window?("undefined"===typeof window.Promise&&(window.Promise=q),q=window.Promise):"undefined"!==
|
||||
typeof global&&("undefined"===typeof global.Promise&&(global.Promise=q),q=global.Promise);var G=function(a){function c(a,f){if(Array.isArray(f))for(var g=0;g<f.length;g++)c(a+"["+g+"]",f[g]);else if("[object Object]"===Object.prototype.toString.call(f))for(g in f)c(a+"["+g+"]",f[g]);else e.push(encodeURIComponent(a)+(null!=f&&""!==f?"="+encodeURIComponent(f):""))}if("[object Object]"!==Object.prototype.toString.call(a))return"";var e=[],f;for(f in a)c(f,a[f]);return e.join("&")},W=/^file:\/\//i,L=
|
||||
function(a,c){function e(){function b(){0===--a&&"function"===typeof z&&z()}var a=0;return function U(c){var e=c.then;c.then=function(){a++;var m=e.apply(c,arguments);m.then(b,function(c){b();if(0===a)throw c;});return U(m)};return c}}function f(b,a){if("string"===typeof b){var c=b;b=a||{};null==b.url&&(b.url=c)}return b}function n(b,a){if(null==a)return b;for(var c=b.match(/:[^\/]+/gi)||[],e=0;e<c.length;e++){var m=c[e].slice(1);null!=a[m]&&(b=b.replace(c[e],a[m]))}return b}function k(b,a){var c=
|
||||
G(a);if(""!==c){var e=0>b.indexOf("?")?"?":"&";b+=e+c}return b}function g(b){try{return""!==b?JSON.parse(b):null}catch(v){throw Error(b);}}function p(b){return b.responseText}function m(b,a){if("function"===typeof b)if(Array.isArray(a))for(var c=0;c<a.length;c++)a[c]=new b(a[c]);else return new b(a);return a}var l=0,z;return{request:function(b,l){var y=e();b=f(b,l);var v=new c(function(c,e){null==b.method&&(b.method="GET");b.method=b.method.toUpperCase();var f="GET"===b.method||"TRACE"===b.method?
|
||||
!1:"boolean"===typeof b.useBody?b.useBody:!0;"function"!==typeof b.serialize&&(b.serialize="undefined"!==typeof FormData&&b.data instanceof FormData?function(b){return b}:JSON.stringify);"function"!==typeof b.deserialize&&(b.deserialize=g);"function"!==typeof b.extract&&(b.extract=p);b.url=n(b.url,b.data);f?b.data=b.serialize(b.data):b.url=k(b.url,b.data);var l=new a.XMLHttpRequest,y=!1,v=l.abort;l.abort=function(){y=!0;v.call(l)};l.open(b.method,b.url,"boolean"===typeof b.async?b.async:!0,"string"===
|
||||
typeof b.user?b.user:void 0,"string"===typeof b.password?b.password:void 0);b.serialize!==JSON.stringify||!f||b.headers&&b.headers.hasOwnProperty("Content-Type")||l.setRequestHeader("Content-Type","application/json; charset=utf-8");b.deserialize!==g||b.headers&&b.headers.hasOwnProperty("Accept")||l.setRequestHeader("Accept","application/json, text/*");b.withCredentials&&(l.withCredentials=b.withCredentials);for(var z in b.headers)({}).hasOwnProperty.call(b.headers,z)&&l.setRequestHeader(z,b.headers[z]);
|
||||
"function"===typeof b.config&&(l=b.config(l,b)||l);l.onreadystatechange=function(){if(!y&&4===l.readyState)try{var a=b.extract!==p?b.extract(l,b):b.deserialize(b.extract(l,b));if(b.extract!==p||200<=l.status&&300>l.status||304===l.status||W.test(b.url))c(m(b.type,a));else{var f=Error(l.responseText);f.code=l.status;f.response=a;e(f)}}catch(X){e(X)}};f&&null!=b.data?l.send(b.data):l.send()});return!0===b.background?v:y(v)},jsonp:function(b,g){var y=e();b=f(b,g);var p=new c(function(c,e){var f=b.callbackName||
|
||||
"_mithril_"+Math.round(1E16*Math.random())+"_"+l++,g=a.document.createElement("script");a[f]=function(e){g.parentNode.removeChild(g);c(m(b.type,e));delete a[f]};g.onerror=function(){g.parentNode.removeChild(g);e(Error("JSONP request failed"));delete a[f]};null==b.data&&(b.data={});b.url=n(b.url,b.data);b.data[b.callbackKey||"callback"]=f;g.src=k(b.url,b.data);a.document.documentElement.appendChild(g)});return!0===b.background?p:y(p)},setCompletionCallback:function(b){z=b}}}(window,q),R=function(a){function c(h,
|
||||
d){if(h.state!==d)throw Error("`vnode.state` must not be modified");}function e(h){var d=h.state;try{return this.apply(d,arguments)}finally{c(h,d)}}function f(h,d,b,a,c,e,f){for(;b<a;b++){var u=d[b];null!=u&&n(h,u,c,f,e)}}function n(h,d,u,a,c){var e=d.tag;if("string"===typeof e)switch(d.state={},null!=d.attrs&&I(d.attrs,d,u),e){case "#":return d.dom=t.createTextNode(d.children),b(h,d.dom,c),d.dom;case "<":return k(h,d,c);case "[":var m=t.createDocumentFragment();null!=d.children&&(e=d.children,f(m,
|
||||
e,0,e.length,u,null,a));d.dom=m.firstChild;d.domSize=m.childNodes.length;b(h,m,c);return m;default:var r=d.tag,l=(e=d.attrs)&&e.is;r=(a=d.attrs&&d.attrs.xmlns||G[d.tag]||a)?l?t.createElementNS(a,r,{is:l}):t.createElementNS(a,r):l?t.createElement(r,{is:l}):t.createElement(r);d.dom=r;if(null!=e)for(m in l=a,e)A(d,m,null,e[m],l);b(h,r,c);null!=d.attrs&&null!=d.attrs.contenteditable?v(d):(null!=d.text&&(""!==d.text?r.textContent=d.text:d.children=[x("#",void 0,void 0,d.text,void 0,void 0)]),null!=d.children&&
|
||||
(h=d.children,f(r,h,0,h.length,u,null,a),h=d.attrs,"select"===d.tag&&null!=h&&("value"in h&&A(d,"value",null,h.value,void 0),"selectedIndex"in h&&A(d,"selectedIndex",null,h.selectedIndex,void 0))));return r}else return g(d,u),null!=d.instance?(u=n(h,d.instance,u,a,c),d.dom=d.instance.dom,d.domSize=null!=d.dom?d.instance.domSize:0,b(h,u,c),d=u):(d.domSize=0,d=C),d}function k(h,d,u){var a={caption:"table",thead:"table",tbody:"table",tfoot:"table",tr:"tbody",th:"tr",td:"tr",colgroup:"table",col:"colgroup"}[(d.children.match(/^\s*?<(\w+)/im)||
|
||||
[])[1]]||"div";a=t.createElement(a);a.innerHTML=d.children;d.dom=a.firstChild;d.domSize=a.childNodes.length;d=t.createDocumentFragment();for(var c;c=a.firstChild;)d.appendChild(c);b(h,d,u);return d}function g(h,d){if("function"===typeof h.tag.view){h.state=Object.create(h.tag);var b=h.state.view;if(null!=b.$$reentrantLock$$)return C;b.$$reentrantLock$$=!0}else{h.state=void 0;b=h.tag;if(null!=b.$$reentrantLock$$)return C;b.$$reentrantLock$$=!0;h.state=null!=h.tag.prototype&&"function"===typeof h.tag.prototype.view?
|
||||
new h.tag(h):h.tag(h)}null!=h.attrs&&I(h.attrs,h,d);I(h.state,h,d);h.instance=x.normalize(e.call(h.state.view,h));if(h.instance===h)throw Error("A view cannot return the vnode it received as argument");b.$$reentrantLock$$=null}function p(h,d,a,c,e,g,k){if(d!==a&&(null!=d||null!=a))if(null==d)f(h,a,0,a.length,e,g,k);else if(null==a)y(d,0,d.length,a);else{if(d.length===a.length){for(var u=!1,r=0;r<a.length;r++)if(null!=a[r]&&null!=d[r]){u=null==a[r].key&&null==d[r].key;break}if(u){for(r=0;r<d.length;r++)d[r]!==
|
||||
a[r]&&(null==d[r]&&null!=a[r]?n(h,a[r],e,k,z(d,r+1,g)):null==a[r]?y(d,r,r+1,a):m(h,d[r],a[r],e,z(d,r+1,g),c,k));return}}if(!c)a:{if(null!=d.pool&&Math.abs(d.pool.length-a.length)<=Math.abs(d.length-a.length)&&(c=a[0]&&a[0].children&&a[0].children.length||0,Math.abs((d.pool[0]&&d.pool[0].children&&d.pool[0].children.length||0)-c)<=Math.abs((d[0]&&d[0].children&&d[0].children.length||0)-c))){c=!0;break a}c=!1}if(c){var p=d.pool;d=d.concat(d.pool)}r=u=0;for(var v=d.length-1,D=a.length-1,H;v>=u&&D>=r;){var w=
|
||||
d[u],q=a[r];if(w!==q||c)if(null==w)u++;else if(null==q)r++;else if(w.key===q.key){var t=null!=p&&u>=d.length-p.length||null==p&&c;u++;r++;m(h,w,q,e,z(d,u,g),t,k);c&&w.tag===q.tag&&b(h,l(w),g)}else if(w=d[v],w!==q||c)if(null==w)v--;else if(null==q)r++;else if(w.key===q.key)t=null!=p&&v>=d.length-p.length||null==p&&c,m(h,w,q,e,z(d,v+1,g),t,k),(c||r<D)&&b(h,l(w),z(d,u,g)),v--,r++;else break;else v--,r++;else u++,r++}for(;v>=u&&D>=r;){w=d[v];q=a[D];if(w!==q||c)if(null==w)v--;else{if(null!=q)if(w.key===
|
||||
q.key)t=null!=p&&v>=d.length-p.length||null==p&&c,m(h,w,q,e,z(d,v+1,g),t,k),c&&w.tag===q.tag&&b(h,l(w),g),null!=w.dom&&(g=w.dom),v--;else{if(!H){H=d;t=v;w={};var B;for(B=0;B<t;B++){var x=H[B];null!=x&&(x=x.key,null!=x&&(w[x]=B))}H=w}null!=q&&(w=H[q.key],null!=w?(B=d[w],t=null!=p&&w>=d.length-p.length||null==p&&c,m(h,B,q,e,z(d,v+1,g),t,k),b(h,l(B),g),d[w].skip=!0,null!=B.dom&&(g=B.dom)):g=n(h,q,e,k,g))}D--}else v--,D--;if(D<r)break}f(h,a,r,D+1,e,g,k);y(d,u,v+1,a)}}function m(h,d,a,b,c,f,y){var r=d.tag;
|
||||
if(r===a.tag){a.state=d.state;a.events=d.events;var u;if(u=!f){var q,z;null!=a.attrs&&"function"===typeof a.attrs.onbeforeupdate&&(q=e.call(a.attrs.onbeforeupdate,a,d));"string"!==typeof a.tag&&"function"===typeof a.state.onbeforeupdate&&(z=e.call(a.state.onbeforeupdate,a,d));void 0===q&&void 0===z||q||z?u=!1:(a.dom=d.dom,a.domSize=d.domSize,a.instance=d.instance,u=!0)}if(!u)if("string"===typeof r)switch(null!=a.attrs&&(f?(a.state={},I(a.attrs,a,b)):K(a.attrs,a,b)),r){case "#":d.children.toString()!==
|
||||
a.children.toString()&&(d.dom.nodeValue=a.children);a.dom=d.dom;break;case "<":d.children!==a.children?(l(d),k(h,a,c)):(a.dom=d.dom,a.domSize=d.domSize);break;case "[":p(h,d.children,a.children,f,b,c,y);d=0;b=a.children;a.dom=null;if(null!=b){for(f=0;f<b.length;f++){var t=b[f];null!=t&&null!=t.dom&&(null==a.dom&&(a.dom=t.dom),d+=t.domSize||1)}1!==d&&(a.domSize=d)}break;default:h=a.dom=d.dom;y=a.attrs&&a.attrs.xmlns||G[a.tag]||y;"textarea"===a.tag&&(null==a.attrs&&(a.attrs={}),null!=a.text&&(a.attrs.value=
|
||||
a.text,a.text=void 0));c=d.attrs;r=a.attrs;u=y;if(null!=r)for(t in r)A(a,t,c&&c[t],r[t],u);if(null!=c)for(t in c)null!=r&&t in r||("className"===t&&(t="class"),"o"!==t[0]||"n"!==t[1]||P(t)?"key"!==t&&a.dom.removeAttribute(t):Q(a,t,void 0));null!=a.attrs&&null!=a.attrs.contenteditable?v(a):null!=d.text&&null!=a.text&&""!==a.text?d.text.toString()!==a.text.toString()&&(d.dom.firstChild.nodeValue=a.text):(null!=d.text&&(d.children=[x("#",void 0,void 0,d.text,void 0,d.dom.firstChild)]),null!=a.text&&
|
||||
(a.children=[x("#",void 0,void 0,a.text,void 0,void 0)]),p(h,d.children,a.children,f,b,null,y))}else{if(f)g(a,b);else{a.instance=x.normalize(e.call(a.state.view,a));if(a.instance===a)throw Error("A view cannot return the vnode it received as argument");null!=a.attrs&&K(a.attrs,a,b);K(a.state,a,b)}null!=a.instance?(null==d.instance?n(h,a.instance,b,y,c):m(h,d.instance,a.instance,b,c,f,y),a.dom=a.instance.dom,a.domSize=a.instance.domSize):null!=d.instance?(F(d.instance,null),a.dom=void 0,a.domSize=
|
||||
0):(a.dom=d.dom,a.domSize=d.domSize)}}else F(d,null),n(h,a,b,y,c)}function l(a){var d=a.domSize;if(null!=d||null==a.dom){var b=t.createDocumentFragment();if(0<d){for(a=a.dom;--d;)b.appendChild(a.nextSibling);b.insertBefore(a,b.firstChild)}return b}return a.dom}function z(a,d,b){for(;d<a.length;d++)if(null!=a[d]&&null!=a[d].dom)return a[d].dom;return b}function b(a,d,b){b&&b.parentNode?a.insertBefore(d,b):a.appendChild(d)}function v(a){var d=a.children;if(null!=d&&1===d.length&&"<"===d[0].tag)d=d[0].children,
|
||||
a.dom.innerHTML!==d&&(a.dom.innerHTML=d);else if(null!=a.text||null!=d&&0!==d.length)throw Error("Child node of a contenteditable must be trusted");}function y(a,d,b,c){for(;d<b;d++){var h=a[d];null!=h&&(h.skip?h.skip=!1:F(h,c))}}function F(a,d){function b(){if(++f===h&&(c(a,m),q(a),a.dom)){var b=a.domSize||1;if(1<b)for(var e=a.dom;--b;){var g=e.nextSibling,r=g.parentNode;null!=r&&r.removeChild(g)}b=a.dom;e=b.parentNode;null!=e&&e.removeChild(b);if(b=null!=d&&null==a.domSize)b=a.attrs,b=!(null!=b&&
|
||||
(b.oncreate||b.onupdate||b.onbeforeremove||b.onremove));b&&"string"===typeof a.tag&&(d.pool?d.pool.push(a):d.pool=[a])}}var h=1,f=0,m=a.state;if(a.attrs&&"function"===typeof a.attrs.onbeforeremove){var g=e.call(a.attrs.onbeforeremove,a);null!=g&&"function"===typeof g.then&&(h++,g.then(b,b))}"string"!==typeof a.tag&&"function"===typeof a.state.onbeforeremove&&(g=e.call(a.state.onbeforeremove,a),null!=g&&"function"===typeof g.then&&(h++,g.then(b,b)));b()}function q(a){a.attrs&&"function"===typeof a.attrs.onremove&&
|
||||
e.call(a.attrs.onremove,a);if("string"!==typeof a.tag)"function"===typeof a.state.onremove&&e.call(a.state.onremove,a),null!=a.instance&&q(a.instance);else if(a=a.children,Array.isArray(a))for(var d=0;d<a.length;d++){var b=a[d];null!=b&&q(b)}}function A(a,b,c,e,f){if("key"!==b&&"is"!==b&&!P(b)){if("o"===b[0]&&"n"===b[1])return Q(a,b,e);if((c!==e||"value"===b||"checked"===b||"selectedIndex"===b||"selected"===b&&a.dom===t.activeElement||a.dom.parentNode===t.activeElement||"object"===typeof e)&&void 0!==
|
||||
e){var d=a.dom;if("xlink:"===b.slice(0,6))d.setAttributeNS("http://www.w3.org/1999/xlink",b,e);else if("style"===b)if(a=c,null!=a&&null!=e&&"object"===typeof a&&"object"===typeof e&&e!==a){for(var h in e)e[h]!==a[h]&&(d.style[h]=e[h]);for(h in a)h in e||(d.style[h]="")}else if(a===e&&(d.style.cssText="",a=null),null==e)d.style.cssText="";else if("string"===typeof e)d.style.cssText=e;else for(h in"string"===typeof a&&(d.style.cssText=""),e)d.style[h]=e[h];else if(b in d&&"href"!==b&&"list"!==b&&"form"!==
|
||||
b&&"width"!==b&&"height"!==b&&void 0===f&&!(a.attrs.is||-1<a.tag.indexOf("-"))){if("value"===b){h=""+e;if(("input"===a.tag||"textarea"===a.tag)&&a.dom.value===h&&a.dom===t.activeElement)return;if("select"===a.tag)if(null===e){if(-1===a.dom.selectedIndex&&a.dom===t.activeElement)return}else if(null!==c&&a.dom.value===h&&a.dom===t.activeElement)return;if("option"===a.tag&&null!=c&&a.dom.value===h)return}"input"===a.tag&&"type"===b?d.setAttribute(b,e):d[b]=e}else"boolean"===typeof e?e?d.setAttribute(b,
|
||||
""):d.removeAttribute(b):d.setAttribute("className"===b?"class":b,e)}}}function P(a){return"oninit"===a||"oncreate"===a||"onupdate"===a||"onremove"===a||"onbeforeremove"===a||"onbeforeupdate"===a}function J(){}function Q(a,b,c){null!=a.events?a.events[b]!==c&&(null==c||"function"!==typeof c&&"object"!==typeof c?(null!=a.events[b]&&a.dom.removeEventListener(b.slice(2),a.events,!1),a.events[b]=void 0):(null==a.events[b]&&a.dom.addEventListener(b.slice(2),a.events,!1),a.events[b]=c)):null==c||"function"!==
|
||||
typeof c&&"object"!==typeof c||(a.events=new J,a.dom.addEventListener(b.slice(2),a.events,!1),a.events[b]=c)}function I(a,b,c){"function"===typeof a.oninit&&e.call(a.oninit,b);"function"===typeof a.oncreate&&c.push(e.bind(a.oncreate,b))}function K(a,b,c){"function"===typeof a.onupdate&&c.push(e.bind(a.onupdate,b))}var t=a.document,C=t.createDocumentFragment(),G={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},E;J.prototype=Object.create(null);J.prototype.handleEvent=function(a){var b=
|
||||
this["on"+a.type];"function"===typeof b?b.call(a.target,a):"function"===typeof b.handleEvent&&b.handleEvent(a);"function"===typeof E&&E.call(a.target,a)};return{render:function(a,b){if(!a)throw Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var d=[],c=t.activeElement,e=a.namespaceURI;null==a.vnodes&&(a.textContent="");Array.isArray(b)||(b=[b]);p(a,a.vnodes,x.normalizeChildren(b),!1,d,null,"http://www.w3.org/1999/xhtml"===e?void 0:e);a.vnodes=b;null!=c&&
|
||||
t.activeElement!==c&&c.focus();for(c=0;c<d.length;c++)d[c]()},setEventCallback:function(a){return E=a}}},E=function(a,c){function e(a){a=k.indexOf(a);-1<a&&k.splice(a,2)}function f(){if(g)throw Error("Nested m.redraw.sync() call");g=!0;for(var a=1;a<k.length;a+=2)try{k[a]()}catch(l){"undefined"!==typeof console&&console.error(l)}g=!1}var n=R(a);n.setEventCallback(function(a){!1===a.redraw?a.redraw=void 0:p()});var k=[],g=!1,p=(c||T)(f);p.sync=f;return{subscribe:function(a,c){e(a);k.push(a,c)},unsubscribe:e,
|
||||
redraw:p,render:n.render}}(window);L.setCompletionCallback(E.redraw);A.mount=function(a){return function(c,e){if(null===e)a.render(c,[]),a.unsubscribe(c);else{if(null==e.view&&"function"!==typeof e)throw Error("m.mount(element, component) expects a component, not a vnode");var f=function(){a.render(c,x(e))};a.subscribe(c,f);f()}}}(E);var Y=q,M=function(a){if(""===a||null==a)return{};"?"===a.charAt(0)&&(a=a.slice(1));a=a.split("&");for(var c={},e={},f=0;f<a.length;f++){var n=a[f].split("="),k=decodeURIComponent(n[0]);
|
||||
n=2===n.length?decodeURIComponent(n[1]):"";"true"===n?n=!0:"false"===n&&(n=!1);var g=k.split(/\]\[?|\[/),p=c;-1<k.indexOf("[")&&g.pop();for(var m=0;m<g.length;m++){k=g[m];var l=g[m+1];l=""==l||!isNaN(parseInt(l,10));var q=m===g.length-1;""===k&&(k=g.slice(0,m).join(),null==e[k]&&(e[k]=0),k=e[k]++);null==p[k]&&(p[k]=q?n:l?[]:{});p=p[k]}}return c},Z=function(a){function c(c){var e=a.location[c].replace(/(?:%[a-f89][a-f0-9])+/gim,decodeURIComponent);"pathname"===c&&"/"!==e[0]&&(e="/"+e);return e}function e(a){return function(){null==
|
||||
g&&(g=k(function(){g=null;a()}))}}function f(a,c,e){var b=a.indexOf("?"),f=a.indexOf("#"),g=-1<b?b:-1<f?f:a.length;if(-1<b){b=M(a.slice(b+1,-1<f?f:a.length));for(var m in b)c[m]=b[m]}if(-1<f)for(m in c=M(a.slice(f+1)),c)e[m]=c[m];return a.slice(0,g)}var n="function"===typeof a.history.pushState,k="function"===typeof setImmediate?setImmediate:setTimeout,g,p={prefix:"#!",getPath:function(){switch(p.prefix.charAt(0)){case "#":return c("hash").slice(p.prefix.length);case "?":return c("search").slice(p.prefix.length)+
|
||||
c("hash");default:return c("pathname").slice(p.prefix.length)+c("search")+c("hash")}},setPath:function(c,e,g){var b={},k={};c=f(c,b,k);if(null!=e){for(var m in e)b[m]=e[m];c=c.replace(/:([^\/]+)/g,function(a,c){delete b[c];return e[c]})}(m=G(b))&&(c+="?"+m);(k=G(k))&&(c+="#"+k);n?(k=g?g.state:null,m=g?g.title:null,a.onpopstate(),g&&g.replace?a.history.replaceState(k,m,p.prefix+c):a.history.pushState(k,m,p.prefix+c)):a.location.href=p.prefix+c},defineRoutes:function(c,g,k){function b(){var b=p.getPath(),
|
||||
e={},m=f(b,e,e),l=a.history.state;if(null!=l)for(var n in l)e[n]=l[n];for(var q in c)if(l=new RegExp("^"+q.replace(/:[^\/]+?\.{3}/g,"(.*?)").replace(/:[^\/]+/g,"([^\\/]+)")+"/?$"),l.test(m)){m.replace(l,function(){for(var a=q.match(/:[^\/]+/g)||[],f=[].slice.call(arguments,1,-2),k=0;k<a.length;k++)e[a[k].replace(/:|\./g,"")]=decodeURIComponent(f[k]);g(c[q],e,b,q)});return}k(b,e)}n?a.onpopstate=e(b):"#"===p.prefix.charAt(0)&&(a.onhashchange=b);b()}};return p};A.route=function(a,c){var e=Z(a),f=function(a){return a},
|
||||
n,k,g,p,m,l=function(a,l,q){function b(){null!=n&&c.render(a,n(x(k,g.key,g)))}if(null==a)throw Error("Ensure the DOM element that was passed to `m.route` is not undefined");var y=function(){b();y=c.redraw};c.subscribe(a,b);var v=function(a){if(a!==l)e.setPath(l,null,{replace:!0});else throw Error("Could not resolve default route "+l);};e.defineRoutes(q,function(a,b,c){var e=m=function(a,l){e===m&&(k=null==l||"function"!==typeof l.view&&"function"!==typeof l?"div":l,g=b,p=c,m=null,n=(a.render||f).bind(a),
|
||||
y())};a.view||"function"===typeof a?e({},a):a.onmatch?Y.resolve(a.onmatch(b,c)).then(function(b){e(a,b)},v):e(a,"div")},v)};l.set=function(a,c,f){null!=m&&(f=f||{},f.replace=!0);m=null;e.setPath(a,c,f)};l.get=function(){return p};l.prefix=function(a){e.prefix=a};var q=function(a,c){c.dom.setAttribute("href",e.prefix+c.attrs.href);c.dom.onclick=function(b){b.ctrlKey||b.metaKey||b.shiftKey||2===b.which||(b.preventDefault(),b.redraw=!1,b=this.getAttribute("href"),0===b.indexOf(e.prefix)&&(b=b.slice(e.prefix.length)),
|
||||
l.set(b,void 0,a))}};l.link=function(a){return null==a.tag?q.bind(q,a):q({},a)};l.param=function(a){return"undefined"!==typeof g&&"undefined"!==typeof a?g[a]:g};return l}(window,E);A.withAttr=function(a,c,e){return function(f){c.call(e||this,a in f.currentTarget?f.currentTarget[a]:f.currentTarget.getAttribute(a))}};var aa=R(window);A.render=aa.render;A.redraw=E.redraw;A.request=L.request;A.jsonp=L.jsonp;A.parseQueryString=M;A.buildQueryString=G;A.version="1.1.3";A.vnode=x;"undefined"!==typeof module?
|
||||
module.exports=A:window.m=A})();
|
||||
(function(){function x(a,c,e,f,m,l){return{tag:a,key:c,attrs:e,children:f,text:m,dom:l,domSize:void 0,state:void 0,events:void 0,instance:void 0,skip:!1}}function N(a){for(var c in a)if(C.call(a,c))return!1;return!0}function A(a){var c=arguments[1],e=2;if(null==a||"string"!==typeof a&&"function"!==typeof a&&"function"!==typeof a.view)throw Error("The selector must be either a string or a component.");if("string"===typeof a){var f;if(!(f=O[a])){var m="div";for(var l=[],g={};f=S.exec(a);){var n=f[1],
|
||||
r=f[2];""===n&&""!==r?m=r:"#"===n?g.id=r:"."===n?l.push(r):"["===f[3][0]&&((n=f[6])&&(n=n.replace(/\\(["'])/g,"$1").replace(/\\\\/g,"\\")),"class"===f[4]?l.push(n):g[f[4]]=""===n?n:n||!0)}0<l.length&&(g.className=l.join(" "));f=O[a]={tag:m,attrs:g}}}if(null==c)c={};else if("object"!==typeof c||null!=c.tag||Array.isArray(c))c={},e=1;if(arguments.length===e+1)m=arguments[e],Array.isArray(m)||(m=[m]);else for(m=[];e<arguments.length;)m.push(arguments[e++]);e=x.normalizeChildren(m);if("string"===typeof a){m=
|
||||
!1;var k,z;l=c.className||c["class"];if(!N(f.attrs)&&!N(c)){g={};for(var b in c)C.call(c,b)&&(g[b]=c[b]);c=g}for(b in f.attrs)C.call(f.attrs,b)&&(c[b]=f.attrs[b]);void 0!==l&&(void 0!==c["class"]&&(c["class"]=void 0,c.className=l),null!=f.attrs.className&&(c.className=f.attrs.className+" "+l));for(b in c)if(C.call(c,b)&&"key"!==b){m=!0;break}Array.isArray(e)&&1===e.length&&null!=e[0]&&"#"===e[0].tag?z=e[0].children:k=e;return x(f.tag,c.key,m?c:void 0,k,z)}return x(a,c.key,c,e)}function T(a){var c=
|
||||
0,e=null,f="function"===typeof requestAnimationFrame?requestAnimationFrame:setTimeout;return function(){var m=Date.now()-c;null===e&&(e=f(function(){e=null;a();c=Date.now()},16-m))}}x.normalize=function(a){return Array.isArray(a)?x("[",void 0,void 0,x.normalizeChildren(a),void 0,void 0):null!=a&&"object"!==typeof a?x("#",void 0,void 0,!1===a?"":a,void 0,void 0):a};x.normalizeChildren=function(a){for(var c=0;c<a.length;c++)a[c]=x.normalize(a[c]);return a};var S=/(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g,
|
||||
O={},C={}.hasOwnProperty;A.trust=function(a){null==a&&(a="");return x("<",void 0,void 0,a,void 0,void 0)};A.fragment=function(a,c){return x("[",a.key,a,x.normalizeChildren(c),void 0,void 0)};var p=function(a){function c(a,b){return function F(c){var y;try{if(!b||null==c||"object"!==typeof c&&"function"!==typeof c||"function"!==typeof(y=c.then))k(function(){b||0!==a.length||console.error("Possible unhandled promise rejection:",c);for(var e=0;e<a.length;e++)a[e](c);m.length=0;l.length=0;r.state=b;r.retry=
|
||||
function(){F(c)}});else{if(c===f)throw new TypeError("Promise can't be resolved w/ itself");e(y.bind(c))}}catch(V){n(V)}}}function e(a){function b(b){return function(a){0<c++||b(a)}}var c=0,r=b(n);try{a(b(g),r)}catch(F){r(F)}}if(!(this instanceof p))throw Error("Promise must be called with `new`");if("function"!==typeof a)throw new TypeError("executor must be a function");var f=this,m=[],l=[],g=c(m,!0),n=c(l,!1),r=f._instance={resolvers:m,rejectors:l},k="function"===typeof setImmediate?setImmediate:
|
||||
setTimeout;e(a)};p.prototype.then=function(a,c){function e(a,c,e,g){c.push(function(b){if("function"!==typeof a)e(b);else try{m(a(b))}catch(v){l&&l(v)}});"function"===typeof f.retry&&g===f.state&&f.retry()}var f=this._instance,m,l,g=new p(function(a,c){m=a;l=c});e(a,f.resolvers,m,!0);e(c,f.rejectors,l,!1);return g};p.prototype["catch"]=function(a){return this.then(null,a)};p.resolve=function(a){return a instanceof p?a:new p(function(c){c(a)})};p.reject=function(a){return new p(function(c,e){e(a)})};
|
||||
p.all=function(a){return new p(function(c,e){var f=a.length,m=0,l=[];if(0===a.length)c([]);else for(var g=0;g<a.length;g++)(function(g){function r(a){m++;l[g]=a;m===f&&c(l)}null==a[g]||"object"!==typeof a[g]&&"function"!==typeof a[g]||"function"!==typeof a[g].then?r(a[g]):a[g].then(r,e)})(g)})};p.race=function(a){return new p(function(c,e){for(var f=0;f<a.length;f++)a[f].then(c,e)})};"undefined"!==typeof window?("undefined"===typeof window.Promise&&(window.Promise=p),p=window.Promise):"undefined"!==
|
||||
typeof global&&("undefined"===typeof global.Promise&&(global.Promise=p),p=global.Promise);var G=function(a){function c(a,f){if(Array.isArray(f))for(var g=0;g<f.length;g++)c(a+"["+g+"]",f[g]);else if("[object Object]"===Object.prototype.toString.call(f))for(g in f)c(a+"["+g+"]",f[g]);else e.push(encodeURIComponent(a)+(null!=f&&""!==f?"="+encodeURIComponent(f):""))}if("[object Object]"!==Object.prototype.toString.call(a))return"";var e=[],f;for(f in a)c(f,a[f]);return e.join("&")},W=/^file:\/\//i,L=
|
||||
function(a,c){function e(){function b(){0===--a&&"function"===typeof z&&z()}var a=0;return function U(c){var e=c.then;c.then=function(){a++;var r=e.apply(c,arguments);r.then(b,function(c){b();if(0===a)throw c;});return U(r)};return c}}function f(b,a){if("string"===typeof b){var c=b;b=a||{};null==b.url&&(b.url=c)}return b}function m(b,a){if(null==a)return b;for(var c=b.match(/:[^\/]+/gi)||[],e=0;e<c.length;e++){var r=c[e].slice(1);null!=a[r]&&(b=b.replace(c[e],a[r]))}return b}function l(b,a){var c=
|
||||
G(a);if(""!==c){var e=0>b.indexOf("?")?"?":"&";b+=e+c}return b}function g(b){try{return""!==b?JSON.parse(b):null}catch(v){throw Error(b);}}function n(b){return b.responseText}function r(b,a){if("function"===typeof b)if(Array.isArray(a))for(var c=0;c<a.length;c++)a[c]=new b(a[c]);else return new b(a);return a}var k=0,z;return{request:function(b,k){var y=e();b=f(b,k);var v=new c(function(c,e){null==b.method&&(b.method="GET");b.method=b.method.toUpperCase();var f="GET"===b.method||"TRACE"===b.method?
|
||||
!1:"boolean"===typeof b.useBody?b.useBody:!0;"function"!==typeof b.serialize&&(b.serialize="undefined"!==typeof FormData&&b.data instanceof FormData?function(b){return b}:JSON.stringify);"function"!==typeof b.deserialize&&(b.deserialize=g);"function"!==typeof b.extract&&(b.extract=n);b.url=m(b.url,b.data);f?b.data=b.serialize(b.data):b.url=l(b.url,b.data);var k=new a.XMLHttpRequest,y=!1,v=k.abort;k.abort=function(){y=!0;v.call(k)};k.open(b.method,b.url,"boolean"===typeof b.async?b.async:!0,"string"===
|
||||
typeof b.user?b.user:void 0,"string"===typeof b.password?b.password:void 0);b.serialize!==JSON.stringify||!f||b.headers&&b.headers.hasOwnProperty("Content-Type")||k.setRequestHeader("Content-Type","application/json; charset=utf-8");b.deserialize!==g||b.headers&&b.headers.hasOwnProperty("Accept")||k.setRequestHeader("Accept","application/json, text/*");b.withCredentials&&(k.withCredentials=b.withCredentials);b.timeout&&(k.timeout=b.timeout);for(var z in b.headers)({}).hasOwnProperty.call(b.headers,
|
||||
z)&&k.setRequestHeader(z,b.headers[z]);"function"===typeof b.config&&(k=b.config(k,b)||k);k.onreadystatechange=function(){if(!y&&4===k.readyState)try{var a=b.extract!==n?b.extract(k,b):b.deserialize(b.extract(k,b));if(b.extract!==n||200<=k.status&&300>k.status||304===k.status||W.test(b.url))c(r(b.type,a));else{var f=Error(k.responseText);f.code=k.status;f.response=a;e(f)}}catch(X){e(X)}};f&&null!=b.data?k.send(b.data):k.send()});return!0===b.background?v:y(v)},jsonp:function(b,g){var y=e();b=f(b,
|
||||
g);var n=new c(function(c,e){var f=b.callbackName||"_mithril_"+Math.round(1E16*Math.random())+"_"+k++,g=a.document.createElement("script");a[f]=function(e){g.parentNode.removeChild(g);c(r(b.type,e));delete a[f]};g.onerror=function(){g.parentNode.removeChild(g);e(Error("JSONP request failed"));delete a[f]};null==b.data&&(b.data={});b.url=m(b.url,b.data);b.data[b.callbackKey||"callback"]=f;g.src=l(b.url,b.data);a.document.documentElement.appendChild(g)});return!0===b.background?n:y(n)},setCompletionCallback:function(b){z=
|
||||
b}}}(window,p),R=function(a){function c(h,d){if(h.state!==d)throw Error("`vnode.state` must not be modified");}function e(h){var d=h.state;try{return this.apply(d,arguments)}finally{c(h,d)}}function f(h,d,b,a,c,e,f){for(;b<a;b++){var u=d[b];null!=u&&m(h,u,c,f,e)}}function m(h,d,u,a,c){var e=d.tag;if("string"===typeof e)switch(d.state={},null!=d.attrs&&I(d.attrs,d,u),e){case "#":return d.dom=t.createTextNode(d.children),b(h,d.dom,c),d.dom;case "<":return l(h,d,c);case "[":var r=t.createDocumentFragment();
|
||||
null!=d.children&&(e=d.children,f(r,e,0,e.length,u,null,a));d.dom=r.firstChild;d.domSize=r.childNodes.length;b(h,r,c);return r;default:var q=d.tag,k=(e=d.attrs)&&e.is;q=(a=d.attrs&&d.attrs.xmlns||G[d.tag]||a)?k?t.createElementNS(a,q,{is:k}):t.createElementNS(a,q):k?t.createElement(q,{is:k}):t.createElement(q);d.dom=q;if(null!=e)for(r in k=a,e)A(d,r,null,e[r],k);b(h,q,c);null!=d.attrs&&null!=d.attrs.contenteditable?v(d):(null!=d.text&&(""!==d.text?q.textContent=d.text:d.children=[x("#",void 0,void 0,
|
||||
d.text,void 0,void 0)]),null!=d.children&&(h=d.children,f(q,h,0,h.length,u,null,a),h=d.attrs,"select"===d.tag&&null!=h&&("value"in h&&A(d,"value",null,h.value,void 0),"selectedIndex"in h&&A(d,"selectedIndex",null,h.selectedIndex,void 0))));return q}else return g(d,u),null!=d.instance?(u=m(h,d.instance,u,a,c),d.dom=d.instance.dom,d.domSize=null!=d.dom?d.instance.domSize:0,b(h,u,c),d=u):(d.domSize=0,d=C),d}function l(h,d,u){var a={caption:"table",thead:"table",tbody:"table",tfoot:"table",tr:"tbody",
|
||||
th:"tr",td:"tr",colgroup:"table",col:"colgroup"}[(d.children.match(/^\s*?<(\w+)/im)||[])[1]]||"div";a=t.createElement(a);a.innerHTML=d.children;d.dom=a.firstChild;d.domSize=a.childNodes.length;d=t.createDocumentFragment();for(var c;c=a.firstChild;)d.appendChild(c);b(h,d,u);return d}function g(h,d){if("function"===typeof h.tag.view){h.state=Object.create(h.tag);var b=h.state.view;if(null!=b.$$reentrantLock$$)return C;b.$$reentrantLock$$=!0}else{h.state=void 0;b=h.tag;if(null!=b.$$reentrantLock$$)return C;
|
||||
b.$$reentrantLock$$=!0;h.state=null!=h.tag.prototype&&"function"===typeof h.tag.prototype.view?new h.tag(h):h.tag(h)}null!=h.attrs&&I(h.attrs,h,d);I(h.state,h,d);h.instance=x.normalize(e.call(h.state.view,h));if(h.instance===h)throw Error("A view cannot return the vnode it received as argument");b.$$reentrantLock$$=null}function n(h,d,a,c,e,g,l){if(d!==a&&(null!=d||null!=a))if(null==d)f(h,a,0,a.length,e,g,l);else if(null==a)y(d,0,d.length,a);else{if(d.length===a.length){for(var u=!1,q=0;q<a.length;q++)if(null!=
|
||||
a[q]&&null!=d[q]){u=null==a[q].key&&null==d[q].key;break}if(u){for(q=0;q<d.length;q++)d[q]!==a[q]&&(null==d[q]&&null!=a[q]?m(h,a[q],e,l,z(d,q+1,g)):null==a[q]?y(d,q,q+1,a):r(h,d[q],a[q],e,z(d,q+1,g),c,l));return}}if(!c)a:{if(null!=d.pool&&Math.abs(d.pool.length-a.length)<=Math.abs(d.length-a.length)&&(c=a[0]&&a[0].children&&a[0].children.length||0,Math.abs((d.pool[0]&&d.pool[0].children&&d.pool[0].children.length||0)-c)<=Math.abs((d[0]&&d[0].children&&d[0].children.length||0)-c))){c=!0;break a}c=
|
||||
!1}if(c){var n=d.pool;d=d.concat(d.pool)}q=u=0;for(var v=d.length-1,D=a.length-1,H;v>=u&&D>=q;){var w=d[u],p=a[q];if(w!==p||c)if(null==w)u++;else if(null==p)q++;else if(w.key===p.key){var t=null!=n&&u>=d.length-n.length||null==n&&c;u++;q++;r(h,w,p,e,z(d,u,g),t,l);c&&w.tag===p.tag&&b(h,k(w),g)}else if(w=d[v],w!==p||c)if(null==w)v--;else if(null==p)q++;else if(w.key===p.key)t=null!=n&&v>=d.length-n.length||null==n&&c,r(h,w,p,e,z(d,v+1,g),t,l),(c||q<D)&&b(h,k(w),z(d,u,g)),v--,q++;else break;else v--,
|
||||
q++;else u++,q++}for(;v>=u&&D>=q;){w=d[v];p=a[D];if(w!==p||c)if(null==w)v--;else{if(null!=p)if(w.key===p.key)t=null!=n&&v>=d.length-n.length||null==n&&c,r(h,w,p,e,z(d,v+1,g),t,l),c&&w.tag===p.tag&&b(h,k(w),g),null!=w.dom&&(g=w.dom),v--;else{if(!H){H=d;t=v;w={};var B;for(B=0;B<t;B++){var x=H[B];null!=x&&(x=x.key,null!=x&&(w[x]=B))}H=w}null!=p&&(w=H[p.key],null!=w?(B=d[w],t=null!=n&&w>=d.length-n.length||null==n&&c,r(h,B,p,e,z(d,v+1,g),t,l),b(h,k(B),g),d[w].skip=!0,null!=B.dom&&(g=B.dom)):g=m(h,p,e,
|
||||
l,g))}D--}else v--,D--;if(D<q)break}f(h,a,q,D+1,e,g,l);y(d,u,v+1,a)}}function r(h,d,a,b,c,f,y){var q=d.tag;if(q===a.tag){a.state=d.state;a.events=d.events;var u;if(u=!f){var p,z;null!=a.attrs&&"function"===typeof a.attrs.onbeforeupdate&&(p=e.call(a.attrs.onbeforeupdate,a,d));"string"!==typeof a.tag&&"function"===typeof a.state.onbeforeupdate&&(z=e.call(a.state.onbeforeupdate,a,d));void 0===p&&void 0===z||p||z?u=!1:(a.dom=d.dom,a.domSize=d.domSize,a.instance=d.instance,u=!0)}if(!u)if("string"===typeof q)switch(null!=
|
||||
a.attrs&&(f?(a.state={},I(a.attrs,a,b)):K(a.attrs,a,b)),q){case "#":d.children.toString()!==a.children.toString()&&(d.dom.nodeValue=a.children);a.dom=d.dom;break;case "<":d.children!==a.children?(k(d),l(h,a,c)):(a.dom=d.dom,a.domSize=d.domSize);break;case "[":n(h,d.children,a.children,f,b,c,y);d=0;b=a.children;a.dom=null;if(null!=b){for(f=0;f<b.length;f++){var t=b[f];null!=t&&null!=t.dom&&(null==a.dom&&(a.dom=t.dom),d+=t.domSize||1)}1!==d&&(a.domSize=d)}break;default:h=a.dom=d.dom;y=a.attrs&&a.attrs.xmlns||
|
||||
G[a.tag]||y;"textarea"===a.tag&&(null==a.attrs&&(a.attrs={}),null!=a.text&&(a.attrs.value=a.text,a.text=void 0));c=d.attrs;q=a.attrs;u=y;if(null!=q)for(t in q)A(a,t,c&&c[t],q[t],u);if(null!=c)for(t in c)null!=q&&t in q||("className"===t&&(t="class"),"o"!==t[0]||"n"!==t[1]||P(t)?"key"!==t&&a.dom.removeAttribute(t):Q(a,t,void 0));null!=a.attrs&&null!=a.attrs.contenteditable?v(a):null!=d.text&&null!=a.text&&""!==a.text?d.text.toString()!==a.text.toString()&&(d.dom.firstChild.nodeValue=a.text):(null!=
|
||||
d.text&&(d.children=[x("#",void 0,void 0,d.text,void 0,d.dom.firstChild)]),null!=a.text&&(a.children=[x("#",void 0,void 0,a.text,void 0,void 0)]),n(h,d.children,a.children,f,b,null,y))}else{if(f)g(a,b);else{a.instance=x.normalize(e.call(a.state.view,a));if(a.instance===a)throw Error("A view cannot return the vnode it received as argument");null!=a.attrs&&K(a.attrs,a,b);K(a.state,a,b)}null!=a.instance?(null==d.instance?m(h,a.instance,b,y,c):r(h,d.instance,a.instance,b,c,f,y),a.dom=a.instance.dom,a.domSize=
|
||||
a.instance.domSize):null!=d.instance?(F(d.instance,null),a.dom=void 0,a.domSize=0):(a.dom=d.dom,a.domSize=d.domSize)}}else F(d,null),m(h,a,b,y,c)}function k(a){var d=a.domSize;if(null!=d||null==a.dom){var b=t.createDocumentFragment();if(0<d){for(a=a.dom;--d;)b.appendChild(a.nextSibling);b.insertBefore(a,b.firstChild)}return b}return a.dom}function z(a,d,b){for(;d<a.length;d++)if(null!=a[d]&&null!=a[d].dom)return a[d].dom;return b}function b(a,d,b){b&&b.parentNode?a.insertBefore(d,b):a.appendChild(d)}
|
||||
function v(a){var d=a.children;if(null!=d&&1===d.length&&"<"===d[0].tag)d=d[0].children,a.dom.innerHTML!==d&&(a.dom.innerHTML=d);else if(null!=a.text||null!=d&&0!==d.length)throw Error("Child node of a contenteditable must be trusted");}function y(a,d,b,c){for(;d<b;d++){var h=a[d];null!=h&&(h.skip?h.skip=!1:F(h,c))}}function F(a,d){function b(){if(++f===h&&(c(a,r),p(a),a.dom)){var b=a.domSize||1;if(1<b)for(var e=a.dom;--b;){var g=e.nextSibling,q=g.parentNode;null!=q&&q.removeChild(g)}b=a.dom;e=b.parentNode;
|
||||
null!=e&&e.removeChild(b);if(b=null!=d&&null==a.domSize)b=a.attrs,b=!(null!=b&&(b.oncreate||b.onupdate||b.onbeforeremove||b.onremove));b&&"string"===typeof a.tag&&(d.pool?d.pool.push(a):d.pool=[a])}}var h=1,f=0,r=a.state;if(a.attrs&&"function"===typeof a.attrs.onbeforeremove){var g=e.call(a.attrs.onbeforeremove,a);null!=g&&"function"===typeof g.then&&(h++,g.then(b,b))}"string"!==typeof a.tag&&"function"===typeof a.state.onbeforeremove&&(g=e.call(a.state.onbeforeremove,a),null!=g&&"function"===typeof g.then&&
|
||||
(h++,g.then(b,b)));b()}function p(a){a.attrs&&"function"===typeof a.attrs.onremove&&e.call(a.attrs.onremove,a);if("string"!==typeof a.tag)"function"===typeof a.state.onremove&&e.call(a.state.onremove,a),null!=a.instance&&p(a.instance);else if(a=a.children,Array.isArray(a))for(var b=0;b<a.length;b++){var c=a[b];null!=c&&p(c)}}function A(a,b,c,e,f){if("key"!==b&&"is"!==b&&!P(b)){if("o"===b[0]&&"n"===b[1])return Q(a,b,e);if((c!==e||"value"===b||"checked"===b||"selectedIndex"===b||"selected"===b&&a.dom===
|
||||
t.activeElement||a.dom.parentNode===t.activeElement||"object"===typeof e)&&void 0!==e){var d=a.dom;if("xlink:"===b.slice(0,6))d.setAttributeNS("http://www.w3.org/1999/xlink",b,e);else if("style"===b)if(a=c,null!=a&&null!=e&&"object"===typeof a&&"object"===typeof e&&e!==a){for(var h in e)e[h]!==a[h]&&(d.style[h]=e[h]);for(h in a)h in e||(d.style[h]="")}else if(a===e&&(d.style.cssText="",a=null),null==e)d.style.cssText="";else if("string"===typeof e)d.style.cssText=e;else for(h in"string"===typeof a&&
|
||||
(d.style.cssText=""),e)d.style[h]=e[h];else if(b in d&&"href"!==b&&"list"!==b&&"form"!==b&&"width"!==b&&"height"!==b&&void 0===f&&!(a.attrs.is||-1<a.tag.indexOf("-"))){if("value"===b){h=""+e;if(("input"===a.tag||"textarea"===a.tag)&&a.dom.value===h&&a.dom===t.activeElement)return;if("select"===a.tag)if(null===e){if(-1===a.dom.selectedIndex&&a.dom===t.activeElement)return}else if(null!==c&&a.dom.value===h&&a.dom===t.activeElement)return;if("option"===a.tag&&null!=c&&a.dom.value===h)return}"input"===
|
||||
a.tag&&"type"===b?d.setAttribute(b,e):d[b]=e}else"boolean"===typeof e?e?d.setAttribute(b,""):d.removeAttribute(b):d.setAttribute("className"===b?"class":b,e)}}}function P(a){return"oninit"===a||"oncreate"===a||"onupdate"===a||"onremove"===a||"onbeforeremove"===a||"onbeforeupdate"===a}function J(){}function Q(a,b,c){null!=a.events?a.events[b]!==c&&(null==c||"function"!==typeof c&&"object"!==typeof c?(null!=a.events[b]&&a.dom.removeEventListener(b.slice(2),a.events,!1),a.events[b]=void 0):(null==a.events[b]&&
|
||||
a.dom.addEventListener(b.slice(2),a.events,!1),a.events[b]=c)):null==c||"function"!==typeof c&&"object"!==typeof c||(a.events=new J,a.dom.addEventListener(b.slice(2),a.events,!1),a.events[b]=c)}function I(a,b,c){"function"===typeof a.oninit&&e.call(a.oninit,b);"function"===typeof a.oncreate&&c.push(e.bind(a.oncreate,b))}function K(a,b,c){"function"===typeof a.onupdate&&c.push(e.bind(a.onupdate,b))}var t=a.document,C=t.createDocumentFragment(),G={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},
|
||||
E;J.prototype=Object.create(null);J.prototype.handleEvent=function(a){var b=this["on"+a.type];"function"===typeof b?b.call(a.target,a):"function"===typeof b.handleEvent&&b.handleEvent(a);"function"===typeof E&&E.call(a.target,a)};return{render:function(a,b){if(!a)throw Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var d=[],c=t.activeElement,e=a.namespaceURI;null==a.vnodes&&(a.textContent="");Array.isArray(b)||(b=[b]);n(a,a.vnodes,x.normalizeChildren(b),
|
||||
!1,d,null,"http://www.w3.org/1999/xhtml"===e?void 0:e);a.vnodes=b;null!=c&&t.activeElement!==c&&c.focus();for(c=0;c<d.length;c++)d[c]()},setEventCallback:function(a){return E=a}}},E=function(a,c){function e(a){a=l.indexOf(a);-1<a&&l.splice(a,2)}function f(){if(g)throw Error("Nested m.redraw.sync() call");g=!0;for(var a=1;a<l.length;a+=2)try{l[a]()}catch(k){"undefined"!==typeof console&&console.error(k)}g=!1}var m=R(a);m.setEventCallback(function(a){!1===a.redraw?a.redraw=void 0:n()});var l=[],g=!1,
|
||||
n=(c||T)(f);n.sync=f;return{subscribe:function(a,c){e(a);l.push(a,c)},unsubscribe:e,redraw:n,render:m.render}}(window);L.setCompletionCallback(E.redraw);A.mount=function(a){return function(c,e){if(null===e)a.render(c,[]),a.unsubscribe(c);else{if(null==e.view&&"function"!==typeof e)throw Error("m.mount(element, component) expects a component, not a vnode");var f=function(){a.render(c,x(e))};a.subscribe(c,f);f()}}}(E);var Y=p,M=function(a){if(""===a||null==a)return{};"?"===a.charAt(0)&&(a=a.slice(1));
|
||||
a=a.split("&");for(var c={},e={},f=0;f<a.length;f++){var m=a[f].split("="),l=decodeURIComponent(m[0]);m=2===m.length?decodeURIComponent(m[1]):"";"true"===m?m=!0:"false"===m&&(m=!1);var g=l.split(/\]\[?|\[/),n=c;-1<l.indexOf("[")&&g.pop();for(var r=0;r<g.length;r++){l=g[r];var k=g[r+1];k=""==k||!isNaN(parseInt(k,10));var p=r===g.length-1;""===l&&(l=g.slice(0,r).join(),null==e[l]&&(e[l]=0),l=e[l]++);null==n[l]&&(n[l]=p?m:k?[]:{});n=n[l]}}return c},Z=function(a){function c(c){var e=a.location[c].replace(/(?:%[a-f89][a-f0-9])+/gim,
|
||||
decodeURIComponent);"pathname"===c&&"/"!==e[0]&&(e="/"+e);return e}function e(a){return function(){null==g&&(g=l(function(){g=null;a()}))}}function f(a,c,e){var b=a.indexOf("?"),f=a.indexOf("#"),g=-1<b?b:-1<f?f:a.length;if(-1<b){b=M(a.slice(b+1,-1<f?f:a.length));for(var k in b)c[k]=b[k]}if(-1<f)for(k in c=M(a.slice(f+1)),c)e[k]=c[k];return a.slice(0,g)}var m="function"===typeof a.history.pushState,l="function"===typeof setImmediate?setImmediate:setTimeout,g,n={prefix:"#!",getPath:function(){switch(n.prefix.charAt(0)){case "#":return c("hash").slice(n.prefix.length);
|
||||
case "?":return c("search").slice(n.prefix.length)+c("hash");default:return c("pathname").slice(n.prefix.length)+c("search")+c("hash")}},setPath:function(c,e,g){var b={},k={};c=f(c,b,k);if(null!=e){for(var l in e)b[l]=e[l];c=c.replace(/:([^\/]+)/g,function(a,c){delete b[c];return e[c]})}(l=G(b))&&(c+="?"+l);(k=G(k))&&(c+="#"+k);m?(k=g?g.state:null,l=g?g.title:null,a.onpopstate(),g&&g.replace?a.history.replaceState(k,l,n.prefix+c):a.history.pushState(k,l,n.prefix+c)):a.location.href=n.prefix+c},defineRoutes:function(c,
|
||||
g,l){function b(){var b=n.getPath(),e={},k=f(b,e,e),m=a.history.state;if(null!=m)for(var r in m)e[r]=m[r];for(var p in c)if(m=new RegExp("^"+p.replace(/:[^\/]+?\.{3}/g,"(.*?)").replace(/:[^\/]+/g,"([^\\/]+)")+"/?$"),m.test(k)){k.replace(m,function(){for(var a=p.match(/:[^\/]+/g)||[],f=[].slice.call(arguments,1,-2),k=0;k<a.length;k++)e[a[k].replace(/:|\./g,"")]=decodeURIComponent(f[k]);g(c[p],e,b,p)});return}l(b,e)}m?a.onpopstate=e(b):"#"===n.prefix.charAt(0)&&(a.onhashchange=b);b()}};return n};A.route=
|
||||
function(a,c){var e=Z(a),f=function(a){return a},m,l,g,n,r,k=function(a,k,p){function b(){null!=m&&c.render(a,m(x(l,g.key,g)))}if(null==a)throw Error("Ensure the DOM element that was passed to `m.route` is not undefined");var y=function(){b();y=c.redraw};c.subscribe(a,b);var v=function(a){if(a!==k)e.setPath(k,null,{replace:!0});else throw Error("Could not resolve default route "+k);};e.defineRoutes(p,function(a,b,c){var e=r=function(a,k){e===r&&(l=null==k||"function"!==typeof k.view&&"function"!==
|
||||
typeof k?"div":k,g=b,n=c,r=null,m=(a.render||f).bind(a),y())};a.view||"function"===typeof a?e({},a):a.onmatch?Y.resolve(a.onmatch(b,c)).then(function(b){e(a,b)},v):e(a,"div")},v)};k.set=function(a,c,f){null!=r&&(f=f||{},f.replace=!0);r=null;e.setPath(a,c,f)};k.get=function(){return n};k.prefix=function(a){e.prefix=a};var p=function(a,c){c.dom.setAttribute("href",e.prefix+c.attrs.href);c.dom.onclick=function(b){b.ctrlKey||b.metaKey||b.shiftKey||2===b.which||(b.preventDefault(),b.redraw=!1,b=this.getAttribute("href"),
|
||||
0===b.indexOf(e.prefix)&&(b=b.slice(e.prefix.length)),k.set(b,void 0,a))}};k.link=function(a){return null==a.tag?p.bind(p,a):p({},a)};k.param=function(a){return"undefined"!==typeof g&&"undefined"!==typeof a?g[a]:g};return k}(window,E);A.withAttr=function(a,c,e){return function(f){c.call(e||this,a in f.currentTarget?f.currentTarget[a]:f.currentTarget.getAttribute(a))}};var aa=R(window);A.render=aa.render;A.redraw=E.redraw;A.request=L.request;A.jsonp=L.jsonp;A.parseQueryString=M;A.buildQueryString=
|
||||
G;A.version="1.1.3";A.vnode=x;"undefined"!==typeof module?module.exports=A:window.m=A})();
|
||||
Loading…
Add table
Add a link
Reference in a new issue