From 27938534267d81d3b2b5c8d876caacb7f8729076 Mon Sep 17 00:00:00 2001 From: Igor Kurganov Date: Mon, 29 Feb 2016 15:29:08 -0800 Subject: [PATCH 01/78] rebased & fixed the issue in the reverted code base. --- mithril.js | 1 + test/mithril.trust.js | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/mithril.js b/mithril.js index 7bf4a399..298b8bb8 100644 --- a/mithril.js +++ b/mithril.js @@ -507,6 +507,7 @@ } else if (editable) { // contenteditable nodes use `innerHTML` instead of `nodeValue`. editable.innerHTML = data + nodes = [].slice.call(editable.childNodes) } else { // was a trusted string if (nodes[0].nodeType === 1 || nodes.length > 1 || diff --git a/test/mithril.trust.js b/test/mithril.trust.js index 015cd318..48e22fa4 100644 --- a/test/mithril.trust.js +++ b/test/mithril.trust.js @@ -64,5 +64,18 @@ describe("m.trust()", function () { expect(root.innerHTML).to.equal("

©

©

©
") }) + // not sure that this goes here; not really an m.trust issue + it("caches children of editable on update", function () { + var root = document.createElement("table") + var t1 = m.trust("

fo

o") + var t2 = "foo" + + m.render(root, m("span", {contenteditable: false}, t1)) + m.render(root, m("span", {contenteditable: true}, t2)) + m.render(root, m("span", {contenteditable: false}, t1)) + + expect(root.childNodes[0].innerHTML).to.equal(t1.valueOf()) + }) + }) }) From 1d3af9d6902b0b7be4ae9b009e0106a450ac9c6e Mon Sep 17 00:00:00 2001 From: Igor Kurganov Date: Mon, 29 Feb 2016 16:15:04 -0800 Subject: [PATCH 02/78] moved test to proper file --- test/mithril.render.js | 12 ++++++++++++ test/mithril.trust.js | 13 ------------- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/test/mithril.render.js b/test/mithril.render.js index ec6ba1ce..043ac253 100644 --- a/test/mithril.render.js +++ b/test/mithril.render.js @@ -1549,5 +1549,17 @@ describe("m.render()", function () { expect(root.childNodes[0].innerHTML) .to.equal('') }) + + it("caches children of editable on update", function () { + var root = document.createElement("span") + var t1 = m.trust("

fo

o") + var t2 = "foo" + + m.render(root, m("span", {contenteditable: false}, t1)) + m.render(root, m("span", {contenteditable: true}, t2)) + m.render(root, m("span", {contenteditable: false}, t1)) + + expect(root.childNodes[0].innerHTML).to.equal(t1.valueOf()) + }) }) }) diff --git a/test/mithril.trust.js b/test/mithril.trust.js index 48e22fa4..015cd318 100644 --- a/test/mithril.trust.js +++ b/test/mithril.trust.js @@ -64,18 +64,5 @@ describe("m.trust()", function () { expect(root.innerHTML).to.equal("

©

©

©
") }) - // not sure that this goes here; not really an m.trust issue - it("caches children of editable on update", function () { - var root = document.createElement("table") - var t1 = m.trust("

fo

o") - var t2 = "foo" - - m.render(root, m("span", {contenteditable: false}, t1)) - m.render(root, m("span", {contenteditable: true}, t2)) - m.render(root, m("span", {contenteditable: false}, t1)) - - expect(root.childNodes[0].innerHTML).to.equal(t1.valueOf()) - }) - }) }) From d451def561beedf0187e0072f70a888a0ff90729 Mon Sep 17 00:00:00 2001 From: Gyandeep Singh Date: Sun, 17 Apr 2016 18:54:36 -0500 Subject: [PATCH 03/78] Update: Big Perf improvement for IE (fixes #199) --- mithril.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mithril.js b/mithril.js index b98d933a..2f66d2cc 100644 --- a/mithril.js +++ b/mithril.js @@ -861,6 +861,9 @@ // set attributes first, then create children var attrs = constructAttrs(data, node, namespace, hasKeys) + // add the node to its parent before attaching children to it + insertNode(parentElement, node, index) + var children = constructChildren(data, node, cached, editable, namespace, configs) @@ -884,7 +887,7 @@ controllers) } - if (isNew || shouldReattach === true && node != null) { + if (!isNew && shouldReattach === true && node != null) { insertNode(parentElement, node, index) } From 9ec3383c296bfdc83321e7d70979cb357436b965 Mon Sep 17 00:00:00 2001 From: Pat Cavit Date: Wed, 20 Apr 2016 23:45:50 -0700 Subject: [PATCH 04/78] Mount to document.body As brought up in #1019, mounting to the `document` can be problematic. Better to show mounting to `document.body` where things are a bit more straightforward. --- docs/getting-started.md | 66 +++++++++++++++++++---------------------- 1 file changed, 31 insertions(+), 35 deletions(-) diff --git a/docs/getting-started.md b/docs/getting-started.md index 7ee6f431..ca8c8444 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -377,28 +377,26 @@ The rest of the code can be implemented using idioms we already covered. The com ```javascript todo.view = function() { - return m("html", [ - m("body", [ - m("input", {onchange: m.withAttr("value", todo.vm.description), value: todo.vm.description()}), - m("button", {onclick: todo.vm.add}, "Add"), - m("table", [ - todo.vm.list.map(function(task, index) { - return m("tr", [ - m("td", [ - m("input[type=checkbox]", {onclick: m.withAttr("checked", task.done), checked: task.done()}) - ]), - m("td", {style: {textDecoration: task.done() ? "line-through" : "none"}}, task.description()), - ]) - }) - ]) + return [ + m("input", {onchange: m.withAttr("value", todo.vm.description), value: todo.vm.description()}), + m("button", {onclick: todo.vm.add}, "Add"), + m("table", [ + todo.vm.list.map(function(task, index) { + return m("tr", [ + m("td", [ + m("input[type=checkbox]", {onclick: m.withAttr("checked", task.done), checked: task.done()}) + ]), + m("td", {style: {textDecoration: task.done() ? "line-through" : "none"}}, task.description()), + ]) + }) ]) - ]); + ]; }; ``` Here are the highlights of the template above: -- The template is rendered as a child of the implicit `` element of the document. +- The template is rendered as a child of the document's ``. - The text input saves its value to the `todo.vm.description` getter-setter we defined earlier. - The button calls the `todo.vm.add` method when clicked. - The table lists all the existing to-dos, if any. @@ -411,11 +409,11 @@ Here are the highlights of the template above: So far, we've been using `m.render` to manually redraw after we made a change to the data. However, as I mentioned before, you can enable an [auto-redrawing system](auto-redrawing.md), by initializing the `todo` component via `m.mount`. ```javascript -//render the todo component inside the document DOM node -m.mount(document, {controller: todo.controller, view: todo.view}); +//render the todo component inside the body DOM node +m.mount(document.body, {controller: todo.controller, view: todo.view}); ``` -Mithril's auto-redrawing system keeps track of controller stability, and only redraws the view once it detects that the controller has finished running all of its code, including asynchronous AJAX payloads. Likewise, it intelligently waits for asynchronous services inside event handlers to complete before redrawing. +Mithril's auto-redrawing system keeps track of controller stability, and only redraws the view once it detects that the controller has finished running all of its code, including asynchronous AJAX payloads. Likewise, it intelligently waits for asynchronous services inside event handlers to complete before redrawing. You can learn more about how redrawing heuristics work [here](auto-redrawing.md). @@ -475,26 +473,24 @@ todo.controller = function() { //here's the view todo.view = function() { - return m("html", [ - m("body", [ - m("input", {onchange: m.withAttr("value", todo.vm.description), value: todo.vm.description()}), - m("button", {onclick: todo.vm.add}, "Add"), - m("table", [ - todo.vm.list.map(function(task, index) { - return m("tr", [ - m("td", [ - m("input[type=checkbox]", {onclick: m.withAttr("checked", task.done), checked: task.done()}) - ]), - m("td", {style: {textDecoration: task.done() ? "line-through" : "none"}}, task.description()), - ]) - }) - ]) + return [ + m("input", {onchange: m.withAttr("value", todo.vm.description), value: todo.vm.description()}), + m("button", {onclick: todo.vm.add}, "Add"), + m("table", [ + todo.vm.list.map(function(task, index) { + return m("tr", [ + m("td", [ + m("input[type=checkbox]", {onclick: m.withAttr("checked", task.done), checked: task.done()}) + ]), + m("td", {style: {textDecoration: task.done() ? "line-through" : "none"}}, task.description()), + ]) + }) ]) - ]); + ] }; //initialize the application -m.mount(document, {controller: todo.controller, view: todo.view}); +m.mount(document.body, {controller: todo.controller, view: todo.view}); ``` From 577808c6df6cf68f917712d57bddfec4ef116b84 Mon Sep 17 00:00:00 2001 From: Demian Ferreiro Date: Thu, 21 Apr 2016 12:36:45 -0300 Subject: [PATCH 05/78] Add tag to Getting Started guide This makes the code on the Summary section a working single-file application. Without the tag the code failed with "Error: Please ensure the DOM element exists before rendering a template into it" because the + + ``` -Yes, this is valid HTML 5! According to the specs, the ``, `` and `` tags can be omitted, but their respective DOM elements will still be there implicitly when a browser renders that markup. +Yes, this is valid HTML 5! According to the specs, the `` and `` tags can be omitted, but their respective DOM elements will still be there implicitly when a browser renders that markup. --- @@ -426,6 +428,7 @@ Here's the application code in its entirety: ```markup + + ``` This example is also available as a [jsFiddle](http://jsfiddle.net/fbgypzbr/16/). From af0a63f850ad14e9ee378add5bf97d0e666c3214 Mon Sep 17 00:00:00 2001 From: mtwtkman Date: Tue, 26 Apr 2016 20:58:20 +0900 Subject: [PATCH 06/78] Bump to v0.2.4 for m.version --- archive/v0.2.4/mithril.js | 2 +- archive/v0.2.4/mithril.min.js | 2 +- archive/v0.2.4/mithril.min.js.map | 2 +- archive/v0.2.4/mithril.min.zip | Bin 106361 -> 106980 bytes mithril.js | 2 +- mithril.min.js | 2 +- mithril.min.js.map | 2 +- 7 files changed, 6 insertions(+), 6 deletions(-) diff --git a/archive/v0.2.4/mithril.js b/archive/v0.2.4/mithril.js index b98d933a..7ddcda53 100644 --- a/archive/v0.2.4/mithril.js +++ b/archive/v0.2.4/mithril.js @@ -14,7 +14,7 @@ "use strict" m.version = function () { - return "v0.2.3" + return "v0.2.4" } var hasOwn = {}.hasOwnProperty diff --git a/archive/v0.2.4/mithril.min.js b/archive/v0.2.4/mithril.min.js index b7c802a3..1d4f0eb7 100644 --- a/archive/v0.2.4/mithril.min.js +++ b/archive/v0.2.4/mithril.min.js @@ -4,5 +4,5 @@ http://mithril.js.org (c) 2014-2016 Leo Horie License: MIT */ -!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m),r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return(n||g===!0&&null!=o)&&q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null==c||c[d]!==b[d])&&(a.style[d]=b[d]);for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{("input"!==g||a[b]!==e)&&(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c];return delete b[c],d})),a}k.version=function(){return"v0.2.3"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); +!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m),r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return(n||g===!0&&null!=o)&&q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c];return delete b[c],d})),a}k.version=function(){return"v0.2.4"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); //# sourceMappingURL=mithril.min.js.map \ No newline at end of file diff --git a/archive/v0.2.4/mithril.min.js.map b/archive/v0.2.4/mithril.min.js.map index edbd6bab..417aca20 100644 --- a/archive/v0.2.4/mithril.min.js.map +++ b/archive/v0.2.4/mithril.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file +{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file diff --git a/archive/v0.2.4/mithril.min.zip b/archive/v0.2.4/mithril.min.zip index 10f42242a67a4f880c26bd7b3c7d6821701a8e60..ea8b3ff9db7673174ffd2472c2994da6f3975b9a 100644 GIT binary patch delta 10184 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 delta 9412 zcma)C3v^rMeb05`L{3Qpc{(qmI3%@V#c#`YLP+nulI3gVN|qH_aX49#ZCR4_uwJ$$ z(_p%ec7t`a{h+r{AcfEZrIZ$tnMa|#+jWJ$b~?^Z*RE^J>ADWKoobaF$mHN48!9F2=dT@v05O1z3DN`a--?uh? zbn4jnVL+zD!}U$}DaV;3g;;5}khM=Yr&^<>QlaRKI}^<*XVl?vrmFu|fA5a=UGi{Kq-&j5!<=GucuyI~%J$Y5(r!%)q#0p!(Be z->s`YrrogSl5A|=t`-W>O7oLWkg<+^^w3YSRvZ>s*z|E40| z8tzk))z+ZjwyKm!7OR!9*BiEkRW<4iscLxG=~2~S(CJn6>FOU(OxNx3scJx_RUa1d z$B^HQth@T3v3rzL({5V#bZdO3s1fKCEg7erCNO&Gui39Tfyg(nJ3%Ufqn?~jsEiJs z;6fRKQ%yP>nAd10S{5ydgPSXwGe8@CZq=CP4P#Oy6E7;AqAj^w)0q;X@G_Ie0JAYp z!bB$MyT{Ed9zLi#gQ_p##$PqWpus`$7s=gQO3Xb`2KV3K!1)0t2)%!b~Vp;YnR@qZQzt5ih5XtQiGfeRy76nvOe02`V8q?V>Bthxi_d z0Yj&+!BP4?A?{A^sLQ#0-I+(~4lZkk09~xQXjv+yKp#3D zh_`NC*mECW?B%UsfKZq$Ml)TPnLzbcjj`Ls8 z0dX(Rg;cY{T_XX;=!lOkhbck+%Rm*E0!ov#p4H;wX#QveFa%U1ry1fS`H!s`CUn6- z^|C@xv30SPc#>kec*K^Im!1?46<@badx$`AUUb~LU3{&ywoVO;58k@9KA@UukN8>X zCl^j6tKXVU+Zv>%5_&}(yKaZA#&lUkuiI-Ig=pR`cS_uJU1)uWm+%_&$J^-@zrJqA z_AXuusbu~>rw+qn-!h6~&tmJEA(H2KzItNu)M{Inbpn3>@&?PJ&S))sGAwVJ)F92< zV6~_usfS%J-0va739@TM2FM%72ydHLeCnf<(`vYfWjAN!N0vDX&hSS@lUj-f2%;n{ z-A}lq^Q^v!G@lE^-Ap#aizZ)uMk_EzU#HtSrs{JZar$G2raWCbZp5uJs!sNzoR%R| zS1Ve(n?55WL?ExRcc--S1@^HxK|4OllMf7&-7GLrtY<*#Fa|yctFM1-L*1njvQN|5 z;-NT#04LV}>GtY@8=qQrxjK<1-Kv2CdxUS6bsP2op`O-1b+g`K)WR3vOpsL_*Rt;b znrEOf!l1Y5qIh#>U39K`-_19yYyj#A;WtEwXskyBD7l4SXjs=N5_t#2Euw9wv=pP} z1`DJZHN@5t6F(MPch@#LSWD)`Cm{C5#bviN+OQ=bI&RrK#OHKKL=n}5Hp~+-($Ls2 zAr9~rPO(x0pbSMDvqMBJkYul*3#0AI>o`yJl}+HA3-)aLADtzva*7`KC-_ssO!_ZOKiB!Wy`V!NBe|% z+mU^p9IVXVBaYp*Q>^!VA+JSVm z7E#A~^@7OWZnqWL7Q=1g)3@t3NiR?mKfQhL0e%R{5Y7U}ScwrCFH6i?U{*ALc2CDU z^%{7)Uj5FDrs@OW9oKG_Isb%;V*ayxl#{~xta+%#Pr~JqBw>_gtu#mn$8xN?P@cR~ zFK9(xjdY32?y#?q(utJD+?XYC?2f(t?_44x6&=P!DG*}dVwR87o}SR>nGv%~+;&H+ zqmv&Z{RZEVjM;2^3z|!wqcE)dPl|uNWAjc5MJjF2=x_icQ67W=>qBuv?76dXu}j)b z{5t7jz$J|IajNr_aI`%oBy z2_8Ku=`tsr^}sYTES|V?@0J=02_A%SzB#u`ym9AMN>a4mwO{LbmscR>otmI)P!sH5 z@A8+B>RI-e*dKfkMUV{VA_6eJ%y zNoS{uqWNrFL(UIJL-d*v*PPwwPsmW^=1Y)4&Sj9svRa2!DN;Jz!AJPj;0zhHXMuG> zOsk`;cn{r$Tg{5^o!zPQihnt~y94U zM0yyb$0eU2FYtT%Oo|4`{V=0b{c^3vBz^bml*x@Y(Rt6lP~49Qg2bh(UM^;JV}Z=w zt+uo4$2HtAp-cLmF;z`ocuY|M3&ACP>T$h`j=Er-EQdFY9T(c=?F*QF{_UJm<9a2Z?B~MXbHIX}t`!!8T6zL2=~XE1Kq{ zBO>DBF3oP19pw*TLZnDDVTupm+t-+4GciiTWEej9hrGBp@x6O@ZhPluhO4@y)+Sbd zzUzbxMUh@EQUWf z|3qVsGmmF>fcfYa*Wcf`o`YYlK=8T57w*^kWwcOLQgD<_+lR&|)EB+IFe0yNi~z@= z3Semb-N5e!>k>yE{4-nj1ZgIc65oDszb!2vGUBZVTY9^Q8}!bmI`IF;I?^q!{!*!- zOgF6$S3Kg?FCA$@MdQVcfE;w#m#0EiAL6?0g0AwS=b?j5ZF~$S^}iqc@Iw!%T@*`I zUpGY{?~sguG{fi{OxLWD<8=t7Av6&JHX6#n-_tTM&x+KSPdZ9L)-JByv!Ks%>UAm&C8XyvK#COEqiJi-t@c<1!Ex6vs#mfKb5?_nsiGD2wU-3=z`x zPN6=$v!{cQdgrtj)@@*tt}_g56Yy$N9haS1;9Ug7Cm-IlxtFbwlJPRiZt>W|ed`#d zXNvHSw20q5`~f8=)JM0jh7A_@=fo>tZC(!=pco;6V3%UmBOi2SX`rG;=2_Mt zDj|vvRLiu29hch6-l& z!KCtvS2FsEF3M-nMXeY|I**Zxu%}PXiOiCH@nV@C zR%atr1jWaV3f0+(akW4ZdqNIF!(gGsKZ-64(RL6+0d^T^+TSOqFWA?IWuZ)Uq3)k% z=H>Sk7wwej^kHd-;I{Ah@peko`e2Wbj9ZRo7f2A8agyymlskzNYGmdli5KV)M<3fU z*%Bck^;2y;ZwTWt1(|2G64@^7RW>x?_(>;f$LJhev{_q}u%0=+2Ane4ub3)ayXEa%ZvNoZgQ*UoQsGU(lAe>jSY`~@iT;K9$sWo(Ui5X8A}GYx z`Wjb&d?U~+lqdJt=9qgAI`k(4A3$h@EuG{xI*4f@z)!FRMk!8tdAbrXqL6b~WwS#E z0|0f7TU#`GOHX>kC~kNZM=TIk9nJ^ZM$d6#?f)90Q?%itFWSfXCjt-y4Riuw{_NKd zEOP$E^aX16v7OZ{l!}H6x75u;F*<_KLL%3C_-TWL4sr{DQ7U#ukb!V4!YOL`7^MhQ z)QlibH6Jnn3~myByb-btPJ79};3Dv^siX)$bzl)g9U=tO_=vFT(e&VOkL*-JFejpo z84*SKPV#g$goc93wG;=QuG$c%wu)&cv`1q;jBt2wlo8FrUqS|o3PV@~!#-4VL4VP-xmTcl`?#;H8vF$#J{y!66eTY-+LW?sDU!d4Rx4w*a?D9MBkp`DWb5H%1qHqN(jN^h zPZasdDK<%?gMtb4TO8mQe)#UABZh}hVth$YgSfvtzOh@0izmME?7m`T z3NYz_in0#UzoStIb7(1xyS{nIHZL2mviQL_Td%2gB>5<5PximC9j|KED(*PX4-vyj zN#vn4^&|^n%iy9Yz~!!AO>tEgWZw)VD2C{xNfG@kV=+xT<7}J8JkPu$ZCoG`k8soR zPM#1<A#`2Otnj}PsMcIKZW6ogHkt38SE)m+}xmv)*Z{C)d5N)R2MKSR${{|FNC@SE= zxIP0x>zQwbY~5}sEufag&cFVxt)Cm%a8m5}_WTvHp3b__VFGsup$>HAh^JQhqGUb) z?W@+6X;zI9CfQcyQ!nq>R~RF~gREPc?7~k^WmsF@a+JJeATN%-+`5Q!A-q-7Wn`Qm zBMedb1}})_2S^ioH#E#U+6cb_snX^mdtEI=GnP9?K|lg&|QO|B#t@N;E@< z0JO@Z_)2s;J+tBr5QU5vASztC%7edj@??%Ffex4s)+v!yu~O&0K51^Y33 zQ&6Xy`Ze6og*=lc|b=a@1{fJ?uH50h?$X4Zr zjg!$*)M=kf#^#;&iReTkHfdeES=nPN%EhAf^fqPx8oASIB3JqmQqKQH#b}Vkyr5hk)^*GR(@$y+)Gc5Dfg_l zcDj`YD_91pmrZ5Ul68%8)@EIq#C@DjD%O5U z*>ZVdX0{YN?OPar}ah-qBZ7~cFV{smlLG}*3EgvVLhH#TCHE^ zl}>AC0Y}^grOhf8lzsJQ2%+`HjM8}N+X>LJW%n!Fte+H=%ii}kdP{Xh<;N?nU(6|2 zSZn8%UQ3%-c3aoXgUv@PioMRU*1BsRjK46i9JJn;SN5)_pVOpbl_DeFj2dl~F8 zXJukf;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m),r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return(n||g===!0&&null!=o)&&q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null==c||c[d]!==b[d])&&(a.style[d]=b[d]);for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{("input"!==g||a[b]!==e)&&(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c];return delete b[c],d})),a}k.version=function(){return"v0.2.3"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); +!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m),r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return(n||g===!0&&null!=o)&&q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c];return delete b[c],d})),a}k.version=function(){return"v0.2.4"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); //# sourceMappingURL=mithril.min.js.map \ No newline at end of file diff --git a/mithril.min.js.map b/mithril.min.js.map index edbd6bab..417aca20 100644 --- a/mithril.min.js.map +++ b/mithril.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file +{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file From 6face740f59fc9406c555116f2bb9ce52711bff3 Mon Sep 17 00:00:00 2001 From: Adam Gschwender Date: Wed, 4 May 2016 20:25:35 -0400 Subject: [PATCH 07/78] Force redirect when pushState encounters an error Version 9.1 of Safari allows a maximum of 100 calls to pushState. Subsequent calls to pushState throw a SecurityError: DOM Exception 18: An attempt was made to break through the security policy of the user agent. --- mithril.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/mithril.js b/mithril.js index 2f66d2cc..607809a0 100644 --- a/mithril.js +++ b/mithril.js @@ -1617,8 +1617,16 @@ var method = replaceHistory ? "replaceState" : "pushState" computePreRedrawHook = setScroll computePostRedrawHook = function () { - global.history[method](null, $document.title, - modes[m.route.mode] + currentRoute) + try { + global.history[method](null, $document.title, + modes[m.route.mode] + currentRoute) + } catch (err) { + // In the event of a pushState or replaceState failure, + // fallback to a standard redirect. This is specifically + // to address a Safari security error when attempting to + // call pushState more than 100 times. + $location[m.route.mode] = currentRoute + } } redirect(modes[m.route.mode] + currentRoute) } else { From db17958f0b96204ee8d97c882323d93c32564be2 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 5 May 2016 13:12:36 -0400 Subject: [PATCH 08/78] #691 sync input if user-set DOM value --- mithril.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mithril.js b/mithril.js index 2f66d2cc..a030481b 100644 --- a/mithril.js +++ b/mithril.js @@ -1090,7 +1090,7 @@ tag, namespace ) { - if (!(attrName in cachedAttrs) || (cachedAttr !== dataAttr)) { + if (!(attrName in cachedAttrs) || (cachedAttr !== dataAttr) || ($document.activeElement === node)) { cachedAttrs[attrName] = dataAttr try { return setSingleAttr( From dee64503db769c561cfef98fa10de4ed9a6ef64b Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Fri, 6 May 2016 11:49:00 -0400 Subject: [PATCH 09/78] #1039 ignore url interpolations without mapped values --- mithril.js | 2 +- mithril.min.js | 2 +- mithril.min.js.map | 2 +- test/mithril.request.js | 6 ++++++ 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/mithril.js b/mithril.js index a030481b..c26b2557 100644 --- a/mithril.js +++ b/mithril.js @@ -2113,7 +2113,7 @@ if (data) { url = url.replace(/:[a-z]\w+/gi, function (token){ var key = token.slice(1) - var value = data[key] + var value = data[key] || token delete data[key] return value }) diff --git a/mithril.min.js b/mithril.min.js index b7c802a3..95a7835c 100644 --- a/mithril.min.js +++ b/mithril.min.js @@ -4,5 +4,5 @@ http://mithril.js.org (c) 2014-2016 Leo Horie License: MIT */ -!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m),r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return(n||g===!0&&null!=o)&&q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null==c||c[d]!==b[d])&&(a.style[d]=b[d]);for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{("input"!==g||a[b]!==e)&&(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c];return delete b[c],d})),a}k.version=function(){return"v0.2.3"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); +!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m);q(d,o,f);var r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return n||g!==!0||null==o||q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c&&va.activeElement!==a)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c]||a;return delete b[c],d})),a}k.version=function(){return"v0.2.3"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); //# sourceMappingURL=mithril.min.js.map \ No newline at end of file diff --git a/mithril.min.js.map b/mithril.min.js.map index edbd6bab..60745a75 100644 --- a/mithril.min.js.map +++ b/mithril.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file +{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":";;;;;;CAAC,SAAWA,EAAQC,GACnB,YAEA,IAAIC,GAAID,EAAQD,EACM,iBAAXG,SAAiC,MAAVA,QAAkBA,OAAOC,QAC1DD,OAAOC,QAAUF,EACW,kBAAXG,SAAyBA,OAAOC,IACjDD,OAAO,WAAc,MAAOH,KAE5BF,EAAOE,EAAIA,GAGQ,mBAAXK,QAAyBA,OAASC,KAAM,SAAUR,EAAQS,GACnE,YASA,SAASC,GAAWC,GACnB,MAAyB,kBAAXA,GAGf,QAASC,GAASD,GACjB,MAA6B,oBAAtBE,GAAKC,KAAKH,GAGlB,QAASI,GAASJ,GACjB,MAA6B,oBAAtBE,GAAKC,KAAKH,GAOlB,QAASK,MAyBT,QAASC,GAAWC,GACnBC,GAAYD,EAAKE,SACjBC,GAAYH,EAAKI,SACjBC,GAAwBL,EAAKM,sBAAwBN,EAAKO,aAC1DC,GAAyBR,EAAKS,uBAAyBT,EAAKU,WAiB7D,QAASC,GAAcC,EAAMC,GAK5B,IAJA,GAEIC,GAFAC,KACAC,EAAS,uCAGLF,EAAQE,EAAOC,KAAKJ,IAC3B,GAAiB,KAAbC,EAAM,IAAaA,EAAM,GAC5BF,EAAKC,IAAMC,EAAM,OACX,IAAiB,MAAbA,EAAM,GAChBF,EAAKM,MAAMC,GAAKL,EAAM,OAChB,IAAiB,MAAbA,EAAM,GAChBC,EAAQK,KAAKN,EAAM,QACb,IAAoB,MAAhBA,EAAM,GAAG,GAAY,CAC/B,GAAIO,GAAO,+BAA+BJ,KAAKH,EAAM,GACrDF,GAAKM,MAAMG,EAAK,IAAMA,EAAK,IAAM,GAInC,MAAON,GAGR,QAASO,GAAmBC,EAAMC,GACjC,GAAIC,GAAWD,EAAWD,EAAKG,MAAM,GAAKH,CAE1C,OAAwB,KAApBE,EAASE,QAAgBC,GAAQH,EAAS,IACtCA,EAAS,GAETA,EAIT,QAASI,GAAYC,EAAQZ,EAAOH,GACnC,GAAIgB,GAAY,SAAWb,GAAQ,QAAU,WAE7C,KAAK,GAAIc,KAAYd,GAChBe,GAAOrC,KAAKsB,EAAOc,KAClBA,IAAaD,GACI,MAAnBb,EAAMc,IACc,KAApBd,EAAMc,IACPjB,EAAQK,KAAKF,EAAMc,IAEnBF,EAAOE,GAAY,IAEnBF,EAAOE,GAAYd,EAAMc,GAKxBjB,GAAQY,SAAQG,EAAOC,GAAahB,EAAQmB,KAAK,MAUtD,QAASlD,GAAE6B,EAAKsB,GAGf,IAAK,GAFDZ,MAEKa,EAAI,EAAGT,EAASU,UAAUV,OAAYA,EAAJS,EAAYA,IACtDb,EAAKa,EAAI,GAAKC,UAAUD,EAGzB,IAAI1C,EAASmB,GAAM,MAAOyB,IAAazB,EAAKU,EAE5C,KAAK1B,EAASgB,GACb,KAAM,IAAI0B,OAAM,8DAIjB,IAAIf,GAAoB,MAATW,GAAiBzC,EAASyC,MACtC,OAASA,IAAS,QAAUA,IAAS,WAAaA,IAEjDjB,EAAQM,EAAWW,KACnBvB,GACHC,IAAK,MACLK,SACAO,SAAUH,EAAmBC,EAAMC,GAIpC,OADAK,GAAYjB,EAAKM,MAAOA,EAAOP,EAAcC,EAAMC,IAC5CD,EAGR,QAAS4B,GAAQC,EAAMC,GACtB,IAAK,GAAIN,GAAI,EAAGA,EAAIK,EAAKd,SAAWe,EAAED,EAAKL,GAAIA,QAKhD,QAASO,GAAQF,EAAMC,GACtBF,EAAQC,EAAM,SAAUvB,EAAOkB,GAC9B,OAAQlB,EAAQA,GAASA,EAAMA,QACjB,MAAbA,EAAM0B,KACNF,EAAExB,EAAOkB,KAIZ,QAASS,GAAaC,GAIrB,IACC,GAAY,MAARA,GAAmC,MAAnBA,EAAKC,WAAoB,MAAOD,GACnD,MAAOE,IAGT,MAAO,GAIR,QAASC,GAAeC,EAAeC,EAAOC,EAAON,GACpD,IACCO,EAAWH,EAAeC,EAAOC,GACjCD,EAAMG,UAAYR,EACjB,MAAOE,KAMV,QAASO,GAAQd,GAEhB,IAAK,GAAIL,GAAI,EAAGA,EAAIK,EAAKd,OAAQS,IAC5BR,GAAQa,EAAKL,MAChBK,EAAOA,EAAKe,OAAOC,SAAUhB,GAG7BL,IAGF,OAAOK,GAGR,QAASY,GAAWH,EAAeQ,EAAMN,GACxCF,EAAcS,aAAaD,EAC1BR,EAAcU,WAAWR,IAAU,MAOrC,QAASS,GAAiBf,EAAMgB,EAAUC,EAAQb,GACjDP,EAAQG,EAAM,SAAUF,EAAKR,GAC5B0B,EAASlB,EAAMA,EAAIA,KAAOkB,EAASlB,IAClCoB,OAAQC,GACRb,MAAOhB,EACP8B,KAAMJ,EAASlB,GAAKQ,MACpBe,QAASJ,EAAOK,MAAMN,EAASlB,GAAKQ,QACnCnD,GAAUoE,cAAc,SACrBL,OAAQM,GAAWlB,MAAOhB,IAGhC,IAAImC,KACJ,KAAK,GAAIC,KAAQV,GACZ7B,GAAOrC,KAAKkE,EAAUU,IACzBD,EAAQnD,KAAK0C,EAASU,GAIxB,IAAIC,GAAUF,EAAQG,KAAKC,GACvBC,EAAY,GAAIC,OAAMd,EAAOpC,OAiCjC,OA/BAiD,GAAUR,MAAQL,EAAOK,MAAM1C,QAE/Bc,EAAQiC,EAAS,SAAUK,GAC1B,GAAI1B,GAAQ0B,EAAO1B,KAKnB,IAJI0B,EAAOd,SAAWe,KACrBC,EAAMjB,EAAOX,GAAOgB,MAAOL,EAAOX,IAClCwB,EAAUK,OAAO7B,EAAO,IAErB0B,EAAOd,SAAWM,GAAW,CAChC,GAAIY,GAAQjF,GAAUoE,cAAc,MACpCa,GAAMtC,IAAME,EAAKM,GAAOlC,MAAM0B,IAC9BS,EAAWH,EAAegC,EAAO9B,GACjCwB,EAAUK,OAAO7B,EAAO,GACvBlC,OAAQ0B,IAAKE,EAAKM,GAAOlC,MAAM0B,KAC/BwB,OAAQc,KAETN,EAAUR,MAAMhB,GAAS8B,EAG1B,GAAIJ,EAAOd,SAAWC,GAAM,CAC3B,GAAIkB,GAAgBL,EAAOX,QACvBiB,EAAelC,EAAcU,WAAWR,EACxCgC,KAAiBD,GAAmC,OAAlBA,GACrCjC,EAAcS,aAAawB,EAC1BC,GAAgB,MAElBR,EAAUxB,GAASW,EAAOe,EAAOZ,MACjCU,EAAUR,MAAMhB,GAAS+B,KAIpBP,EAGR,QAASS,GAASvC,EAAMiB,EAAQD,EAAUZ,GACzC,GAAIoC,GAAaxC,EAAKnB,SAAWoC,EAAOpC,MAWxC,OATK2D,IACJ3C,EAAQG,EAAM,SAAU5B,EAAOkB,GAC9B,GAAImD,GAAaxB,EAAO3B,EACxB,OAAOkD,GAAaC,GACnBA,EAAWrE,OACXqE,EAAWrE,MAAM0B,MAAQ1B,EAAM0B,MAI9B0C,EACIzB,EAAiBf,EAAMgB,EAAUC,EAAQb,GAEzCa,EAIT,QAASyB,GAAU1C,EAAMiB,EAAQK,GAIhC5B,EAAQM,EAAM,SAAU2C,EAAGrD,GACT,MAAb2B,EAAO3B,IAAYgC,EAAMhD,KAAKqC,MAAMW,EAAOL,EAAO3B,GAAGgC,SAM1D5B,EAAQuB,EAAOK,MAAO,SAAUV,EAAMtB,GACd,MAAnBsB,EAAKgC,YAAsBtB,EAAMuB,QAAQjC,GAAQ,GACpDsB,GAAOtB,IAAQK,EAAO3B,OAIpBU,EAAKnB,OAASoC,EAAOpC,SAAQoC,EAAOpC,OAASmB,EAAKnB,QACtDoC,EAAOK,MAAQA,EAGhB,QAASwB,GAAe9C,GACvB,GAAI+C,GAAO,CACXlD,GAAQG,EAAM,WAMb,MALAN,GAAQM,EAAM,SAAU5B,IAClBA,EAAQA,GAASA,EAAMA,QAAuB,MAAbA,EAAM0B,MAC3C1B,EAAM0B,IAAM,cAAgBiD,OAGvB,IAIT,QAASC,GAAkBhD,EAAMiB,EAAQgC,GACxC,MAAIjD,GAAKjC,MAAQkD,EAAOlD,KAAY,EAEhCkF,EAAarB,OAAOxC,SACtB8D,OAAOC,KAAKlC,EAAO7C,OAAOwD,OAAOxC,QAC3B,EAGJY,EAAK5B,MAAMC,KAAO4C,EAAO7C,MAAMC,IAC3B,EAGJ2B,EAAK5B,MAAM0B,MAAQmB,EAAO7C,MAAM0B,KAC5B,EAGoB,QAAxB5D,EAAEkH,OAAOC,YACJpC,EAAOqC,eAAiBrC,EAAOqC,cAAcC,UAAW,EAGrC,SAAxBrH,EAAEkH,OAAOC,WACLpC,EAAOqC,eAAiBrC,EAAOqC,cAAcC,UAAW,GAGzD,EAGR,QAASC,GAAoBxD,EAAMiB,EAAQgC,GAEtCD,EAAkBhD,EAAMiB,EAAQgC,KAC/BhC,EAAOK,MAAMzC,QAAQqD,EAAMjB,EAAOK,OAElCL,EAAOqC,eACT5G,EAAWuE,EAAOqC,cAAcG,WACjCxC,EAAOqC,cAAcG,WAGlBxC,EAAOyC,aACVhE,EAAQuB,EAAOyC,YAAa,SAAUC,GACjCA,EAAWF,UACdE,EAAWF,UAAUG,eAAgB5G,OAO1C,QAAS6G,GAAmB7D,EAAM8D,GACjC,MAAI9D,GAAK5B,MAAM2F,MAAc/D,EAAK5B,MAAM2F,MACvB,QAAb/D,EAAKjC,IAAsB,6BACd,SAAbiC,EAAKjC,IAAuB,qCACzB+F,EAcR,QAASE,GAAwB/C,EAAQgD,EAAOP,GAC3CA,EAAY7E,SACfoC,EAAOgD,MAAQA,EACfhD,EAAOyC,YAAcA,EACrBhE,EAAQgE,EAAa,SAAUC,GAK9B,GAJIA,EAAWF,UAAYE,EAAWF,SAASS,OAC9CP,EAAWF,SAAWE,EAAWF,SAASS,MAGvCC,IAAmBR,EAAWF,SAAU,CAC3C,GAAIA,GAAWE,EAAWF,QAC1BE,GAAWF,SAAWzG,EACtB2G,EAAWF,SAASS,KAAOT,MAM/B,QAASW,GAA0BC,EAASrE,EAAMY,EAAM0D,EAAOrD,GAG9D,GAAIvE,EAAWsD,EAAK5B,MAAMmG,QAAS,CAClC,GAAIC,GAAUvD,EAAOqC,cAAgBrC,EAAOqC,iBAG5Ce,GAAQ/F,KAAK,WACZ,MAAO0B,GAAK5B,MAAMmG,OAAOzH,KAAKkD,EAAMY,GAAO0D,EAAOE,EACjDvD,MAKJ,QAASwD,GACRxD,EACAjB,EACA0E,EACAC,EACAb,EACAG,EACAI,EACAX,GAEA,GAAI9C,GAAOK,EAAOK,MAAM,EA2BxB,OAzBIqD,IACHC,EAAchE,EAAMZ,EAAKjC,IAAKiC,EAAK5B,MAAO6C,EAAO7C,MAAO0F,GAGzD7C,EAAOtC,SAAWkG,EACjBjE,EACAZ,EAAKjC,IACLtB,EACAA,EACAuD,EAAKrB,SACLsC,EAAOtC,UACP,EACA,EACAqB,EAAK5B,MAAM0G,gBAAkBlE,EAAO8D,EACpCZ,EACAO,GAGDpD,EAAOK,MAAMyD,QAAS,EAElBrB,EAAY7E,SACfoC,EAAOgD,MAAQA,EACfhD,EAAOyC,YAAcA,GAGf9C,EAGR,QAASoE,GAAuBhF,EAAMI,EAAeE,GACpD,GAAIgB,EACAtB,GAAKiF,SACR3D,EAAQ4D,EAAW9E,EAAeE,EAAON,IAEzCsB,GAASnE,GAAUgI,eAAenF,IAC5BI,EAAcgF,WAAYC,KAC/B9E,EAAWH,EAAekB,EAAM,GAAIhB,GAItC,IAAIW,EAWJ,OANCA,GAHmB,gBAATjB,IACO,gBAATA,IACS,iBAATA,GACC,GAAIA,GAAKsF,YAAYtF,GAErBA,EAGViB,EAAOK,MAAQA,EACRL,EAGR,QAASsE,GACRvF,EACAiB,EACAb,EACAsE,EACApE,EACAkF,GAEA,GAAIlE,GAAQL,EAAOK,KAyBnB,OAxBKoD,IAAYA,IAAavH,GAAUsI,gBACnCzF,EAAKiF,UACR/C,EAAMZ,EAAOL,GACbK,EAAQ4D,EAAW9E,EAAeE,EAAON,IACjB,aAAdwF,EAEVpF,EAAcsF,MAAQ1F,EACZ0E,EAEVA,EAASiB,UAAY3F,IAGK,IAAtBsB,EAAM,GAAGsE,UAAkBtE,EAAMzC,OAAS,GAC3CyC,EAAM,GAAGd,UAAUqF,OAClBvE,EAAM,GAAGd,UAAUqF,UACtB3D,EAAMjB,EAAOK,MAAOL,GACpBK,GAASnE,GAAUgI,eAAenF,KAGnCG,EAAeC,EAAekB,EAAM,GAAIhB,EAAON,KAGjDiB,EAAS,GAAIjB,GAAKsF,YAAYtF,GAC9BiB,EAAOK,MAAQA,EACRL,EAGR,QAAS6E,GACR7E,EACAjB,EACAM,EACAF,EACA2F,EACArB,EACAc,GAEA,MAAKvE,GAAOK,MAAMzC,OAEPoC,EAAO+E,YAAchG,EAAKgG,WAAaD,EAC1CR,EAAcvF,EAAMiB,EAAQb,EAAesE,EAAUpE,EAC3DkF,IAEOvE,EAAOK,MAAMyD,QAAS,EAAM9D,GAL7B+D,EAAuBhF,EAAMI,EAAeE,GASrD,QAAS2F,GAAiBC,GACzB,GAAIA,EAAKjB,SAAU,CAKlB,GAAIjH,GAAQkI,EAAKlI,MAAM,oBACvB,IAAa,MAATA,EAAe,MAAOA,GAAMa,WAC1B,IAAIC,GAAQoH,GAClB,MAAOA,GAAKrH,MAEb,OAAO,GAGR,QAASsH,GACRnG,EACAiB,EACAb,EACAE,EACAkF,EACAO,EACArB,EACAZ,EACAO,GAEArE,EAAOS,EAAQT,EACf,IAAIsB,MACAyD,EAAS9D,EAAOpC,SAAWmB,EAAKnB,OAChCuH,EAAgB,EAWhBpF,KACAqF,GAA2B,CAE/BxG,GAAQoB,EAAQ,SAAU7C,EAAOkB,GAChC+G,GAA2B,EAC3BrF,EAASC,EAAO3B,GAAGlB,MAAM0B,MAAQoB,OAAQe,GAAU3B,MAAOhB,KAG3DwD,EAAe9C,GACXqG,IACHpF,EAASsB,EAASvC,EAAMiB,EAAQD,EAAUZ,GAM3C,KAAK,GAFDkG,GAAa,EAERhH,EAAI,EAAGiH,EAAMvG,EAAKnB,OAAY0H,EAAJjH,EAASA,IAAK,CAEhD,GAAI4G,GAAOrB,EACVzE,EACAoF,EACAvE,EACAX,EACAN,EAAKV,GACL2B,EAAOqF,GACPP,EACAzF,EAAQ8F,GAAiBA,EACzB1B,EACAZ,EACAO,EAEG6B,KAASzJ,IACZsI,EAASA,GAAUmB,EAAK5E,MAAMyD,OAC9BqB,GAAiBH,EAAiBC,GAClCjF,EAAOqF,KAAgBJ,GAKzB,MADKnB,IAAQrC,EAAU1C,EAAMiB,EAAQK,GAC9BL,EAGR,QAASuF,GAAUxG,EAAMiB,EAAQX,EAAOmG,EAAaC,GACpD,GAAc,MAAVzF,EAAgB,CACnB,GAAIpE,GAAKC,KAAKmE,KAAYpE,GAAKC,KAAKkD,GAAO,MAAOiB,EAElD,IAAIyF,GAAeA,EAAYpF,MAAO,CACrC,GAAIqF,GAASrG,EAAQmG,EACjBG,EAAMD,GAAU7H,GAAQkB,GAAQA,EAAOiB,EAAOK,OAAOzC,MACzDqD,GACCwE,EAAYpF,MAAM1C,MAAM+H,EAAQC,GAChCF,EAAY9H,MAAM+H,EAAQC,QACjB3F,GAAOK,OACjBY,EAAMjB,EAAOK,MAAOL,GAStB,MALAA,GAAS,GAAIjB,GAAKsF,YAGdrE,EAAOlD,MAAKkD,MAChBA,EAAOK,SACAL,EAGR,QAAS4F,GAAc7G,EAAM8D,GAC5B,MAAI9D,GAAK5B,MAAM0I,GACG,MAAbhD,EACI3G,GAAUoE,cAAcvB,EAAKjC,IAAKiC,EAAK5B,MAAM0I,IAE7C3J,GAAU4J,gBAAgBjD,EAAW9D,EAAKjC,IAChDiC,EAAK5B,MAAM0I,IAEU,MAAbhD,EACH3G,GAAUoE,cAAcvB,EAAKjC,KAE7BZ,GAAU4J,gBAAgBjD,EAAW9D,EAAKjC,KAInD,QAASiJ,GAAehH,EAAMY,EAAMkD,EAAWa,GAC9C,MAAIA,GACIC,EAAchE,EAAMZ,EAAKjC,IAAKiC,EAAK5B,SAAW0F,GAE9C9D,EAAK5B,MAId,QAAS6I,GACRjH,EACAY,EACAK,EACAyD,EACAZ,EACAO,GAEA,MAAqB,OAAjBrE,EAAKrB,UAAoBqB,EAAKrB,SAASE,OAAS,EAC5CgG,EACNjE,EACAZ,EAAKjC,IACLtB,EACAA,EACAuD,EAAKrB,SACLsC,EAAOtC,UACP,EACA,EACAqB,EAAK5B,MAAM0G,gBAAkBlE,EAAO8D,EACpCZ,EACAO,GAEMrE,EAAKrB,SAId,QAASuI,GACRlH,EACA5B,EACAO,EACAiC,EACAkD,EACAG,EACAP,GAEA,GAAIzC,IACHlD,IAAKiC,EAAKjC,IACVK,MAAOA,EACPO,SAAUA,EACV2C,OAAQV,GAgBT,OAbAoD,GAAwB/C,EAAQgD,EAAOP,GAEnCzC,EAAOtC,WAAasC,EAAOtC,SAAS2C,QACvCL,EAAOtC,SAAS2C,UAKA,WAAbtB,EAAKjC,KAAoB,SAAWiC,GAAK5B,OAC5CwG,EAAchE,EAAMZ,EAAKjC,KAAM2H,MAAO1F,EAAK5B,MAAMsH,UAChD5B,GAGK7C,EAGR,QAASkG,GAAclD,EAAOmD,EAAMC,EAAmB1D,GACtD,GAAI2D,EAQJ,OALCA,GAD2B,SAAxBpL,EAAEkH,OAAOC,YAAyBY,EACnBA,EAAMpB,QAAQuE,GAEd,GAGfE,EAAkB,GACdD,EAAkBC,GACf5K,EAAWiH,GACd,GAAIA,MAQb,QAAS4D,GAAYtD,EAAOP,EAAa0D,EAAMzD,GACnB,MAAvBA,EAAWF,UACb+D,GAAUC,IAAI,SAAUC,GAAK,MAAOA,GAAEC,UACpC9E,QAAQc,EAAWF,UAAY,GAClC+D,GAAUlJ,MACTqF,WAAYA,EACZgE,QAAShE,EAAWF,WAItBQ,EAAM3F,KAAK8I,GACX1D,EAAYpF,KAAKqF,GAIlB,QAASiE,GACR5H,EACAoH,EACAnG,EACAoG,EACA3D,EACAO,GAEA,GAAIN,GAAawD,EAChBlG,EAAOgD,MACPmD,EACAC,EACArH,EAAK2D,YAEF7D,EAAME,GAAQA,EAAK5B,OAAS4B,EAAK5B,MAAM0B,GAW3C,OALCE,GAJuB,IAApBmE,IACF0D,IACAR,GACCA,EAAkBxE,QAAQc,GAAc,GACnC3D,EAAKoH,KAAKzD,IAET5F,IAAK,eAGO,WAAjBiC,EAAK8H,QAA6B9H,GACtCA,EAAK5B,MAAQ4B,EAAK5B,UAClB4B,EAAK5B,MAAM0B,IAAMA,EACjByH,EAAYtD,EAAOP,EAAa0D,EAAMzD,GAC/B3D,GAGR,QAAS+H,GAAU/H,EAAMiB,EAAQgD,EAAOP,GAGvC,IAFA,GAAI2D,GAAoBpG,GAAUA,EAAOyC,YAErB,MAAb1D,EAAKoH,MACXpH,EAAO4H,EACN5H,EACAA,EAAKoH,KAAKY,WAAahI,EAAKoH,KAC5BnG,EACAoG,EACA3D,EACAO,EAGF,OAAOjE,GAGR,QAASiI,GACRjI,EACAiB,EACAyD,EACAtE,EACAE,EACAyF,EACAjC,EACAO,GAEA,GAAIJ,MACAP,IAIJ,IAFA1D,EAAO+H,EAAU/H,EAAMiB,EAAQgD,EAAOP,GAEjB,WAAjB1D,EAAK8H,QAAsB,MAAO7G,EAEtC,KAAKjB,EAAKjC,KAAO2F,EAAY7E,OAC5B,KAAM,IAAIY,OAAM,+EAIjBO,GAAK5B,MAAQ4B,EAAK5B,UAClB6C,EAAO7C,MAAQ6C,EAAO7C,SAEtB,IAAI6E,GAAeC,OAAOC,KAAKnD,EAAK5B,OAChCuG,EAAU1B,EAAapE,QAAU,OAASmB,GAAK5B,MAAQ,EAAI,EAI/D,IAFAoF,EAAoBxD,EAAMiB,EAAQgC,GAE7BlG,EAASiD,EAAKjC,KAAnB,CAEA,GAAIuG,GAAgC,IAAxBrD,EAAOK,MAAMzC,MAEzBiF,GAAYD,EAAmB7D,EAAM8D,EAErC,IAAIlD,EACJ,IAAI0D,EAAO,CACV1D,EAAOiG,EAAc7G,EAAM8D,EAE3B,IAAI1F,GAAQ4I,EAAehH,EAAMY,EAAMkD,EAAWa,EAGlDpE,GAAWH,EAAeQ,EAAMN,EAEhC,IAAI3B,GAAWsI,EAAkBjH,EAAMY,EAAMK,EAAQyD,EACpDZ,EAAWO,EAEZpD,GAASiG,EACRlH,EACA5B,EACAO,EACAiC,EACAkD,EACAG,EACAP,OAED9C,GAAO6D,EACNxD,EACAjB,EACA0E,EACAC,EACAb,EACAG,EACAI,EACAX,EAUF,OAPKY,IAASyB,KAAmB,GAAgB,MAARnF,GACxCL,EAAWH,EAAeQ,EAAMN,GAIjC8D,EAA0BC,EAASrE,EAAMY,EAAM0D,EAAOrD,GAE/CA,GAGR,QAAS4D,GACRzE,EACAoF,EACAkB,EACAD,EACAzG,EACAiB,EACA8E,EACAzF,EACAoE,EACAZ,EACAO,GAuDA,MADArE,GAAOD,EAAaC,GACC,WAAjBA,EAAK8H,QAA6B7G,GACtCA,EAASuF,EAAUxG,EAAMiB,EAAQX,EAAOmG,EAAaC,GAEjD5H,GAAQkB,GACJmG,EACNnG,EACAiB,EACAb,EACAE,EACAkF,EACAO,EACArB,EACAZ,EACAO,GACiB,MAARrE,GAAgBpD,EAASoD,GAC5BiI,EACNjI,EACAiB,EACAyD,EACAtE,EACAE,EACAyF,EACAjC,EACAO,GACU3H,EAAWsD,GAUfiB,EATA6E,EACN7E,EACAjB,EACAM,EACAF,EACA2F,EACArB,EACAc,IAMH,QAAS3D,GAAYqG,EAAGC,GACvB,MAAOD,GAAEhH,OAASiH,EAAEjH,QAAUgH,EAAE5H,MAAQ6H,EAAE7H,MAG3C,QAAS8H,GAAexH,EAAMyH,EAAUC,GACvC,IAAK,GAAIC,KAAQF,GACZlJ,GAAOrC,KAAKuL,EAAUE,KACP,MAAdD,GAAsBA,EAAWC,KAAUF,EAASE,KACvD3H,EAAK4H,MAAMD,GAAQF,EAASE,IAK/B,KAAKA,IAAQD,GACRnJ,GAAOrC,KAAKwL,EAAYC,KACtBpJ,GAAOrC,KAAKuL,EAAUE,KAAO3H,EAAK4H,MAAMD,GAAQ,KAcxD,QAASE,GACR7H,EACA1B,EACAmJ,EACAC,EACAvK,EACA+F,GAEA,GAAiB,WAAb5E,GAAsC,QAAbA,EAE5B,OAAO,CACD,IAAIxC,EAAW2L,IAAsC,OAAzBnJ,EAASN,MAAM,EAAG,GAEpDgC,EAAK1B,GAAYwJ,EAAWL,EAAUzH,OAChC,IAAiB,UAAb1B,GAAoC,MAAZmJ,GACjCzL,EAASyL,GAEVD,EAAexH,EAAMyH,EAAUC,OACzB,IAAiB,MAAbxE,EAEO,SAAb5E,EACH0B,EAAK+H,eAAe,+BACnB,OAAQN,GAETzH,EAAKgI,aACS,cAAb1J,EAA2B,QAAUA,EACrCmJ,OAEI,IAAInJ,IAAY0B,KAASiI,GAAsB3J,GAYrD,IACa,UAARnB,GAAmB6C,EAAK1B,KAAcmJ,IACzCzH,EAAK1B,GAAYmJ,GAEjB,MAAOnI,GACRU,EAAKgI,aAAa1J,EAAUmJ,OAGzBzH,GAAKgI,aAAa1J,EAAUmJ,GAGlC,QAASS,GACRlI,EACA1B,EACAmJ,EACAC,EACAS,EACAhL,EACA+F,GAEA,GAAM5E,IAAY6J,IAAiBT,IAAeD,GAAclL,GAAUsI,gBAAkB7E,EAepE,UAAb1B,GAAgC,UAARnB,GACjC6C,EAAK8E,QAAU2C,IAEhBzH,EAAK8E,MAAQ2C,OAlBqF,CAClGU,EAAY7J,GAAYmJ,CACxB,KACC,MAAOI,GACN7H,EACA1B,EACAmJ,EACAC,EACAvK,EACA+F,GACA,MAAO5D,GAGR,GAAIA,EAAE8I,QAAQnG,QAAQ,oBAAsB,EAAG,KAAM3C,KASxD,QAAS0E,GAAchE,EAAM7C,EAAKkL,EAAWF,EAAajF,GACzD,IAAK,GAAI5E,KAAY+J,IAChB9J,GAAOrC,KAAKmM,EAAW/J,KACtB4J,EACFlI,EACA1B,EACA+J,EAAU/J,GACV6J,EAAY7J,GACZ6J,EACAhL,EACA+F,EAKJ,OAAOiF,GAGR,QAAS7G,GAAMZ,EAAOL,GACrB,IAAK,GAAI3B,GAAIgC,EAAMzC,OAAS,EAAGS,EAAI,GAAIA,IACtC,GAAIgC,EAAMhC,IAAMgC,EAAMhC,GAAGsD,WAAY,CACpC,IACCtB,EAAMhC,GAAGsD,WAAWsG,YAAY5H,EAAMhC,IACrC,MAAOY,IAMTe,KAAYP,OAAOO,GACfA,EAAO3B,IAAI6J,EAAOlI,EAAO3B,IAK3BgC,EAAMzC,SACTyC,EAAMzC,OAAS,GAIjB,QAASsK,GAAOlI,GACXA,EAAOqC,eAAiB5G,EAAWuE,EAAOqC,cAAcG,YAC3DxC,EAAOqC,cAAcG,WACrBxC,EAAOqC,cAAcG,SAAW,MAE7BxC,EAAOyC,aACVhE,EAAQuB,EAAOyC,YAAa,SAAUC,GACjCjH,EAAWiH,EAAWF,WACzBE,EAAWF,UAAUG,eAAgB5G,MAIpCiE,EAAOtC,WACNG,GAAQmC,EAAOtC,UAAWe,EAAQuB,EAAOtC,SAAUwK,GAC9ClI,EAAOtC,SAASZ,KAAKoL,EAAOlI,EAAOtC,WAI9C,QAASyK,GAAmBhJ,EAAeJ,GAC1C,IACCI,EAAciJ,YACblM,GAAUmM,cAAcC,yBAAyBvJ,IACjD,MAAOE,GACRE,EAAcoJ,mBAAmB,YAAaxJ,IAIhD,QAASkF,GAAW9E,EAAeE,EAAON,GACzC,GAAIyJ,GAAcrJ,EAAcU,WAAWR,EAC3C,IAAImJ,EAAa,CAChB,GAAIC,GAAqC,IAAzBD,EAAY7D,SACxB+D,EAAcxM,GAAUoE,cAAc,OACtCmI,IACHtJ,EAAcS,aAAa8I,EAAaF,GAAe,MACvDE,EAAYH,mBAAmB,cAAexJ,GAC9CI,EAAc8I,YAAYS,IAE1BF,EAAYD,mBAAmB,cAAexJ,OAG/CoJ,GAAmBhJ,EAAeJ,EAKnC,KAFA,GAAIsB,MAEGlB,EAAcU,WAAWR,KAAWmJ,GAC1CnI,EAAMhD,KAAK8B,EAAcU,WAAWR,IACpCA,GAGD,OAAOgB,GAGR,QAASoH,GAAWkB,EAAUjN,GAC7B,MAAO,UAAUuD,GAChBA,EAAIA,GAAK2J,MACT3N,EAAEkH,OAAOC,SAAS,QAClBnH,EAAE4N,kBACF,KACC,MAAOF,GAAS9M,KAAKH,EAAQuD,GAC5B,QACD6J,OAoEH,QAASC,GAAgB3I,GACxB,GAAIf,GAAQ2J,GAAUpH,QAAQxB,EAC9B,OAAe,GAARf,EAAY2J,GAAU3L,KAAK+C,GAAW,EAAIf,EASlD,QAAS4J,IAAaC,GACrB,QAASzI,KAER,MADInC,WAAUV,SAAQsL,EAAQ5K,UAAU,IACjC4K,EAOR,MAJAzI,GAAK0I,OAAS,WACb,MAAOD,IAGDzI,EAsBR,QAASlC,IAAa6K,EAAW5L,GAChC,QAASkF,KAER,OAAQ0G,EAAU1G,YAAc3G,GAAM2D,MAAMnE,KAAMiC,IAASjC,KAQ5D,QAAS4K,GAAKkD,GAEb,IAAK,GADDC,IAAeD,GAAM5J,OAAOjC,GACvBa,EAAI,EAAGA,EAAIC,UAAUV,OAAQS,IACrCiL,EAAYjM,KAAKiB,UAAUD,GAG5B,OAAO+K,GAAUjD,KAAKzG,MAAM0J,EAAWE,GAVpCF,EAAU1G,aACbA,EAAW6G,UAAYH,EAAU1G,WAAW6G,WAY7CpD,EAAKY,UAAYqC,EAAUjD,IAC3B,IAAIqD,IAAU9G,WAAYA,EAAYyD,KAAMA,EAE5C,OADI3I,GAAK,IAAqB,MAAfA,EAAK,GAAGqB,MAAa2K,EAAOrM,OAAS0B,IAAKrB,EAAK,GAAGqB,MAC1D2K,EAaR,QAASC,IAAeL,EAAWM,EAAMrK,EAAOsK,GAC/C,IAAKA,EAAa,CACjB1O,EAAEkH,OAAOC,SAAS,OAClBnH,EAAE4N,mBACFe,GAAMvK,GAASqK,CACf,IAAIG,EAGHA,GAAmBC,GADhBV,EAC+BA,EAEAA,GAAa1G,WAAY3G,EAG5D,IAAI2G,GAAa,IAAK0G,EAAU1G,YAAc3G,EAc9C,OARI8N,KAAqBC,KACxBrH,GAAYpD,GAASqD,EACrBqH,GAAW1K,GAAS+J,GAErBN,KACkB,OAAdM,GACHY,GAAkBN,EAAMrK,GAElBoD,GAAYpD,GACI,MAAb+J,GACVY,GAAkBN,EAAMrK,GAyC1B,QAAS2K,IAAkBN,EAAMrK,GAChCuK,GAAM1I,OAAO7B,EAAO,GACpBoD,GAAYvB,OAAO7B,EAAO,GAC1B0K,GAAW7I,OAAO7B,EAAO,GACzB4K,GAAMP,GACNV,GAAU9H,OAAO6H,EAAgBW,GAAO,GAoCzC,QAASvH,MACJ+H,KACHA,KACAA,GAAuB,MAExBzL,EAAQmL,GAAO,SAAUF,EAAMrL,GAC9B,GAAI+K,GAAYW,GAAW1L,EAC3B,IAAIoE,GAAYpE,GAAI,CACnB,GAAIb,IAAQiF,GAAYpE,GACxBpD,GAAEkP,OAAOT,EACRN,EAAUjD,KAAOiD,EAAUjD,KAAK1D,GAAYpE,GAAIb,GAAQ,OAKvD4M,KACHA,KACAA,GAAwB,MAEzBC,GAAe,KACfC,GAAqB,GAAIC,MACzBtP,EAAEkH,OAAOC,SAAS,QAGnB,QAAS0G,MACoB,SAAxB7N,EAAEkH,OAAOC,YACZc,KACAjI,EAAEkH,OAAOC,SAAS,SAElBnH,EAAEuP,iBA+IJ,QAASC,IAAeC,GACvB,MAAOA,GAAM/M,MAAMgN,GAAM1P,EAAEyP,MAAME,MAAMhN,QAGxC,QAASiN,IAAanB,EAAMoB,EAAQC,GACnCC,KAEA,IAAIC,GAAaF,EAAKnJ,QAAQ,IACX,MAAfqJ,IACHD,GAAcE,GACbH,EAAKI,OAAOF,EAAa,EAAGF,EAAKnN,SAClCmN,EAAOA,EAAKI,OAAO,EAAGF,GAKvB,IAAI/I,GAAOD,OAAOC,KAAK4I,GACnBzL,EAAQ6C,EAAKN,QAAQmJ,EAEzB,IAAc,KAAV1L,EAEH,MADApE,GAAEmQ,MAAM1B,EAAMoB,EAAO5I,EAAM7C,MACpB,CAGR,KAAK,GAAIqL,KAASI,GACjB,GAAI5M,GAAOrC,KAAKiP,EAAQJ,GAAQ,CAC/B,GAAIA,IAAUK,EAEb,MADA9P,GAAEmQ,MAAM1B,EAAMoB,EAAOJ,KACd,CAGR,IAAIW,GAAU,GAAIC,QAAO,IAAMZ,EAC7Ba,QAAQ,iBAAkB,SAC1BA,QAAQ,WAAY,aAAe,MAErC,IAAIF,EAAQG,KAAKT,GAYhB,MAVAA,GAAKQ,QAAQF,EAAS,WACrB,GAAInJ,GAAOwI,EAAM3N,MAAM,gBACnB0O,KAAY9N,MAAM9B,KAAKyC,UAAW,EAAG,GACzCG,GAAQyD,EAAM,SAAUrD,EAAKR,GAC5B2M,GAAYnM,EAAI0M,QAAQ,QAAS,KAChCG,mBAAmBD,EAAOpN,MAE5BpD,EAAEmQ,MAAM1B,EAAMoB,EAAOJ,OAGf,GAMX,QAASiB,IAAiB1M,GAEzB,GADAA,EAAIA,GAAK2J,QACL3J,EAAE2M,SAAW3M,EAAE4M,SAAW5M,EAAE6M,UAAwB,IAAZ7M,EAAE8M,OAA9C,CAEI9M,EAAE0D,eACL1D,EAAE0D,iBAEF1D,EAAE+M,aAAc,CAGjB,IACIxO,GADAyO,EAAgBhN,EAAEgN,eAAiBhN,EAAEiN,UASzC,KALC1O,EADoB,aAAjBvC,EAAEyP,MAAME,MAAuBqB,EAAcE,OACzCjB,GAAiBe,EAAcE,OAAOxO,MAAM,OAK7CsO,IAAkB,KAAKT,KAAKS,EAAc9H,WAChD8H,EAAgBA,EAActK,UAI/BuB,IAAkB,EAClBjI,EAAEyP,MAAMuB,EAAchR,EAAEyP,MAAME,MAC5BjN,MAAMgN,GAAM1P,EAAEyP,MAAME,MAAMhN,QAASJ,IAGtC,QAAS4O,MACa,SAAjBnR,EAAEyP,MAAME,MAAmBxO,GAAUiQ,KACxCjQ,GAAUiQ,KAAOjQ,GAAUiQ,KAE3BtR,EAAOuR,SAAS,EAAG,GAIrB,QAASC,IAAiB7Q,EAAQ8Q,GACjC,GAAIC,MACAC,IAEJ,KAAK,GAAIjM,KAAQ/E,GAChB,GAAIwC,GAAOrC,KAAKH,EAAQ+E,GAAO,CAC9B,GAAI5B,GAAM2N,EAASA,EAAS,IAAM/L,EAAO,IAAMA,EAC3CgE,EAAQ/I,EAAO+E,EAEnB,IAAc,OAAVgE,EACHiI,EAAIrP,KAAKsP,mBAAmB9N,QACtB,IAAIlD,EAAS8I,GACnBiI,EAAIrP,KAAKkP,GAAiB9H,EAAO5F,QAC3B,IAAIhB,GAAQ4G,GAAQ,CAC1B,GAAIvC,KACJuK,GAAW5N,GAAO4N,EAAW5N,OAE7BJ,EAAQgG,EAAO,SAAUQ,GAEnBwH,EAAW5N,GAAKoG,KACpBwH,EAAW5N,GAAKoG,IAAQ,EACxB/C,EAAK7E,KAAKsP,mBAAmB9N,GAAO,IACnC8N,mBAAmB1H,OAGtByH,EAAIrP,KAAK6E,EAAK/D,KAAK,UACTsG,KAAUjJ,GACpBkR,EAAIrP,KAAKsP,mBAAmB9N,GAAO,IAClC8N,mBAAmBlI,IAKvB,MAAOiI,GAAIvO,KAAK,KAGjB,QAAS+M,IAAiBwB,GACzB,GAAY,KAARA,GAAqB,MAAPA,EAAa,QACT,OAAlBA,EAAIE,OAAO,KAAYF,EAAMA,EAAI/O,MAAM,GAE3C,IAAIS,GAAQsO,EAAIG,MAAM,KAClBC,IAaJ,OAXArO,GAAQL,EAAO,SAAU2O,GACxB,GAAIzP,GAAOyP,EAAOF,MAAM,KACpBhO,EAAM6M,mBAAmBpO,EAAK,IAC9BmH,EAAwB,IAAhBnH,EAAKM,OAAe8N,mBAAmBpO,EAAK,IAAM,IAC3C,OAAfwP,EAAOjO,IACLhB,GAAQiP,EAAOjO,MAAOiO,EAAOjO,IAAQiO,EAAOjO,KACjDiO,EAAOjO,GAAKxB,KAAKoH,IAEbqI,EAAOjO,GAAO4F,IAGbqI,EAMR,QAAS7C,IAAMP,GACd,GAAIsD,GAAWjE,EAAgBW,EAC/BzI,GAAMyI,EAAK7J,WAAYoN,GAAUD,IACjCC,GAAUD,GAAYxR,EASvB,QAAS0R,IAAQC,EAASC,GACzB,GAAI3M,GAAOxF,EAAEwF,KAAK2M,EAOlB,OANAD,GAAQE,KAAK5M,GACbA,EAAK4M,KAAO,SAAUC,EAASC,GAC9B,MAAOL,IAAQC,EAAQE,KAAKC,EAASC,GAASH,IAG/C3M,EAAAA,SAAaA,EAAK4M,KAAKG,KAAK,KAAM,MAC3B/M,EAmBR,QAASgN,IAASC,EAAWC,GA4C5B,QAASC,GAAOhS,GACfiS,EAAQjS,GAAQkS,GAChBC,EAAKvH,IAAI,SAAUwH,GACdH,IAAUI,GACbD,EAASV,QAAQY,GAEjBF,EAAST,OAAOW,KAKnB,QAASC,GAAUd,EAAMe,EAASC,EAASC,GAC1C,IAAsB,MAAhBJ,GAAwBvS,EAASuS,IACrCzS,EAAWyS,KAAkBzS,EAAW4R,GACzC,IAEC,GAAIkB,GAAQ,CACZlB,GAAKxR,KAAKqS,EAAc,SAAUzJ,GAC7B8J,MACJL,EAAezJ,EACf2J,MACE,SAAU3J,GACR8J,MACJL,EAAezJ,EACf4J,OAEA,MAAOpP,GACRhE,EAAE+S,SAASQ,QAAQvP,GACnBiP,EAAejP,EACfoP,QAGDC,KAIF,QAASG,KAER,GAAIpB,EACJ,KACCA,EAAOa,GAAgBA,EAAab,KACnC,MAAOpO,GAIR,MAHAhE,GAAE+S,SAASQ,QAAQvP,GACnBiP,EAAejP,EACf4O,EAAQa,GACDD,IAGJZ,IAAUa,IACbzT,EAAE+S,SAASQ,QAAQN,GAGpBC,EAAUd,EAAM,WACfQ,EAAQc,GACRF,KACE,WACFZ,EAAQa,GACRD,KACE,WACF,IACKZ,IAAUc,IAAalT,EAAWiS,GACrCQ,EAAeR,EAAUQ,GACfL,IAAUa,IAAajT,EAAWkS,KAC5CO,EAAeP,EAAUO,GACzBL,EAAQc,IAER,MAAO1P,GAGR,MAFAhE,GAAE+S,SAASQ,QAAQvP,GACnBiP,EAAejP,EACR2O,IAGJM,IAAiBU,GACpBV,EAAeW,YACfjB,KAEAO,EAAUd,EAAM,WACfO,EAAOK,KACLL,EAAQ,WACVA,EAAOC,IAAUc,IAAaV,QA1HlC,GAAIW,GAAOrT,KACPsS,EAAQ,EACRK,EAAe,EACfH,IAEJa,GAAKzB,WAELyB,EAAKtB,QAAU,SAAU7I,GAQxB,MAPKoJ,KACJK,EAAezJ,EACfoJ,EAAQc,GAERF,KAGMG,GAGRA,EAAKrB,OAAS,SAAU9I,GAQvB,MAPKoJ,KACJK,EAAezJ,EACfoJ,EAAQa,GAERD,KAGMG,GAGRA,EAAKzB,QAAQE,KAAO,SAAUK,EAAWC,GACxC,GAAIK,GAAW,GAAIP,IAASC,EAAWC,EAUvC,OARIE,KAAUI,GACbD,EAASV,QAAQY,GACPL,IAAUC,GACpBE,EAAST,OAAOW,GAEhBH,EAAK1Q,KAAK2Q,GAGJA,EAASb,SA8HlB,QAAS2B,IAASrK,GAAS,MAAOA,GAElC,QAASsK,IAAYC,GACpB,GAAIC,GAAc,qBACjB,GAAI1E,OAAO2E,UAAY,IACtBC,KAAKC,MAAsB,KAAhBD,KAAKE,UAAkBrQ,SAAS,IAEzCsQ,EAASpT,GAAUoE,cAAc,SAErCvF,GAAOkU,GAAe,SAAUM,GAC/BD,EAAO3N,WAAWsG,YAAYqH,GAC9BN,EAAQQ,QACP5T,KAAM,OACNmC,QACC0R,aAAcF,KAGhBxU,EAAOkU,GAAezT,GAGvB8T,EAAOd,QAAU,WAchB,MAbAc,GAAO3N,WAAWsG,YAAYqH,GAE9BN,EAAQR,SACP5S,KAAM,QACNmC,QACC2R,OAAQ,IACRD,aAAcE,KAAKC,WAClBC,MAAO,kCAIV9U,EAAOkU,GAAezT,GAEf,GAGR8T,EAAOE,OAAS,WACf,OAAO,GAGRF,EAAOQ,IAAMd,EAAQe,KACnBf,EAAQe,IAAInO,QAAQ,KAAO,EAAI,IAAM,MACrCoN,EAAQC,YAAcD,EAAQC,YAAc,YAC7C,IAAMA,EACN,IAAM1C,GAAiByC,EAAQjQ,UAEhC7C,GAAU8T,KAAK5H,YAAYkH,GAG5B,QAASW,IAAUjB,GAClB,GAAIkB,GAAM,GAAInV,GAAOoV,cAyBrB,IAxBAD,EAAIE,KAAKpB,EAAQqB,OAAQrB,EAAQe,KAAK,EAAMf,EAAQsB,KACnDtB,EAAQuB,UAETL,EAAIM,mBAAqB,WACD,IAAnBN,EAAIO,aACHP,EAAIR,QAAU,KAAOQ,EAAIR,OAAS,IACrCV,EAAQQ,QAAQ5T,KAAM,OAAQmC,OAAQmS,IAEtClB,EAAQR,SAAS5S,KAAM,QAASmC,OAAQmS,MAKvClB,EAAQ0B,YAAcf,KAAKC,WAC7BZ,EAAQjQ,MACW,QAAnBiQ,EAAQqB,QACTH,EAAIS,iBAAiB,eACpB,mCAGE3B,EAAQ4B,cAAgBjB,KAAKkB,OAChCX,EAAIS,iBAAiB,SAAU,4BAG5BlV,EAAWuT,EAAQ1L,QAAS,CAC/B,GAAIwN,GAAW9B,EAAQ1L,OAAO4M,EAAKlB,EACnB,OAAZ8B,IAAkBZ,EAAMY,GAG7B,GAAI/R,GAA0B,QAAnBiQ,EAAQqB,QAAqBrB,EAAQjQ,KAAYiQ,EAAQjQ,KAAb,EAEvD,IAAIA,IAASjD,EAASiD,IAASA,EAAKsF,cAAgBtJ,EAAOgW,SAC1D,KAAM,IAAIvS,OAAM,qGAKjB,OADA0R,GAAIc,KAAKjS,GACFmR,EAGR,QAASe,IAAKjC,GACb,MAAIA,GAAQkC,UAA+C,UAAnClC,EAAQkC,SAASC,cACjCpC,GAAYC,GAEZiB,GAAUjB,GAInB,QAASoC,IAASpC,EAASjQ,EAAM2R,GAChC,GAAuB,QAAnB1B,EAAQqB,QAAyC,UAArBrB,EAAQkC,SAAsB,CAC7D,GAAI1E,GAASwC,EAAQe,IAAInO,QAAQ,KAAO,EAAI,IAAM,IAC9CyP,EAAc9E,GAAiBxN,EACnCiQ,GAAQe,KAAQsB,EAAc7E,EAAS6E,EAAc,OAErDrC,GAAQjQ,KAAO2R,EAAU3R,GAI3B,QAASuS,IAAgBvB,EAAKhR,GAS7B,MARIA,KACHgR,EAAMA,EAAIxE,QAAQ,cAAe,SAAUgG,GAC1C,GAAI1S,GAAM0S,EAAM5T,MAAM,GAClB8G,EAAQ1F,EAAKF,IAAQ0S,CAEzB,cADOxS,GAAKF,GACL4F,KAGFsL,EAzjER9U,EAAEuW,QAAU,WACX,MAAO,SAGR,IAyCItV,IAAWE,GAAWK,GAAwBH,GAzC9C4B,MAAYuT,eACZ7V,MAAUoD,SAcVnB,GAAUiD,MAAMjD,SAAW,SAAUnC,GACxC,MAA6B,mBAAtBE,GAAKC,KAAKH,IAKd0I,IACHsN,KAAM,EACNC,KAAM,EACNC,GAAI,EACJC,IAAK,EACLC,QAAS,EACTC,MAAO,EACPC,GAAI,EACJC,IAAK,EACLC,MAAO,EACPC,OAAQ,EACRC,KAAM,EACNC,KAAM,EACNC,MAAO,EACPC,OAAQ,EACRC,MAAO,EACPC,IAAK,EAeNxX,GAAEyX,KAAO,SAAUzW,GAElB,MADAD,GAAWjB,EAASkB,GAAQX,QACrBP,GAGRE,EAAEyX,KAAK3X,EAqJP,IAAIiG,IAAW,EACXT,GAAY,EACZL,GAAO,EAmKPgD,GAAkB,CACtBjI,GAAE4N,iBAAmB,WAAc3F,MACnCjI,EAAEuP,eAAiB,WACdtH,GAAkB,EACrBA,MAEAA,GAAkB,EAClBjI,EAAEkH,UAuWJ,IAgdIwQ,IAhdApM,MAgBAK,IAAU,EA2PVgB,IACHlJ,KAAM,EACN6I,MAAO,EACPqL,KAAM,EACNhX,KAAM,EACNiX,MAAO,EACPC,OAAQ,GAgMLC,IACH3K,YAAa,SAAUzI,GAClBgT,KAASnX,IAAWmX,GAAOzW,GAAUoE,cAAc,SACnDpE,GAAU8W,iBACZ9W,GAAU8W,kBAAoBrT,EAC/BzD,GAAU+W,aAAatT,EAAMzD,GAAU8W,iBAEvC9W,GAAUkM,YAAYzI,GAGvBpE,KAAKsE,WAAa3D,GAAU2D,YAG7BD,aAAc,SAAUD,GACvBpE,KAAK6M,YAAYzI,IAGlBE,eAGGmJ,MACAiE,KAEJhS,GAAEkP,OAAS,SAAUT,EAAM7M,EAAMqW,GAChC,IAAKxJ,EACJ,KAAM,IAAIlL,OAAM,oFAGjB,IAGImB,GAHAyD,KACAhG,EAAK2L,EAAgBW,GACrByJ,EAAiBzJ,IAASxN,EAI7ByD,GADGwT,GAAkBzJ,IAASxN,GAAU8W,gBACjCD,GAEArJ,EAGJyJ,GAA+B,SAAbtW,EAAKC,MAC1BD,GAAQC,IAAK,OAAQK,SAAWO,SAAUb,IAGvCoQ,GAAU7P,KAAQ5B,GAAWyF,EAAMtB,EAAKE,YACxCqT,KAAoB,GAAMjJ,GAAMP,GAEpCuD,GAAU7P,GAAMwG,EACfjE,EACA,KACAnE,EACAA,EACAqB,EACAoQ,GAAU7P,IACV,EACA,EACA,KACA5B,EACA4H,GAED3E,EAAQ2E,EAAS,SAAUE,GAAUA,OAQtCrI,EAAEmY,MAAQ,SAAU3O,GAGnB,MAFAA,GAAQ,GAAI4O,QAAO5O,GACnBA,EAAMT,UAAW,EACVS,GAgBRxJ,EAAEwF,KAAO,SAAUyI,GAClB,OAAc,MAATA,GAAiBvN,EAASuN,IAAUzN,EAAWyN,KAClDzN,EAAWyN,EAAMmE,MACXH,GAAQhE,GAGTD,GAAaC,GAGrB,IAOIY,IAPAF,MACAG,MACAtH,MACA4H,GAAe,KACfC,GAAqB,EACrBJ,GAAuB,KACvBE,GAAwB,KAExBkJ,GAAe,EA4BnBrY,GAAEmO,UAAY,SAAUA,GAGvB,IAAK,GAFD5L,GAAO,GAAIsD,OAAMxC,UAAUV,OAAS,GAE/BS,EAAI,EAAGA,EAAIC,UAAUV,OAAQS,IACrCb,EAAKa,EAAI,GAAKC,UAAUD,EAGzB,OAAOE,IAAa6K,EAAW5L,IAoChCvC,EAAEmQ,MAAQnQ,EAAEC,OAAS,SAAUwO,EAAMN,GACpC,IAAKM,EACJ,KAAM,IAAIlL,OAAM,4EAIjB,IAAIa,GAAQuK,GAAMhI,QAAQ8H,EACd,GAARrK,IAAWA,EAAQuK,GAAMhM,OAE7B,IAAI+L,IAAc,EACdf,GACHjG,eAAgB,WACfgH,GAAc,EACdO,GAAuBE,GAAwB,MAqBjD,OAjBA3L,GAAQ8H,GAAW,SAAUgN,GAC5BA,EAAS7M,QAAQ7K,KAAK0X,EAAS7Q,WAAYkG,GAC3C2K,EAAS7Q,WAAWF,SAAW,OAG5BmH,EACHlL,EAAQ8H,GAAW,SAAUgN,GAC5BA,EAAS7Q,WAAWF,SAAW+Q,EAAS7M,UAGzCH,MAGG9D,GAAYpD,IAAU5D,EAAWgH,GAAYpD,GAAOmD,WACvDC,GAAYpD,GAAOmD,SAASoG,GAGtBa,GAAeL,EAAWM,EAAMrK,EAAOsK,GAW/C,IAAI6J,KAAY,CAChBvY,GAAEkH,OAAS,SAAUsR,GACpB,IAAID,GAAJ,CACAA,IAAY,EACRC,IAAO7M,IAAU,EAErB,KAKKyD,KAAiBoJ,GAKhBhX,KAA2B1B,EAAO2B,uBACpC,GAAI6N,MAASD,GAAqBgJ,MAC/BjJ,GAAe,GAAG/N,GAAsB+N,IAC5CA,GAAe5N,GAAuB0F,GAAQmR,MAG/CnR,KACAkI,GAAe5N,GAAuB,WACrC4N,GAAe,MACbiJ,KAEH,QACDE,GAAY5M,IAAU,KAIxB3L,EAAEkH,OAAOC,SAAWnH,EAAEwF,OAkCtBxF,EAAEyY,SAAW,SAAUjT,EAAMkT,EAAkBC,GAC9C,MAAO,UAAU3U,GAChBA,EAAIA,GAAK3D,OAAOsN,KAEhB,IAAIqD,GAAgBhN,EAAEgN,eAAiB1Q,KACnCsY,EAAQD,GAAgBrY,KAExBwC,EAAS0C,IAAQwL,GACpBA,EAAcxL,GACdwL,EAAc6H,aAAarT,EAC5BkT,GAAiB9X,KAAKgY,EAAO9V,IAK/B,IAGIiN,IAAa+I,GAHbpJ,IAASqJ,SAAU,GAAI3H,KAAM,IAAKF,OAAQ,KAC1C8H,GAAWlY,EACXmY,IAAiB,CAGrBjZ,GAAEyP,MAAQ,SAAUhB,EAAMyK,EAAMC,EAAMC,GAErC,GAAyB,IAArB/V,UAAUV,OAAc,MAAOmW,GAEnC,IAAyB,IAArBzV,UAAUV,QAAgB9B,EAASqY,GAAO,CAC7CF,GAAW,SAAUK,GACpB,GAAIvJ,GAAOgJ,GAAetJ,GAAe6J,EACzC,KAAKzJ,GAAanB,EAAM0K,EAAMrJ,GAAO,CACpC,GAAImJ,GACH,KAAM,IAAI1V,OAAM,wEAIjB0V,KAAiB,EACjBjZ,EAAEyP,MAAMyJ,GAAM,GACdD,IAAiB,GAInB,IAAIK,GAA4B,SAAjBtZ,EAAEyP,MAAME,KACtB,eACA,YAWD,OATA7P,GAAOwZ,GAAY,WAClB,GAAIxJ,GAAO3O,GAAUnB,EAAEyP,MAAME,KACR,cAAjB3P,EAAEyP,MAAME,OAAqBG,GAAQ3O,GAAU+P,QAC/C4H,KAAiBtJ,GAAeM,IAAOkJ,GAASlJ,IAGrDb,GAAuBkC,OACvBrR,GAAOwZ,KAMR,GAAI7K,EAAK8K,kBAAoB9K,EAAK+K,YAAa,CAC9C,GAAIC,GAAwB,aAAjBzZ,EAAEyP,MAAME,KAAsBxO,GAAU4X,SAAW,EAU9D,OATAtK,GAAKiL,KAAOD,EAAO/J,GAAM1P,EAAEyP,MAAME,MAAQyJ,EAAKlX,MAAMwX,UAChDjL,EAAK8K,kBACR9K,EAAKkL,oBAAoB,QAASjJ,IAClCjC,EAAK8K,iBAAiB,QAAS7I,MAE/BjC,EAAKmL,YAAY,UAAWlJ,IAC5BjC,EAAK+K,YAAY,UAAW9I,MAM9B,GAAI7P,EAAS4N,GAAO,CACnB,GAAIoL,GAAWf,EACfA,IAAerK,CAEf,IAEIoD,GAFAtP,EAAO2W,MACPY,EAAahB,GAAanS,QAAQ,IAIrCkL,GADGiI,EAAa,GACP7J,GAAiB6I,GAAapW,MAAMoX,EAAa,MAK3D,KAAK,GAAI1W,KAAKb,GACTU,GAAOrC,KAAK2B,EAAMa,KACrByO,EAAOzO,GAAKb,EAAKa,GAInB,IACI2W,GADA3D,EAAc9E,GAAiBO,EAIlCkI,GADGD,EAAa,GACFhB,GAAapW,MAAM,EAAGoX,GAEtBhB,GAGX1C,IACH0C,GAAeiB,GACgB,KAA7BA,EAAYpT,QAAQ,KAAc,IAAM,KACzCyP,EAGF,IAAI4D,IACmB,IAArB3W,UAAUV,OAAewW,EAAOD,MAAU,GAC3CW,IAAapL,CAEd,IAAI3O,EAAOma,QAAQC,UAAW,CAC7B,GAAI9E,GAAS4E,EAAiB,eAAiB,WAC/C/K,IAAuBkC,GACvBhC,GAAwB,WACvBrP,EAAOma,QAAQ7E,GAAQ,KAAMnU,GAAUkZ,MACtCzK,GAAM1P,EAAEyP,MAAME,MAAQmJ,KAExBE,GAAStJ,GAAM1P,EAAEyP,MAAME,MAAQmJ,QAE/B3X,IAAUnB,EAAEyP,MAAME,MAAQmJ,GAC1BE,GAAStJ,GAAM1P,EAAEyP,MAAME,MAAQmJ,MAKlC9Y,EAAEyP,MAAM2K,MAAQ,SAAUxW,GACzB,IAAKmM,GACJ,KAAM,IAAIxM,OAAM,sFAIjB,OAAKK,GAIEmM,GAAYnM,GAHXmM,IAMT/P,EAAEyP,MAAME,KAAO,SAqJf3P,EAAEyP,MAAM6B,iBAAmBA,GAC3BtR,EAAEyP,MAAMQ,iBAAmBA,GAQ3BjQ,EAAE+S,SAAW,WACZ,GAAIA,GAAW,GAAIP,GAEnB,OADAO,GAASb,QAAUD,GAAQc,EAASb,SAC7Ba,EAyBR,IAAIW,IAAY,EACZD,GAAY,EACZT,GAAW,EACXH,GAAW,CAuWf,OAnOA7S,GAAE+S,SAASQ,QAAU,SAAUvP,GAC9B,GAAqB,mBAAjBrD,GAAKC,KAAKoD,KACX,SAASuM,KAAKvM,EAAEoF,YAAYrF,YAE9B,KADAkE,IAAkB,EACZjE,GAIRhE,EAAEqa,KAAO,SAAU9X,GAMlB,QAAS+X,GAAaC,EAAKC,GAC1B,MAAO,UAAUhR,GAOhB,MANAiR,GAAQF,GAAO/Q,EACVgR,IAAUpF,EAAS,UACF,MAAhBsF,IACL3H,EAASb,QAAQuI,GACjB1H,EAASqC,GAAQqF,IAEXjR,GAbT,GAAIuJ,GAAW/S,EAAE+S,WACb2H,EAAcnY,EAAKI,OACnB8X,KACArF,EAAS,SAsBb,OARI7S,GAAKI,OAAS,EACjBa,EAAQjB,EAAM,SAAUoY,EAAKvX,GAC5BuX,EAAIvI,KAAKkI,EAAalX,GAAG,GAAOkX,EAAalX,GAAG,MAGjD2P,EAASV,YAGHU,EAASb,SA6HjBlS,EAAE4a,QAAU,SAAU7G,GACjBA,EAAQ8G,cAAe,GAAM7a,EAAE4N,kBACnC,IAII6H,GAAWE,EAAamF,EAJxB/H,EAAW,GAAIP,IACfuI,EAAUhH,EAAQkC,UACc,UAAnClC,EAAQkC,SAASC,aA6DlB,OAzDI6E,IACHtF,EAAY1B,EAAQ0B,UACpBE,EAAc5B,EAAQ4B,YAAc9B,GAEpCiH,EAAU,SAAUE,GAAS,MAAOA,GAAMxG,gBAE1CiB,EAAY1B,EAAQ0B,UAAY1B,EAAQ0B,WAAaf,KAAKC,UAE1DgB,EAAc5B,EAAQ4B,YACrB5B,EAAQ4B,aAAejB,KAAKkB,MAC7BkF,EAAU/G,EAAQ+G,SAAW,SAAU7F,GACtC,MAAIA,GAAIT,aAAa7R,QAAUgT,IAAgBjB,KAAKkB,MAC5CX,EAAIT,aAEJ,OAKVT,EAAQqB,QAAUrB,EAAQqB,QAAU,OAAO6F,cAC3ClH,EAAQe,IAAMuB,GAAgBtC,EAAQe,IAAKf,EAAQjQ,MACnDqS,GAASpC,EAASA,EAAQjQ,KAAM2R,GAChC1B,EAAQQ,OAASR,EAAQR,QAAU,SAAU2H,GAC5C,IACCA,EAAKA,GAAMvN,KACX,IAAIwN,GAAWxF,EAAYmF,EAAQI,EAAGpY,OAAQiR,GAC9B,UAAZmH,EAAGva,MACFoT,EAAQqH,gBACXD,EAAWpH,EAAQqH,cAAcD,EAAUD,EAAGpY,SAG3CF,GAAQuY,IAAapH,EAAQpT,KAChC6C,EAAQ2X,EAAU,SAAUE,EAAKjY,GAChC+X,EAAS/X,GAAK,GAAI2Q,GAAQpT,KAAK0a,KAEtBtH,EAAQpT,OAClBwa,EAAW,GAAIpH,GAAQpT,KAAKwa,IAG7BpI,EAASV,QAAQ8I,KAEbpH,EAAQuH,cACXH,EAAWpH,EAAQuH,YAAYH,EAAUD,EAAGpY,SAG7CiQ,EAAST,OAAO6I,IAEhB,MAAOnX,GACR+O,EAAST,OAAOtO,GAChBhE,EAAE+S,SAASQ,QAAQvP,GAClB,QACG+P,EAAQ8G,cAAe,GAAM7a,EAAEuP,mBAIrCyG,GAAKjC,GACLhB,EAASb,QAAUD,GAAQc,EAASb,QAAS6B,EAAQ5B,cAC9CY,EAASb,SAGVlS","file":"mithril.min.js"} \ No newline at end of file diff --git a/test/mithril.request.js b/test/mithril.request.js index d9b58ace..c8a3662a 100644 --- a/test/mithril.request.js +++ b/test/mithril.request.js @@ -195,6 +195,12 @@ describe("m.request()", function () { expect(prop().url).to.equal("/test") }) + it("ignores interpolations without data", function () { // eslint-disable-line + var prop = m.request({method: "GET", url: "/test:notfound", data: {foo: 1}}) + resolve() + expect(prop().url).to.equal("/test:notfound?foo=1") + }) + it("appends children in query strings to `url` from `data` for `GET`", function () { // eslint-disable-line var prop = m.request({method: "GET", url: "test", data: {foo: [1, 2]}}) resolve() From 4e8ca4035cb3998563a10d878829bfe2efc9ef91 Mon Sep 17 00:00:00 2001 From: Alexandr Panchenko <07mysterious09@gmail.com> Date: Tue, 17 May 2016 17:50:47 +0300 Subject: [PATCH 10/78] =?UTF-8?q?ContactList=20=E2=86=92=20ContactForm?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/components.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/components.md b/docs/components.md index 14e9b422..f6e473ce 100644 --- a/docs/components.md +++ b/docs/components.md @@ -393,7 +393,7 @@ var ContactsWidget = { } } -//ContactList no longer calls `Contact.save` +//ContactForm no longer calls `Contact.save` var ContactForm = { controller: function(args) { var ctrl = this From 0aff6fb08a974422fce20bf2280399abdf7e9c30 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Wed, 18 May 2016 16:40:32 -0400 Subject: [PATCH 11/78] don't fail CI on lint error for PRs --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 04ea49ec..781809a0 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "url" : "http://github.com/lhorie/mithril.js/issues" }, "scripts": { + "test": "grunt test" "test": "grunt lint test" }, "main": "mithril.js", From 7c392f071d2e51ce490b5781325122f57477da5b Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 19 May 2016 12:48:01 -0400 Subject: [PATCH 12/78] remove broken line in package.json --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index 781809a0..be7e06af 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,6 @@ }, "scripts": { "test": "grunt test" - "test": "grunt lint test" }, "main": "mithril.js", "devDependencies": { From 1673579d32493ad922b9743708a4a49acf9b8c86 Mon Sep 17 00:00:00 2001 From: Ian Henderson Date: Tue, 17 May 2016 11:05:59 -0700 Subject: [PATCH 13/78] Add replaceScriptNodes function --- mithril.js | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/mithril.js b/mithril.js index d7054596..9478add4 100644 --- a/mithril.js +++ b/mithril.js @@ -1176,9 +1176,41 @@ $document.createRange().createContextualFragment(data)) } catch (e) { parentElement.insertAdjacentHTML("beforeend", data) + replaceScriptNodes(parentElement) } } + // Replace script tags inside given DOM element with executable ones. + // Will also check children recursively and replace any found script + // tags in same manner. + function replaceScriptNodes(node) { + if (node.tagName === "SCRIPT") { + node.parentNode.replaceChild(buildExecutableNode(node), node) + } else { + var children = node.childNodes + if (children && children.length) { + for (var i = 0; i < children.length; i++) { + replaceScriptNodes(children[i]) + } + } + } + + return node + } + + // Replace script element with one whose contents are executable. + function buildExecutableNode(node){ + var scriptEl = document.createElement("script") + var attrs = node.attributes + + for (var i = 0; i < attrs.length; i++) { + scriptEl.setAttribute(attrs[i].name, attrs[i].value) + } + + scriptEl.text = node.innerHTML + return scriptEl + } + function injectHTML(parentElement, index, data) { var nextSibling = parentElement.childNodes[index] if (nextSibling) { From e03f194e32275d422e515ccf7c45921fa9c5ae78 Mon Sep 17 00:00:00 2001 From: Ian Henderson Date: Wed, 18 May 2016 12:28:01 -0700 Subject: [PATCH 14/78] Add test for replaceScriptNodes --- test/mithril.trust.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/test/mithril.trust.js b/test/mithril.trust.js index 17727a0d..0acd94fa 100644 --- a/test/mithril.trust.js +++ b/test/mithril.trust.js @@ -65,5 +65,21 @@ describe("m.trust()", function () { expect(root.innerHTML) .to.equal("

&copy;

©

©
") }) + + // https://github.com/lhorie/mithril.js/issues/1045 + it("correctly injects script tags and executes them", function () { + var HTMLString = + "" + var root = document.createElement("div") + var child = document.createElement("div") + root.id = "root" + root.innerText = "Before" + root.appendChild(child) + document.body.appendChild(root) + + m.render(child, m.trust(HTMLString)) + + expect(root.innerText).to.equal("After") + }) }) }) From 51e553f9802592a9f20be252a68de20ca2e4f90b Mon Sep 17 00:00:00 2001 From: AlonsoSoto Date: Fri, 20 May 2016 14:36:20 -0500 Subject: [PATCH 15/78] Update mithril.request.md --- docs/mithril.request.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/mithril.request.md b/docs/mithril.request.md index e2e7b3af..96defe1d 100644 --- a/docs/mithril.request.md +++ b/docs/mithril.request.md @@ -272,6 +272,7 @@ data.append("file", file) m.request({ method: "POST", url: "/upload", + data: data, serialize: function(data) {return data} }) ``` From c71e8f4fcb5a58653442bb17a02ba64ec5e4c07d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Husiaty=C5=84ski?= Date: Wed, 25 May 2016 10:18:32 +0200 Subject: [PATCH 16/78] JSON.stringify(m.prop(x)) use x.toJSON method when possible When JSON serializing m.prop, check if wrapped object does define toJSON method and if so, return it's result. --- mithril.js | 1 + test/mithril.prop.js | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/mithril.js b/mithril.js index 9478add4..e8305a87 100644 --- a/mithril.js +++ b/mithril.js @@ -1331,6 +1331,7 @@ } prop.toJSON = function () { + if (store && isFunction(store.toJSON)) return store.toJSON() return store } diff --git a/test/mithril.prop.js b/test/mithril.prop.js index 4be4b1b9..cc6ef6f1 100644 --- a/test/mithril.prop.js +++ b/test/mithril.prop.js @@ -42,6 +42,22 @@ describe("m.prop()", function () { expect(JSON.stringify(obj)).to.equal('{"prop":"test"}') }) + it("correctly stringifies Date", function () { + var prop = m.prop(new Date(999)) + expect(JSON.stringify(prop)).to.equal('"1970-01-01T00:00:00.999Z"') + }) + + it("correctly stringifies object with toJSON method", function () { + function Thing(name) { + this.name = name + } + Thing.prototype.toJSON = function() { + return {kind: 'Thing', name: this.name} + } + var banana = m.prop(new Thing("bannana")) + expect(JSON.stringify(banana)).to.equal('{"kind":"Thing","name":"bannana"}') + }) + it("correctly wraps Mithril promises", function () { var defer = m.deferred() var prop = m.prop(defer.promise) From bf85b7a530dfacc255cb0fe78a5a0f00df016a82 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 26 May 2016 11:04:04 -0400 Subject: [PATCH 17/78] #1076 absorb native promise in m.prop --- mithril.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mithril.js b/mithril.js index d7054596..12fa23fd 100644 --- a/mithril.js +++ b/mithril.js @@ -1306,7 +1306,7 @@ } m.prop = function (store) { - if ((store != null && isObject(store) || isFunction(store)) && + if ((store != null && isObject(store) || isFunction(store)) || store instanceof window.Promise && isFunction(store.then)) { return propify(store) } From 0ad6749f87598a357afed0e1b961cbcc83f145cc Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 26 May 2016 11:19:39 -0400 Subject: [PATCH 18/78] callbackName --- docs/change-log.md | 15 +++++++++++++++ docs/mithril.request.md | 7 +++++++ mithril.js | 2 +- 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/docs/change-log.md b/docs/change-log.md index bf474720..1d9c7b6a 100644 --- a/docs/change-log.md +++ b/docs/change-log.md @@ -1,5 +1,20 @@ ## Change Log +[v0.2.5](http://mithril.js.org/archive/v0.2.5) + +### News: + +- performance improvements in IE (thanks to @gyandeeps) +- m.request now has a `callbackName` option to specify the name of the javascript function that gets called on JSONP response [#1072](https://github.com/lhorie/mithril.js/issues/1072) + +### Bug Fixes: + +- fix active form element syncing [#691](https://github.com/lhorie/mithril.js/issues/691) +- ignore url interpolations without value in m.request [#1039](https://github.com/lhorie/mithril.js/issues/1039) +- fixed native promise absorption in `m.prop` [#1076](https://github.com/lhorie/mithril.js/issues/1076) + +--- + [v0.2.4](http://mithril.js.org/archive/v0.2.4) ### Bug Fixes: diff --git a/docs/mithril.request.md b/docs/mithril.request.md index 96defe1d..fb29d28e 100644 --- a/docs/mithril.request.md +++ b/docs/mithril.request.md @@ -448,6 +448,7 @@ where: String dataType, String url, String callbackKey, + String callbackName, Object data } ``` @@ -661,6 +662,12 @@ where: This option is useful for web services that use uncommon conventions for defining jsonp callbacks (e.g. foo.com/?jsonpCallback=doSomething) + - **String callbackName** + + The name of callback function to be called by the response. Defaults to a unique auto-generated name + + This option is useful for web services serving static files and to prevent cache busting. + - **Object data** (optional) Data to be sent. It's automatically placed in the appropriate section of the request with the appropriate serialization based on `method` diff --git a/mithril.js b/mithril.js index b93e2654..464e8a5f 100644 --- a/mithril.js +++ b/mithril.js @@ -2042,7 +2042,7 @@ function identity(value) { return value } function handleJsonp(options) { - var callbackKey = "mithril_callback_" + + var callbackKey = options.callbackName || "mithril_callback_" + new Date().getTime() + "_" + (Math.round(Math.random() * 1e16)).toString(36) From ce748f9f71fa729ba8bdb13f3378210768369164 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 26 May 2016 11:30:27 -0400 Subject: [PATCH 19/78] check for existence of Promise before doing check against it --- mithril.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mithril.js b/mithril.js index 464e8a5f..01e0794a 100644 --- a/mithril.js +++ b/mithril.js @@ -1338,7 +1338,7 @@ } m.prop = function (store) { - if ((store != null && isObject(store) || isFunction(store)) || store instanceof window.Promise && + if ((store != null && isObject(store) || isFunction(store)) || (typeof Promise !== "undefined" && store instanceof Promise) && isFunction(store.then)) { return propify(store) } From b128fd823217a6b2254895094560a93cc902967e Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 26 May 2016 11:45:48 -0400 Subject: [PATCH 20/78] don't shortcircuit promise check for objects --- mithril.js | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mithril.js b/mithril.js index 01e0794a..48744789 100644 --- a/mithril.js +++ b/mithril.js @@ -14,7 +14,7 @@ "use strict" m.version = function () { - return "v0.2.4" + return "v0.2.5" } var hasOwn = {}.hasOwnProperty @@ -1338,7 +1338,7 @@ } m.prop = function (store) { - if ((store != null && isObject(store) || isFunction(store)) || (typeof Promise !== "undefined" && store instanceof Promise) && + if ((store != null && (isObject(store) || isFunction(store)) || ((typeof Promise !== "undefined") && (store instanceof Promise))) && isFunction(store.then)) { return propify(store) } diff --git a/package.json b/package.json index be7e06af..e5efa7f1 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "mithril", "description": "Mithril.js - A Javascript Framework for Building Brilliant Applications", - "version": "0.2.4", + "version": "0.2.5", "homepage": "http://mithril.js.org", "license": "MIT", "author": { From 20dfbbadc6460e9e838e39935c5e8b288a14cd76 Mon Sep 17 00:00:00 2001 From: Demian Ferreiro Date: Fri, 27 May 2016 11:08:47 -0300 Subject: [PATCH 21/78] Update mithril.request.md Add call to promise returned by m.request(). Otherwise the value of `ctrl.user` will always be truthy. --- docs/mithril.request.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/mithril.request.md b/docs/mithril.request.md index fb29d28e..b6d071c7 100644 --- a/docs/mithril.request.md +++ b/docs/mithril.request.md @@ -535,7 +535,7 @@ where: demo.view = function(ctrl) { return m("div", [ //in the first redraw, there's no user, so ensure we don't throw an error - ctrl.user ? ctrl.user.name : "no user" + ctrl.user() ? ctrl.user().name : "no user" ]) } ``` From 3f4df52d6ed010d93d3f4f77f3c3fb6ba639fb7f Mon Sep 17 00:00:00 2001 From: Bohdan Shtepan Date: Mon, 30 May 2016 20:54:18 +0300 Subject: [PATCH 22/78] Fixes js.org badge link. I believe js.org badge goes to the wrong location. So I changed it from *js.org* to *mithril.js.org/*. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c04e8a82..6919baee 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![JS.ORG](https://img.shields.io/badge/js.org-mithril-ffb400.svg?style=flat-square)](http://js.org) +[![JS.ORG](https://img.shields.io/badge/js.org-mithril-ffb400.svg?style=flat-square)](http://mithril.js.org/) [![Join the chat at https://gitter.im/lhorie/mithril.js](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/lhorie/mithril.js?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build Status](https://travis-ci.org/lhorie/mithril.js.svg?branch=master)](https://travis-ci.org/lhorie/mithril.js) From 80349b3c740d0111e67874e3addd8f3cc3b88ac4 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Wed, 1 Jun 2016 15:42:08 -0400 Subject: [PATCH 23/78] #1080 parse pattern attribute correctly --- mithril.js | 7 ++++--- mithril.min.js | 4 ++-- mithril.min.js.map | 2 +- test/mithril.js | 3 +++ 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/mithril.js b/mithril.js index 48744789..5c2f151a 100644 --- a/mithril.js +++ b/mithril.js @@ -84,7 +84,7 @@ function parseTagAttrs(cell, tag) { var classes = [] - var parser = /(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g + var parser = /(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g var match while ((match = parser.exec(tag))) { @@ -95,8 +95,9 @@ } else if (match[1] === ".") { classes.push(match[2]) } else if (match[3][0] === "[") { - var pair = /\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(match[3]) - cell.attrs[pair[1]] = pair[3] || "" + var attrValue = match[6] + if (attrValue) attrValue = attrValue.replace(/\\(["'])/g, "$1") + cell.attrs[match[4]] = attrValue || "" } } diff --git a/mithril.min.js b/mithril.min.js index 6b91e57b..255e342a 100644 --- a/mithril.min.js +++ b/mithril.min.js @@ -1,8 +1,8 @@ /* -Mithril v0.2.4 +Mithril v0.2.5 http://mithril.js.org (c) 2014-2016 Leo Horie License: MIT */ -!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m);q(d,o,f);var r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return n||g!==!0||null==o||q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c&&va.activeElement!==a)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c]||a;return delete b[c],d})),a}k.version=function(){return"v0.2.4"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); +!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Ca.call(a)}function e(a){return"[object String]"===Ca.call(a)}function f(){}function g(a){xa=a.document,ya=a.location,Aa=a.cancelAnimationFrame||a.clearTimeout,za=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=c[6];f&&(f=f.replace(/\\(["'])/g,"$1")),a.attrs[c[4]]=f||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Da(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)Ba.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return da(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[xa.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Da(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Fa,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Ca.call(b)===Ca.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Da(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?xa.createElement(a.tag,a.attrs.is):xa.createElementNS(b,a.tag,a.attrs.is):null==b?xa.createElement(a.tag):xa.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ka.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ka.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ia||La||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m);q(d,o,f);var r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return n||g!==!0||null==o||q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Da(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)Ba.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)Ba.call(c,d)&&(Ba.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=aa(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ma[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c&&xa.activeElement!==a)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!Ba.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Da(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(xa.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b),Z(a)}}function Z(a){if("SCRIPT"===a.tagName)a.parentNode.replaceChild($(a),a);else{var b=a.childNodes;if(b&&b.length)for(var c=0;cb?Oa.push(a)-1:b}function ca(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function da(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ma(c.data||{}),xa.body.appendChild(e)}function ta(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},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="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==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 ua(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?sa(a):ta(a)}function va(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)}function wa(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c]||a;return delete b[c],d})),a}k.version=function(){return"v0.2.5"};var xa,ya,za,Aa,Ba={}.hasOwnProperty,Ca={}.toString,Da=Array.isArray||function(a){return"[object Array]"===Ca.call(a)},Ea={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Fa=1,Ga=2,Ha=3,Ia=0;k.startComputation=function(){Ia++},k.endComputation=function(){Ia>1?Ia--:(Ia=0,k.redraw())};var Ja,Ka=[],La=!1,Ma={list:1,style:1,form:1,type:1,width:1,height:1},Na={appendChild:function(a){Ja===b&&(Ja=xa.createElement("html")),xa.documentElement&&xa.documentElement!==a?xa.replaceChild(a,xa.documentElement):xa.appendChild(a),this.childNodes=xa.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Oa=[],Pa={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=ba(a),h=a===xa;e=h||a===xa.documentElement?Na:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Pa[g]===b&&W(e.childNodes),d===!0&&oa(a),Pa[g]=Q(e,null,b,b,c,Pa[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&(d(a)||c(a))||"undefined"!=typeof Promise&&a instanceof Promise)&&c(a.then)?pa(a):ca(a)};var Qa,Ra=[],Sa=[],Ta=[],Ua=null,Va=0,Wa=null,Xa=null,Ya=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Ra.length);var e=!1,f={preventDefault:function(){e=!0,Wa=Xa=null}};return l(Ka,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ka,function(a){a.controller.onunload=a.handler}):Ka=[],Ta[d]&&c(Ta[d].onunload)&&Ta[d].onunload(f),ea(b,a,d,e)};var Za=!1;k.redraw=function(b){if(!Za){Za=!0,b&&(La=!0);try{Ua&&!b?(za===a.requestAnimationFrame||new Date-Va>Ya)&&(Ua>0&&Aa(Ua),Ua=za(ga,Ya)):(ga(),Ua=za(function(){Ua=null},Ya))}finally{Za=La=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var $a,_a,ab={pathname:"",hash:"#",search:"?"},bb=f,cb=!1;k.route=function(b,c,d,f){if(0===arguments.length)return _a;if(3===arguments.length&&e(c)){bb=function(a){var e=_a=ia(a);if(!ja(b,d,e)){if(cb)throw new Error("Ensure the default route matches one of the routes defined in m.route");cb=!0,k.route(c,!0),cb=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=ya[k.route.mode];"pathname"===k.route.mode&&(a+=ya.search),_a!==ia(a)&&bb(a)},Wa=la,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?ya.pathname:"";return b.href=h+ab[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ka),b.addEventListener("click",ka)):(b.detachEvent("onclick",ka),b.attachEvent("onclick",ka)))}if(e(b)){var i=_a;_a=b;var j,l=c||{},m=_a.indexOf("?");j=m>-1?na(_a.slice(m+1)):{};for(var n in l)Ba.call(l,n)&&(j[n]=l[n]);var o,p=ma(j);o=m>-1?_a.slice(0,m):_a,p&&(_a=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Wa=la,Xa=function(){try{a.history[r](null,xa.title,ab[k.route.mode]+_a)}catch(b){ya[k.route.mode]=_a}},bb(ab[k.route.mode]+_a)}else ya[k.route.mode]=_a,bb(ab[k.route.mode]+_a)}},k.route.param=function(a){if(!$a)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?$a[a]:$a},k.route.mode="search",k.route.buildQueryString=ma,k.route.parseQueryString=na,k.deferred=function(){var a=new qa;return a.promise=pa(a.promise),a};var db=1,eb=2,fb=3,gb=4;return k.deferred.onerror=function(a){if("[object Error]"===Ca.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ia=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new qa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=ra,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=wa(a.url,a.data),va(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Da(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},ua(a),e.promise=pa(e.promise,a.initialValue),e.promise},k}); //# sourceMappingURL=mithril.min.js.map \ No newline at end of file diff --git a/mithril.min.js.map b/mithril.min.js.map index 60745a75..66357a44 100644 --- a/mithril.min.js.map +++ b/mithril.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file +{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","attrValue","replace","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","replaceScriptNodes","tagName","replaceChild","buildExecutableNode","scriptEl","attributes","name","text","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","pair","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","callbackName","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","forceRecreation","isDocumentRoot","trust","String","Promise","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","err","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file diff --git a/test/mithril.js b/test/mithril.js index 775d7ddb..b0ddeb2d 100644 --- a/test/mithril.js +++ b/test/mithril.js @@ -48,6 +48,9 @@ describe("m()", function () { it("sets correct double quoted attr", function () { expect(m("[title=\"bar\"]")).to.have.deep.property("attrs.title", "bar") }) + it("sets pattern attr", function () { + expect(m("[pattern=\"[a-zA-Z0-9]{56}\"]")).to.have.deep.property("attrs.pattern", "[a-zA-Z0-9]{56}") + }) it("sets correct children with 1 string arg", function () { expect(m("div", "test")) From 474c43e433eecb4d129918769af95468a22152e9 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Thu, 2 Jun 2016 18:47:41 -0400 Subject: [PATCH 24/78] update style if it's mutated object --- mithril.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mithril.js b/mithril.js index 5c2f151a..380aefa8 100644 --- a/mithril.js +++ b/mithril.js @@ -1007,6 +1007,10 @@ } function copyStyleAttrs(node, dataAttr, cachedAttr) { + if (cachedAttr === dataAttr) { + node.style = "" + cachedAttr = {} + } for (var rule in dataAttr) { if (hasOwn.call(dataAttr, rule)) { if (cachedAttr == null || cachedAttr[rule] !== dataAttr[rule]) { @@ -1091,7 +1095,7 @@ tag, namespace ) { - if (!(attrName in cachedAttrs) || (cachedAttr !== dataAttr) || ($document.activeElement === node)) { + if (!(attrName in cachedAttrs) || (cachedAttr !== dataAttr) || typeof dataAttr === "object" || ($document.activeElement === node)) { cachedAttrs[attrName] = dataAttr try { return setSingleAttr( From 2289061f90e75c9373fa4dd250691990fb44c994 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Fri, 3 Jun 2016 16:53:24 -0400 Subject: [PATCH 25/78] fix doc --- docs/mithril.component.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/mithril.component.md b/docs/mithril.component.md index bd7c1ec3..72c6d3b2 100644 --- a/docs/mithril.component.md +++ b/docs/mithril.component.md @@ -388,10 +388,10 @@ var people = [ ] //ajax and display a list of projects for John -m.render(document.body, ProjectList({key: people[0].id, value: people[0]}) +m.render(document.body, m(ProjectList, {key: people[0].id, value: people[0]})) //ajax and display a list of projects for Mary -m.render(document.body, ProjectList({key: people[1].id, value: people[1]}) +m.render(document.body, m(ProjectList, {key: people[1].id, value: people[1]})) ``` In the example above, since the key is different, the ProjectList component is recreated from scratch. As a result, the controller runs again, the DOM is re-generated, and any applicable 3rd party plugins in configs are re-initialized. From 52b0918297b0d19fca4deefe94674dfff4fd7671 Mon Sep 17 00:00:00 2001 From: Syaiful Bahri Date: Sun, 5 Jun 2016 04:32:22 +0700 Subject: [PATCH 26/78] update integration docs correct the code example to avoid infinite loop the infinite loop occure because the code example also update the value on change handler. issue #954. prove https://jsfiddle.net/syaiful6/kps3gabo/ --- docs/integration.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/integration.md b/docs/integration.md index 81c94a5c..918b6c08 100644 --- a/docs/integration.md +++ b/docs/integration.md @@ -38,7 +38,7 @@ var Select2 = { if (!isInitialized) { el.select2() .on("change", function(e) { - var id = el.select2("val"); + var id = el.val(); m.startComputation(); //Set the value to the selected option ctrl.data.map(function(d){ @@ -48,7 +48,7 @@ var Select2 = { }); if (typeof ctrl.onchange == "function"){ - ctrl.onchange(el.select2("val")); + ctrl.onchange(el.val()); } m.endComputation(); }); From 3cf16631a00f28383ed0311965082fb65360658e Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Mon, 6 Jun 2016 09:21:58 -0400 Subject: [PATCH 27/78] fix valueless attributes #1093 --- mithril.js | 2 +- test/mithril.js | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/mithril.js b/mithril.js index 380aefa8..e4a8dc67 100644 --- a/mithril.js +++ b/mithril.js @@ -97,7 +97,7 @@ } else if (match[3][0] === "[") { var attrValue = match[6] if (attrValue) attrValue = attrValue.replace(/\\(["'])/g, "$1") - cell.attrs[match[4]] = attrValue || "" + cell.attrs[match[4]] = attrValue || true } } diff --git a/test/mithril.js b/test/mithril.js index b0ddeb2d..88111f51 100644 --- a/test/mithril.js +++ b/test/mithril.js @@ -38,7 +38,7 @@ describe("m()", function () { }) it("sets attr without a value as an empty string", function () { - expect(m("[empty]")).to.have.deep.property("attrs.empty", "") + expect(m("[empty]")).to.have.deep.property("attrs.empty", true) }) it("sets correct single quoted attr", function () { @@ -48,9 +48,6 @@ describe("m()", function () { it("sets correct double quoted attr", function () { expect(m("[title=\"bar\"]")).to.have.deep.property("attrs.title", "bar") }) - it("sets pattern attr", function () { - expect(m("[pattern=\"[a-zA-Z0-9]{56}\"]")).to.have.deep.property("attrs.pattern", "[a-zA-Z0-9]{56}") - }) it("sets correct children with 1 string arg", function () { expect(m("div", "test")) From 8ee75924c8a0d5543e39474635c39280ab1ef2c9 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Mon, 6 Jun 2016 09:53:37 -0400 Subject: [PATCH 28/78] issue template --- ISSUE_TEMPLATE.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 ISSUE_TEMPLATE.md diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md new file mode 100644 index 00000000..7fa48b8d --- /dev/null +++ b/ISSUE_TEMPLATE.md @@ -0,0 +1,18 @@ +### Description: + +[Describe bug here] + +### Steps to Reproduce: + +``` +[Provide a small snippet of code where the incorrect behavior can be seen] +``` + +### Expected: + +[What was the expected behavior] + +### Actual: + +[What actually happened] + From 6f865f6abf3bcbed7b8cd3a602fb644b949b2839 Mon Sep 17 00:00:00 2001 From: Leo Horie Date: Fri, 10 Jun 2016 10:30:31 -0400 Subject: [PATCH 29/78] duplicate test fix into old test suite --- tests/mithril-tests.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/mithril-tests.js b/tests/mithril-tests.js index 172c6e06..abcac7b8 100644 --- a/tests/mithril-tests.js +++ b/tests/mithril-tests.js @@ -11,7 +11,7 @@ test(function () { return m(".foo").attrs.className === "foo" }) test(function () { return m("[title=bar]").tag === "div" }) test(function () { return m("[title=bar]").attrs.title === "bar" }) - test(function () { return m("[empty]").attrs.empty === "" }) + test(function () { return m("[empty]").attrs.empty === true }) test(function () { return m("[title=\'bar\']").attrs.title === "bar" }) test(function () { return m("[title=\"bar\"]").attrs.title === "bar" }) test(function () { return m("div", "test").children[0] === "test" }) From c98f663653b95ce800abf29aa6e0ed8f7b0b735b Mon Sep 17 00:00:00 2001 From: Bruce Lewis Date: Fri, 10 Jun 2016 11:00:56 -0400 Subject: [PATCH 30/78] Render booleans as empty strings --- mithril.js | 2 +- test/mithril.render.js | 18 ++++++++++++++++++ tests/mithril-tests.js | 20 +++++++++++++++++++- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/mithril.js b/mithril.js index e4a8dc67..9595a439 100644 --- a/mithril.js +++ b/mithril.js @@ -188,7 +188,7 @@ // value of Console.log in some versions of Firefox (behavior depends on // version) try { - if (data != null && data.toString() != null) return data + if (typeof data !== "boolean" && data != null && data.toString() != null) return data } catch (e) { // silently ignore errors } diff --git a/test/mithril.render.js b/test/mithril.render.js index ec6ba1ce..9cd0c95c 100644 --- a/test/mithril.render.js +++ b/test/mithril.render.js @@ -57,6 +57,24 @@ describe("m.render()", function () { expect(root.childNodes[0].childNodes[0].nodeValue).to.equal("") }) + it("renders `null` body to empty string", function () { + var root = mock.document.createElement("div") + m.render(root, m("div", [null])) + expect(root.childNodes[0].childNodes[0].nodeValue).to.equal("") + }) + + it("renders `true` body to empty string", function () { + var root = mock.document.createElement("div") + m.render(root, m("div", [true])) + expect(root.childNodes[0].childNodes[0].nodeValue).to.equal("") + }) + + it("renders `false` body to empty string", function () { + var root = mock.document.createElement("div") + m.render(root, m("div", [false])) + expect(root.childNodes[0].childNodes[0].nodeValue).to.equal("") + }) + it("uses the W3C URI as default namespace for SVG children", function () { var root = mock.document.createElement("div") m.render(root, m("svg", [m("g")])) diff --git a/tests/mithril-tests.js b/tests/mithril-tests.js index 172c6e06..dd5a4b98 100644 --- a/tests/mithril-tests.js +++ b/tests/mithril-tests.js @@ -11,7 +11,7 @@ test(function () { return m(".foo").attrs.className === "foo" }) test(function () { return m("[title=bar]").tag === "div" }) test(function () { return m("[title=bar]").attrs.title === "bar" }) - test(function () { return m("[empty]").attrs.empty === "" }) + test(function () { return m("[empty]").attrs.empty === true }) test(function () { return m("[title=\'bar\']").attrs.title === "bar" }) test(function () { return m("[title=\"bar\"]").attrs.title === "bar" }) test(function () { return m("div", "test").children[0] === "test" }) @@ -1750,6 +1750,24 @@ return root.childNodes[0].childNodes[0].nodeValue === "" }) + test(function () { + var root = mock.document.createElement("div") + m.render(root, m("div", [null])) + return root.childNodes[0].childNodes[0].nodeValue === "" + }) + + test(function () { + var root = mock.document.createElement("div") + m.render(root, m("div", [true])) + return root.childNodes[0].childNodes[0].nodeValue === "" + }) + + test(function () { + var root = mock.document.createElement("div") + m.render(root, m("div", [false])) + return root.childNodes[0].childNodes[0].nodeValue === "" + }) + test(function () { var root = mock.document.createElement("div") m.render(root, m("svg", [m("g")])) From 1b36f2b7205eadf54bebb3a005f8caf898c80c83 Mon Sep 17 00:00:00 2001 From: Demian Ferreiro Date: Mon, 13 Jun 2016 02:38:51 -0300 Subject: [PATCH 31/78] Add test for select value render edge case --- test/mithril.render.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/test/mithril.render.js b/test/mithril.render.js index 9cd0c95c..c2c56b5a 100644 --- a/test/mithril.render.js +++ b/test/mithril.render.js @@ -1567,5 +1567,15 @@ describe("m.render()", function () { expect(root.childNodes[0].innerHTML) .to.equal('') }) + + it("sets correct value when building an object. When a doesn't work before children - // exist, so set it again after children have been created - if (data.tag === "select" && "value" in data.attrs) { - setAttributes(node, data.tag, {value: data.attrs.value}, {}, - namespace) - } - return cached } @@ -888,6 +881,13 @@ controllers) } + // edge case: setting value on