mithril-vndb/mithril.min.js
2015-12-15 16:56:04 -05:00

8 lines
No EOL
22 KiB
JavaScript

/*
Mithril v0.2.1
http://mithril.js.org
(c) 2014-2015 Leo Horie
License: MIT
*/
!function(a,b){"use strict";var c=b("undefined"!=typeof window?window:{});"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}(this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===bb.call(a)}function e(a){return"[object String]"===bb.call(a)}function f(){}function g(a,b){for(var c=0;c<a.length;c++)b(a[c],c)}function h(a,b){for(var c in a)cb.call(a,c)&&b(a[c],c)}function i(a){Za=a.document,$a=a.location,ab=a.cancelAnimationFrame||a.clearTimeout,_a=a.requestAnimationFrame||a.setTimeout}function j(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function k(a){return null!=a&&(d(a)||c(a))&&c(a.then)}function l(a,b){return a.then?a.then(b):b()}function m(a){var b=r.prop();return a.then(b),b.then=function(c,d){return a.then(function(){return c(b())},d)},b["catch"]=function(c){return a.then(function(){return b()},c)},b["finally"]=function(b){return a.then(function(a){return l(b(),function(){return a})},function(a){return l(b(),function(){throw a})})},b}function n(a){return null!=a&&d(a)&&!("tag"in a||"view"in a||"subtree"in a)}function o(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;null!=(c=e.exec(a));)if(""===c[1]&&null!=c[2])b.tag=c[2];else if("#"===c[1])b.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);b.attrs[f[1]]=f[3]||(f[2]?"":!0)}return d}function p(a,b,c,d){var e=!1;if(cb.call(b,c)){var f=b[c];null!=f&&""!==f&&(e=!0,d.push(f))}h(b,function(b,d){a[d]=d===c&&e?"":b}),d.length&&(a[c]=d.join(" "))}function q(a){function b(){return g.apply(this,d)||this}function c(b){for(var c=[b].concat(d),e=1;e<arguments.length;e++)c.push(arguments[e]);return h.apply(a,c)}for(var d=[],e=1;e<arguments.length;e++)d.push(arguments[e]);var g=a.controller||f;g!==f&&(b.prototype=g.prototype);var h=a.view||f;c.$original=h;var i={controller:b,view:c};return d[0]&&null!=d[0].key&&(i.attrs={key:d[0].key}),i}function r(a,b){if(d(a))return q.apply(null,arguments);if(!e(a))throw new TypeError("selector in m(selector, attrs, children) should be a string");if(!a)throw new TypeError("selector cannot be an empty string");for(var c=n(b),f=[],g=c?2:1;g<arguments.length;g++)f.push(arguments[g]);var h;h=1===f.length&&db(f[0])?f[0]:f;var i={tag:"div",attrs:{},children:h};return p(i.attrs,c?b:{},c&&"class"in b?"class":"className",o(a,i)),i}function s(a,b){for(var c=0;c<a.length;c++){var d=a[c];if(d=d&&d.attrs,d&&null!=d.key&&b(d,c))break}}function t(a){try{if(null!=a&&null!=a.toString())return a}catch(b){}return""}function u(a){for(var b=0;b<a.length;b++)db(a[b])&&(a=a.concat.apply([],a),b--);return a}function v(a,b,c){a.insertBefore(b,a.childNodes[c]||null)}function w(a,b,c,d,e,f,g,h,i,j,k){return{parent:a,pTag:b,pCache:c,pIndex:d,data:e,cached:f,reattach:g,index:h,editable:i,ns:j,cfgs:k}}function x(a){return a.data=t(a.data),"retain"===a.data.subtree?a.cached:(y(a),db(a.data)?B(a):null!=a.data&&d(a.data)?H(a):c(a.data)?a.cached:_(a))}function y(a){if(null!=a.cached){if(bb.call(a.cached)===bb.call(a.data))return;if(a.pCache&&a.pCache.nodes){var b=a.index-a.pIndex,c=b+(db(a.data)?a.data:a.cached.nodes).length;na(a.pCache.nodes.slice(b,c),a.pCache.slice(b,c))}else a.cached.nodes&&na(a.cached.nodes,a.cached)}a.cached=new a.data.constructor,a.cached.tag&&(a.cached={}),a.cached.nodes=[]}function z(a){var b=0;s(a,function(){return g(a,function(a){a=a&&a.attrs,a&&null==a.key&&(a.key="__mithril__"+b++)}),!0})}function A(a,b,c,d){return x(w(a.parent,a.pTag,a.cached,a.index,b,c,a.reattach,a.index+d||d,a.editable,a.ns,a.cfgs))}function B(a){a.data=u(a.data);var c=[],d=a.cached.length===a.data.length,e=0,f={},g=!1;s(a.cached,function(a,b){g=!0,f[a.key]={action:eb,index:b}}),z(a.data),g&&C(a,f);for(var h=0,i=0,j=a.data.length;j>i;i++){var k=A(a,a.data[i],a.cached[h],e);k!==b&&(d=d&&k.nodes.intact,e+=ga(k),a.cached[h++]=k)}return d||E(a,c),a.cached}function C(a,b){var c=a.data.length!==a.cached.length;c||s(a.data,function(b,d){var e=a.cached[d];return c=e&&e.attrs&&e.attrs.key!==b.key}),c&&D(a,b)}function D(a,b){var c=a.cached.nodes;s(a.data,function(a,d){a=a.key,b[a]?b[a]={action:gb,index:d,from:b[a].index,element:c[b[a].index]||Za.createElement("div")}:b[a]={action:fb,index:d}});var d=[];h(b,function(a){d.push(a)});var e=d.sort(ha),f=new Array(a.cached.length);f.nodes=a.cached.nodes.slice(),g(e,function(b){var c=b.index;switch(b.action){case eb:na(a.cached[c].nodes,a.cached[c]),f.splice(c,1);break;case fb:var d=Za.createElement("div");d.key=a.data[c].attrs.key,v(a.parent,d,c),f.splice(c,0,{attrs:{key:a.data[c].attrs.key},nodes:[d]}),f.nodes[c]=d;break;case gb:var e=b.element;a.parent.childNodes[c]!==e&&a.parent.insertBefore(e,a.parent.childNodes[c]||null),f[c]=a.cached[b.from],f.nodes[c]=e}}),a.cached=f}function E(a,b){for(var c=0,d=a.data.length;d>c;c++){var e=a.cached[c];null!=e&&b.push.apply(b,e.nodes)}g(a.cached.nodes,function(c,d){null!=c.parentNode&&b.indexOf(c)<0&&na([c],[a.cached[d]])}),a.data.length<a.cached.length&&(a.cached.length=a.data.length),a.cached.nodes=b}function F(a){var b=a.data.attrs=a.data.attrs||{};a.cached.attrs=a.cached.attrs||{};var c=Object.keys(a.data.attrs);return N(a,c),c.length>+("key"in b)}function G(a){var b=a.data;return b.attrs.xmlns?b.attrs.xmlns:"svg"===b.tag?"http://www.w3.org/2000/svg":"math"===b.tag?"http://www.w3.org/1998/Math/MathML":a.ns}function H(a){var b=[],c=[];if(I(a,b,c),!a.data.tag&&c.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");var d=F(a);return e(a.data.tag)?R({builder:a,hasKeys:d,views:b,controllers:c,ns:G(a)}):void 0}function I(a,b,c){for(var d=a.cached&&a.cached.controllers;null!=a.data.view;)J(a,d,c,b)}function J(a,b,c,d){var e=a.data.view.$original||a.data.view,f=M(a.cached.views,e,b,a.data.controller),g=+(a.data&&a.data.attrs&&a.data.attrs.key);return 0===ib||hb||b&&b.indexOf(f)>-1?a.data=a.data.view(f):a.data={tag:"placeholder"},"retain"===a.data.subtree?a.cached:(g===g&&((a.data.attrs=a.data.attrs||{}).key=g),void L(d,c,e,f))}function K(a,b){a.ctrls.splice(a.ctrls.indexOf(a.ctrl),1),a.views.splice(a.views.indexOf(a.view),1),a.ctrl&&c(a.ctrl.onunload)&&a.ctrl.onunload(b)}function L(a,b,c,d){a.push(c),jb[b.push(d)-1]={views:a,view:c,ctrl:d,ctrls:b}}function M(a,b,d,e){var f="diff"===lb()&&a?a.indexOf(b):-1;return f>-1?d[f]:c(e)?new e:{}}function N(a,b){P(a,b)&&(a.cached.nodes.length&&na(a.cached.nodes),a.cached.cfgCtx&&c(a.cached.cfgCtx.onunload)&&a.cached.cfgCtx.onunload(),a.cached.controllers&&g(a.cached.controllers,function(a){a.unload&&a.onunload({preventDefault:f})}))}function O(a,c){var d=a.length;if(d!==c.length)return!1;for(var e=0,f=Object.create(null);d>e;)f[c[e]]=e++;for(;0!==e;)if(f[a[--e]]===b)return!1;return!0}function P(a,b){var c=a.data,d=a.cached;return c.tag!==d.tag?!0:O(b,Object.keys(d.attrs))?c.attrs.id!==d.attrs.id?!0:c.attrs.key!==d.attrs.key?!0:"all"===lb()?!d.cfgCtx||d.cfgCtx.retain!==!0:"diff"===lb()?d.cfgCtx&&d.cfgCtx.retain===!1:!1:!0}function Q(a){var b=S(a);return a.builder.cached=W(a,b,T(a,b),V(a,b)),b}function R(a){var b=a.builder,c=0===b.cached.nodes.length,d=c?Q(a):Z(a);return(c||b.reattach&&null!=d)&&v(b.parent,d,b.index),$(b,d,c),b.cached}function S(a){var c=a.builder.data;return a.ns===b?c.attrs.is?Za.createElement(c.tag,c.attrs.is):Za.createElement(c.tag):c.attrs.is?Za.createElementNS(a.ns,c.tag,c.attrs.is):Za.createElementNS(a.ns,c.tag)}function T(a,b){var c=a.builder.data;return a.hasKeys?la(b,c.tag,c.attrs,{},a.ns):c.attrs}function U(a,c,d){var e=a.builder;return x(w(c,e.data.tag,b,b,e.data.children,e.cached.children,d,0,e.data.attrs.contenteditable?c:e.editable,a.ns,e.cfgs))}function V(a,b){var c=a.builder.data.children;return null!=c&&c.length?U(a,b,!0):c}function W(a,b,c,d){var e=a.builder.data,f={tag:e.tag,attrs:c,children:d,nodes:[b]};return Y(a,f),f.children&&!f.children.nodes&&(f.children.nodes=[]),"select"===e.tag&&"value"in e.attrs&&la(b,e.tag,{value:e.attrs.value},{},a.ns),f}function X(a){if(a.onunload&&a.onunload.$old&&(a.onunload=a.onunload.$old),ib&&a.onunload){var b=a.onunload;a.onunload=f,a.onunload.$old=b}}function Y(a,b){a.controllers.length&&(b.views=a.views,b.controllers=a.controllers,g(a.controllers,X))}function Z(a){var b=a.builder.cached,c=b.nodes[0];return a.hasKeys&&la(c,a.builder.data.tag,a.builder.data.attrs,b.attrs,a.ns),b.children=U(a,c,!1),b.nodes.intact=!0,a.controllers.length&&(b.views=a.views,b.controllers=a.controllers),c}function $(a,b,d){var e=a.data,f=a.cached,g=e.attrs.config;if(c(g)){var h=f.cfgCtx=f.cfgCtx||{};a.cfgs.push(function(){return g.call(e,b,!d,h,f)})}}function _(a){return 0===a.cached.nodes.length?ba(a):a.cached.valueOf()!==a.data.valueOf()||a.reattach?ca(a):(a.cached.nodes.intact=!0,a.cached)}function aa(a){return!/^(AREA|BASE|BR|COL|COMMAND|EMBED|HR|IMG|INPUT|KEYGEN|LINK|META|PARAM|SOURCE|TRACK|WBR)$/.test(a)}function ba(a){var b;a.data.$trusted?b=pa(a.parent,a.index,a.data):(b=[Za.createTextNode(a.data)],aa(a.parent.nodeName)&&v(a.parent,b[0],a.index));var c;return c="string"==typeof a.data||"number"==typeof a.data||"boolean"==typeof a.data?new a.data.constructor(a.data):a.data,c.nodes=b,c}function ca(a){var b=a.cached.nodes;return a.editable&&a.editable===Za.activeElement||(a.data.$trusted?(na(b,a.cached),b=pa(a.parent,a.index,a.data)):"textarea"===a.pTag?a.parent.value=a.data:a.editable?a.editable.innerHTML=a.data:((1===b[0].nodeType||b.length>1||e(b[0].nodeValue)&&/\s*/.test(b[0].nodeValue))&&(na(a.cached.nodes,a.cached),b=[Za.createTextNode(a.data)]),da(a,b[0]))),a.cached=new a.data.constructor(a.data),a.cached.nodes=b,a.cached}function da(a,b){try{v(a.parent,b,a.index),b.nodeValue=a.data}catch(c){}}function ea(){ib++}function fa(){ib>1?ib--:(ib=0,r.redraw())}function ga(a){if(!a.$trusted)return db(a)?a.length:1;var b=a.match(/<[^\/]|\>\s*[^<]/g);return null!=b?b.length:void 0}function ha(a,b){return a.action-b.action||a.index-b.index}function ia(a){return!/^(list|style|form|type|width|height)$/.test(a)}function ja(a,b,e,f,g,i){if("config"!==a&&"key"!==a)if(c(b)&&"on"===a.slice(0,2))f[a]=qa(b,f);else if("style"===a&&null!=b&&d(b)){h(b,function(a,b){(null==e||e[b]!==a)&&(f.style[b]=a)});for(var j in e)cb.call(e,j)&&(cb.call(b,j)||(f.style[j]=""))}else null!=g?"href"===a?f.setAttributeNS("http://www.w3.org/1999/xlink","href",b):f.setAttribute("className"===a?"class":a,b):a in f&&ia(a)?("input"!==i||f[a]!==b)&&(f[a]=b):f.setAttribute(a,b)}function ka(a,b,c,d,e,f){try{ja(a,b,c,d,e,f)}catch(g){if(!/\bInvalid argument\b/.test(g.message))throw g}}function la(a,b,c,d,e){return h(c,function(c,f){var g=d[f];f in d&&g===c?"value"===f&&"input"===b&&a.value!=c&&(a.value=c):(d[f]=c,ka(f,c,g,a,e,b))}),d}function ma(a){try{a.parentNode.removeChild(a)}catch(b){}}function na(a,b){if(a.length){b=[].concat(b);for(var c=a.length-1;c>=0;c--){var d=a[c];null!=d&&d.parentNode&&(ma(d),b[c]&&oa(b[c]))}a.length&&(a.length=0)}}function oa(a){a.cfgCtx&&c(a.cfgCtx.onunload)&&(a.cfgCtx.onunload(),a.cfgCtx.onunload=null),a.controllers&&g(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(db(a.children)?g(a.children,oa):a.children.tag&&oa(a.children))}function pa(a,b,c){var d=a.childNodes[b];d?1!==d.nodeType?(a.insertBefore(nb,d||null),nb.insertAdjacentHTML("beforebegin",c),a.removeChild(nb)):d.insertAdjacentHTML("beforebegin",c):mb(a,c);for(var e=[];a.childNodes[b]!==d;)e.push(a.childNodes[b++]);return e}function qa(a,b){return function(c){lb("diff"),ea();try{return a.call(b,c||event)}finally{za()}}}function ra(a){var b=pb.indexOf(a);return b>=0?b:pb.push(a)-1}function sa(a,b,c,d){var e=null===a;if(!d){lb("all"),ea(),sb[c]=b,a=rb=a||{controller:f};var g=new(a.controller||f);return a===rb&&(ub[c]=g,tb[c]=a),za(),e&&ua(b,c),ub[c]}e&&ua(b,c)}function ta(a,b){if(!a)throw new Error("Please ensure the DOM element exists before rendering a template into it.");var d=sb.indexOf(a);0>d&&(d=sb.length);var e=!1,f={preventDefault:function(){e=!0,vb=wb=null}};return g(jb,function(a){null!=a.ctrl&&(K(a,f),a.ctrl.onunload=null)}),e?g(jb,function(a){a.ctrl.onunload=function(b){K(a,b)}}):jb=[],ub[d]&&c(ub[d].onunload)&&ub[d].onunload(f),sa(b,a,d,e)}function ua(a,b){sb.splice(b,1),ub.splice(b,1),tb.splice(b,1),Oa(a),pb.splice(ra(a),1)}function va(){0!==yb&&ab(yb),yb=_a(ya,xb)}function wa(){yb=0}function xa(a){yb&&!a?Ab():(ya(),yb=_a(wa,xb))}function ya(){vb&&(vb(),vb=null);for(var a=0;a<sb.length;a++){var b=sb[a],c=tb[a],d=ub[a];null!=d&&r.render(b,c.view?c.view(d,[d]):"")}wb&&(wb(),wb=null),yb=null,zb=new Date,lb("diff")}function za(){"none"===lb()?(ib--,lb("diff")):fa()}function Aa(){var a=$a[Ha.mode];"pathname"===Ha.mode&&(a+=$a.search),Cb!==Ia(a)&&Eb(a)}function Ba(b){a[b]=Aa,vb=La,a[b]()}function Ca(){return("pathname"===Ha.mode?"":$a.pathname)+Db[Ha.mode]}function Da(){a.history.pushState(null,Za.title,Db[Ha.mode]+Cb)}function Ea(){a.history.replaceState(null,Za.title,Db[Ha.mode]+Cb)}function Fa(b){a.history.pushState?(vb=La,wb=b?Ea:Da,Eb(Db[Ha.mode]+Cb)):($a[Ha.mode]=Cb,Eb(Db[Ha.mode]+Cb))}function Ga(a,b,c){arguments.length<3&&"object"!=typeof b&&(c=b,b=null);var d=Cb;Cb=a;var e,f,g=b||{},i=Cb.indexOf("?");if(i>=0){var j=Na(Cb.slice(i+1));h(g,function(a,b){j[b]=g[b]}),e=Ma(j),f=Cb.slice(0,i)}else e=Ma(b),f=Cb;if(e){var k=-1===f.indexOf("?")?"?":"&";Cb=f+k+e}return Fa(c||d===a)}function Ha(a,b,c,d){if(0===arguments.length)return Cb;if(3===arguments.length&&e(b))Eb=function(d){var e=Cb=Ia(d);if(!Ja(a,c,e)){if(Fb)throw new Error("Ensure the default route matches one of the routes defined in m.route");Fb=!0,Ha(b,!0),Fb=!1}},Ba("hash"===Ha.mode?"onhashchange":"onpopstate");else if(a.addEventListener||a.attachEvent)a.href=Ca()+d.attrs.href,a.addEventListener?(a.removeEventListener("click",Ka),a.addEventListener("click",Ka)):(a.detachEvent("onclick",Ka),a.attachEvent("onclick",Ka));else if(e(a))return Ga.apply(null,arguments)}function Ia(a){return a.slice(Db[Ha.mode].length)}function Ja(a,b,c){var d=c.indexOf("?");d>=0?(Bb=Na(c.substr(d+1,c.length)),c=c.substr(0,d)):Bb={};var e=Object.keys(b),f=e.indexOf(c);if(f>=0)return ta(a,b[e[f]]),!0;for(var h in b)if(cb.call(b,h)){if(h===c)return ta(a,b[h]),!0;var i=new RegExp("^"+h.replace(/:[^\/]+?\.{3}/g,"(.*?)").replace(/:[^\/]+/g,"([^\\/]+)")+"/?$");if(i.test(c))return c.replace(i,function(){for(var a=[],b=1,c=arguments.length-2;c>b;)a.push(arguments[b++]);var d=h.match(/:[^\/]+/g)||[];g(d,function(b,c){b=b.replace(/:|\./g,""),Bb[b]=decodeURIComponent(a[c])})}),ta(a,b[h]),!0}}function Ka(a){if(a=a||event,!a.ctrlKey&&!a.metaKey&&2!==a.which){a.preventDefault?a.preventDefault():a.returnValue=!1;var b,c=a.currentTarget||a.srcElement;for(b="pathname"===Ha.mode&&c.search?Na(c.search.slice(1)):{};c&&"A"!==c.nodeName.toUpperCase();)c=c.parentNode;ib=0,Ha(c[Ha.mode].slice(Db[Ha.mode].length),b)}}function La(){"hash"!==Ha.mode&&$a.hash?$a.hash=$a.hash:a.scrollTo(0,0)}function Ma(a,c){var e={},f=[];return h(a,function(a,h){var i=c?c+"["+h+"]":h;if(null===a)f.push(encodeURIComponent(i));else if(d(a))f.push(Ma(a,i));else if(db(a)){var j=[];e[i]=e[i]||{},g(a,function(a){e[i][a]||(e[i][a]=!0,j.push(encodeURIComponent(i)+"="+encodeURIComponent(a)))}),f.push(j.join("&"))}else a!==b&&f.push(encodeURIComponent(i)+"="+encodeURIComponent(a))}),f.join("&")}function Na(a){if(!a)return{};"?"===a[0]&&(a=a.slice(1));var b=a.split("&"),c={};return g(b,function(a){var b=a.split("="),d=decodeURIComponent(b[0]),e=2===b.length?decodeURIComponent(b[1]):null;null!=c[d]?(db(c[d])||(c[d]=[c[d]]),c[d].push(e)):c[d]=e}),c}function Oa(a){var c=ra(a);na(a.childNodes,qb[c]),qb[c]=b}function Pa(a,b,c,d){return k(a)?a.then(function(a){Pa(a,b,c,d)},function(a){Pa(a,c,c,d)}):b.call(d,a)}function Qa(a,d){function e(a){r=a}function f(a){a.resolve(r)}function h(a){a.reject(r)}function i(a){return u!==h&&a(r),a}function j(a){t.push(a)}function l(a,b){var c=Ra().resolve(a()).promise;return b!==h&&c(r),c.then(b)}function m(a){u=a,g(t,a),n=q=null}function n(a,b){Pa(a,function(a){r=a,m(b===Ib?f:h)},function(a){r=a,m(h)})}function o(a,b){var c=0;try{return a.then(function(a){c++||q(Gb,a,b)},function(a){c++||q(Hb,a,b)})}catch(d){return Ra.onerror(d),q(Hb,d,b)}}function p(b,e,f){try{e===Gb&&c(a)?b=a(b):e===Hb&&c(d)&&(b=d(b),e=Gb)}catch(g){return Ra.onerror(g),n(g,Jb)}return b===f?n(TypeError(),Jb):n(b,e===Gb?Ib:Jb)}function q(a,b,c){var d;try{d=k(b)}catch(e){return Ra.onerror(e),q(Hb,e,c)}return a===Hb&&Ra.onerror(b),d?o(b,c):p(b,a,c)}var r,s=this,t=[],u=j;s.resolve=function(a){return u===j&&q(Gb,a,s),s},s.reject=function(a){return u===j&&q(Hb,a,s),s},s.promise=function(a){return arguments.length&&Pa(a,e,e),u!==h?r:b},s.promise.then=function(a,b){var c=new Qa(a,b);return u(c),i(c.promise)},s.promise["catch"]=function(a){return s.promise.then(null,a)},s.promise["finally"]=function(a){return s.promise.then(function(){return l(a,function(){return r})},function(){return l(a,function(){throw r})})}}function Ra(){return new Qa}function Sa(a){return a instanceof EvalError||a instanceof RangeError||a instanceof ReferenceError||a instanceof SyntaxError||a instanceof TypeError||a instanceof URIError}function Ta(){return"mithril_callback_"+(new Date).getTime()+"_"+Math.round(1e16*Math.random()).toString(36)}function Ua(c){var d=Ta(),e=Za.createElement("script");a[d]=function(f){e.parentNode.removeChild(e),c.onload({success:!0,target:{responseText:f}}),a[d]=b},e.onerror=function(){return e.parentNode.removeChild(e),c.onerror({success:!1,target:{status:500,responseText:'{"error": "Error making jsonp request"}'}}),a[d]=b,!1},e.onload=function(){return!1},e.src=c.url+(c.url.indexOf("?")>0?"&":"?")+(c.callbackKey||"callback")+"="+d+"&"+Ma(c.data||{}),Za.body.appendChild(e)}function Va(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===this.readyState&&(this.status>=200&&this.status<300?b.onload({success:!0,target:this}):b.onerror({success:!1,target:this}))},b.serialize===JSON.stringify&&b.data&&"GET"!==b.method&&d.setRequestHeader("Content-Type","application/json; charset=utf-8"),b.deserialize===JSON.parse&&d.setRequestHeader("Accept","application/json, text/*"),c(b.config)){var f=b.config(d,b);null!=f&&(d=f)}var g;if(g="GET"!==b.method&&b.data?b.data:"",g&&!e(g)&&!(g instanceof a.FormData))throw new Error("Request data should be either be a string or FormData. Check the `serialize` option in `m.request`");return d.send(g),d}function Wa(a){return"JSONP"===a.dataType?Ua(a):Va(a)}function Xa(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=Ma(b);a.url+=e?d+e:""}else a.data=c(b);return a}function Ya(a,b){var c=a.match(/:[a-z]\w+/gi);return c&&b&&g(c,function(c){var d=c.slice(1);a=a.replace(c,b[d]),delete b[d]}),a}r.version=function(){return"v0.2.1"};var Za,$a,_a,ab,bb={}.toString,cb={}.hasOwnProperty,db=Array.isArray||function(a){return"[object Array]"===bb.call(a)};i(a),r.deps=function(b){return i(a=b||a),a},r.prop=function(a){return k(a)?m(a):j(a)},r.component=q;var eb=1,fb=2,gb=3,hb=!1,ib=0,jb=[],kb=!1;r.redraw=function(a){if(!kb){kb=!0,a&&(hb=!0);try{xa(a)}finally{kb=hb=!1}}};var lb=r.redraw.strategy=r.prop();r.startComputation=ea,r.endComputation=fa;var mb=function(){try{return Za.createRange().createContextualFragment("x"),function(a,b){a.appendChild(Za.createRange().createContextualFragment(b))}}catch(a){return function(a,b){a.insertAdjacentHTML("beforeend",b)}}}(),nb=Za.createElement("span"),ob={appendChild:function(a){Za.documentElement&&Za.documentElement!==a?Za.replaceChild(a,Za.documentElement):Za.appendChild(a),this.childNodes=Za.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},pb=[],qb={};r.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render exists.");var e,f=[],h=ra(a),i=a===Za;e=i||a===Za.documentElement?ob:a,i&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),qb[h]===b&&na(e.childNodes),d===!0&&Oa(a),qb[h]=x(w(e,null,b,b,c,qb[h],!1,0,null,b,f)),g(f,function(a){a()})},r.trust=function(a){return a=new String(a),a.$trusted=!0,a};var rb,sb=[],tb=[],ub=[],vb=null,wb=null,xb=16;r.mount=r.module=ta;var yb=0,zb=0,Ab=_a===a.requestAnimationFrame?va:function(){+new Date-zb>xb&&va()};r.withAttr=function(a,b,c){return function(d){d=d||event;var e,f=d.currentTarget||this;e=a in f?f[a]:f.getAttribute(a),b.call(c||this,e)}};var Bb,Cb,Db={pathname:"",hash:"#",search:"?"},Eb=f,Fb=!1;r.route=Ha,Ha.param=function(a){if(!Bb)throw new Error("You must call m.route(element, defaultRoute, routes) before calling mroute.param()");return a?Bb[a]:Bb},Ha.mode="search",Ha.buildQueryString=Ma,Ha.parseQueryString=Na;var Gb=1,Hb=2,Ib=3,Jb=4;return r.deferred=Ra,Ra.prototype=Qa.prototype,Ra.prototype.constructor=Ra,Ra.onerror=function(a){if(Sa(a))throw ib=0,a},r.sync=function(a){function b(a,b){return e[a]=b,0===--d&&(c.promise(e),c[f](e)),b}var c=new Qa,d=a.length,e=new Array(d),f="resolve";return a.length>0?g(a,function(a,c){a.then(function(a){return b(c,a)},function(a){return f="reject",b(c,a)})}):c.resolve([]),c.promise},r.request=function(a){a.background!==!0&&ea();var b=Ra(),c=function(a){return a},d=c,e=function(a){return a.responseText};return a.dataType&&"JSONP"===a.dataType.toUpperCase()||(a.dataType="JSONP",c=a.serialize||JSON.stringify,d=a.deserialize||JSON.parse,e=a.extract||function(a){return a.responseText.length||d!==JSON.parse?a.responseText:null}),a.serialize=c,a.deserialize=d,a.method=(a.method||"GET").toUpperCase(),a.url=Ya(a.url,a.data),a=Xa(a,a.data,c),a.onload=a.onerror=function(c){c=c||event;var f,h=c.success;f=h?a.unwrapSuccess:a.unwrapError;try{var i=d(e(c.target,a));f&&(i=f(i,c.target)),h?(db(i)&&a.type?g(i,function(b,c){i[c]=new a.type(b)}):a.type&&(i=new a.type(i)),b.resolve(i)):b.reject(i)}catch(j){b.reject(j)}finally{a.background!==!0&&fa()}},Wa(a),b.promise(a.initialValue),b.promise},r});
//# sourceMappingURL=mithril.min.js.map