diff --git a/dio/app.js b/dio/app.js index a9754a62..c0d0127f 100644 --- a/dio/app.js +++ b/dio/app.js @@ -1,155 +1,51 @@ "use strict" - var data = []; - -var propsDbname = {className: 'dbname'}, - propsQueryCount = {className: 'query-count'}, - propsPopoverLeft = {className: 'popover left'}, - propsPopoverContent = {className: 'popover-content'}, - propsArrow = {className: 'arrow'}, - propsTable = {className: 'table table-striped latest-data'}, - emptyObj = {}; - -var arrowDiv = { - nodeType: 1, - type: 'div', - props: {className: 'arrow'}, - children: [] -} - +var VElement = dio.VElement; +var VText = dio.VText; var DBMon = dio.createClass({ render: function() { - var length = data.length; var $children = new Array(length); - for (var i = 0; i < length; i = i + 1) { var db = data[i]; var children = new Array(7); - - children[0] = { - nodeType: 1, - type: 'td', - props: propsDbname, - children: - [ - { - nodeType: 3, - type: 'text', - props: emptyObj, - children: [db.dbname] - } - ] - } - - children[1] = { - nodeType: 1, - type: 'td', - props: propsQueryCount, - children: [ - { - nodeType: 1, - type: 'span', - props: {className: db.lastSample.countClassName}, - children: - [ - { - nodeType: 3, - type: 'text', - props: emptyObj, - children: [db.lastSample.nbQueries] - } - ] - } - ] - } - + children[0] = VElement('td', {className: 'dbname'}, [ + VText(db.dbname) + ]); + children[1] = VElement('td', {className: 'query-count'}, [ + VElement('span', {className: db.lastSample.countClassName}, [ + VText(db.lastSample.nbQueries) + ]) + ]); var topFiveQueries = db.lastSample.topFiveQueries; - for (var j = 0, len = topFiveQueries.length; j < len; j = j + 1) { var query = topFiveQueries[j]; - - children[j+2] = { - nodeType: 1, - type: 'td', - props: {key: j, className: query.elapsedClassName}, - children: [ - { - nodeType: 3, - type: 'text', - props: emptyObj, - children: [query.formatElapsed] - }, - { - nodeType: 1, - type: 'div', - props: propsPopoverLeft, - children: [ - { - nodeType: 1, - type: 'div', - props: propsPopoverContent, - children: [ - { - nodeType: 3, - type: 'text', - props: emptyObj, - children: [query.query] - } - ] - }, - arrowDiv - ] - } - ] - }; - } - - $children[i] = { - nodeType: 1, - type: 'tr', - props: {key: db.dbname}, - children: children + children[j+2] = VElement('td', {className: query.elapsedClassName}, [ + VText(query.formatElapsed), + VElement('div', {className: 'popover left'}, [ + VElement('div', {className: 'popover-content'}, [VText(query.query)]), + VElement('div', {className: 'arrow'}, null) + ]) + ]) } + $children[i] = VElement('tr', null, children); } - - return { - nodeType: 1, - type: 'div', - props: emptyObj, - children: [ - { - nodeType: 1, - type: 'table', - props: propsTable, - children: [ - { - nodeType: 1, - type: 'tbody', - props: emptyObj, - children: $children - } - ] - } - ] - } + return ( + VElement('div', null, [ + VElement('table', {className: 'table table-striped latest-data'}, [ + VElement('tbody', null, $children) + ]) + ]) + ); } }); -var render = dio.render({ - nodeType: 1, - type: DBMon, - props: {}, - children: [] -}, '#app'); - +var render = dio.render(dio.VComponent(DBMon), '#app'); function update() { data = ENV.generateData().toArray(); - - Monitoring.renderRate.ping(); render(); - + Monitoring.renderRate.ping(); setTimeout(update, ENV.timeout); } -update(); +update(); \ No newline at end of file diff --git a/dio/dio.min.js b/dio/dio.min.js index e529b656..c237c0bd 100644 --- a/dio/dio.min.js +++ b/dio/dio.min.js @@ -1 +1,2 @@ -!function(n,t){"use strict";"function"==typeof define&&define.amd?define([],t):t("object"==typeof exports&&"string"!=typeof exports.nodeName?exports:n)}(this,function(n){"use strict";function t(n,t,e){return Xn.call(n,t||0,e)}function e(n,t,e,r){return void 0===r?0===t?n.shift():t>=n.length-1?n.pop():n.splice(t,e):0===t?n.unshift(r):t>=n.length-1?n[n.length]=r:n.splice(t,e,r)}function r(n,t){var e=new Error(n);if(1===t)return e;throw e}function o(n,t,e){if(void 0!==n&&null!==n){var r;if(n.constructor===Array){for(var o=0,r=n.length;o=0;i-=1)i in n&&(r=t(r,n[i],i,n));return r}function s(n,t){t=t||[];for(var e=0,r=n.length;e-1||n.indexOf("[")>-1||n.indexOf("#")>-1)&&(s=k(s)),s}function O(n,t){var e;void 0===n||null===n||void 0===n.type?e={nodeType:3,type:"text",props:{},children:[""+n]}:void 0!==n.type?e=n:"function"==typeof n&&(e={nodeType:1,type:n,props:{},children:[]}),t[t.length]=e}function k(n){var t,e=[],r=n.type,o=n.props||{};for(n.type="div",void 0===Mn&&(Mn=new RegExp("(?:(^|#|\\.)([^#\\.\\[\\]]+))|(\\[(.+?)(?:\\s*=\\s*(\"|'|)((?:\\\\[\"'\\]]|.)*?)\\5)?\\])","g"));t=Mn.exec(r);){var i=t[1],c=t[2],u=t[3],a=t[4],f=t[6];if(""===i&&""!==c)n.type=c;else if("#"===i)o.id=c;else if("."===i)e[e.length]=c;else if("["===u.charAt(0)){var s=f;void 0!==s&&(s=s.replace(/\\(["'])/g,"$1").replace(/\\\\/g,"\\")),o[a]=s||!0}}return 0!==e.length&&(o.className=e.join(" ")),n.props=o,n}function j(n,t,e){if(void 0!==Object.assign?Object.assign(n.props,t):l(n.props,t),void 0!==e&&e.constructor===Array){var r=e.length;if(0!==r){n.children=[];for(var o=0;o3}function U(n){return n.substr(2,n.length).toLowerCase()}function A(n,t,e){void 0!==n&&("string"==typeof n?e[n]=t:"function"==typeof n&&n(t))}function W(n,t,e){for(var r in t)S(n,r,t,e)}function S(n,t,e,r){var o=e[t];N(t,o)===!0?d(n,U(t),o):1!==r&&C(n,"setAttribute",t,o,e.xmlns)}function C(n,t,e,r,o){if("ref"!==e&&"key"!==e&&N(e,r)!==!0&&r!==Jn&&r!==Bn){if("xlink:href"===e)return void n[t+"NS"](Hn,"href",r);var i=0;o===Jn?(i=1,"className"===e&&(e="class")):"class"===e&&(e="className");var c=null!==r&&void 0!==r?1:0;if(1===c&&"object"==typeof r)if("className"===e||"class"===e){var u=R(r);1===i?n[t](e,u):n[e]=u}else{var a=n[e];if(void 0===a)return;M(r,a)}else void 0!==n[e]&&0===i?n[e]=r:(0===c||r===!1?t="removeAttribute":r===!0&&(r=""),n[t](e,r))}}function R(n){var t="";for(var e in n){var r=n[e];void 0!==r&&null!==r&&r!==!1&&0!==r&&""!==r&&(t+=r)}return t}function M(n,t){for(var e in n){var r=n[e];e in t&&(t[e]=r)}}function L(n,t){var e=P(n.props,t.props,n.props.xmlns||"",[]),r=e.length;if(0!==r){for(var o=t._el,i=0;i=t-1?B(o,e,r):V(o,e,r,i._el)}function z(n,t,e){if(3===n.nodeType){var r=n.children[0]||"";return n._el=Vn.createTextNode("string"!=typeof r?""+r:r)}var o,i=G(n),c=i.type,u=i.props,a=i.children,f=a.length;if(void 0!==n._owner&&(t=n._owner),void 0!==u.xmlns&&(e=u.xmlns),void 0!==e?(o=Vn.createElementNS(e,c),void 0===u.xmlns&&(u.xmlns=e)):o=11===i.nodeType?Vn.createDocumentFragment():Vn.createElement(c),void 0!==u.ref&&void 0!==t&&A(u.ref,o,t.refs),W(o,u,0),0!==f)for(var s=0;sf?(J(y,f,p,z(d),d,v),e(u,y,0,d),s-=1,f+=1):(H(d,p,z(d),v._el),u[y]=d)}}}}return 0}function $(n,e,r,o){var i=G(e),c=0;void 0!==i.props&&i.type.charAt(0)===Pn&&(c=1);var u=1===c?n:n.childNodes[r];if(1===i.nodeType){for(var a=i.children,f=a.length,s=0;s":"<"+e+Y(r)+">"+en(o)+""}function Y(n){if(n.constructor===Object){var t=nn(n,[]),e=t.join(" ").replace(/ +/g," ").trim();return e?" "+e:""}return" "+n}function nn(n,t){for(var e in n)tn(e,n[e],t);return t}function tn(n,t,e){if(void 0!==t&&null!==t&&t!==!1&&"key"!==n&&"ref"!==n&&"function"!=typeof t){var r=t===!0?n:n+'="'+t+'"';e[e.length]=r}}function en(n){return void 0===n||null===n||0===n.length?"":c(n,function(n){return Q(n)}).join("")}function rn(n,t){function e(n){if(1===c)on(i,o),c=0,void 0===r&&(r=o._owner);else{void 0!==n&&(r.props=n);var t=Date.now(),f=t-u;f>a&&(u=t-f%a,r.forceUpdate())}return e}if(void 0!==n._render&&n._mount===t)return n._render;var r,o;if(o=void 0!==n.render||n.constructor===Function?{nodeType:1,type:ln(n),props:{},children:[]}:void 0===n.type?{nodeType:1,type:n,props:{},children:[]}:n,void 0!==o.props&&null!==o.props&&o.props.constructor===Object||(o.props={}),void 0===Vn)return K(o);var i=un(t),c=1,u=0,a=1e3/60;return e._render=e,e._mount=t,"function"==typeof o.type&&(o.type._render=e,o.type._mount=t),i.hasAttribute("data-hydrate")?($(i,o,0,$n),i.removeAttribute("data-hydrate"),c=0,void 0===r&&(r=o._owner),e):e()}function on(n,t){n.textContent="",B(t,n,z(t))}function cn(n,t){Z(n,t)}function un(n){if(void 0===Vn)return n;var t,e;return e="function"==typeof n?n():n,t=void 0!==e&&null!==e&&void 0!==e.nodeType?e:Vn.querySelector(e),void 0===t||null===t||t===Vn?Vn.body:t}function an(n,t){for(var e in n){var r=n[e];r!==In&&(t[e]=r)}}function fn(){return{}}function sn(){return{}}function pn(n){var t=[],e=[];for(var r in n){var o=n[r];"function"==typeof o&&"render"!==r&&(t[t.length]=o,e[e.length]=r)}var i=e.length;return function(n){for(var r=0;r-1?o=n(o):i.indexOf("json")>-1&&(o=JSON.stringify(o))),f.send(o)}})}function r(t){return function(r,o,i,c){switch(r=encodeURI(r),i){case"json":i="application/json";break;case"text":i="text/plain";break;case"file":i="multipart/form-data";break;default:i="application/x-www-form-urlencoded"}return void 0!==o&&"GET"===t&&(r=r+"?"+n(o)),e(r,t,o,i,c)}}function o(n){return o[n.method.toLowerCase()](n.url,n.payload,n.enctype,n.withCredentials)}return o.get=r("GET"),o.post=r("POST"),o.put=r("PUT"),o["delete"]=r("DELETE"),o}function En(n,t,e,r,o){return"function"==typeof n&&(n=n()),"function"==typeof t&&(t=t()),"object"==typeof t&&(r=t.mount,e=t.init,o=t.middleware,t=t.root),void 0!==r&&i(n,function(t,e){void 0!==o?n[e]=function(n){o(t,n,r,e)}:n[e]=function(n){rn({nodeType:1,type:t,props:n,children:[]},r)}}),Nn(n,t,e)}function Nn(n,t,e){function r(){void 0!==s&&clearInterval(s),s=setInterval(function(){var n=qn.location.pathname;f!==n&&(f=n,c())},50)}function o(){var e=/([:*])(\w+)|([\*])/g;i(n,function(r,o){var i=[],c=o.replace(e,function(){var n=arguments,t=n[2];return void 0===t||null===t?"(?:.*)":(i[i.length]=t,"([^/]+)")}),u=new RegExp((t?t+c:c)+"$");n[o]=[r,u,i]})}function c(){i(n,function(n,t){var e=n[0],r=n[1],o=n[2],i=f.match(r);if(void 0!==i&&null!==i){var c=i.slice(1,i.length),u=a(c,function(n,t,e){return n||(n={}),n[o[e]]=t,n},void 0);e(u,t)}})}function u(n){t&&(n=t+n),history.pushState(void 0,void 0,n)}"string"==typeof t&&"/"===t.substr(-1)&&(t=t.substr(0,t.length-1));var f,s;o(),r();var p={nav:u,back:history.back,foward:history.foward,go:history.go,routes:n};return void 0!==e&&(h(e)?e(p):y(e)&&u(e)),p}function Un(){var n=arguments,e=t(n);if(0===e.length)return function(n){return n};var r=e.pop();return function(){return f(e,function(n,t){return t(n)},r.apply(void 0,arguments))}}function An(){var n=arguments,e=t(n);return function(n){return function(r,o,i){var u=n(r,o,i),a=u.dispatch,f=[],s={getState:u.getState,dispatch:function(n){return a(n)}};return f=c(e,function(n){return n(s)}),a=Un.apply(void 0,t(f))(u.dispatch),l({},u,{dispatch:a})}}}function Wn(n){var t=p(n);return function(e,r){return e=e||{},a(t,function(t,o){return t[o]=n[o](e[o],r),t},{})}}function Sn(n,t){function o(){return f}function i(t){void 0===t.type&&r("actions without type"),f=n(f,t);for(var e=0,o=s.length;e-1}function t(t,e){if(void 0!==t.classList)t.classList.add(e);else if(n(t,e)===!0){var r=t.className.split(" ");r[r.length]=e,t.className=r.join(" ")}}function e(n,t){if(void 0!==n.classList)n.classList.remove(t);else{var e=n.className.split(" ");e.splice(e.indexOf(t),1),n.className=e.join(" ")}}function o(r,o){void 0!==r.classList?r.classList.toggle(o):n(r,o)===!0?e(r,o):t(r,o)}function i(n,t,e){if(void 0!==n&&void 0===n[t])for(var r=["webkit","Webkit","Moz","ms"],o=0,i=r.length;o-1&&(d="display:-webkit-flex; display:flex;");else if(123===C){if(b++,0===g||2===l)if(2===b){m++;for(var U="",W=d.substring(0,d.length-1).split(","),P=h.substring(0,h.length-1).split(","),V=1;m0){var a=0;l=[];for(var p=0;p1&&3===(d[t+1]||re).nodeType){for(var h=X.createDocumentFragment(),u=t,v=f-t;u3}function H(e,n,t){var o=n.bind,r=n["with"],i=void 0===n.preventDefault||n.preventDefault===!0;if("object"==typeof o){var l=o.property||r;return function(e){var n=e.currentTarget||e.target,o=r in n?n[r]:n.getAttribute(r);i&&e.preventDefault(),t.state[l]=o,t.forceUpdate()}}return function(e){i&&e.preventDefault(),o.call(r,r,e)}}function J(e){var n,t=e.type;n=void 0!==t.COMPCache?t.COMPCache:t.constructor!==Function||void 0!==t.prototype&&void 0!==t.prototype.render?t:t.COMPCache=C(t);var o=e.instance=new n(e.props);0!==e.children.length&&(o.props.children=e.children);var r=K(o);return void 0!==e.props.key&&void 0===r.props.key&&(r.props.key=e.props.key),2===r.nodeType&&(r=J(r)),e.props=r.props,e.children=r.children,o.VNode=r}function K(e){var n=e.render(e.props,e.state,e)||a();return void 0!==n.nodeType?n:d("@",null,n)}var Q="5.0.2",X=e.document||null,Y=null!==X,Z=Y===!1,$="data-scope",_="http://www.w3.org/1998/Math/MathML",ee="http://www.w3.org/1999/xlink",ne="http://www.w3.org/2000/svg",te=Object.create(null),oe=[],re=p(0,"",te,oe,null,null,null),ie="JrIFgLKeEuQUPbhBnWZCTXDtRcxwSzaqijOvfpklYdAoMHmsVNGy";return b.prototype=Object.create(null,{setState:{value:g},forceUpdate:{value:D}}),Y&&(e.h=d),{createElement:d,isValidElement:y,cloneElement:h,createFactory:v,VText:o,VElement:r,VSvg:i,VFragment:l,VComponent:s,DOM:m,render:N,shallow:k,Component:b,createClass:C,version:Q,h:d}}); \ No newline at end of file diff --git a/ember/app.js b/ember/app.js deleted file mode 100644 index 19181b08..00000000 --- a/ember/app.js +++ /dev/null @@ -1,209 +0,0 @@ - -var start = Date.now(); - -var App, Database, _base, _base1; -var loadCount = 0; - -Database = Ember.Object.extend({ - name: null, - hostname: null, - samples: null, - latestSample: (function() { - var samples; - samples = this.get('samples'); - if ((samples == null) || samples.get('length') === 0) { - return {}; - } - return samples.objectAt(samples.get('length') - 1); - }).property('samples.@each') -}); - -Database.reopenClass({ - _all: Ember.ArrayProxy.create({ - content: [] - }), - find: function(name) { - return this._all.findProperty('name', name); - }, - findAll: function() { - return this._all; - }, - _get: function(name) { - var cached, db; - cached = this.find(name); - if (cached) { - return cached; - } - db = this.create({ - name: name, - samples: Ember.ArrayProxy.create() - }); - db.get('samples').set('content', []); - this._all.pushObject(db); - return db; - }, - loadLatest: function() { - var data, db, dbname, i, info, q, r, url, _i, _j, _ref, _results; - data = { - start_at: new Date().getTime() / 1000, - databases: {} - }; - for (i = _i = 1; _i <= ENV.rows; i = ++_i) { - data.databases["cluster" + i] = { - queries: [] - }; - data.databases["cluster" + i + "slave"] = { - queries: [] - }; - } - _ref = data.databases; - _results = []; - for (dbname in _ref) { - info = _ref[dbname]; - r = Math.floor((Math.random() * 10) + 1); - for (i = _j = 0; 0 <= r ? _j <= r : _j >= r; i = 0 <= r ? ++_j : --_j) { - q = { - canvas_action: null, - canvas_context_id: null, - canvas_controller: null, - canvas_hostname: null, - canvas_job_tag: null, - canvas_pid: null, - elapsed: Math.random() * 15, - query: "SELECT blah FROM something", - waiting: Math.random() < 0.5 - }; - if (Math.random() < 0.2) { - q.query = " in transaction"; - } - if (Math.random() < 0.1) { - q.query = "vacuum"; - } - info.queries.push(q); - } - info.queries = info.queries.sort(function(a, b) { - return b.elapsed - a.elapsed; - }); - db = this._get(dbname); - _results.push(db.get('samples').pushObject({ - time: data.start_at, - queries: info.queries - })); - } - Ember.run.later(function() { - loadCount++; - Database.loadLatest(); - Monitoring.renderRate.ping(); - }, ENV.timeout); - } -}); - -App = Ember.Application.create({ - rootElement: '#app' -}); - -App.Router.map(function() { - return this.resource('database', { - path: "/dbs/:name" - }); -}); - -App.DatabaseRoute = Ember.Route.extend({ - model: function(params) { - return Database.find(params.name); - } -}); - -App.ApplicationController = Ember.ArrayController.extend({ - sortProperties: ['name'], - sortAscending: true -}); - -App.SampleController = Ember.ObjectController.extend({ - topFiveQueries: (function() { - var ary; - ary = this.get('content.queries').slice(0, 5); - while (ary.length < 5) { - ary.push({ - query: "" - }); - } - return ary; - }).property('content.queries.@each'), - queriesCountLabelClass: (function() { - var count; - count = this.get('content.nbQueries'); - if (count >= 20) { - return "label-important"; - } - if (count >= 10) { - return "label-warning"; - } - return "label-success"; - }).property('content.queries.@each') -}); - -App.QueryController = Ember.ObjectController.extend({ - elapsedClass: (function() { - var elapsed; - elapsed = this.get('content.elapsed'); - if (elapsed >= 10.0) { - return "warn_long"; - } - if (elapsed >= 1.0) { - return "warn"; - } - return "short"; - }).property('content.elapsed'), - vacuum: (function() { - var query; - query = this.get('query').toLowerCase(); - return query.indexOf('vacuum') > -1 || query.indexOf('reorg') > -1; - }).property('content.query'), - idle: (function() { - return this.get('query').indexOf('') > -1; - }).property('content.query') -}); - -App.ApplicationRoute = Ember.Route.extend({ - model: function() { - return Database.findAll(); - }, - activate: function() { - //console.log("loading!"); - Database.loadLatest(); - //return this.interval = setInterval(function() { - //Database.loadLatest(); - //}, 1000); - }, - deactivate: function() { - return clearInterval(this.interval); - } -}); - -(_base = String.prototype).repeat || (_base.repeat = function(num) { - return new Array(num + 1).join(this); -}); - -(_base1 = String.prototype).lpad || (_base1.lpad = function(padding, toLength) { - return padding.repeat((toLength - this.length) / padding.length).concat(this); -}); - -Ember.Handlebars.registerBoundHelper('formatElapsed', function(value) { - var comps, minutes, ms, seconds, str; - str = parseFloat(value).toFixed(2); - if (value > 60) { - minutes = Math.floor(value / 60); - comps = (value % 60).toFixed(2).split('.'); - seconds = comps[0].lpad('0', 2); - ms = comps[1]; - str = "" + minutes + ":" + seconds + "." + ms; - } - return str; -}); - -App.ApplicationView = Ember.View.extend({ - didInsertElement: function() { - console.log(Date.now() - start); - } -}); diff --git a/ember/assets/js-repaint-perfs-ember.css b/ember/assets/js-repaint-perfs-ember.css new file mode 100644 index 00000000..8f6ec649 --- /dev/null +++ b/ember/assets/js-repaint-perfs-ember.css @@ -0,0 +1,27 @@ +body {color:#333;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;margin:0;} +label {display:inline-block;font-weight:700;margin-bottom:5px;} +input[type=range] {display:block;width:100%;} +table {border-collapse:collapse;border-spacing:0;} +:before,:after {box-sizing: border-box;} + +.table > thead > tr > th,.table > tbody > tr > th,.table > tfoot > tr > th,.table > thead > tr > td,.table > tbody > tr > td,.table > tfoot > tr > td {border-top:1px solid #ddd;line-height:1.42857143;padding:8px;vertical-align:top;} +.table {width:100%;} +.table-striped > tbody > tr:nth-child(odd) > td,.table-striped > tbody > tr:nth-child(odd) > th {background:#f9f9f9;} + +.label {border-radius:.25em;color:#fff;display:inline;font-size:75%;font-weight:700;line-height:1;padding:.2em .6em .3em;text-align:center;vertical-align:baseline;white-space:nowrap;} +.label-success {background-color:#5cb85c;} +.label-warning {background-color:#f0ad4e;} + +.popover {background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;box-shadow:0 5px 10px rgba(0,0,0,.2);display:none;left:0;max-width:276px;padding:1px;position:absolute;text-align:left;top:0;white-space:normal;z-index:1010;} +.popover>.arrow:after {border-width:10px;content:"";} +.popover.left {margin-left:-10px;} +.popover.left > .arrow {border-right-width:0;border-left-color:rgba(0,0,0,.25);margin-top:-11px;right:-11px;top:50%;} +.popover.left > .arrow:after {border-left-color:#fff;border-right-width:0;bottom:-10px;content:" ";right:1px;} +.popover > .arrow {border-width:11px;} +.popover > .arrow,.popover>.arrow:after {border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0;} + +.popover-content {padding:9px 14px;} + +.Query {position:relative;} +.Query:hover .popover {display:block;left:-100%;width:100%;} +div#stats { z-index: 2; } diff --git a/ember/assets/js-repaint-perfs-ember.js b/ember/assets/js-repaint-perfs-ember.js new file mode 100644 index 00000000..67133ecd --- /dev/null +++ b/ember/assets/js-repaint-perfs-ember.js @@ -0,0 +1,305 @@ +"use strict"; + +/* jshint ignore:start */ + + + +/* jshint ignore:end */ + +define('js-repaint-perfs-ember/app', ['exports', 'ember', 'js-repaint-perfs-ember/resolver', 'ember-load-initializers', 'js-repaint-perfs-ember/config/environment'], function (exports, _ember, _jsRepaintPerfsEmberResolver, _emberLoadInitializers, _jsRepaintPerfsEmberConfigEnvironment) { + + var App = undefined; + + _ember['default'].MODEL_FACTORY_INJECTIONS = true; + + App = _ember['default'].Application.extend({ + modulePrefix: _jsRepaintPerfsEmberConfigEnvironment['default'].modulePrefix, + podModulePrefix: _jsRepaintPerfsEmberConfigEnvironment['default'].podModulePrefix, + Resolver: _jsRepaintPerfsEmberResolver['default'] + }); + + (0, _emberLoadInitializers['default'])(App, _jsRepaintPerfsEmberConfigEnvironment['default'].modulePrefix); + + exports['default'] = App; +}); +define('js-repaint-perfs-ember/helpers/app-version', ['exports', 'ember', 'js-repaint-perfs-ember/config/environment'], function (exports, _ember, _jsRepaintPerfsEmberConfigEnvironment) { + exports.appVersion = appVersion; + var version = _jsRepaintPerfsEmberConfigEnvironment['default'].APP.version; + + function appVersion() { + return version; + } + + exports['default'] = _ember['default'].Helper.helper(appVersion); +}); +define('js-repaint-perfs-ember/helpers/pluralize', ['exports', 'ember-inflector/lib/helpers/pluralize'], function (exports, _emberInflectorLibHelpersPluralize) { + exports['default'] = _emberInflectorLibHelpersPluralize['default']; +}); +define('js-repaint-perfs-ember/helpers/singularize', ['exports', 'ember-inflector/lib/helpers/singularize'], function (exports, _emberInflectorLibHelpersSingularize) { + exports['default'] = _emberInflectorLibHelpersSingularize['default']; +}); +define('js-repaint-perfs-ember/initializers/app-version', ['exports', 'ember-cli-app-version/initializer-factory', 'js-repaint-perfs-ember/config/environment'], function (exports, _emberCliAppVersionInitializerFactory, _jsRepaintPerfsEmberConfigEnvironment) { + var _config$APP = _jsRepaintPerfsEmberConfigEnvironment['default'].APP; + var name = _config$APP.name; + var version = _config$APP.version; + exports['default'] = { + name: 'App Version', + initialize: (0, _emberCliAppVersionInitializerFactory['default'])(name, version) + }; +}); +define('js-repaint-perfs-ember/initializers/container-debug-adapter', ['exports', 'ember-resolver/container-debug-adapter'], function (exports, _emberResolverContainerDebugAdapter) { + exports['default'] = { + name: 'container-debug-adapter', + + initialize: function initialize() { + var app = arguments[1] || arguments[0]; + + app.register('container-debug-adapter:main', _emberResolverContainerDebugAdapter['default']); + app.inject('container-debug-adapter:main', 'namespace', 'application:main'); + } + }; +}); +define('js-repaint-perfs-ember/initializers/data-adapter', ['exports', 'ember'], function (exports, _ember) { + + /* + This initializer is here to keep backwards compatibility with code depending + on the `data-adapter` initializer (before Ember Data was an addon). + + Should be removed for Ember Data 3.x + */ + + exports['default'] = { + name: 'data-adapter', + before: 'store', + initialize: _ember['default'].K + }; +}); +define('js-repaint-perfs-ember/initializers/ember-data', ['exports', 'ember-data/setup-container', 'ember-data/-private/core'], function (exports, _emberDataSetupContainer, _emberDataPrivateCore) { + + /* + + This code initializes Ember-Data onto an Ember application. + + If an Ember.js developer defines a subclass of DS.Store on their application, + as `App.StoreService` (or via a module system that resolves to `service:store`) + this code will automatically instantiate it and make it available on the + router. + + Additionally, after an application's controllers have been injected, they will + each have the store made available to them. + + For example, imagine an Ember.js application with the following classes: + + App.StoreService = DS.Store.extend({ + adapter: 'custom' + }); + + App.PostsController = Ember.Controller.extend({ + // ... + }); + + When the application is initialized, `App.ApplicationStore` will automatically be + instantiated, and the instance of `App.PostsController` will have its `store` + property set to that instance. + + Note that this code will only be run if the `ember-application` package is + loaded. If Ember Data is being used in an environment other than a + typical application (e.g., node.js where only `ember-runtime` is available), + this code will be ignored. + */ + + exports['default'] = { + name: 'ember-data', + initialize: _emberDataSetupContainer['default'] + }; +}); +define('js-repaint-perfs-ember/initializers/export-application-global', ['exports', 'ember', 'js-repaint-perfs-ember/config/environment'], function (exports, _ember, _jsRepaintPerfsEmberConfigEnvironment) { + exports.initialize = initialize; + + function initialize() { + var application = arguments[1] || arguments[0]; + if (_jsRepaintPerfsEmberConfigEnvironment['default'].exportApplicationGlobal !== false) { + var theGlobal; + if (typeof window !== 'undefined') { + theGlobal = window; + } else if (typeof global !== 'undefined') { + theGlobal = global; + } else if (typeof self !== 'undefined') { + theGlobal = self; + } else { + // no reasonable global, just bail + return; + } + + var value = _jsRepaintPerfsEmberConfigEnvironment['default'].exportApplicationGlobal; + var globalName; + + if (typeof value === 'string') { + globalName = value; + } else { + globalName = _ember['default'].String.classify(_jsRepaintPerfsEmberConfigEnvironment['default'].modulePrefix); + } + + if (!theGlobal[globalName]) { + theGlobal[globalName] = application; + + application.reopen({ + willDestroy: function willDestroy() { + this._super.apply(this, arguments); + delete theGlobal[globalName]; + } + }); + } + } + } + + exports['default'] = { + name: 'export-application-global', + + initialize: initialize + }; +}); +define('js-repaint-perfs-ember/initializers/injectStore', ['exports', 'ember'], function (exports, _ember) { + + /* + This initializer is here to keep backwards compatibility with code depending + on the `injectStore` initializer (before Ember Data was an addon). + + Should be removed for Ember Data 3.x + */ + + exports['default'] = { + name: 'injectStore', + before: 'store', + initialize: _ember['default'].K + }; +}); +define('js-repaint-perfs-ember/initializers/store', ['exports', 'ember'], function (exports, _ember) { + + /* + This initializer is here to keep backwards compatibility with code depending + on the `store` initializer (before Ember Data was an addon). + + Should be removed for Ember Data 3.x + */ + + exports['default'] = { + name: 'store', + after: 'ember-data', + initialize: _ember['default'].K + }; +}); +define('js-repaint-perfs-ember/initializers/transforms', ['exports', 'ember'], function (exports, _ember) { + + /* + This initializer is here to keep backwards compatibility with code depending + on the `transforms` initializer (before Ember Data was an addon). + + Should be removed for Ember Data 3.x + */ + + exports['default'] = { + name: 'transforms', + before: 'store', + initialize: _ember['default'].K + }; +}); +define("js-repaint-perfs-ember/instance-initializers/ember-data", ["exports", "ember-data/-private/instance-initializers/initialize-store-service"], function (exports, _emberDataPrivateInstanceInitializersInitializeStoreService) { + exports["default"] = { + name: "ember-data", + initialize: _emberDataPrivateInstanceInitializersInitializeStoreService["default"] + }; +}); +define('js-repaint-perfs-ember/resolver', ['exports', 'ember-resolver'], function (exports, _emberResolver) { + exports['default'] = _emberResolver['default']; +}); +define('js-repaint-perfs-ember/router', ['exports', 'ember', 'js-repaint-perfs-ember/config/environment'], function (exports, _ember, _jsRepaintPerfsEmberConfigEnvironment) { + + var Router = _ember['default'].Router.extend({ + location: _jsRepaintPerfsEmberConfigEnvironment['default'].locationType, + rootURL: _jsRepaintPerfsEmberConfigEnvironment['default'].rootURL + }); + + Router.map(function () {}); + + exports['default'] = Router; +}); +define('js-repaint-perfs-ember/routes/application', ['exports', 'ember', 'js-repaint-perfs-ember/utils/get-data'], function (exports, _ember, _jsRepaintPerfsEmberUtilsGetData) { + exports['default'] = _ember['default'].Route.extend({ + model: function model() { + return { + databases: [] + }; + }, + + afterModel: function afterModel() { + this.loadSamples(); + }, + + loadSamples: function loadSamples() { + var model = this.modelFor('application'); + _ember['default'].set(model, 'databaseArray', (0, _jsRepaintPerfsEmberUtilsGetData['default'])()); + Monitoring.renderRate.ping(); // jshint ignore:line + requestAnimationFrame(_ember['default'].run.bind(this, this.loadSamples)); + } + }); +}); +define('js-repaint-perfs-ember/services/ajax', ['exports', 'ember-ajax/services/ajax'], function (exports, _emberAjaxServicesAjax) { + Object.defineProperty(exports, 'default', { + enumerable: true, + get: function get() { + return _emberAjaxServicesAjax['default']; + } + }); +}); +define("js-repaint-perfs-ember/templates/application", ["exports"], function (exports) { + exports["default"] = Ember.HTMLBars.template({ "id": "f0eNU8fP", "block": "{\"statements\":[[\"open-element\",\"div\",[]],[\"flush-element\"],[\"text\",\"\\n \"],[\"open-element\",\"table\",[]],[\"static-attr\",\"class\",\"table table-striped latest-data\"],[\"flush-element\"],[\"text\",\"\\n \"],[\"open-element\",\"tbody\",[]],[\"flush-element\"],[\"text\",\"\\n\"],[\"block\",[\"each\"],[[\"get\",[\"model\",\"databaseArray\"]]],[[\"key\"],[\"dbname\"]],1],[\"text\",\" \"],[\"close-element\"],[\"text\",\"\\n \"],[\"close-element\"],[\"text\",\"\\n\"],[\"close-element\"]],\"locals\":[],\"named\":[],\"yields\":[],\"blocks\":[{\"statements\":[[\"text\",\" \"],[\"open-element\",\"td\",[]],[\"dynamic-attr\",\"class\",[\"concat\",[\"Query \",[\"unknown\",[\"query\",\"className\"]]]]],[\"flush-element\"],[\"text\",\"\\n \"],[\"append\",[\"unknown\",[\"query\",\"formatElapsed\"]],false],[\"text\",\"\\n \"],[\"open-element\",\"div\",[]],[\"static-attr\",\"class\",\"popover left\"],[\"flush-element\"],[\"text\",\"\\n \"],[\"open-element\",\"div\",[]],[\"static-attr\",\"class\",\"popover-content\"],[\"flush-element\"],[\"append\",[\"unknown\",[\"query\",\"query\"]],false],[\"close-element\"],[\"text\",\"\\n \"],[\"open-element\",\"div\",[]],[\"static-attr\",\"class\",\"arrow\"],[\"flush-element\"],[\"close-element\"],[\"text\",\"\\n \"],[\"close-element\"],[\"text\",\"\\n \"],[\"close-element\"],[\"text\",\"\\n\"]],\"locals\":[\"query\"]},{\"statements\":[[\"text\",\" \"],[\"open-element\",\"tr\",[]],[\"flush-element\"],[\"text\",\"\\n \"],[\"open-element\",\"td\",[]],[\"static-attr\",\"class\",\"dbname\"],[\"flush-element\"],[\"text\",\"\\n \"],[\"append\",[\"unknown\",[\"db\",\"dbname\"]],false],[\"text\",\"\\n \"],[\"close-element\"],[\"text\",\"\\n \"],[\"open-element\",\"td\",[]],[\"static-attr\",\"class\",\"query-count\"],[\"flush-element\"],[\"text\",\"\\n \"],[\"open-element\",\"span\",[]],[\"dynamic-attr\",\"class\",[\"concat\",[[\"unknown\",[\"db\",\"lastSample\",\"countClassName\"]]]]],[\"flush-element\"],[\"text\",\"\\n \"],[\"append\",[\"unknown\",[\"db\",\"lastSample\",\"nbQueries\"]],false],[\"text\",\"\\n \"],[\"close-element\"],[\"text\",\"\\n \"],[\"close-element\"],[\"text\",\"\\n\"],[\"block\",[\"each\"],[[\"get\",[\"db\",\"lastSample\",\"topFiveQueries\"]]],[[\"key\"],[\"@index\"]],0],[\"text\",\" \"],[\"close-element\"],[\"text\",\"\\n\"]],\"locals\":[\"db\"]}],\"hasPartials\":false}", "meta": { "moduleName": "js-repaint-perfs-ember/templates/application.hbs" } }); +}); +define("js-repaint-perfs-ember/utils/get-data", ["exports"], function (exports) { + exports["default"] = getData; + var ENV = window.ENV; // jshint ignore:line + + function getData() { + return ENV.generateData().toArray(); + } +}); +/* jshint ignore:start */ + + + +/* jshint ignore:end */ + +/* jshint ignore:start */ + +define('js-repaint-perfs-ember/config/environment', ['ember'], function(Ember) { + var prefix = 'js-repaint-perfs-ember'; +/* jshint ignore:start */ + +try { + var metaName = prefix + '/config/environment'; + var rawConfig = document.querySelector('meta[name="' + metaName + '"]').getAttribute('content'); + var config = JSON.parse(unescape(rawConfig)); + + var exports = { 'default': config }; + + Object.defineProperty(exports, '__esModule', { value: true }); + + return exports; +} +catch(err) { + throw new Error('Could not read config from meta tag with name "' + metaName + '".'); +} + +/* jshint ignore:end */ + +}); + +/* jshint ignore:end */ + +/* jshint ignore:start */ + +if (!runningTests) { + require("js-repaint-perfs-ember/app")["default"].create({"name":"js-repaint-perfs-ember","version":"0.0.0+b36a2a3a"}); +} + +/* jshint ignore:end */ diff --git a/ember/assets/vendor.js b/ember/assets/vendor.js new file mode 100644 index 00000000..c6736d9f --- /dev/null +++ b/ember/assets/vendor.js @@ -0,0 +1,25 @@ +function createDeprecatedModule(e){define(e,["exports","ember-resolver/resolver","ember"],function(t,r,n){n.default.deprecate("Usage of `"+e+"` module is deprecated, please update to `ember-resolver`.",!1,{id:"ember-resolver.legacy-shims",until:"3.0.0"}),t.default=r.default})}window.EmberENV={FEATURES:{},EXTEND_PROTOTYPES:{Date:!1}};var runningTests=!1,loader,define,requireModule,require,requirejs;!function(e){"use strict";function t(){l={define:0,require:0,reify:0,findDeps:0,modules:0,exports:0,resolve:0,resolveRelative:0,findModule:0,pendingQueueLength:0},requirejs._stats=l}function r(e){throw new Error("an unsupported module was defined, expected `define(name, deps, module)` instead got: `"+e+"` arguments to define`")}function n(e,t,r,n){l.modules++,this.id=h++,this.name=e,this.deps=!t.length&&r.length?m:t,this.module={exports:{}},this.callback=r,this.finalized=!1,this.hasExportsAsDep=!1,this.isAlias=n,this.reified=new Array(t.length),this._foundDeps=!1,this.isPending=!1}function i(e){this.name=e}function o(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}function a(e,t,r){l.findModule++;for(var n=d[e]||d[e+"/index"];n&&n.isAlias;)n=d[n.name];return n||o(e,t),!r||n.finalized||n.isPending||(n.findDeps(r),r.push(n),l.pendingQueueLength++),n}function s(e,t){if(l.resolve++,"."!==e.charAt(0))return e;l.resolveRelative++;for(var r=e.split("/"),n=t.split("/"),i=n.slice(0,-1),o=0,a=r.length;o=0;n--)t[n].exports();return r.module.exports},t(),loader={noConflict:function(t){var r,n;for(r in t)t.hasOwnProperty(r)&&c.hasOwnProperty(r)&&(n=t[r],e[n]=e[r],e[r]=c[r])}};var p;p=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)};var d={},f={},h=0,m=["require","exports","module"];n.prototype.makeDefaultExport=function(){var e=this.module.exports;null===e||"object"!=typeof e&&"function"!=typeof e||void 0!==e.default||(e.default=e)},n.prototype.exports=function(){if(this.finalized)return this.module.exports;l.exports++,this.finalized=!0,this.isPending=!1,loader.wrapModules&&(this.callback=loader.wrapModules(this.name,this.callback)),this.reify();var e=this.callback.apply(this,this.reified);return this.hasExportsAsDep&&void 0===e||(this.module.exports=e),this.makeDefaultExport(),this.module.exports},n.prototype.unsee=function(){this.finalized=!1,this._foundDeps=!1,this.isPending=!1,this.module={exports:{}}},n.prototype.reify=function(){l.reify++;for(var e=this.reified,t=0;t0&&t-1 in e)}function i(e,t,r){return he.isFunction(t)?he.grep(e,function(e,n){return!!t.call(e,n,e)!==r}):t.nodeType?he.grep(e,function(e){return e===t!==r}):"string"!=typeof t?he.grep(e,function(e){return ae.call(t,e)>-1!==r}):Ae.test(t)?he.filter(t,e,r):(t=he.filter(t,e),he.grep(e,function(e){return ae.call(t,e)>-1!==r&&1===e.nodeType}))}function o(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function a(e){var t={};return he.each(e.match(ke)||[],function(e,r){t[r]=!0}),t}function s(e){return e}function u(e){throw e}function l(e,t,r){var n;try{e&&he.isFunction(n=e.promise)?n.call(e).done(t).fail(r):e&&he.isFunction(n=e.then)?n.call(e,t,r):t.call(void 0,e)}catch(e){r.call(void 0,e)}}function c(){te.removeEventListener("DOMContentLoaded",c),e.removeEventListener("load",c),he.ready()}function p(){this.expando=he.expando+p.uid++}function d(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:Le.test(e)?JSON.parse(e):e)}function f(e,t,r){var n;if(void 0===r&&1===e.nodeType)if(n="data-"+t.replace(Fe,"-$&").toLowerCase(),r=e.getAttribute(n),"string"==typeof r){try{r=d(r)}catch(e){}Ie.set(e,t,r)}else r=void 0;return r}function h(e,t,r,n){var i,o=1,a=20,s=n?function(){return n.cur()}:function(){return he.css(e,t,"")},u=s(),l=r&&r[3]||(he.cssNumber[t]?"":"px"),c=(he.cssNumber[t]||"px"!==l&&+u)&&Be.exec(he.css(e,t));if(c&&c[3]!==l){l=l||c[3],r=r||[],c=+u||1;do o=o||".5",c/=o,he.style(e,t,c+l);while(o!==(o=s()/u)&&1!==o&&--a)}return r&&(c=+c||+u||0,i=r[1]?c+(r[1]+1)*r[2]:+r[2],n&&(n.unit=l,n.start=c,n.end=i)),i}function m(e){var t,r=e.ownerDocument,n=e.nodeName,i=Ve[n];return i?i:(t=r.body.appendChild(r.createElement(n)),i=he.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),Ve[n]=i,i)}function y(e,t){for(var r,n,i=[],o=0,a=e.length;o-1)i&&i.push(o);else if(l=he.contains(o.ownerDocument,o),a=v(p.appendChild(o),"script"),l&&g(a),r)for(c=0;o=a[c++];)Ge.test(o.type||"")&&r.push(o);return p}function _(){return!0}function w(){return!1}function x(){try{return te.activeElement}catch(e){}}function E(e,t,r,n,i,o){var a,s;if("object"==typeof t){"string"!=typeof r&&(n=n||r,r=void 0);for(s in t)E(e,s,r,n,t[s],o);return e}if(null==n&&null==i?(i=r,n=r=void 0):null==i&&("string"==typeof r?(i=n,n=void 0):(i=n,n=r,r=void 0)),i===!1)i=w;else if(!i)return e;return 1===o&&(a=i,i=function(e){return he().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=he.guid++)),e.each(function(){he.event.add(this,t,i,n,r)})}function A(e,t){return he.nodeName(e,"table")&&he.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e:e}function R(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function S(e){var t=nt.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function C(e,t){var r,n,i,o,a,s,u,l;if(1===t.nodeType){if(je.hasData(e)&&(o=je.access(e),a=je.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(r=0,n=l[i].length;r1&&"string"==typeof h&&!de.checkClone&&rt.test(h))return e.each(function(r){var o=e.eq(r);m&&(t[0]=h.call(this,r,o.html())),T(o,t,n,i)});if(d&&(o=b(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=he.map(v(o,"script"),R),u=s.length;p=0&&rE.cacheLength&&delete e[t.shift()],e[r+" "]=n}var t=[];return e}function n(e){return e[B]=!0,e}function i(e){var t=D.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var r=e.split("|"),n=r.length;n--;)E.attrHandle[r[n]]=t}function a(e,t){var r=t&&e,n=r&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(n)return n;if(r)for(;r=r.nextSibling;)if(r===t)return-1;return e?1:-1}function s(e){return function(t){var r=t.nodeName.toLowerCase();return"input"===r&&t.type===e}}function u(e){return function(t){var r=t.nodeName.toLowerCase();return("input"===r||"button"===r)&&t.type===e}}function l(e){return function(t){return"form"in t?t.parentNode&&t.disabled===!1?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Ae(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function c(e){return n(function(t){return t=+t,n(function(r,n){for(var i,o=e([],r.length,t),a=o.length;a--;)r[i=o[a]]&&(r[i]=!(n[i]=r[i]))})})}function p(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function d(){}function f(e){for(var t=0,r=e.length,n="";t1?function(t,r,n){for(var i=e.length;i--;)if(!e[i](t,r,n))return!1;return!0}:e[0]}function y(e,r,n){for(var i=0,o=r.length;i-1&&(n[l]=!(a[l]=p))}}else b=v(b===a?b.splice(h,b.length):b),o?o(null,a,b,u):X.apply(a,b)})}function b(e){for(var t,r,n,i=e.length,o=E.relative[e[0].type],a=o||E.relative[" "],s=o?1:0,u=h(function(e){return e===t},a,!0),l=h(function(e){return ee(t,e)>-1},a,!0),c=[function(e,r,n){var i=!o&&(n||r!==T)||((t=r).nodeType?u(e,r,n):l(e,r,n));return t=null,i}];s1&&m(c),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),r,s0,o=e.length>0,a=function(n,a,s,u,l){var c,p,d,f=0,h="0",m=n&&[],y=[],g=T,b=n||o&&E.find.TAG("*",l),_=q+=null==g?1:Math.random()||.1,w=b.length;for(l&&(T=a===D||a||l);h!==w&&null!=(c=b[h]);h++){if(o&&c){for(p=0,a||c.ownerDocument===D||(P(c),s=!j);d=e[p++];)if(d(c,a||D,s)){u.push(c);break}l&&(q=_)}i&&((c=!d&&c)&&f--,n&&m.push(c))}if(f+=h,i&&h!==f){for(p=0;d=r[p++];)d(m,y,a,s);if(n){if(f>0)for(;h--;)m[h]||y[h]||(y[h]=Q.call(u));y=v(y)}X.apply(u,y),l&&!n&&y.length>0&&f+r.length>1&&t.uniqueSort(u)}return l&&(q=_,T=g),m};return i?n(a):a}var w,x,E,A,R,S,C,O,T,k,N,P,D,M,j,I,L,F,z,B="sizzle"+1*new Date,U=e.document,q=0,H=0,V=r(),W=r(),K=r(),G=function(e,t){return e===t&&(N=!0),0},$={}.hasOwnProperty,Y=[],Q=Y.pop,J=Y.push,X=Y.push,Z=Y.slice,ee=function(e,t){for(var r=0,n=e.length;r+~]|"+re+")"+re+"*"),ce=new RegExp("="+re+"*([^\\]'\"]*?)"+re+"*\\]","g"),pe=new RegExp(oe),de=new RegExp("^"+ne+"$"),fe={ID:new RegExp("^#("+ne+")"),CLASS:new RegExp("^\\.("+ne+")"),TAG:new RegExp("^("+ne+"|[*])"),ATTR:new RegExp("^"+ie),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+re+"*(even|odd|(([+-]|)(\\d*)n|)"+re+"*(?:([+-]|)"+re+"*(\\d+)|))"+re+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+re+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+re+"*((?:-\\d)?\\d*)"+re+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ye=/^[^{]+\{\s*\[native \w/,ve=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ge=/[+~]/,be=new RegExp("\\\\([\\da-f]{1,6}"+re+"?|("+re+")|.)","ig"),_e=function(e,t,r){var n="0x"+t-65536;return n!==n||r?t:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320)},we=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,xe=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},Ee=function(){P()},Ae=h(function(e){return e.disabled===!0&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{X.apply(Y=Z.call(U.childNodes),U.childNodes),Y[U.childNodes.length].nodeType}catch(e){X={apply:Y.length?function(e,t){J.apply(e,Z.call(t))}:function(e,t){for(var r=e.length,n=0;e[r++]=t[n++];);e.length=r-1}}}x=t.support={},R=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},P=t.setDocument=function(e){var t,r,n=e?e.ownerDocument||e:U;return n!==D&&9===n.nodeType&&n.documentElement?(D=n,M=D.documentElement,j=!R(D),U!==D&&(r=D.defaultView)&&r.top!==r&&(r.addEventListener?r.addEventListener("unload",Ee,!1):r.attachEvent&&r.attachEvent("onunload",Ee)),x.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),x.getElementsByTagName=i(function(e){return e.appendChild(D.createComment("")),!e.getElementsByTagName("*").length}),x.getElementsByClassName=ye.test(D.getElementsByClassName),x.getById=i(function(e){return M.appendChild(e).id=B,!D.getElementsByName||!D.getElementsByName(B).length}),x.getById?(E.filter.ID=function(e){var t=e.replace(be,_e);return function(e){return e.getAttribute("id")===t}},E.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&j){var r=t.getElementById(e);return r?[r]:[]}}):(E.filter.ID=function(e){var t=e.replace(be,_e);return function(e){var r="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return r&&r.value===t}},E.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&j){var r,n,i,o=t.getElementById(e);if(o){if(r=o.getAttributeNode("id"),r&&r.value===e)return[o];for(i=t.getElementsByName(e),n=0;o=i[n++];)if(r=o.getAttributeNode("id"),r&&r.value===e)return[o]}return[]}}),E.find.TAG=x.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):x.qsa?t.querySelectorAll(e):void 0}:function(e,t){var r,n=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;r=o[i++];)1===r.nodeType&&n.push(r);return n}return o},E.find.CLASS=x.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&j)return t.getElementsByClassName(e)},L=[],I=[],(x.qsa=ye.test(D.querySelectorAll))&&(i(function(e){M.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&I.push("[*^$]="+re+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||I.push("\\["+re+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+B+"-]").length||I.push("~="),e.querySelectorAll(":checked").length||I.push(":checked"),e.querySelectorAll("a#"+B+"+*").length||I.push(".#.+[+~]")}),i(function(e){e.innerHTML="";var t=D.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&I.push("name"+re+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&I.push(":enabled",":disabled"),M.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&I.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),I.push(",.*:")})),(x.matchesSelector=ye.test(F=M.matches||M.webkitMatchesSelector||M.mozMatchesSelector||M.oMatchesSelector||M.msMatchesSelector))&&i(function(e){x.disconnectedMatch=F.call(e,"*"),F.call(e,"[s!='']:x"),L.push("!=",oe)}),I=I.length&&new RegExp(I.join("|")),L=L.length&&new RegExp(L.join("|")),t=ye.test(M.compareDocumentPosition),z=t||ye.test(M.contains)?function(e,t){var r=9===e.nodeType?e.documentElement:e,n=t&&t.parentNode;return e===n||!(!n||1!==n.nodeType||!(r.contains?r.contains(n):e.compareDocumentPosition&&16&e.compareDocumentPosition(n)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},G=t?function(e,t){if(e===t)return N=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r?r:(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&r||!x.sortDetached&&t.compareDocumentPosition(e)===r?e===D||e.ownerDocument===U&&z(U,e)?-1:t===D||t.ownerDocument===U&&z(U,t)?1:k?ee(k,e)-ee(k,t):0:4&r?-1:1)}:function(e,t){if(e===t)return N=!0,0;var r,n=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===D?-1:t===D?1:i?-1:o?1:k?ee(k,e)-ee(k,t):0;if(i===o)return a(e,t);for(r=e;r=r.parentNode;)s.unshift(r);for(r=t;r=r.parentNode;)u.unshift(r);for(;s[n]===u[n];)n++;return n?a(s[n],u[n]):s[n]===U?-1:u[n]===U?1:0},D):D},t.matches=function(e,r){return t(e,null,null,r)},t.matchesSelector=function(e,r){if((e.ownerDocument||e)!==D&&P(e),r=r.replace(ce,"='$1']"),x.matchesSelector&&j&&!K[r+" "]&&(!L||!L.test(r))&&(!I||!I.test(r)))try{var n=F.call(e,r);if(n||x.disconnectedMatch||e.document&&11!==e.document.nodeType)return n; +}catch(e){}return t(r,D,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==D&&P(e),z(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==D&&P(e);var r=E.attrHandle[t.toLowerCase()],n=r&&$.call(E.attrHandle,t.toLowerCase())?r(e,t,!j):void 0;return void 0!==n?n:x.attributes||!j?e.getAttribute(t):(n=e.getAttributeNode(t))&&n.specified?n.value:null},t.escape=function(e){return(e+"").replace(we,xe)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,r=[],n=0,i=0;if(N=!x.detectDuplicates,k=!x.sortStable&&e.slice(0),e.sort(G),N){for(;t=e[i++];)t===e[i]&&(n=r.push(i));for(;n--;)e.splice(r[n],1)}return k=null,e},A=t.getText=function(e){var t,r="",n=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)r+=A(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[n++];)r+=A(t);return r},E=t.selectors={cacheLength:50,createPseudo:n,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(be,_e),e[3]=(e[3]||e[4]||e[5]||"").replace(be,_e),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,r=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":r&&pe.test(r)&&(t=S(r,!0))&&(t=r.indexOf(")",r.length-t)-r.length)&&(e[0]=e[0].slice(0,t),e[2]=r.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(be,_e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=V[e+" "];return t||(t=new RegExp("(^|"+re+")"+e+"("+re+"|$)"))&&V(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,r,n){return function(i){var o=t.attr(i,e);return null==o?"!="===r:!r||(o+="","="===r?o===n:"!="===r?o!==n:"^="===r?n&&0===o.indexOf(n):"*="===r?n&&o.indexOf(n)>-1:"$="===r?n&&o.slice(-n.length)===n:"~="===r?(" "+o.replace(ae," ")+" ").indexOf(n)>-1:"|="===r&&(o===n||o.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,r,n,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===n&&0===i?function(e){return!!e.parentNode}:function(t,r,u){var l,c,p,d,f,h,m=o!==a?"nextSibling":"previousSibling",y=t.parentNode,v=s&&t.nodeName.toLowerCase(),g=!u&&!s,b=!1;if(y){if(o){for(;m;){for(d=t;d=d[m];)if(s?d.nodeName.toLowerCase()===v:1===d.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?y.firstChild:y.lastChild],a&&g){for(d=y,p=d[B]||(d[B]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),l=c[e]||[],f=l[0]===q&&l[1],b=f&&l[2],d=f&&y.childNodes[f];d=++f&&d&&d[m]||(b=f=0)||h.pop();)if(1===d.nodeType&&++b&&d===t){c[e]=[q,f,b];break}}else if(g&&(d=t,p=d[B]||(d[B]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),l=c[e]||[],f=l[0]===q&&l[1],b=f),b===!1)for(;(d=++f&&d&&d[m]||(b=f=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==v:1!==d.nodeType)||!++b||(g&&(p=d[B]||(d[B]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),c[e]=[q,b]),d!==t)););return b-=i,b===n||b%n===0&&b/n>=0}}},PSEUDO:function(e,r){var i,o=E.pseudos[e]||E.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[B]?o(r):o.length>1?(i=[e,e,"",r],E.setFilters.hasOwnProperty(e.toLowerCase())?n(function(e,t){for(var n,i=o(e,r),a=i.length;a--;)n=ee(e,i[a]),e[n]=!(t[n]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:n(function(e){var t=[],r=[],i=C(e.replace(se,"$1"));return i[B]?n(function(e,t,r,n){for(var o,a=i(e,null,n,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,n,o){return t[0]=e,i(t,null,o,r),t[0]=null,!r.pop()}}),has:n(function(e){return function(r){return t(e,r).length>0}}),contains:n(function(e){return e=e.replace(be,_e),function(t){return(t.textContent||t.innerText||A(t)).indexOf(e)>-1}}),lang:n(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(be,_e).toLowerCase(),function(t){var r;do if(r=j?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return r=r.toLowerCase(),r===e||0===r.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var r=e.location&&e.location.hash;return r&&r.slice(1)===t.id},root:function(e){return e===M},focus:function(e){return e===D.activeElement&&(!D.hasFocus||D.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:l(!1),disabled:l(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!E.pseudos.empty(e)},header:function(e){return me.test(e.nodeName)},input:function(e){return he.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,r){return[r<0?r+t:r]}),even:c(function(e,t){for(var r=0;r=0;)e.push(n);return e}),gt:c(function(e,t,r){for(var n=r<0?r+t:r;++n2&&"ID"===(a=o[0]).type&&9===t.nodeType&&j&&E.relative[o[1].type]){if(t=(E.find.ID(a.matches[0].replace(be,_e),t)||[])[0],!t)return r;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=fe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!E.relative[s=a.type]);)if((u=E.find[s])&&(n=u(a.matches[0].replace(be,_e),ge.test(o[0].type)&&p(t.parentNode)||t))){if(o.splice(i,1),e=n.length&&f(o),!e)return X.apply(r,n),r;break}}return(l||C(e,c))(n,t,!j,r,!t||ge.test(e)&&p(t.parentNode)||t),r},x.sortStable=B.split("").sort(G).join("")===B,x.detectDuplicates=!!N,P(),x.sortDetached=i(function(e){return 1&e.compareDocumentPosition(D.createElement("fieldset"))}),i(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,r){if(!r)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),x.attributes&&i(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,r){if(!r&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(te,function(e,t,r){var n;if(!r)return e[t]===!0?t.toLowerCase():(n=e.getAttributeNode(t))&&n.specified?n.value:null}),t}(e);he.find=be,he.expr=be.selectors,he.expr[":"]=he.expr.pseudos,he.uniqueSort=he.unique=be.uniqueSort,he.text=be.getText,he.isXMLDoc=be.isXML,he.contains=be.contains,he.escapeSelector=be.escape;var _e=function(e,t,r){for(var n=[],i=void 0!==r;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&he(e).is(r))break;n.push(e)}return n},we=function(e,t){for(var r=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&r.push(e);return r},xe=he.expr.match.needsContext,Ee=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,Ae=/^.[^:#\[\.,]*$/;he.filter=function(e,t,r){var n=t[0];return r&&(e=":not("+e+")"),1===t.length&&1===n.nodeType?he.find.matchesSelector(n,e)?[n]:[]:he.find.matches(e,he.grep(t,function(e){return 1===e.nodeType}))},he.fn.extend({find:function(e){var t,r,n=this.length,i=this;if("string"!=typeof e)return this.pushStack(he(e).filter(function(){for(t=0;t1?he.uniqueSort(r):r},filter:function(e){return this.pushStack(i(this,e||[],!1))},not:function(e){return this.pushStack(i(this,e||[],!0))},is:function(e){return!!i(this,"string"==typeof e&&xe.test(e)?he(e):e||[],!1).length}});var Re,Se=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,Ce=he.fn.init=function(e,t,r){var n,i;if(!e)return this;if(r=r||Re,"string"==typeof e){if(n="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:Se.exec(e),!n||!n[1]&&t)return!t||t.jquery?(t||r).find(e):this.constructor(t).find(e);if(n[1]){if(t=t instanceof he?t[0]:t,he.merge(this,he.parseHTML(n[1],t&&t.nodeType?t.ownerDocument||t:te,!0)),Ee.test(n[1])&&he.isPlainObject(t))for(n in t)he.isFunction(this[n])?this[n](t[n]):this.attr(n,t[n]);return this}return i=te.getElementById(n[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):he.isFunction(e)?void 0!==r.ready?r.ready(e):e(he):he.makeArray(e,this)};Ce.prototype=he.fn,Re=he(te);var Oe=/^(?:parents|prev(?:Until|All))/,Te={children:!0,contents:!0,next:!0,prev:!0};he.fn.extend({has:function(e){var t=he(e,this),r=t.length;return this.filter(function(){for(var e=0;e-1:1===r.nodeType&&he.find.matchesSelector(r,e))){o.push(r);break}return this.pushStack(o.length>1?he.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?ae.call(he(e),this[0]):ae.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(he.uniqueSort(he.merge(this.get(),he(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),he.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return _e(e,"parentNode")},parentsUntil:function(e,t,r){return _e(e,"parentNode",r)},next:function(e){return o(e,"nextSibling")},prev:function(e){return o(e,"previousSibling")},nextAll:function(e){return _e(e,"nextSibling")},prevAll:function(e){return _e(e,"previousSibling")},nextUntil:function(e,t,r){return _e(e,"nextSibling",r)},prevUntil:function(e,t,r){return _e(e,"previousSibling",r)},siblings:function(e){return we((e.parentNode||{}).firstChild,e)},children:function(e){return we(e.firstChild)},contents:function(e){return e.contentDocument||he.merge([],e.childNodes)}},function(e,t){he.fn[e]=function(r,n){var i=he.map(this,t,r);return"Until"!==e.slice(-5)&&(n=r),n&&"string"==typeof n&&(i=he.filter(n,i)),this.length>1&&(Te[e]||he.uniqueSort(i),Oe.test(e)&&i.reverse()),this.pushStack(i)}});var ke=/[^\x20\t\r\n\f]+/g;he.Callbacks=function(e){e="string"==typeof e?a(e):he.extend({},e);var t,r,n,i,o=[],s=[],u=-1,l=function(){for(i=e.once,n=t=!0;s.length;u=-1)for(r=s.shift();++u-1;)o.splice(r,1),r<=u&&u--}),this},has:function(e){return e?he.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=s=[],o=r="",this},disabled:function(){return!o},lock:function(){return i=s=[],r||t||(o=r=""),this},locked:function(){return!!i},fireWith:function(e,r){return i||(r=r||[],r=[e,r.slice?r.slice():r],s.push(r),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!n}};return c},he.extend({Deferred:function(t){var r=[["notify","progress",he.Callbacks("memory"),he.Callbacks("memory"),2],["resolve","done",he.Callbacks("once memory"),he.Callbacks("once memory"),0,"resolved"],["reject","fail",he.Callbacks("once memory"),he.Callbacks("once memory"),1,"rejected"]],n="pending",i={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return he.Deferred(function(t){he.each(r,function(r,n){var i=he.isFunction(e[n[4]])&&e[n[4]];o[n[1]](function(){var e=i&&i.apply(this,arguments);e&&he.isFunction(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[n[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,n,i){function o(t,r,n,i){return function(){var l=this,c=arguments,p=function(){var e,p;if(!(t=a&&(n!==u&&(l=void 0,c=[e]),r.rejectWith(l,c))}};t?d():(he.Deferred.getStackHook&&(d.stackTrace=he.Deferred.getStackHook()),e.setTimeout(d))}}var a=0;return he.Deferred(function(e){r[0][3].add(o(0,e,he.isFunction(i)?i:s,e.notifyWith)),r[1][3].add(o(0,e,he.isFunction(t)?t:s)),r[2][3].add(o(0,e,he.isFunction(n)?n:u))}).promise()},promise:function(e){return null!=e?he.extend(e,i):i}},o={};return he.each(r,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){n=s},r[3-e][2].disable,r[0][2].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,r=t,n=Array(r),i=ne.call(arguments),o=he.Deferred(),a=function(e){return function(r){n[e]=this,i[e]=arguments.length>1?ne.call(arguments):r,--t||o.resolveWith(n,i)}};if(t<=1&&(l(e,o.done(a(r)).resolve,o.reject),"pending"===o.state()||he.isFunction(i[r]&&i[r].then)))return o.then();for(;r--;)l(i[r],a(r),o.reject);return o.promise()}});var Ne=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;he.Deferred.exceptionHook=function(t,r){e.console&&e.console.warn&&t&&Ne.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,r)},he.readyException=function(t){e.setTimeout(function(){throw t})};var Pe=he.Deferred();he.fn.ready=function(e){return Pe.then(e).catch(function(e){he.readyException(e)}),this},he.extend({isReady:!1,readyWait:1,holdReady:function(e){e?he.readyWait++:he.ready(!0)},ready:function(e){(e===!0?--he.readyWait:he.isReady)||(he.isReady=!0,e!==!0&&--he.readyWait>0||Pe.resolveWith(te,[he]))}}),he.ready.then=Pe.then,"complete"===te.readyState||"loading"!==te.readyState&&!te.documentElement.doScroll?e.setTimeout(he.ready):(te.addEventListener("DOMContentLoaded",c),e.addEventListener("load",c));var De=function(e,t,r,n,i,o,a){var s=0,u=e.length,l=null==r;if("object"===he.type(r)){i=!0;for(s in r)De(e,t,s,r[s],!0,o,a)}else if(void 0!==n&&(i=!0,he.isFunction(n)||(a=!0),l&&(a?(t.call(e,n),t=null):(l=t,t=function(e,t,r){return l.call(he(e),r)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){Ie.remove(this,e)})}}),he.extend({queue:function(e,t,r){var n;if(e)return t=(t||"fx")+"queue",n=je.get(e,t),r&&(!n||he.isArray(r)?n=je.access(e,t,he.makeArray(r)):n.push(r)),n||[]},dequeue:function(e,t){t=t||"fx";var r=he.queue(e,t),n=r.length,i=r.shift(),o=he._queueHooks(e,t),a=function(){he.dequeue(e,t)};"inprogress"===i&&(i=r.shift(),n--),i&&("fx"===t&&r.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!n&&o&&o.empty.fire()},_queueHooks:function(e,t){var r=t+"queueHooks";return je.get(e,r)||je.access(e,r,{empty:he.Callbacks("once memory").add(function(){je.remove(e,[t+"queue",r])})})}}),he.fn.extend({queue:function(e,t){var r=2;return"string"!=typeof e&&(t=e,e="fx",r--),arguments.length\x20\t\r\n\f]+)/i,Ge=/^$|\/(?:java|ecma)script/i,$e={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};$e.optgroup=$e.option,$e.tbody=$e.tfoot=$e.colgroup=$e.caption=$e.thead,$e.th=$e.td;var Ye=/<|&#?\w+;/;!function(){var e=te.createDocumentFragment(),t=e.appendChild(te.createElement("div")),r=te.createElement("input");r.setAttribute("type","radio"),r.setAttribute("checked","checked"),r.setAttribute("name","t"),t.appendChild(r),de.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="",de.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Qe=te.documentElement,Je=/^key/,Xe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ze=/^([^.]*)(?:\.(.+)|)/;he.event={global:{},add:function(e,t,r,n,i){var o,a,s,u,l,c,p,d,f,h,m,y=je.get(e);if(y)for(r.handler&&(o=r,r=o.handler,i=o.selector),i&&he.find.matchesSelector(Qe,i),r.guid||(r.guid=he.guid++),(u=y.events)||(u=y.events={}),(a=y.handle)||(a=y.handle=function(t){return"undefined"!=typeof he&&he.event.triggered!==t.type?he.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(ke)||[""],l=t.length;l--;)s=Ze.exec(t[l])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f&&(p=he.event.special[f]||{},f=(i?p.delegateType:p.bindType)||f,p=he.event.special[f]||{},c=he.extend({type:f,origType:m,data:n,handler:r,guid:r.guid,selector:i,needsContext:i&&he.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=u[f])||(d=u[f]=[],d.delegateCount=0,p.setup&&p.setup.call(e,n,h,a)!==!1||e.addEventListener&&e.addEventListener(f,a)),p.add&&(p.add.call(e,c),c.handler.guid||(c.handler.guid=r.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),he.event.global[f]=!0)},remove:function(e,t,r,n,i){var o,a,s,u,l,c,p,d,f,h,m,y=je.hasData(e)&&je.get(e);if(y&&(u=y.events)){for(t=(t||"").match(ke)||[""],l=t.length;l--;)if(s=Ze.exec(t[l])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f){for(p=he.event.special[f]||{},f=(n?p.delegateType:p.bindType)||f,d=u[f]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)c=d[o],!i&&m!==c.origType||r&&r.guid!==c.guid||s&&!s.test(c.namespace)||n&&n!==c.selector&&("**"!==n||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,p.remove&&p.remove.call(e,c));a&&!d.length&&(p.teardown&&p.teardown.call(e,h,y.handle)!==!1||he.removeEvent(e,f,y.handle),delete u[f])}else for(f in u)he.event.remove(e,f+t[l],r,n,!0);he.isEmptyObject(u)&&je.remove(e,"handle events")}},dispatch:function(e){var t,r,n,i,o,a,s=he.event.fix(e),u=new Array(arguments.length),l=(je.get(this,"events")||{})[s.type]||[],c=he.event.special[s.type]||{};for(u[0]=s,t=1;t=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||l.disabled!==!0)){for(o=[],a={},r=0;r-1:he.find(i,this,null,[l]).length),a[i]&&o.push(n);o.length&&s.push({elem:l,handlers:o})}return l=this,u\x20\t\r\n\f]*)[^>]*)\/>/gi,tt=/\s*$/g;he.extend({htmlPrefilter:function(e){return e.replace(et,"<$1>")},clone:function(e,t,r){var n,i,o,a,s=e.cloneNode(!0),u=he.contains(e.ownerDocument,e);if(!(de.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||he.isXMLDoc(e)))for(a=v(s),o=v(e),n=0,i=o.length;n0&&g(a,!u&&v(e,"script")),s},cleanData:function(e){for(var t,r,n,i=he.event.special,o=0;void 0!==(r=e[o]);o++)if(Me(r)){if(t=r[je.expando]){if(t.events)for(n in t.events)i[n]?he.event.remove(r,n):he.removeEvent(r,n,t.handle);r[je.expando]=void 0}r[Ie.expando]&&(r[Ie.expando]=void 0)}}}),he.fn.extend({detach:function(e){return k(this,e,!0)},remove:function(e){return k(this,e)},text:function(e){return De(this,function(e){return void 0===e?he.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return T(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=A(this,e);t.appendChild(e)}})},prepend:function(){return T(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=A(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return T(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return T(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(he.cleanData(v(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return he.clone(this,e,t)})},html:function(e){return De(this,function(e){var t=this[0]||{},r=0,n=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!tt.test(e)&&!$e[(Ke.exec(e)||["",""])[1].toLowerCase()]){e=he.htmlPrefilter(e);try{for(;r1)}}),he.Tween=L,L.prototype={constructor:L,init:function(e,t,r,n,i,o){this.elem=e,this.prop=r,this.easing=i||he.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=n,this.unit=o||(he.cssNumber[r]?"":"px")},cur:function(){var e=L.propHooks[this.prop];return e&&e.get?e.get(this):L.propHooks._default.get(this)},run:function(e){var t,r=L.propHooks[this.prop];return this.options.duration?this.pos=t=he.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),r&&r.set?r.set(this):L.propHooks._default.set(this),this}},L.prototype.init.prototype=L.prototype,L.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=he.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){he.fx.step[e.prop]?he.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[he.cssProps[e.prop]]&&!he.cssHooks[e.prop]?e.elem[e.prop]=e.now:he.style(e.elem,e.prop,e.now+e.unit)}}},L.propHooks.scrollTop=L.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},he.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},he.fx=L.prototype.init,he.fx.step={};var ft,ht,mt=/^(?:toggle|show|hide)$/,yt=/queueHooks$/;he.Animation=he.extend(V,{tweeners:{"*":[function(e,t){var r=this.createTween(e,t);return h(r.elem,e,Be.exec(t),r),r}]},tweener:function(e,t){he.isFunction(e)?(t=e,e=["*"]):e=e.match(ke);for(var r,n=0,i=e.length;n1)},removeAttr:function(e){return this.each(function(){he.removeAttr(this,e)})}}),he.extend({attr:function(e,t,r){var n,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?he.prop(e,t,r):(1===o&&he.isXMLDoc(e)||(i=he.attrHooks[t.toLowerCase()]||(he.expr.match.bool.test(t)?vt:void 0)),void 0!==r?null===r?void he.removeAttr(e,t):i&&"set"in i&&void 0!==(n=i.set(e,r,t))?n:(e.setAttribute(t,r+""),r):i&&"get"in i&&null!==(n=i.get(e,t))?n:(n=he.find.attr(e,t),null==n?void 0:n))},attrHooks:{type:{set:function(e,t){if(!de.radioValue&&"radio"===t&&he.nodeName(e,"input")){var r=e.value;return e.setAttribute("type",t),r&&(e.value=r),t}}}},removeAttr:function(e,t){var r,n=0,i=t&&t.match(ke);if(i&&1===e.nodeType)for(;r=i[n++];)e.removeAttribute(r)}}),vt={set:function(e,t,r){return t===!1?he.removeAttr(e,r):e.setAttribute(r,r),r}},he.each(he.expr.match.bool.source.match(/\w+/g),function(e,t){var r=gt[t]||he.find.attr;gt[t]=function(e,t,n){var i,o,a=t.toLowerCase();return n||(o=gt[a],gt[a]=i,i=null!=r(e,t,n)?a:null,gt[a]=o),i}});var bt=/^(?:input|select|textarea|button)$/i,_t=/^(?:a|area)$/i;he.fn.extend({prop:function(e,t){return De(this,he.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[he.propFix[e]||e]})}}),he.extend({prop:function(e,t,r){var n,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&he.isXMLDoc(e)||(t=he.propFix[t]||t,i=he.propHooks[t]),void 0!==r?i&&"set"in i&&void 0!==(n=i.set(e,r,t))?n:e[t]=r:i&&"get"in i&&null!==(n=i.get(e,t))?n:e[t]},propHooks:{tabIndex:{get:function(e){var t=he.find.attr(e,"tabindex");return t?parseInt(t,10):bt.test(e.nodeName)||_t.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),de.optSelected||(he.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),he.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){he.propFix[this.toLowerCase()]=this}),he.fn.extend({addClass:function(e){var t,r,n,i,o,a,s,u=0;if(he.isFunction(e))return this.each(function(t){he(this).addClass(e.call(this,t,K(this)))});if("string"==typeof e&&e)for(t=e.match(ke)||[];r=this[u++];)if(i=K(r),n=1===r.nodeType&&" "+W(i)+" "){for(a=0;o=t[a++];)n.indexOf(" "+o+" ")<0&&(n+=o+" ");s=W(n),i!==s&&r.setAttribute("class",s)}return this},removeClass:function(e){var t,r,n,i,o,a,s,u=0;if(he.isFunction(e))return this.each(function(t){he(this).removeClass(e.call(this,t,K(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(ke)||[];r=this[u++];)if(i=K(r),n=1===r.nodeType&&" "+W(i)+" "){for(a=0;o=t[a++];)for(;n.indexOf(" "+o+" ")>-1;)n=n.replace(" "+o+" "," ");s=W(n),i!==s&&r.setAttribute("class",s)}return this},toggleClass:function(e,t){var r=typeof e;return"boolean"==typeof t&&"string"===r?t?this.addClass(e):this.removeClass(e):he.isFunction(e)?this.each(function(r){he(this).toggleClass(e.call(this,r,K(this),t),t)}):this.each(function(){var t,n,i,o;if("string"===r)for(n=0,i=he(this),o=e.match(ke)||[];t=o[n++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==r||(t=K(this),t&&je.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":je.get(this,"__className__")||""))})},hasClass:function(e){var t,r,n=0;for(t=" "+e+" ";r=this[n++];)if(1===r.nodeType&&(" "+W(K(r))+" ").indexOf(t)>-1)return!0;return!1}});var wt=/\r/g;he.fn.extend({val:function(e){var t,r,n,i=this[0];{if(arguments.length)return n=he.isFunction(e),this.each(function(r){var i;1===this.nodeType&&(i=n?e.call(this,r,he(this).val()):e,null==i?i="":"number"==typeof i?i+="":he.isArray(i)&&(i=he.map(i,function(e){return null==e?"":e+""})),t=he.valHooks[this.type]||he.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=he.valHooks[i.type]||he.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(r=t.get(i,"value"))?r:(r=i.value,"string"==typeof r?r.replace(wt,""):null==r?"":r)}}}),he.extend({valHooks:{option:{get:function(e){var t=he.find.attr(e,"value");return null!=t?t:W(he.text(e))}},select:{get:function(e){var t,r,n,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(n=o<0?u:a?o:0;n-1)&&(r=!0);return r||(e.selectedIndex=-1),o}}}}),he.each(["radio","checkbox"],function(){he.valHooks[this]={set:function(e,t){if(he.isArray(t))return e.checked=he.inArray(he(e).val(),t)>-1}},de.checkOn||(he.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var xt=/^(?:focusinfocus|focusoutblur)$/;he.extend(he.event,{trigger:function(t,r,n,i){var o,a,s,u,l,c,p,d=[n||te],f=le.call(t,"type")?t.type:t,h=le.call(t,"namespace")?t.namespace.split("."):[];if(a=s=n=n||te,3!==n.nodeType&&8!==n.nodeType&&!xt.test(f+he.event.triggered)&&(f.indexOf(".")>-1&&(h=f.split("."),f=h.shift(),h.sort()),l=f.indexOf(":")<0&&"on"+f,t=t[he.expando]?t:new he.Event(f,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),r=null==r?[t]:he.makeArray(r,[t]),p=he.event.special[f]||{},i||!p.trigger||p.trigger.apply(n,r)!==!1)){if(!i&&!p.noBubble&&!he.isWindow(n)){for(u=p.delegateType||f,xt.test(u+f)||(a=a.parentNode);a;a=a.parentNode)d.push(a),s=a;s===(n.ownerDocument||te)&&d.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=d[o++])&&!t.isPropagationStopped();)t.type=o>1?u:p.bindType||f,c=(je.get(a,"events")||{})[t.type]&&je.get(a,"handle"),c&&c.apply(a,r),c=l&&a[l],c&&c.apply&&Me(a)&&(t.result=c.apply(a,r),t.result===!1&&t.preventDefault());return t.type=f,i||t.isDefaultPrevented()||p._default&&p._default.apply(d.pop(),r)!==!1||!Me(n)||l&&he.isFunction(n[f])&&!he.isWindow(n)&&(s=n[l],s&&(n[l]=null),he.event.triggered=f,n[f](),he.event.triggered=void 0,s&&(n[l]=s)),t.result}},simulate:function(e,t,r){var n=he.extend(new he.Event,r,{type:e,isSimulated:!0});he.event.trigger(n,null,t)}}),he.fn.extend({trigger:function(e,t){return this.each(function(){he.event.trigger(e,t,this)})},triggerHandler:function(e,t){var r=this[0];if(r)return he.event.trigger(e,t,r,!0)}}),he.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){he.fn[t]=function(e,r){return arguments.length>0?this.on(t,null,e,r):this.trigger(t)}}),he.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),de.focusin="onfocusin"in e,de.focusin||he.each({focus:"focusin",blur:"focusout"},function(e,t){var r=function(e){he.event.simulate(t,e.target,he.event.fix(e))};he.event.special[t]={setup:function(){var n=this.ownerDocument||this,i=je.access(n,t);i||n.addEventListener(e,r,!0),je.access(n,t,(i||0)+1)},teardown:function(){var n=this.ownerDocument||this,i=je.access(n,t)-1;i?je.access(n,t,i):(n.removeEventListener(e,r,!0),je.remove(n,t))}}});var Et=e.location,At=he.now(),Rt=/\?/;he.parseXML=function(t){var r;if(!t||"string"!=typeof t)return null;try{r=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){r=void 0}return r&&!r.getElementsByTagName("parsererror").length||he.error("Invalid XML: "+t),r};var St=/\[\]$/,Ct=/\r?\n/g,Ot=/^(?:submit|button|image|reset|file)$/i,Tt=/^(?:input|select|textarea|keygen)/i;he.param=function(e,t){var r,n=[],i=function(e,t){var r=he.isFunction(t)?t():t;n[n.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==r?"":r)};if(he.isArray(e)||e.jquery&&!he.isPlainObject(e))he.each(e,function(){i(this.name,this.value)});else for(r in e)G(r,e[r],t,i);return n.join("&")},he.fn.extend({serialize:function(){return he.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=he.prop(this,"elements");return e?he.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!he(this).is(":disabled")&&Tt.test(this.nodeName)&&!Ot.test(e)&&(this.checked||!We.test(e))}).map(function(e,t){var r=he(this).val();return null==r?null:he.isArray(r)?he.map(r,function(e){return{name:t.name,value:e.replace(Ct,"\r\n")}}):{name:t.name,value:r.replace(Ct,"\r\n")}}).get()}});var kt=/%20/g,Nt=/#.*$/,Pt=/([?&])_=[^&]*/,Dt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Mt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,jt=/^(?:GET|HEAD)$/,It=/^\/\//,Lt={},Ft={},zt="*/".concat("*"),Bt=te.createElement("a");Bt.href=Et.href,he.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Et.href,type:"GET",isLocal:Mt.test(Et.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":zt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":he.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Q(Q(e,he.ajaxSettings),t):Q(he.ajaxSettings,e)},ajaxPrefilter:$(Lt),ajaxTransport:$(Ft),ajax:function(t,r){function n(t,r,n,s){var l,d,f,_,w,x=r;c||(c=!0,u&&e.clearTimeout(u),i=void 0,a=s||"",E.readyState=t>0?4:0,l=t>=200&&t<300||304===t,n&&(_=J(h,E,n)),_=X(h,_,E,l),l?(h.ifModified&&(w=E.getResponseHeader("Last-Modified"),w&&(he.lastModified[o]=w),w=E.getResponseHeader("etag"),w&&(he.etag[o]=w)),204===t||"HEAD"===h.type?x="nocontent":304===t?x="notmodified":(x=_.state,d=_.data,f=_.error,l=!f)):(f=x,!t&&x||(x="error",t<0&&(t=0))),E.status=t,E.statusText=(r||x)+"",l?v.resolveWith(m,[d,x,E]):v.rejectWith(m,[E,x,f]),E.statusCode(b),b=void 0,p&&y.trigger(l?"ajaxSuccess":"ajaxError",[E,h,l?d:f]),g.fireWith(m,[E,x]),p&&(y.trigger("ajaxComplete",[E,h]),--he.active||he.event.trigger("ajaxStop")))}"object"==typeof t&&(r=t,t=void 0),r=r||{};var i,o,a,s,u,l,c,p,d,f,h=he.ajaxSetup({},r),m=h.context||h,y=h.context&&(m.nodeType||m.jquery)?he(m):he.event,v=he.Deferred(),g=he.Callbacks("once memory"),b=h.statusCode||{},_={},w={},x="canceled",E={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s)for(s={};t=Dt.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(e,t){return null==c&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,_[e]=t),this},overrideMimeType:function(e){return null==c&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)E.always(e[E.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||x;return i&&i.abort(t),n(0,t),this}};if(v.promise(E),h.url=((t||h.url||Et.href)+"").replace(It,Et.protocol+"//"),h.type=r.method||r.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(ke)||[""],null==h.crossDomain){l=te.createElement("a");try{l.href=h.url,l.href=l.href,h.crossDomain=Bt.protocol+"//"+Bt.host!=l.protocol+"//"+l.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=he.param(h.data,h.traditional)),Y(Lt,h,r,E),c)return E;p=he.event&&h.global,p&&0===he.active++&&he.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!jt.test(h.type),o=h.url.replace(Nt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(kt,"+")):(f=h.url.slice(o.length),h.data&&(o+=(Rt.test(o)?"&":"?")+h.data,delete h.data),h.cache===!1&&(o=o.replace(Pt,"$1"),f=(Rt.test(o)?"&":"?")+"_="+At++ +f),h.url=o+f),h.ifModified&&(he.lastModified[o]&&E.setRequestHeader("If-Modified-Since",he.lastModified[o]),he.etag[o]&&E.setRequestHeader("If-None-Match",he.etag[o])),(h.data&&h.hasContent&&h.contentType!==!1||r.contentType)&&E.setRequestHeader("Content-Type",h.contentType),E.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+zt+"; q=0.01":""):h.accepts["*"]);for(d in h.headers)E.setRequestHeader(d,h.headers[d]);if(h.beforeSend&&(h.beforeSend.call(m,E,h)===!1||c))return E.abort();if(x="abort",g.add(h.complete),E.done(h.success),E.fail(h.error),i=Y(Ft,h,r,E)){if(E.readyState=1,p&&y.trigger("ajaxSend",[E,h]),c)return E;h.async&&h.timeout>0&&(u=e.setTimeout(function(){E.abort("timeout")},h.timeout));try{c=!1,i.send(_,n)}catch(e){if(c)throw e;n(-1,e)}}else n(-1,"No Transport");return E},getJSON:function(e,t,r){return he.get(e,t,r,"json")},getScript:function(e,t){return he.get(e,void 0,t,"script")}}),he.each(["get","post"],function(e,t){he[t]=function(e,r,n,i){return he.isFunction(r)&&(i=i||n,n=r,r=void 0),he.ajax(he.extend({url:e,type:t,dataType:i,data:r,success:n},he.isPlainObject(e)&&e))}}),he._evalUrl=function(e){return he.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},he.fn.extend({wrapAll:function(e){var t;return this[0]&&(he.isFunction(e)&&(e=e.call(this[0])),t=he(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return he.isFunction(e)?this.each(function(t){he(this).wrapInner(e.call(this,t))}):this.each(function(){var t=he(this),r=t.contents();r.length?r.wrapAll(e):t.append(e)})},wrap:function(e){var t=he.isFunction(e);return this.each(function(r){he(this).wrapAll(t?e.call(this,r):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){he(this).replaceWith(this.childNodes)}),this}}),he.expr.pseudos.hidden=function(e){return!he.expr.pseudos.visible(e)},he.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},he.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},qt=he.ajaxSettings.xhr();de.cors=!!qt&&"withCredentials"in qt,de.ajax=qt=!!qt,he.ajaxTransport(function(t){var r,n;if(de.cors||qt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);r=function(e){return function(){r&&(r=n=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Ut[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=r(),n=s.onerror=r("error"),void 0!==s.onabort?s.onabort=n:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){r&&n()})},r=r("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(r)throw e}},abort:function(){r&&r()}}}),he.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),he.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return he.globalEval(e),e}}}),he.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),he.ajaxTransport("script",function(e){if(e.crossDomain){var t,r;return{send:function(n,i){t=he(" + + + JsRepaintPerfsEmber + + + + + - + - + + + + + + + + + - - - - - - - - diff --git a/ember/lib/ENV.js b/ember/lib/ENV.js new file mode 100644 index 00000000..6ae6fa19 --- /dev/null +++ b/ember/lib/ENV.js @@ -0,0 +1,232 @@ +var ENV = ENV || (function() { + + var first = true; + var counter = 0; + var data; + var _base; + (_base = String.prototype).lpad || (_base.lpad = function(padding, toLength) { + return padding.repeat((toLength - this.length) / padding.length).concat(this); + }); + + function formatElapsed(value) { + var str = parseFloat(value).toFixed(2); + if (value > 60) { + minutes = Math.floor(value / 60); + comps = (value % 60).toFixed(2).split('.'); + seconds = comps[0].lpad('0', 2); + ms = comps[1]; + str = minutes + ":" + seconds + "." + ms; + } + return str; + } + + function getElapsedClassName(elapsed) { + var className = 'Query elapsed'; + if (elapsed >= 10.0) { + className += ' warn_long'; + } + else if (elapsed >= 1.0) { + className += ' warn'; + } + else { + className += ' short'; + } + return className; + } + + function countClassName(queries) { + var countClassName = "label"; + if (queries >= 20) { + countClassName += " label-important"; + } + else if (queries >= 10) { + countClassName += " label-warning"; + } + else { + countClassName += " label-success"; + } + return countClassName; + } + + function updateQuery(object) { + if (!object) { + object = {}; + } + var elapsed = Math.random() * 15; + object.elapsed = elapsed; + object.formatElapsed = formatElapsed(elapsed); + object.elapsedClassName = getElapsedClassName(elapsed); + object.query = "SELECT blah FROM something"; + object.waiting = Math.random() < 0.5; + if (Math.random() < 0.2) { + object.query = " in transaction"; + } + if (Math.random() < 0.1) { + object.query = "vacuum"; + } + return object; + } + + function cleanQuery(value) { + if (value) { + value.formatElapsed = ""; + value.elapsedClassName = ""; + value.query = ""; + value.elapsed = null; + value.waiting = null; + } else { + return { + query: "***", + formatElapsed: "", + elapsedClassName: "" + }; + } + } + + function generateRow(object, keepIdentity, counter) { + var nbQueries = Math.floor((Math.random() * 10) + 1); + if (!object) { + object = {}; + } + object.lastMutationId = counter; + object.nbQueries = nbQueries; + if (!object.lastSample) { + object.lastSample = {}; + } + if (!object.lastSample.topFiveQueries) { + object.lastSample.topFiveQueries = []; + } + if (keepIdentity) { + // for Angular optimization + if (!object.lastSample.queries) { + object.lastSample.queries = []; + for (var l = 0; l < 12; l++) { + object.lastSample.queries[l] = cleanQuery(); + } + } + for (var j in object.lastSample.queries) { + var value = object.lastSample.queries[j]; + if (j <= nbQueries) { + updateQuery(value); + } else { + cleanQuery(value); + } + } + } else { + object.lastSample.queries = []; + for (var j = 0; j < 12; j++) { + if (j < nbQueries) { + var value = updateQuery(cleanQuery()); + object.lastSample.queries.push(value); + } else { + object.lastSample.queries.push(cleanQuery()); + } + } + } + for (var i = 0; i < 5; i++) { + var source = object.lastSample.queries[i]; + object.lastSample.topFiveQueries[i] = source; + } + object.lastSample.nbQueries = nbQueries; + object.lastSample.countClassName = countClassName(nbQueries); + return object; + } + + function getData(keepIdentity) { + var oldData = data; + if (!keepIdentity) { // reset for each tick when !keepIdentity + data = []; + for (var i = 1; i <= ENV.rows; i++) { + data.push({ dbname: 'cluster' + i, query: "", formatElapsed: "", elapsedClassName: "" }); + data.push({ dbname: 'cluster' + i + ' slave', query: "", formatElapsed: "", elapsedClassName: "" }); + } + } + if (!data) { // first init when keepIdentity + data = []; + for (var i = 1; i <= ENV.rows; i++) { + data.push({ dbname: 'cluster' + i }); + data.push({ dbname: 'cluster' + i + ' slave' }); + } + oldData = data; + } + data.map(function(item,index){ + + }); + for (var i in data) { + if (data.hasOwnProperty(i)) { + var row = data[i]; + if (!keepIdentity && oldData && oldData[i]) { + row.lastSample = oldData[i].lastSample; + } + if (!row.lastSample || Math.random() < ENV.mutations()) { + counter = counter + 1; + if (!keepIdentity) { + row.lastSample = null; + } + generateRow(row, keepIdentity, counter); + } else { + data[i] = oldData[i]; + } + } + } + // data.map(function (item, i) { + // var row = data[i]; + // if (!keepIdentity && oldData && oldData[i]) { + // row.lastSample = oldData[i].lastSample; + // } + // if (!row.lastSample || Math.random() < ENV.mutations()) { + // counter = counter + 1; + // if (!keepIdentity) { + // row.lastSample = null; + // } + // generateRow(row, keepIdentity, counter); + // } else { + // row = oldData[i]; + // } + // return row; + // }); + first = false; + return { + toArray: function() { + return data; + } + }; + } + + var mutationsValue = 0.5; + + function mutations(value) { + if (value) { + mutationsValue = value; + return mutationsValue; + } else { + return mutationsValue; + } + } + + var body = document.querySelector('body'); + var theFirstChild = body.firstChild; + + var sliderContainer = document.createElement( 'div' ); + sliderContainer.style.cssText = "display: flex"; + var slider = document.createElement('input'); + var text = document.createElement('label'); + text.innerHTML = 'mutations : ' + (mutationsValue * 100).toFixed(0) + '%'; + text.id = "ratioval"; + slider.setAttribute("type", "range"); + slider.style.cssText = 'margin-bottom: 10px; margin-top: 5px'; + slider.addEventListener('change', function(e) { + ENV.mutations(e.target.value / 100); + document.querySelector('#ratioval').innerHTML = 'mutations : ' + (ENV.mutations() * 100).toFixed(0) + '%'; + }); + sliderContainer.appendChild( text ); + sliderContainer.appendChild( slider ); + body.insertBefore( sliderContainer, theFirstChild ); + + return { + generateData: getData, + rows: 50, + timeout: 0, + mutations: mutations + }; +})(); diff --git a/hyperapp/index.html b/hyperapp/index.html new file mode 100644 index 00000000..9954d37d --- /dev/null +++ b/hyperapp/index.html @@ -0,0 +1,19 @@ + + + + + + + dbmon (HyperApp) + + +
+ + + + + + + + + diff --git a/hyperapp/index.js b/hyperapp/index.js new file mode 100644 index 00000000..1f567afa --- /dev/null +++ b/hyperapp/index.js @@ -0,0 +1,29 @@ +app({ + root: document.getElementById("app"), + model: [], + view: model => + h("div", {}, [ + h("table", { class: "table table-striped latest-data" }, [ + h("tbody", {}, model.map(db => h("tr", { key: db.dbname }, [ + h("td", { class: "dbname" }, [db.dbname]), + h("td", { class: "query-count" }, [ + h("span", { class: db.lastSample.countClassName }, [db.lastSample.nbQueries]) + ]), + db.lastSample.topFiveQueries.map(query => + h("td", { class: query.elapsedClassName }, [ + query.formatElapsed, + h("div", { class: "popover left" }, [ + h("div", { class: "popover-content" }, [query.query]), + h("div", { class: "arrow" }) + ]) + ])) + ]))) + ]) + ]), + update: { + generate: _ => ENV.generateData().toArray(Monitoring.renderRate.ping()) + }, + subs: [ + (_, msg) => setInterval(msg.generate, ENV.timeout) + ] +}) diff --git a/inferno/app.js b/inferno/app.js index 7d64da5d..8ca78fe4 100644 --- a/inferno/app.js +++ b/inferno/app.js @@ -2,78 +2,65 @@ "use strict"; var elem = document.getElementById('app'); - //allows support in < IE9 - function map(func, array) { - var newArray = new Array(array.length); - for (var i = 0; i < array.length; i++) { - newArray[i] = func(array[i]); - } - return newArray; - } + var createVNode = Inferno.createVNode; + var staticNode = createVNode(2, 'div', { className: 'arrow' }, null, null, null, null, true); + var tableProps = { + className: 'table table-striped latest-data' + }; + var dbName = { + className: 'dbname' + }; + var dbQueryCount = { + className: 'query-count' + }; + var foo = { + className: 'foo' + }; + var popoverLeft = { + className: 'popover left' + }; + var popoverContent = { + className: 'popover-content' + }; - var queryTpl = InfernoDOM.template(function (elapsedClassName, formatElapsed, query) { - return { - tag: 'td', - props: { className: elapsedClassName }, - children: [ - {tag: 'span', props: { className: 'foo' }, text: formatElapsed}, - { - tag: 'div', - props: { className: 'popover left' }, - children: [ - {tag: 'div', props: { className: 'popover-content' }, text: query}, - {tag: 'div', props: { className: 'arrow' }} - ] - } - ] - }; - }); + function renderBenchmark(dbs) { + var length = dbs.length; + var databases = new Array(length); - function query(query) { - return queryTpl(query.elapsedClassName, query.formatElapsed, query.query); - } + for (var i = 0; i < length; i++) { + var db = dbs[i]; + var lastSample = db.lastSample; + var children = new Array(7); - var databaseTpl = InfernoDOM.template(function (dbname, countClassName, nbQueries, topFiveQueries) { - return { - tag: 'tr', - children: [ - {tag: 'td', props: { className: 'dbname' }, text: dbname}, - { - tag: 'td', - props: { className: 'query-count'}, - children: { - tag: 'span', - props: { className: countClassName }, - text: nbQueries - } - }, - topFiveQueries - ] - }; - }); + children[0] = createVNode(2, 'td', dbName, db.dbname, null, null, null, true); + children[1] = createVNode(2, 'td', dbQueryCount, createVNode(2, 'span', { + className: lastSample.countClassName + }, lastSample.nbQueries, null, null, null, true), null, null, null, true); - function database(db) { - var lastSample = db.lastSample; + for (var i2 = 0; i2 < 5; i2++) { + var query = lastSample.topFiveQueries[i2]; - return databaseTpl( - db.dbname, - lastSample.countClassName, - lastSample.nbQueries, - map(query, lastSample.topFiveQueries) - ); - } + children[i2 + 2] = createVNode(66, 'td', { + className: query.elapsedClassName + }, [ + createVNode(2, 'div', foo, query.formatElapsed, null, null, null, true), + createVNode(66, 'div', popoverLeft, [ + createVNode(2, 'div', popoverContent, query.query, null, null, null, true), + staticNode + ], null, null, null, true) + ], null, null, null, true); + databases[i] = createVNode(66, 'tr', null, children, null, null, null, true); + } + } - var tableTpl = InfernoDOM.template(function (dbs) { - return { - tag: 'table', - props: { className: 'table table-striped latest-data' }, - children: { tag: 'tbody', children: dbs } - }; - }); + Inferno.render( + createVNode(2, 'table', tableProps, createVNode(66, 'tbody', null, databases, null, null, null, true), null, null, null, true), + elem); + } function render() { - var dbs = ENV.generateData().toArray(); - InfernoDOM.render(tableTpl(map(database,dbs)), elem); + var dbs = ENV.generateData(false).toArray(); + renderBenchmark(dbs); Monitoring.renderRate.ping(); setTimeout(render, ENV.timeout); } diff --git a/inferno/index.html b/inferno/index.html index 20bda416..d149930c 100644 --- a/inferno/index.html +++ b/inferno/index.html @@ -1,21 +1,19 @@ - + - + Inferno
- - - - + + - + \ No newline at end of file diff --git a/inferno/inferno-dom.js b/inferno/inferno-dom.js deleted file mode 100644 index 8fff2afd..00000000 --- a/inferno/inferno-dom.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol?"symbol":typeof n},InfernoDOM=function(){function n(n,e){this.input=e,Dn.set(n,this)}function e(){this._callbacks=[]}function r(n){this.text=n,this.dom=null,this.key=null,this._t=null}function t(n){return!isUndef(n._t)}function i(n,e){return e?document.createElementNS(e,n):document.createElement(n)}function o(n,e){n.nodeValue=e}function l(n,e,r){r?o(e.firstChild,n):null===n?e.textContent="":""!==n?e.textContent=n:appendChild(e,createTextNode(""))}function u(r,t){var i=new e,o=Dn.get(t);isUndef(o)?(j(r,t,i,null,null),o=new n(t,r)):(L(o.input,r,t,i,null,null,!1),null===r?(Dn["delete"](t),o=null):o.input=r),i.trigger()}function a(n){return!isUndef(n)&&!isUndef(n.arg)}function s(n,e,r){var t=n.read(r);return e.write(r,t),t}function f(n){return function(e,r){return s(e,r,n)}}function d(n){if(isFalse(n)||isNull(n))return createTextNode("");if(isArray(n))throw new Error(Wn);if(!isObject(n))throw new Error(Wn);if(isUndef(n.dom))throw new Error(Wn);return!1}function c(n,e,r,t,i,o){var l=void 0;n._patch=L,!isNullOrUndef(i)&&e&&U(i,e,n);n.getChildContext();n._unmounted=!1,n._pendingSetState=!0,n.componentWillMount();var u=n.render();n._pendingSetState=!1;var a=d(u);return l=a?a:j(u,r,t,n,o),n._lastInput=u,n.componentDidMount(),l}function h(n,e,r,t){isInvalid(e)||(t?r.setAttributeNS(t,n,e):r.setAttribute(n,e))}function v(n,e,r){if(isString(e))r.style.cssText=e;else if(isNullOrUndef(n)){if(!isNullOrUndef(e))for(var t=Object.keys(e),i=0;iu?u:l,s=0;a>s;s++)L(n[s],e[s],r,t,i,o,!1);if(u>l)for(s=a;u>s;s++)j(e[s],r,t,i,o);else if(l>u)for(s=a;l>s;s++)D(n[s],r,t)}function V(n,e,r,t,i,o){for(var l=n.length,u=e.length,a=void 0,s=l-1,f=u-1,d=0,c=0,h=null,v=null,p=null,m=null,g=void 0,y=void 0,w=0,b=void 0,N=void 0;s>=d&&f>=c&&(v=e[c],h=n[d],v.key===h.key);)L(h,v,r,t,i,o,!0,null),c++,d++;for(;s>=d&&f>=c&&(p=e[f],m=n[s],p.key===m.key);)L(m,p,r,t,i,o,!0,null),f--,s--;for(;s>=d&&f>=c&&(p=e[f],h=n[d],p.key===h.key);)y=u>f+1?e[f+1].dom:null,L(h,p,r,t,i,o,!0,null),appendOrInsertChild(r,p.dom,y),f--,d++;for(;s>=d&&f>=c&&(v=e[c],m=n[s],v.key===m.key);)y=n[d].dom,L(m,v,r,t,i,o,!0,null),appendOrInsertChild(r,v.dom,y),c++,s--;if(d>s){if(f>=c)for(y=u>f+1?e[f+1].dom:null;f>=c;c++)appendOrInsertChild(r,j(e[c],null,t,i,o),y)}else if(c>f)for(;s>=d;)D(n[d++],r,t);else{var S=s-d+1,I=f-c+1,O=new Array(I);for(a=0;I>a;a++)O[a]=-1;var k=!1,U=0;if(16>=S*I)for(a=d;s>=a;a++){var C=!0;for(m=n[a],g=c;f>=g;g++)if(p=e[g],m.key===p.key){O[g-c]=a,w>g?k=!0:w=g,L(m,p,r,t,i,o,!0,null),C=!1;break}C&&(D(m,r,t),U++)}else{var E=new Map;for(a=c;f>=a;a++)N=e[a],E.set(N.key,a);for(a=s;a>=d;a--)m=n[a],g=E.get(m.key),void 0===g?(D(m,r,t),U++):(p=e[g],O[g-c]=a,w>g?k=!0:w=g,L(m,p,r,t,i,o,!0,null))}if(k){var x=K(O);for(g=x.length-1,a=I-1;a>=0;a--)-1===O[a]?(b=a+c,y=u>b+1?e[b+1].dom:null,appendOrInsertChild(dom,j(e[b],null,t,i,o),y)):0>g||a!==x[g]?(b=a+c,y=u>b+1?e[b+1].dom:null,appendOrInsertChild(r,e[b].dom,y)):g--}else if(S-U!==I)for(a=I-1;a>=0;a--)-1===O[a]&&(b=a+c,y=u>b+1?e[b+1].dom:null,appendOrInsertChild(r,j(e[b],null,t,i,o),y))}}function K(n){var e=n.slice(0),r=[];r.push(0);var t=void 0,i=void 0,o=void 0,l=void 0,u=void 0;for(t=0;to;)u=(o+l)/2|0,n[r[u]]0&&(e[t]=r[o-1]),r[o]=t)}for(o=r.length,l=r[o-1];o-- >0;)r[o]=l,l=e[l];return r}function P(n,e,r,t){var i=r[0],o=void 0;isStringOrNumber(i)&&(o=getChildDomTextNodeToPatch(n)),appendOrInsertChild(n,e,o),D(r,n,t)}function q(n){var e=createTextNode("");return jn.set(n,e),n.appendChild(e),e}function z(n,e,r){var t=q(e);if(isArray(n));else if(isStringOrNumber(n));else{if(isUndef(n.dom))throw new Error(Tn);appendOrInsertChild(e,t,n.dom),D(n,e,r)}}function B(n,e,r,t,i){var o=jn.get(e);if(o){var l=j(n,null,r,t,i);replaceChild(e,l,o),jn["delete"](e)}}function G(n,e,r,t,i,o){var l=lastInput.dom;replaceChild(r,j(nextInput,null,t,i,o),l)}function H(n,e,r,t,i){appendOrInsertChild(r,j(e,null,t,i,null),n.dom),D(n,r,t)}function J(n,e,r,t,i,o){}function L(n,e,r,i,o,l,u){if(isInvalid(e))isInvalid(n)||z(n,r,i);else if(isInvalid(n))isInvalid(e)||B(e,r,i,o,l);else if(isArray(n))isArray(e)?u?V(n,e,r,i,o,l):F(n,e,r,i,o,l):P(r,j(e,null,i,o,l),n,i);else if(isArray(e));else if(t(n))t(e)?S(n,e):G(n,e,r,i,o,l);else if(t(e));else{if(isUndef(e.dom))throw new Error(Tn);isUndef(n.dom)||(isUndef(e.tag)?isUndef(n.tag)?W(n,e,r,i,o):H(n,e,r,i,o):isUndef(n.tag)?J(n,e,r,i,o,l):I(n,e,r,i,o,l))}}function Q(n,e,r,t,o,u){if(isInvalid(n))throw new Error(Cn);var s=En,f=e?xn:En,d=void 0,c=void 0,v=void 0,p=!1;if(isStringOrNumber(n)){var m=createTextNode(n);d=Z(f,mn(m),Mn),c=en(f,Mn),v=on(f,Mn)}else if(n instanceof X)d=un(n,o),c=an(n,o,u),v=sn(n);else if(isObject(n)){var g=n.tag,y=n.hooks;if(isString(g)){var w=n.key,b=i(g,o),N=[],S=[],I=[];a(w)&&(s=w.arg),y&&(y.created&&N.push(pn("created",y.created)),y.attached&&N.push(pn("attached",y.attached)),y.willDetach&&I.push(pn("willDetach",y.willDetach)),y.detached&&I.push(pn("detached",y.detached)));var O=n.attrs;if(O){for(var k=Object.keys(O),U=[],C=0;C0&&N.push(dn(U,o))}var A=n.props;if(A)for(var M=Object.keys(A),D=[],j=0;j0&&(N.push(cn(D)),S.push(hn(D)))}var _=n.ref;_&&N.push(bn(_)),S.length>0&&f===En&&(f=r.length++);var F=n.text;if(!isInvalid(F))if(a(F)||isServer)f===En&&(f=r.length++),N.push(gn(F)),S.push(yn(F));else{if(!isStringOrNumber(F))throw new Error('Inferno Error: invalid value for "text" property on VTemplate');l(F,b,!1),p=!0}var V=n.events;if(!isInvalid(V)){for(var K=Object.keys(V),P=[],q=0;q0&&N.push(vn(P))}var G=n.isKeyed||!1,H=n.children;if(H&&!isInvalid(H))if(isArray(H))for(var J=0;Jt;t++)r.push(new X(t));var i=n.apply(An,r),o=Q(i,!0,{length:e},An,An,!1),l=o.keyIndex;switch(e){case 0:return function(){return new Y(o,An,An,An)};case 1:return 0===l?function(n){return new Y(o,n,n,An)}:function(n){return new Y(o,An,n,An)};default:return l===En?function(n){for(var e=arguments.length,r=Array(e>1?e-1:0),t=1;e>t;t++)r[t-1]=arguments[t];return new Y(o,An,n,r)}:0===l?function(n){for(var e=arguments.length,r=Array(e>1?e-1:0),t=1;e>t;t++)r[t-1]=arguments[t];return new Y(o,n,n,r)}:function(n){for(var e=arguments.length,r=Array(e>1?e-1:0),t=1;e>t;t++)r[t-1]=arguments[t];new Y(o,r[l-1],n,r)}}}function X(n){this.arg=n}function Y(n,e,r,t){this.dom=null,this.key=e,this.bp=n,this.v0=r,this.v1=t}function Z(n,e,r){return n===En&&0===r.length?e:r.length<=5?$(n,e,r[0],r[1],r[2],r[3]):nn(n,e,r)}function $(n,e,r,t,i,o){var l=n!==En;return function(u,a,s,f){var d=e(u,a,s,f);return l&&u.write(n,d),r&&(r(u,d,s,f),t&&(t(u,d,s,f),i&&(i(u,d,s,f),o&&o(u,d,s,f)))),d}}function nn(n,e,r){var t=n!==En;return function(i,o,l,u){var a=e(i,o,l,u);t&&i.write(n,a);for(var s=0;s0&&e.length<=5?ln(n,e[0],e[1],e[2],e[3],e[4]):null}function ln(n,e,r,t,i,o){var l=n!==En;return function(u,a,s){l&&(a=u.read(n)),e&&(e(u,a,s),r&&(r(u,a,s),t&&(t(u,a,s),i&&(i(u,a,s),o&&o(u,a,s)))))}}function un(n,e){return function(t,i,o,l){var u=n.arg,a=t.read(u);return isStringOrNumber(a)&&(a=new r(a),t.write(u,a)),j(a,i,o,l,e)}}function an(n,e,t){return function(i,o,l,u,a){var s=o.read(n.arg);isStringOrNumber(s)&&(s=new r(s),o.write(arg,s)),L(i.read(n.arg),s,l,u,a,e,t,null)}}function sn(n){return function(e,r,t,i){var o=e.read(n.arg);isStringOrNumber(o)||D(o,r,t),e.write(n.arg,null)}}function fn(n,e,r,t){isInvalid(e)||("className"===n?r.className=e:"style"===n?v(null,e,r):t.push(wn(n,e,r)))}function dn(n,e){return function(r,t,i,o){for(var l=0;l0)for(var w=0;g>w;w++)i[w](u,s,f,d)}return p}}function kn(n){return n?function(e,r,t,i){if(a(n))return e.read(n.arg);throw new Error("Inferno Error: Component children within templates cannot be static. Ensure the template is passed a variable for the comonent's children")}:null}function Un(n,e,r,t){this.keyIndex=n,this.mount=e,this.patch=r,this.unmount=t}var Cn="Inferno Error: Invalid schema entry given to Inferno.template()",En=-1,xn=-2,An=null,Mn=[],Dn=new Map,jn=new Map;e.prototype={callback:function(n){this._callbacks.push(n)},trigger:function(){var n=this._callbacks,e=n.length;if(e>0)for(var r=0;e>r;r++)n[r]()}};var Wn='Inferno Error: Invalid component "render" object returns. Inferno only accepts VNode or VTemplates.',Tn='Inferno Error: bad input(s) passed to "patch". Please ensure only valid objects are used in your render.';return Y.prototype={read:function(n){var e;return e=n===xn?this.dom:0===n?this.v0:this.v1[n-1]},write:function(n,e){if(n===xn)this.dom=e;else if(0===n)this.v0=e;else{var r=this.v1;r?r[n-1]=e:this.v1=[e]}}},{render:u,mount:j,unmount:D,patch:L,template:R,text:b}}(); \ No newline at end of file diff --git a/inferno/inferno.js b/inferno/inferno.js index be4992ca..7861ebd5 100644 --- a/inferno/inferno.js +++ b/inferno/inferno.js @@ -1 +1,2 @@ -"use strict";var Inferno=function(){function t(t){this.dom=null,this.tag=t,this.key=null,this.props=null,this.attrs=null,this.events=null,this.hooks=null,this.text=null,this.children=null,this.ref=null,this.isKeyed=!1,this.instance=null}function n(n){return new t(n)}var i={input:!0};return t.prototype={$children:function(t){if(i[this.tag])throw new Error('Inferno Error: "'+this.tag+'" is a void element and cannot contain children');return isStringOrNumber(t)?this.text=t:this.children=t,this},$text:function(t){if(i[this.tag])throw new Error('Inferno Error: "'+this.tag+'" is a void element and cannot contain text');return this.text=t,this},$key:function(t){return this.key=t,this},$hooks:function(t){return this.hooks=t,this},$attrs:function(t){return this.attrs=t,this},$props:function(t){return this.props=t,this},$events:function(t){return this.events=t,this},$style:function(t){return this.props||(this.props={}),this.props.style=t,this},$ref:function(t){return this.ref=t,this},$keyed:function(t){return this.isKeyed=t||!0,this}},{node:n}}(); \ No newline at end of file +/** beta43 */ +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(e.Inferno=e.Inferno||{})}(this,function(e){"use strict";function n(e){return!c(e.prototype)&&!c(e.prototype.render)}function t(e){return a(e)||u(e)}function o(e){return c(e)||f(e)}function r(e){return f(e)||e===!1||d(e)||c(e)}function i(e){return"function"==typeof e}function l(e){return"o"===e[0]&&"n"===e[1]&&e.length>3}function a(e){return"string"==typeof e}function u(e){return"number"==typeof e}function f(e){return null===e}function d(e){return e===!0}function c(e){return void 0===e}function s(e){return"object"==typeof e}function p(e){throw e||(e=cn),new Error("Inferno Error: "+e)}function v(e,n){return f(n.key)&&(n.key="."+e),n}function m(e,n,o){for(;o0;)t[i]=arguments[i+2];var l=t;t.length>0&&!f(t[0])&&(n||(n={}),1===t.length&&(l=t[0]),c(n.children)?n.children=l:pn(l)?pn(n.children)?n.children=n.children.concat(l):n.children=[n.children].concat(l):pn(n.children)?n.children.push(l):(n.children=[n.children],n.children.push(l))),l=null;var a,u=e.flags,d=e.events||n&&n.events||null;if(pn(e))a=e.map(function(e){return w(e)});else if(o(n)&&o(l))a=Object.assign({},e);else{var s=o(e.key)?n.key:e.key,p=e.ref||n.ref;28&u?a=C(u,e.type,Object.assign({},e.props,n),null,d,s,p,!0):3970&u&&(l=n&&n.children||e.children,a=C(u,e.type,Object.assign({},e.props,n),l,d,s,p,!l))}if(28&u){var v=a.props;if(v){var m=v.children;if(m)if(pn(m))for(var h=0;h0&&(l||l===document.body)&&I(e,l,t,o,r)}}function D(e){return e.substr(2).toLowerCase()}function S(e,n){var t=function(e){var t={stopPropagation:!1,dom:document};Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),e.stopPropagation=function(){t.stopPropagation=!0};var o=n.count;o>0&&I(e,e.target,n.items,o,t)};return document.addEventListener(D(e),t),t}function A(e){return"checkbox"===e||"radio"===e}function P(e){var n=A(e.type);return n?!o(e.checked):!o(e.value)}function W(e){var n=this.vNode,t=n.events||vn,o=n.dom;if(t.onInput){var r=t.onInput;r.event?r.event(r.data,e):r(e)}else t.oninput&&t.oninput(e);j(this.vNode,o)}function T(e){var n=this.vNode,t=n.events||vn,o=t.onChange;o.event?o.event(o.data,e):o(e)}function V(e){var n=this.vNode,t=n.events||vn,o=n.dom;if(t.onClick){var r=t.onClick;r.event?r.event(r.data,e):r(e)}else t.onclick&&t.onclick(e);j(this.vNode,o)}function R(e){var n=document.querySelectorAll('input[type="radio"][name="'+e+'"]');[].forEach.call(n,function(e){var n=En.get(e);if(n){var t=n.vNode.props;t&&(e.checked=n.vNode.props.checked)}})}function L(e,n){var t=e.props||vn;if(j(e,n),P(t)){var o=En.get(n);o||(o={vNode:e},A(t.type)?(n.onclick=V.bind(o),n.onclick.wrapped=!0):(n.oninput=W.bind(o),n.oninput.wrapped=!0),t.onChange&&(n.onchange=T.bind(o),n.onchange.wrapped=!0),En.set(n,o)),o.vNode=e}}function j(e,n){var t=e.props||vn,r=t.type,i=t.value,l=t.checked,a=t.multiple;r&&r!==n.type&&(n.type=r),a&&a!==n.multiple&&(n.multiple=a),A(r)?(o(i)||(n.value=i),n.checked=l,"radio"===r&&t.name&&R(t.name)):o(i)||n.value===i?o(l)||(n.checked=l):n.value=i}function K(e){return!o(e.value)}function B(e,n){var t=e.type;if("optgroup"===t){var o=e.children;if(pn(o))for(var r=0;ru?u:a,d=0;du)for(d=f;dy||b>k)break e;C=e[N],x=n[b],x.dom&&(n[b]=x=w(x))}for(;U.key===M.key;){if(re(U,M,t,o,r,i,l),y--,k--,N>y||b>k)break e;U=e[y],M=n[k],M.dom&&(n[k]=M=w(M))}if(U.key!==x.key){if(C.key!==M.key)break;re(C,M,t,o,r,i,l),v=k+1,p=vy){if(b<=k)for(v=k+1,p=vk)for(;N<=y;)Z(e[N++],t,o,!1,!1,l);else{h=y-N+1,g=k-b+1;var _=e,O=new Array(g);for(a=0;au?E=!0:I=u,s.dom&&(n[u]=s=w(s)),re(d,s,t,o,r,i,l),D++,_[a]=null;break}}else{var S=new Map;for(a=b;a<=k;a++)m=n[a],S.set(m.key,a);for(a=N;a<=y;a++)d=e[a],Du?E=!0:I=u,s.dom&&(n[u]=s=w(s)),re(d,s,t,o,r,i,l),D++,_[a]=null))}if(h===e.length&&0===D)for(Fe(t,e,o,!1,l);b0;)d=_[N++],f(d)||(Z(d,t,o,!1,!1,l),a--);if(E){var A=pe(O);for(u=A.length-1,a=g-1;a>=0;a--)O[a]===-1?(I=a+b,m=n[I],m.dom&&(n[I]=m=w(m)),v=I+1,p=v=0;a--)O[a]===-1&&(I=a+b,m=n[I],m.dom&&(n[I]=m=w(m)),v=I+1,p=v0&&(n[o]=t[i-1]),t[i]=o)}for(i=t.length,l=t[i-1];i-- >0;)t[i]=l,l=n[l];return t}function ve(e,n,t,r,i,a){if(!xn[e])if(bn[e])r[e]=!!t;else if(Nn[e]){var u=o(t)?"":t;r[e]!==u&&(r[e]=u)}else if(n!==t)if(l(e))he(e,n,t,r,a);else if(o(t))r.removeAttribute(e);else if("className"===e)i?r.setAttribute("class",t):r.className=t;else if("style"===e)ye(n,t,r);else if("dangerouslySetInnerHTML"===e){var f=n&&n.__html,d=t&&t.__html;f!==d&&(o(d)||(r.innerHTML=d))}else if("childrenType"!==e&&"ref"!==e&&"key"!==e){var c;Un[e]?c=Un[e]:i&&e.match(Mn)?(c=e.replace(/([a-z])([A-Z]|1)/g,O),Un[e]=c):c=e;var s=Cn[e];s?r.setAttributeNS(s,c,t):r.setAttribute(c,t)}}function me(e,n,t,r){if(e=e||vn,n=n||vn,n!==vn)for(var i in n)he(i,e[i],n[i],t,r);if(e!==vn)for(var l in e)o(n[l])&&he(l,e[l],null,t,r)}function he(e,n,t,r,l){if(n!==t){var a=e.toLowerCase(),u=r[a];if(u&&u.wrapped)return;if(_n[e])E(e,n,t,r);else if(i(t)||o(t))r[a]=t;else{var f=t.event;f&&i(f)?(r[a]=function(e){f(t.data,e)},r[a].wrapped=!0):p()}}}function ge(e,n,t,r,i,l){if(e=e||vn,n=n||vn,n!==vn)for(var a in n){var u=n[a],f=e[a];o(u)?ke(a,u,t):ve(a,f,u,t,l,r)}if(e!==vn)for(var d in e)o(n[d])&&ke(d,e[d],t)}function ye(e,n,t){if(a(n))return void(t.style.cssText=n);for(var r in n){var i=n[r];u(i)&&!wn[r]?t.style[r]=i+"px":t.style[r]=i}if(!o(e))for(var l in e)o(n[l])&&(t.style[l]="")}function ke(e,n,t){"className"===e?t.removeAttribute("class"):"value"===e?t.value="":"style"===e?t.removeAttribute("style"):l(e)?E(name,n,null,t):t.removeAttribute(e)}function Ne(e,n,t,o){var r=e.type,i=e.key,l=Dn.get(r);if(!c(l)){var a=null===i?l.nonKeyed:l.keyed.get(i);if(!c(a)){var u=a.pop();if(!c(u))return le(u,e,null,n,t,o,!0),e.dom}}return null}function be(e){var n=e.type,t=e.key,o=Dn.get(n);if(c(o)&&(o={nonKeyed:[],keyed:new Map},Dn.set(n,o)),f(t))o.nonKeyed.push(e);else{var r=o.keyed.get(t);c(r)&&(r=[],o.keyed.set(t,r)),r.push(e)}}function Ce(e,n,t,o){var r=e.type,i=e.key,l=In.get(r);if(!c(l)){var a=null===i?l.nonKeyed:l.keyed.get(i);if(!c(a)){var u=a.pop();if(!c(u)){var f=e.flags,d=ue(u,e,null,n,t,o,4&f,!0);if(!d)return e.dom}}}return null}function we(e){var n=e.type,t=e.key,o=e.ref,r=o&&(o.onComponentWillMount||o.onComponentWillUnmount||o.onComponentDidMount||o.onComponentWillUpdate||o.onComponentDidUpdate);if(!r){var i=In.get(n);if(c(i)&&(i={nonKeyed:[],keyed:new Map},In.set(n,i)),f(t))i.nonKeyed.push(e);else{var l=i.keyed.get(t);c(l)&&(l=[],i.keyed.set(t,l)),l.push(e)}}}function xe(e,n,t,o,r){var i=e.flags;return 3970&i?_e(e,n,t,o,r):28&i?Ee(e,n,t,o,r,4&i):4096&i?Me(e,n):1&i?Ue(e,n):void p()}function Ue(e,n){var t=document.createTextNode(e.children);return e.dom=t,n&&Le(n,t),t}function Me(e,n){var t=document.createTextNode("");return e.dom=t,n&&Le(n,t),t}function _e(e,n,o,r,i){if(mn.recyclingEnabled){var l=Ne(e,o,r,i);if(!f(l))return f(n)||Le(n,l),l}var a=e.type,u=e.flags;(i||128&u)&&(i=!0);var d=Ke(a,i),c=e.children,s=e.props,p=e.events,v=e.ref;if(e.dom=d,f(c)||(t(c)?Ve(d,c):pn(c)?Oe(c,d,o,r,i):M(c)&&xe(c,d,o,r,i)),2&u||X(u,e,d),!f(s))for(var m in s)ve(m,null,s[m],d,i,o);if(!f(p))for(var h in p)he(h,null,p[h],d,o);return f(v)||Se(d,v,o),f(n)||Le(n,d),d}function Oe(e,n,t,o,i){for(var l=0;l - + +
diff --git a/lib/hyperapp/app.min.js b/lib/hyperapp/app.min.js new file mode 100644 index 00000000..48ef0372 --- /dev/null +++ b/lib/hyperapp/app.min.js @@ -0,0 +1 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.app=f()}})(function(){var define,module,exports;return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o0&&!t.childNodes[o];)o--;if(o>=0){var r=t.childNodes[o];if(n&&n.data){var a=n.data.onremove;a&&i(a,r)}t.removeChild(r)}}else if(c(e,n))t.replaceChild(f(e),t.childNodes[o]);else if(e.tag){var r=t.childNodes[o];l(r,e.data,n.data);for(var u=e.tree.length,s=n.tree.length,d=0;d-1)return e.splice(n,1)}}function i(e,t){return ii.call(e,t)}function o(e){return"string"==typeof e||"number"==typeof e}function a(e){var t=Object.create(null);return function(n){var r=t[n];return r||(t[n]=e(n))}}function s(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function c(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function u(e,t){for(var n in t)e[n]=t[n];return e}function l(e){return null!==e&&"object"==typeof e}function f(e){return li.call(e)===fi}function p(e){for(var t={},n=0;n1?c(n):n;for(var r=c(arguments,1),i=0,o=n.length;i=0&&Gi[n].id>e.id;)n--;Gi.splice(Math.max(n,eo)+1,0,e)}else Gi.push(e);Qi||(Qi=!0,Ai(xe))}}function Ae(e){ro.clear(),Oe(e,ro)}function Oe(e,t){var n,r,i=Array.isArray(e);if((i||l(e))&&Object.isExtensible(e)){if(e.__ob__){var o=e.__ob__.dep.id;if(t.has(o))return;t.add(o)}if(i)for(n=e.length;n--;)Oe(e[n],t);else for(r=Object.keys(e),n=r.length;n--;)Oe(e[r[n]],t)}}function Se(e){e._watchers=[];var t=e.$options;t.props&&Te(e,t.props),t.methods&&Ne(e,t.methods),t.data?Ee(e):k(e._data={},!0),t.computed&&Ie(e,t.computed),t.watch&&Le(e,t.watch)}function Te(e,t){var n=e.$options.propsData||{},r=e.$options._propKeys=Object.keys(t),i=!e.$parent;Mi.shouldConvert=i;for(var o=function(i){var o=r[i];A(e,o,P(o,t,n,e))},a=0;a-1:e.test(t)}function We(e,t){for(var n in e){var r=e[n];if(r){var i=Ke(r.componentOptions);i&&!t(i)&&(Ze(r),e[n]=null)}}}function Ze(e){e&&(e.componentInstance._inactive||we(e.componentInstance,"deactivated"),e.componentInstance.$destroy())}function Ge(e){var t={};t.get=function(){return vi},Object.defineProperty(e,"config",t),e.util=Fi,e.set=O,e.delete=S,e.nextTick=Ai,e.options=Object.create(null),vi._assetTypes.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,u(e.options.components,co),Be(e),ze(e),Ve(e),Je(e)}function Ye(e){for(var t=e.data,n=e,r=e;r.componentInstance;)r=r.componentInstance._vnode,r.data&&(t=Qe(r.data,t));for(;n=n.parent;)n.data&&(t=Qe(t,n.data));return Xe(t)}function Qe(e,t){return{staticClass:et(e.staticClass,t.staticClass),class:e.class?[e.class,t.class]:t.class}}function Xe(e){var t=e.class,n=e.staticClass;return n||t?et(n,tt(t)):""}function et(e,t){return e?t?e+" "+t:e:t||""}function tt(e){var t="";if(!e)return t;if("string"==typeof e)return e;if(Array.isArray(e)){for(var n,r=0,i=e.length;r-1?ko[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:ko[e]=/HTMLUnknownElement/.test(t.toString())}function it(e){if("string"==typeof e){if(e=document.querySelector(e),!e)return document.createElement("div")}return e}function ot(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&"multiple"in t.data.attrs&&n.setAttribute("multiple","multiple"),n)}function at(e,t){return document.createElementNS(bo[e],t)}function st(e){return document.createTextNode(e)}function ct(e){return document.createComment(e)}function ut(e,t,n){e.insertBefore(t,n)}function lt(e,t){e.removeChild(t)}function ft(e,t){e.appendChild(t)}function pt(e){return e.parentNode}function dt(e){return e.nextSibling}function vt(e){return e.tagName}function ht(e,t){e.textContent=t}function mt(e,t,n){e.setAttribute(t,n)}function gt(e,t){var n=e.data.ref;if(n){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[n])?r(a[n],o):a[n]===o&&(a[n]=void 0):e.data.refInFor?Array.isArray(a[n])&&a[n].indexOf(o)<0?a[n].push(o):a[n]=[o]:a[n]=o}}function yt(e){return null==e}function _t(e){return null!=e}function bt(e,t){return e.key===t.key&&e.tag===t.tag&&e.isComment===t.isComment&&!e.data==!t.data}function $t(e,t,n){var r,i,o={};for(r=t;r<=n;++r)i=e[r].key,_t(i)&&(o[i]=r);return o}function wt(e){function t(e){return new Hi(O.tagName(e).toLowerCase(),{},[],void 0,e)}function r(e,t){function n(){0===--n.listeners&&i(e)}return n.listeners=t,n}function i(e){var t=O.parentNode(e);t&&O.removeChild(t,e)}function a(e,t,n,r,i){if(e.isRootInsert=!i,!s(e,t,n,r)){var o=e.data,a=e.children,c=e.tag;_t(c)?(e.elm=e.ns?O.createElementNS(e.ns,c):O.createElement(c,e),v(e),f(e,a,t),_t(o)&&d(e,t),l(n,e.elm,r)):e.isComment?(e.elm=O.createComment(e.text),l(n,e.elm,r)):(e.elm=O.createTextNode(e.text),l(n,e.elm,r))}}function s(e,t,n,r){var i=e.data;if(_t(i)){var o=_t(e.componentInstance)&&i.keepAlive;if(_t(i=i.hook)&&_t(i=i.init)&&i(e,!1,n,r),_t(e.componentInstance))return c(e,t),o&&u(e,t,n,r),!0}}function c(e,t){e.data.pendingInsert&&t.push.apply(t,e.data.pendingInsert),e.elm=e.componentInstance.$el,p(e)?(d(e,t),v(e)):(gt(e),t.push(e))}function u(e,t,n,r){for(var i,o=e;o.componentInstance;)if(o=o.componentInstance._vnode,_t(i=o.data)&&_t(i=i.transition)){for(i=0;ip?(u=yt(n[m+1])?null:n[m+1].elm,h(e,u,n,f,m,r)):f>m&&g(e,t,l,p)}function b(e,t,n,r){if(e!==t){if(t.isStatic&&e.isStatic&&t.key===e.key&&(t.isCloned||t.isOnce))return t.elm=e.elm,void(t.componentInstance=e.componentInstance);var i,o=t.data,a=_t(o);a&&_t(i=o.hook)&&_t(i=i.prepatch)&&i(e,t);var s=t.elm=e.elm,c=e.children,u=t.children;if(a&&p(t)){for(i=0;i-1?t.split(/\s+/).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+e.getAttribute("class")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function zt(e,t){if(t&&t.trim())if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t);else{for(var n=" "+e.getAttribute("class")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");e.setAttribute("class",n.trim())}}function Vt(e){Yo(function(){Yo(e)})}function Jt(e,t){(e._transitionClasses||(e._transitionClasses=[])).push(t),Bt(e,t)}function Kt(e,t){e._transitionClasses&&r(e._transitionClasses,t),zt(e,t)}function qt(e,t,n){var r=Wt(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Jo?Wo:Go,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c0&&(n=Jo,l=a,f=o.length):t===Ko?u>0&&(n=Ko,l=u,f=c.length):(l=Math.max(a,u),n=l>0?a>u?Jo:Ko:null,f=n?n===Jo?o.length:c.length:0);var p=n===Jo&&Qo.test(r[qo+"Property"]);return{type:n,timeout:l,propCount:f,hasTransform:p}}function Zt(e,t){for(;e.length1,j=n._enterCb=en(function(){E&&(Kt(n,k),Kt(n,x)),j.cancelled?(E&&Kt(n,C),T&&T(n)):S&&S(n),n._enterCb=null});e.data.show||ne(e.data.hook||(e.data.hook={}),"insert",function(){var t=n.parentNode,r=t&&t._pending&&t._pending[e.key];r&&r.tag===e.tag&&r.elm._leaveCb&&r.elm._leaveCb(),O&&O(n,j)},"transition-insert"),A&&A(n),E&&(Jt(n,C),Jt(n,x),Vt(function(){Jt(n,k),Kt(n,C),j.cancelled||I||qt(n,o,j)})),e.data.show&&(t&&t(),O&&O(n,j)),E||I||j()}}}function Qt(e,t){function n(){g.cancelled||(e.data.show||((r.parentNode._pending||(r.parentNode._pending={}))[e.key]=e),l&&l(r),h&&(Jt(r,s),Jt(r,u),Vt(function(){Jt(r,c),Kt(r,s),g.cancelled||m||qt(r,a,g)})),f&&f(r,g),h||m||g())}var r=e.elm;r._enterCb&&(r._enterCb.cancelled=!0,r._enterCb());var i=Xt(e.data.transition);if(!i)return t();if(!r._leaveCb&&1===r.nodeType){var o=i.css,a=i.type,s=i.leaveClass,c=i.leaveToClass,u=i.leaveActiveClass,l=i.beforeLeave,f=i.leave,p=i.afterLeave,d=i.leaveCancelled,v=i.delayLeave,h=o!==!1&&!bi,m=f&&(f._length||f.length)>1,g=r._leaveCb=en(function(){r.parentNode&&r.parentNode._pending&&(r.parentNode._pending[e.key]=null),h&&(Kt(r,c),Kt(r,u)),g.cancelled?(h&&Kt(r,s),d&&d(r)):(t(),p&&p(r)),r._leaveCb=null});v?v(n):n()}}function Xt(e){if(e){if("object"==typeof e){var t={};return e.css!==!1&&u(t,Xo(e.name||"v")),u(t,e),t}return"string"==typeof e?Xo(e):void 0}}function en(e){var t=!1;return function(){t||(t=!0,e())}}function tn(e,t){t.data.show||Yt(t)}function nn(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s-1,a.selected!==o&&(a.selected=o);else if(h(on(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function rn(e,t){for(var n=0,r=t.length;n',n.innerHTML.indexOf(t)>0}function _n(e){return pa=pa||document.createElement("div"),pa.innerHTML=e,pa.textContent}function bn(e,t){return t&&(e=e.replace(os,"\n")),e.replace(rs,"<").replace(is,">").replace(as,"&").replace(ss,'"')}function $n(e,t){function n(t){f+=t,e=e.substring(t)}function r(){var t=e.match(Ca);if(t){var r={tagName:t[1],attrs:[],start:f};n(t[0].length);for(var i,o;!(i=e.match(xa))&&(o=e.match(ba));)n(o[0].length),r.attrs.push(o);if(i)return r.unarySlash=i[1],n(i[0].length),r.end=f,r}}function i(e){var n=e.tagName,r=e.unarySlash;u&&("p"===s&&ma(n)&&o(s),ha(n)&&s===n&&o(n));for(var i=l(n)||"html"===n&&"head"===s||!!r,a=e.attrs.length,f=new Array(a),p=0;p=0&&c[i].lowerCasedTag!==o;i--);else i=0;if(i>=0){for(var a=c.length-1;a>=i;a--)t.end&&t.end(c[a].tag,n,r);c.length=i,s=i&&c[i-1].tag}else"br"===o?t.start&&t.start(e,[],!0,n,r):"p"===o&&(t.start&&t.start(e,[],!1,n,r),t.end&&t.end(e,n,r))}for(var a,s,c=[],u=t.expectHTML,l=t.isUnaryTag||pi,f=0;e;){if(a=e,s&&ts(s)){var p=s.toLowerCase(),d=ns[p]||(ns[p]=new RegExp("([\\s\\S]*?)(]*>)","i")),v=0,h=e.replace(d,function(e,n,r){return v=r.length,"script"!==p&&"style"!==p&&"noscript"!==p&&(n=n.replace(//g,"$1").replace(//g,"$1")),t.chars&&t.chars(n),""});f+=e.length-h.length,e=h,o(p,f-v,f)}else{var m=e.indexOf("<");if(0===m){if(Oa.test(e)){var g=e.indexOf("-->");if(g>=0){n(g+3);continue}}if(Sa.test(e)){var y=e.indexOf("]>");if(y>=0){n(y+2);continue}}var _=e.match(Aa);if(_){n(_[0].length);continue}var b=e.match(ka);if(b){var $=f;n(b[0].length),o(b[1],$,f);continue}var w=r();if(w){i(w);continue}}var C=void 0,x=void 0,k=void 0;if(m>0){for(x=e.slice(m);!(ka.test(x)||Ca.test(x)||Oa.test(x)||Sa.test(x)||(k=x.indexOf("<",1),k<0));)m+=k,x=e.slice(m);C=e.substring(0,m),n(m)}m<0&&(C=e,e=""),t.chars&&C&&t.chars(C)}if(e===a&&t.chars){t.chars(e);break}}o()}function wn(e){function t(){(a||(a=[])).push(e.slice(v,i).trim()),v=i+1}var n,r,i,o,a,s=!1,c=!1,u=!1,l=!1,f=0,p=0,d=0,v=0;for(i=0;i=0&&(m=e.charAt(h)," "===m);h--);m&&/[\w$]/.test(m)||(l=!0)}}else void 0===o?(v=i+1,o=e.slice(0,i).trim()):t();if(void 0===o?o=e.slice(0,i).trim():0!==v&&t(),a)for(i=0;ia&&o.push(JSON.stringify(e.slice(a,i)));var s=wn(r[1].trim());o.push("_s("+s+")"),a=i+r[0].length}return a=Ea}function Dn(e){return 34===e||39===e}function Pn(e){var t=1;for(La=Na;!Mn();)if(e=Ln(),Dn(e))Rn(e);else if(91===e&&t++,93===e&&t--,0===t){Ma=Na;break}}function Rn(e){for(var t=e;!Mn()&&(e=Ln(),e!==t););}function Fn(e,t){Da=t.warn||kn,Pa=t.getTagNamespace||pi,Ra=t.mustUseProp||pi,Fa=t.isPreTag||pi,Ha=An(t.modules,"preTransformNode"),Ua=An(t.modules,"transformNode"),Ba=An(t.modules,"postTransformNode"),za=t.delimiters;var n,r,i=[],o=t.preserveWhitespace!==!1,a=!1,s=!1;return $n(e,{expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,shouldDecodeNewlines:t.shouldDecodeNewlines,start:function(e,o,c){function u(e){}var l=r&&r.ns||Pa(e);_i&&"svg"===l&&(o=rr(o));var f={type:1,tag:e,attrsList:o,attrsMap:tr(o),parent:r,children:[]};l&&(f.ns=l),nr(f)&&!xi()&&(f.forbidden=!0);for(var p=0;p-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),En(e,"click","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$c){$$i<0&&("+t+"=$$a.concat($$v))}else{$$i>-1&&("+t+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+t+"=$$c}",null,!0)}function Jr(e,t,n){var r=n&&n.number,i=In(e,"value")||"null";i=r?"_n("+i+")":i,On(e,"checked","_q("+t+","+i+")"),En(e,"click",Wr(t,i),null,!0)}function Kr(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=o||_i&&"range"===r?"change":"input",u=!o&&"range"!==r,l="input"===e.tag||"textarea"===e.tag,f=l?"$event.target.value"+(s?".trim()":""):s?"(typeof $event === 'string' ? $event.trim() : $event)":"$event";f=a||"number"===r?"_n("+f+")":f;var p=Wr(t,f);l&&u&&(p="if($event.target.composing)return;"+p),On(e,"value",l?"_s("+t+")":"("+t+")"),En(e,c,p,null,!0),(s||a||"number"===r)&&En(e,"blur","$forceUpdate()")}function qr(e,t,n){var r=n&&n.number,i='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(r?"_n(val)":"val")+"})"+(null==e.attrsMap.multiple?"[0]":""),o=Wr(t,i);En(e,"change",o,null,!0)}function Wr(e,t){var n=Nn(e);return null===n.idx?e+"="+t:"var $$exp = "+n.exp+", $$idx = "+n.idx+";if (!Array.isArray($$exp)){"+e+"="+t+"}else{$$exp.splice($$idx, 1, "+t+")}"}function Zr(e,t){t.value&&On(e,"textContent","_s("+t.value+")")}function Gr(e,t){t.value&&On(e,"innerHTML","_s("+t.value+")")}function Yr(e,t){return t=t?u(u({},js),t):js,Rr(e,t)}function Qr(e,t,n){var r=(t&&t.warn||Si,t&&t.delimiters?String(t.delimiters)+e:e);if(Is[r])return Is[r];var i={},o=Yr(e,t);i.render=Xr(o.render);var a=o.staticRenderFns.length;i.staticRenderFns=new Array(a);for(var s=0;s0,$i=yi&&yi.indexOf("edge/")>0,wi=yi&&yi.indexOf("android")>0,Ci=yi&&/iphone|ipad|ipod|ios/.test(yi),xi=function(){return void 0===ti&&(ti=!gi&&"undefined"!=typeof global&&"server"===global.process.env.VUE_ENV),ti},ki=gi&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Ai=function(){function e(){r=!1;var e=n.slice(0);n.length=0;for(var t=0;t1&&(t[n[0].trim()]=n[1].trim())}}),t}),Ro=/^--/,Fo=/\s*!important$/,Ho=function(e,t,n){Ro.test(t)?e.style.setProperty(t,n):Fo.test(n)?e.style.setProperty(t,n.replace(Fo,""),"important"):e.style[Bo(t)]=n},Uo=["Webkit","Moz","ms"],Bo=a(function(e){if(lo=lo||document.createElement("div"),e=ai(e),"filter"!==e&&e in lo.style)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n\/=]+)/,ya=/(?:=)/,_a=[/"([^"]*)"+/.source,/'([^']*)'+/.source,/([^\s"'=<>`]+)/.source],ba=new RegExp("^\\s*"+ga.source+"(?:\\s*("+ya.source+")\\s*(?:"+_a.join("|")+"))?"),$a="[a-zA-Z_][\\w\\-\\.]*",wa="((?:"+$a+"\\:)?"+$a+")",Ca=new RegExp("^<"+wa),xa=/^\s*(\/?)>/,ka=new RegExp("^<\\/"+wa+"[^>]*>"),Aa=/^]+>/i,Oa=/^