未验证 提交 d551aa41 编写于 作者: M Méril 提交者: GitHub

fix(grid): do not scroll to last item when scrollTop is bigger than 4 times the viewport (#228)

上级 018b0322
......@@ -44,4 +44,4 @@ e.exports=function(e){"use strict";function t(){return(t=Object.assign||function
* @license Licensed under MIT license
* See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE
* @version v4.2.8+1e68dce6
*/var i;i=function(){"use strict";function e(e){return"function"==typeof e}var i=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},r=0,o=void 0,s=void 0,a=function(e,t){p[r]=e,p[r+1]=t,2===(r+=2)&&(s?s(g):x())},l="undefined"!=typeof window?window:void 0,c=l||{},u=c.MutationObserver||c.WebKitMutationObserver,h="undefined"==typeof self&&void 0!==t&&"[object process]"==={}.toString.call(t),d="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function f(){var e=setTimeout;return function(){return e(g,1)}}var p=new Array(1e3);function g(){for(var e=0;e<r;e+=2)(0,p[e])(p[e+1]),p[e]=void 0,p[e+1]=void 0;r=0}var m,v,y,w,x=void 0;function b(e,t){var n=this,i=new this.constructor(C);void 0===i[S]&&I(i);var r=n._state;if(r){var o=arguments[r-1];a((function(){return R(r,i,o,n._result)}))}else E(n,i,e,t);return i}function _(e){if(e&&"object"==typeof e&&e.constructor===this)return e;var t=new this(C);return k(t,e),t}h?x=function(){return t.nextTick(g)}:u?(v=0,y=new u(g),w=document.createTextNode(""),y.observe(w,{characterData:!0}),x=function(){w.data=v=++v%2}):d?((m=new MessageChannel).port1.onmessage=g,x=function(){return m.port2.postMessage(0)}):x=void 0===l?function(){try{var e=Function("return this")().require("vertx");return void 0!==(o=e.runOnLoop||e.runOnContext)?function(){o(g)}:f()}catch(e){return f()}}():f();var S=Math.random().toString(36).substring(2);function C(){}function A(t,n,i){n.constructor===t.constructor&&i===b&&n.constructor.resolve===_?function(e,t){1===t._state?M(e,t._result):2===t._state?L(e,t._result):E(t,void 0,(function(t){return k(e,t)}),(function(t){return L(e,t)}))}(t,n):void 0===i?M(t,n):e(i)?function(e,t,n){a((function(e){var i=!1,r=function(e,t,n,i){try{e.call(t,n,i)}catch(e){return e}}(n,t,(function(n){i||(i=!0,t!==n?k(e,n):M(e,n))}),(function(t){i||(i=!0,L(e,t))}),e._label);!i&&r&&(i=!0,L(e,r))}),e)}(t,n,i):M(t,n)}function k(e,t){if(e===t)L(e,new TypeError("You cannot resolve a promise with itself"));else if(r=typeof(i=t),null===i||"object"!==r&&"function"!==r)M(e,t);else{var n=void 0;try{n=t.then}catch(t){return void L(e,t)}A(e,t,n)}var i,r}function T(e){e._onerror&&e._onerror(e._result),$(e)}function M(e,t){void 0===e._state&&(e._result=t,e._state=1,0!==e._subscribers.length&&a($,e))}function L(e,t){void 0===e._state&&(e._state=2,e._result=t,a(T,e))}function E(e,t,n,i){var r=e._subscribers,o=r.length;e._onerror=null,r[o]=t,r[o+1]=n,r[o+2]=i,0===o&&e._state&&a($,e)}function $(e){var t=e._subscribers,n=e._state;if(0!==t.length){for(var i=void 0,r=void 0,o=e._result,s=0;s<t.length;s+=3)i=t[s],r=t[s+n],i?R(n,i,r,o):r(o);e._subscribers.length=0}}function R(t,n,i,r){var o=e(i),s=void 0,a=void 0,l=!0;if(o){try{s=i(r)}catch(e){l=!1,a=e}if(n===s)return void L(n,new TypeError("A promises callback cannot return that same promise."))}else s=r;void 0!==n._state||(o&&l?k(n,s):!1===l?L(n,a):1===t?M(n,s):2===t&&L(n,s))}var O=0;function I(e){e[S]=O++,e._state=void 0,e._result=void 0,e._subscribers=[]}var D=function(){function e(e,t){this._instanceConstructor=e,this.promise=new e(C),this.promise[S]||I(this.promise),i(t)?(this.length=t.length,this._remaining=t.length,this._result=new Array(this.length),0===this.length?M(this.promise,this._result):(this.length=this.length||0,this._enumerate(t),0===this._remaining&&M(this.promise,this._result))):L(this.promise,new Error("Array Methods must be provided an Array"))}return e.prototype._enumerate=function(e){for(var t=0;void 0===this._state&&t<e.length;t++)this._eachEntry(e[t],t)},e.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,i=n.resolve;if(i===_){var r=void 0,o=void 0,s=!1;try{r=e.then}catch(e){s=!0,o=e}if(r===b&&void 0!==e._state)this._settledAt(e._state,t,e._result);else if("function"!=typeof r)this._remaining--,this._result[t]=e;else if(n===P){var a=new n(C);s?L(a,o):A(a,e,r),this._willSettleAt(a,t)}else this._willSettleAt(new n((function(t){return t(e)})),t)}else this._willSettleAt(i(e),t)},e.prototype._settledAt=function(e,t,n){var i=this.promise;void 0===i._state&&(this._remaining--,2===e?L(i,n):this._result[t]=n),0===this._remaining&&M(i,this._result)},e.prototype._willSettleAt=function(e,t){var n=this;E(e,void 0,(function(e){return n._settledAt(1,t,e)}),(function(e){return n._settledAt(2,t,e)}))},e}(),P=function(){function t(e){this[S]=O++,this._result=this._state=void 0,this._subscribers=[],C!==e&&("function"!=typeof e&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof t?function(e,t){try{t((function(t){k(e,t)}),(function(t){L(e,t)}))}catch(t){L(e,t)}}(this,e):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}return t.prototype.catch=function(e){return this.then(null,e)},t.prototype.finally=function(t){var n=this.constructor;return e(t)?this.then((function(e){return n.resolve(t()).then((function(){return e}))}),(function(e){return n.resolve(t()).then((function(){throw e}))})):this.then(t,t)},t}();return P.prototype.then=b,P.all=function(e){return new D(this,e).promise},P.race=function(e){var t=this;return i(e)?new t((function(n,i){for(var r=e.length,o=0;o<r;o++)t.resolve(e[o]).then(n,i)})):new t((function(e,t){return t(new TypeError("You must pass an array to race."))}))},P.resolve=_,P.reject=function(e){var t=new this(C);return L(t,e),t},P._setScheduler=function(e){s=e},P._setAsap=function(e){a=e},P._asap=a,P.polyfill=function(){var e=void 0;if(void 0!==n)e=n;else if("undefined"!=typeof self)e=self;else try{e=Function("return this")()}catch(e){throw new Error("polyfill failed because global object is unavailable in this environment")}var t=e.Promise;if(t){var i=null;try{i=Object.prototype.toString.call(t.resolve())}catch(e){}if("[object Promise]"===i&&!t.cast)return}e.Promise=P},P.Promise=P,P},e.exports=i()}).call(this,n(43),n(16))},function(e,t,n){"use strict";e.exports=function(e,t){/\?/.test(e)?e+="&":e+="?";return e+i(t)};var i=n(124)},function(e,t,n){"use strict";e.exports=function(e,t,n){if("GET"!==t.method)return void n(new Error("Method "+t.method+" "+e+" is not supported by JSONP."));t.debug("JSONP: start");var o=!1,s=!1;r+=1;var a=document.getElementsByTagName("head")[0],l=document.createElement("script"),c="algoliaJSONP_"+r,u=!1;window[c]=function(e){!function(){try{delete window[c],delete window[c+"_loaded"]}catch(e){window[c]=window[c+"_loaded"]=void 0}}(),s?t.debug("JSONP: Late answer, ignoring"):(o=!0,f(),n(null,{body:e,responseText:JSON.stringify(e)}))},e+="&callback="+c,t.jsonBody&&t.jsonBody.params&&(e+="&"+t.jsonBody.params);var h=setTimeout((function(){t.debug("JSONP: Script timeout"),s=!0,f(),n(new i.RequestTimeout)}),t.timeouts.complete);function d(){t.debug("JSONP: success"),u||s||(u=!0,o||(t.debug("JSONP: Fail. Script loaded but did not call the callback"),f(),n(new i.JSONPScriptFail)))}function f(){clearTimeout(h),l.onload=null,l.onreadystatechange=null,l.onerror=null,a.removeChild(l)}l.onreadystatechange=function(){"loaded"!==this.readyState&&"complete"!==this.readyState||d()},l.onload=d,l.onerror=function(){t.debug("JSONP: Script error"),u||s||(f(),n(new i.JSONPScriptError))},l.async=!0,l.defer=!0,l.src=e,a.appendChild(l)};var i=n(44),r=0},function(e,t,n){e.exports=function(e){return function(t,o,s){var a=n(27);(s=s&&a(s)||{}).hosts=s.hosts||["places-dsn.algolia.net","places-1.algolianet.com","places-2.algolianet.com","places-3.algolianet.com"],0!==arguments.length&&"object"!=typeof t&&void 0!==t||(t="",o="",s._allowEmptyCredentials=!0);var l=e(t,o,s),c=l.initIndex("places");return c.search=r("query","/1/places/query"),c.reverse=function(e,t){var n=i.encode(e);return this.as._jsonRequest({method:"GET",url:"/1/places/reverse?"+n,hostType:"read",callback:t})},c.getObject=function(e,t){return this.as._jsonRequest({method:"GET",url:"/1/places/"+encodeURIComponent(e),hostType:"read",callback:t})},c}};var i=n(262),r=n(121)},function(e,t,n){"use strict";t.decode=t.parse=n(263),t.encode=t.stringify=n(124)},function(e,t,n){"use strict";function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,t,n,o){t=t||"&",n=n||"=";var s={};if("string"!=typeof e||0===e.length)return s;var a=/\+/g;e=e.split(t);var l=1e3;o&&"number"==typeof o.maxKeys&&(l=o.maxKeys);var c=e.length;l>0&&c>l&&(c=l);for(var u=0;u<c;++u){var h,d,f,p,g=e[u].replace(a,"%20"),m=g.indexOf(n);m>=0?(h=g.substr(0,m),d=g.substr(m+1)):(h=g,d=""),f=decodeURIComponent(h),p=decodeURIComponent(d),i(s,f)?r(s[f])?s[f].push(p):s[f]=[s[f],p]:s[f]=p}return s};var r=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},function(e,t,n){"use strict";e.exports="3.35.1"},function(e,t,n){"use strict";e.exports=n(266)},function(e,t,n){"use strict";var i=n(125);n(20).element=i;var r=n(13);r.isArray=i.isArray,r.isFunction=i.isFunction,r.isObject=i.isPlainObject,r.bind=i.proxy,r.each=function(e,t){i.each(e,(function(e,n){return t(n,e)}))},r.map=i.map,r.mixin=i.extend,r.Event=i.Event;var o=n(267),s=n(126);function a(e,t,n,a){n=r.isArray(n)?n:[].slice.call(arguments,2);var l=i(e).each((function(e,r){var l=i(r),c=new s({el:l}),u=a||new o({input:l,eventBus:c,dropdownMenuContainer:t.dropdownMenuContainer,hint:void 0===t.hint||!!t.hint,minLength:t.minLength,autoselect:t.autoselect,autoselectOnBlur:t.autoselectOnBlur,tabAutocomplete:t.tabAutocomplete,openOnFocus:t.openOnFocus,templates:t.templates,debug:t.debug,clearOnSelected:t.clearOnSelected,cssClasses:t.cssClasses,datasets:n,keyboardShortcuts:t.keyboardShortcuts,appendTo:t.appendTo,autoWidth:t.autoWidth,ariaLabel:t.ariaLabel||r.getAttribute("aria-label")});l.data("aaAutocomplete",u)}));return l.autocomplete={},r.each(["open","close","getVal","setVal","destroy","getWrapper"],(function(e){l.autocomplete[e]=function(){var t,n=arguments;return l.each((function(r,o){var s=i(o).data("aaAutocomplete");t=s[e].apply(s,n)})),t}})),l}a.sources=o.sources,a.escapeHighlightedString=r.escapeHighlightedString;var l="autocomplete"in window,c=window.autocomplete;a.noConflict=function(){return l?window.autocomplete=c:delete window.autocomplete,a},e.exports=a},function(e,t,n){"use strict";var i=n(13),r=n(20),o=n(126),s=n(268),a=n(275),l=n(127),c=n(65);function u(e){var t,n;if((e=e||{}).input||i.error("missing input"),this.isActivated=!1,this.debug=!!e.debug,this.autoselect=!!e.autoselect,this.autoselectOnBlur=!!e.autoselectOnBlur,this.openOnFocus=!!e.openOnFocus,this.minLength=i.isNumber(e.minLength)?e.minLength:1,this.autoWidth=void 0===e.autoWidth||!!e.autoWidth,this.clearOnSelected=!!e.clearOnSelected,this.tabAutocomplete=void 0===e.tabAutocomplete||!!e.tabAutocomplete,e.hint=!!e.hint,e.hint&&e.appendTo)throw new Error("[autocomplete.js] hint and appendTo options can't be used at the same time");this.css=e.css=i.mixin({},c,e.appendTo?c.appendTo:{}),this.cssClasses=e.cssClasses=i.mixin({},c.defaultClasses,e.cssClasses||{}),this.cssClasses.prefix=e.cssClasses.formattedPrefix=i.formatPrefix(this.cssClasses.prefix,this.cssClasses.noPrefix),this.listboxId=e.listboxId=[this.cssClasses.root,"listbox",i.getUniqueId()].join("-");var s=function(e){var t,n,o,s;t=r.element(e.input),n=r.element(l.wrapper.replace("%ROOT%",e.cssClasses.root)).css(e.css.wrapper),e.appendTo||"block"!==t.css("display")||"table"!==t.parent().css("display")||n.css("display","table-cell");var a=l.dropdown.replace("%PREFIX%",e.cssClasses.prefix).replace("%DROPDOWN_MENU%",e.cssClasses.dropdownMenu);o=r.element(a).css(e.css.dropdown).attr({role:"listbox",id:e.listboxId}),e.templates&&e.templates.dropdownMenu&&o.html(i.templatify(e.templates.dropdownMenu)());(s=t.clone().css(e.css.hint).css(function(e){return{backgroundAttachment:e.css("background-attachment"),backgroundClip:e.css("background-clip"),backgroundColor:e.css("background-color"),backgroundImage:e.css("background-image"),backgroundOrigin:e.css("background-origin"),backgroundPosition:e.css("background-position"),backgroundRepeat:e.css("background-repeat"),backgroundSize:e.css("background-size")}}(t))).val("").addClass(i.className(e.cssClasses.prefix,e.cssClasses.hint,!0)).removeAttr("id name placeholder required").prop("readonly",!0).attr({"aria-hidden":"true",autocomplete:"off",spellcheck:"false",tabindex:-1}),s.removeData&&s.removeData();t.data("aaAttrs",{"aria-autocomplete":t.attr("aria-autocomplete"),"aria-expanded":t.attr("aria-expanded"),"aria-owns":t.attr("aria-owns"),autocomplete:t.attr("autocomplete"),dir:t.attr("dir"),role:t.attr("role"),spellcheck:t.attr("spellcheck"),style:t.attr("style"),type:t.attr("type")}),t.addClass(i.className(e.cssClasses.prefix,e.cssClasses.input,!0)).attr({autocomplete:"off",spellcheck:!1,role:"combobox","aria-autocomplete":e.datasets&&e.datasets[0]&&e.datasets[0].displayKey?"both":"list","aria-expanded":"false","aria-label":e.ariaLabel,"aria-owns":e.listboxId}).css(e.hint?e.css.input:e.css.inputWithNoHint);try{t.attr("dir")||t.attr("dir","auto")}catch(e){}return(n=e.appendTo?n.appendTo(r.element(e.appendTo).eq(0)).eq(0):t.wrap(n).parent()).prepend(e.hint?s:null).append(o),{wrapper:n,input:t,hint:s,menu:o}}(e);this.$node=s.wrapper;var a=this.$input=s.input;t=s.menu,n=s.hint,e.dropdownMenuContainer&&r.element(e.dropdownMenuContainer).css("position","relative").append(t.css("top","0")),a.on("blur.aa",(function(e){var n=document.activeElement;i.isMsie()&&(t[0]===n||t[0].contains(n))&&(e.preventDefault(),e.stopImmediatePropagation(),i.defer((function(){a.focus()})))})),t.on("mousedown.aa",(function(e){e.preventDefault()})),this.eventBus=e.eventBus||new o({el:a}),this.dropdown=new u.Dropdown({appendTo:e.appendTo,wrapper:this.$node,menu:t,datasets:e.datasets,templates:e.templates,cssClasses:e.cssClasses,minLength:this.minLength}).onSync("suggestionClicked",this._onSuggestionClicked,this).onSync("cursorMoved",this._onCursorMoved,this).onSync("cursorRemoved",this._onCursorRemoved,this).onSync("opened",this._onOpened,this).onSync("closed",this._onClosed,this).onSync("shown",this._onShown,this).onSync("empty",this._onEmpty,this).onSync("redrawn",this._onRedrawn,this).onAsync("datasetRendered",this._onDatasetRendered,this),this.input=new u.Input({input:a,hint:n}).onSync("focused",this._onFocused,this).onSync("blurred",this._onBlurred,this).onSync("enterKeyed",this._onEnterKeyed,this).onSync("tabKeyed",this._onTabKeyed,this).onSync("escKeyed",this._onEscKeyed,this).onSync("upKeyed",this._onUpKeyed,this).onSync("downKeyed",this._onDownKeyed,this).onSync("leftKeyed",this._onLeftKeyed,this).onSync("rightKeyed",this._onRightKeyed,this).onSync("queryChanged",this._onQueryChanged,this).onSync("whitespaceChanged",this._onWhitespaceChanged,this),this._bindKeyboardShortcuts(e),this._setLanguageDirection()}i.mixin(u.prototype,{_bindKeyboardShortcuts:function(e){if(e.keyboardShortcuts){var t=this.$input,n=[];i.each(e.keyboardShortcuts,(function(e){"string"==typeof e&&(e=e.toUpperCase().charCodeAt(0)),n.push(e)})),r.element(document).keydown((function(e){var i=e.target||e.srcElement,r=i.tagName;if(!i.isContentEditable&&"INPUT"!==r&&"SELECT"!==r&&"TEXTAREA"!==r){var o=e.which||e.keyCode;-1!==n.indexOf(o)&&(t.focus(),e.stopPropagation(),e.preventDefault())}}))}},_onSuggestionClicked:function(e,t){var n;(n=this.dropdown.getDatumForSuggestion(t))&&this._select(n,{selectionMethod:"click"})},_onCursorMoved:function(e,t){var n=this.dropdown.getDatumForCursor(),i=this.dropdown.getCurrentCursor().attr("id");this.input.setActiveDescendant(i),n&&(t&&this.input.setInputValue(n.value,!0),this.eventBus.trigger("cursorchanged",n.raw,n.datasetName))},_onCursorRemoved:function(){this.input.resetInputValue(),this._updateHint(),this.eventBus.trigger("cursorremoved")},_onDatasetRendered:function(){this._updateHint(),this.eventBus.trigger("updated")},_onOpened:function(){this._updateHint(),this.input.expand(),this.eventBus.trigger("opened")},_onEmpty:function(){this.eventBus.trigger("empty")},_onRedrawn:function(){this.$node.css("top","0px"),this.$node.css("left","0px");var e=this.$input[0].getBoundingClientRect();this.autoWidth&&this.$node.css("width",e.width+"px");var t=this.$node[0].getBoundingClientRect(),n=e.bottom-t.top;this.$node.css("top",n+"px");var i=e.left-t.left;this.$node.css("left",i+"px"),this.eventBus.trigger("redrawn")},_onShown:function(){this.eventBus.trigger("shown"),this.autoselect&&this.dropdown.cursorTopSuggestion()},_onClosed:function(){this.input.clearHint(),this.input.removeActiveDescendant(),this.input.collapse(),this.eventBus.trigger("closed")},_onFocused:function(){if(this.isActivated=!0,this.openOnFocus){var e=this.input.getQuery();e.length>=this.minLength?this.dropdown.update(e):this.dropdown.empty(),this.dropdown.open()}},_onBlurred:function(){var e,t;e=this.dropdown.getDatumForCursor(),t=this.dropdown.getDatumForTopSuggestion();var n={selectionMethod:"blur"};this.debug||(this.autoselectOnBlur&&e?this._select(e,n):this.autoselectOnBlur&&t?this._select(t,n):(this.isActivated=!1,this.dropdown.empty(),this.dropdown.close()))},_onEnterKeyed:function(e,t){var n,i;n=this.dropdown.getDatumForCursor(),i=this.dropdown.getDatumForTopSuggestion();var r={selectionMethod:"enterKey"};n?(this._select(n,r),t.preventDefault()):this.autoselect&&i&&(this._select(i,r),t.preventDefault())},_onTabKeyed:function(e,t){if(this.tabAutocomplete){var n;(n=this.dropdown.getDatumForCursor())?(this._select(n,{selectionMethod:"tabKey"}),t.preventDefault()):this._autocomplete(!0)}else this.dropdown.close()},_onEscKeyed:function(){this.dropdown.close(),this.input.resetInputValue()},_onUpKeyed:function(){var e=this.input.getQuery();this.dropdown.isEmpty&&e.length>=this.minLength?this.dropdown.update(e):this.dropdown.moveCursorUp(),this.dropdown.open()},_onDownKeyed:function(){var e=this.input.getQuery();this.dropdown.isEmpty&&e.length>=this.minLength?this.dropdown.update(e):this.dropdown.moveCursorDown(),this.dropdown.open()},_onLeftKeyed:function(){"rtl"===this.dir&&this._autocomplete()},_onRightKeyed:function(){"ltr"===this.dir&&this._autocomplete()},_onQueryChanged:function(e,t){this.input.clearHintIfInvalid(),t.length>=this.minLength?this.dropdown.update(t):this.dropdown.empty(),this.dropdown.open(),this._setLanguageDirection()},_onWhitespaceChanged:function(){this._updateHint(),this.dropdown.open()},_setLanguageDirection:function(){var e=this.input.getLanguageDirection();this.dir!==e&&(this.dir=e,this.$node.css("direction",e),this.dropdown.setLanguageDirection(e))},_updateHint:function(){var e,t,n,r,o;(e=this.dropdown.getDatumForTopSuggestion())&&this.dropdown.isVisible()&&!this.input.hasOverflow()?(t=this.input.getInputValue(),n=s.normalizeQuery(t),r=i.escapeRegExChars(n),(o=new RegExp("^(?:"+r+")(.+$)","i").exec(e.value))?this.input.setHint(t+o[1]):this.input.clearHint()):this.input.clearHint()},_autocomplete:function(e){var t,n,i,r;t=this.input.getHint(),n=this.input.getQuery(),i=e||this.input.isCursorAtEnd(),t&&n!==t&&i&&((r=this.dropdown.getDatumForTopSuggestion())&&this.input.setInputValue(r.value),this.eventBus.trigger("autocompleted",r.raw,r.datasetName))},_select:function(e,t){void 0!==e.value&&this.input.setQuery(e.value),this.clearOnSelected?this.setVal(""):this.input.setInputValue(e.value,!0),this._setLanguageDirection(),!1===this.eventBus.trigger("selected",e.raw,e.datasetName,t).isDefaultPrevented()&&(this.dropdown.close(),i.defer(i.bind(this.dropdown.empty,this.dropdown)))},open:function(){if(!this.isActivated){var e=this.input.getInputValue();e.length>=this.minLength?this.dropdown.update(e):this.dropdown.empty()}this.dropdown.open()},close:function(){this.dropdown.close()},setVal:function(e){e=i.toStr(e),this.isActivated?this.input.setInputValue(e):(this.input.setQuery(e),this.input.setInputValue(e,!0)),this._setLanguageDirection()},getVal:function(){return this.input.getQuery()},destroy:function(){this.input.destroy(),this.dropdown.destroy(),function(e,t){var n=e.find(i.className(t.prefix,t.input));i.each(n.data("aaAttrs"),(function(e,t){void 0===e?n.removeAttr(t):n.attr(t,e)})),n.detach().removeClass(i.className(t.prefix,t.input,!0)).insertAfter(e),n.removeData&&n.removeData("aaAttrs");e.remove()}(this.$node,this.cssClasses),this.$node=null},getWrapper:function(){return this.dropdown.$container[0]}}),u.Dropdown=a,u.Input=s,u.sources=n(277),e.exports=u},function(e,t,n){"use strict";var i;i={9:"tab",27:"esc",37:"left",39:"right",13:"enter",38:"up",40:"down"};var r=n(13),o=n(20),s=n(64);function a(e){var t,n,s,a,l,c=this;(e=e||{}).input||r.error("input is missing"),t=r.bind(this._onBlur,this),n=r.bind(this._onFocus,this),s=r.bind(this._onKeydown,this),a=r.bind(this._onInput,this),this.$hint=o.element(e.hint),this.$input=o.element(e.input).on("blur.aa",t).on("focus.aa",n).on("keydown.aa",s),0===this.$hint.length&&(this.setHint=this.getHint=this.clearHint=this.clearHintIfInvalid=r.noop),r.isMsie()?this.$input.on("keydown.aa keypress.aa cut.aa paste.aa",(function(e){i[e.which||e.keyCode]||r.defer(r.bind(c._onInput,c,e))})):this.$input.on("input.aa",a),this.query=this.$input.val(),this.$overflowHelper=(l=this.$input,o.element('<pre aria-hidden="true"></pre>').css({position:"absolute",visibility:"hidden",whiteSpace:"pre",fontFamily:l.css("font-family"),fontSize:l.css("font-size"),fontStyle:l.css("font-style"),fontVariant:l.css("font-variant"),fontWeight:l.css("font-weight"),wordSpacing:l.css("word-spacing"),letterSpacing:l.css("letter-spacing"),textIndent:l.css("text-indent"),textRendering:l.css("text-rendering"),textTransform:l.css("text-transform")}).insertAfter(l))}function l(e){return e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}a.normalizeQuery=function(e){return(e||"").replace(/^\s*/g,"").replace(/\s{2,}/g," ")},r.mixin(a.prototype,s,{_onBlur:function(){this.resetInputValue(),this.$input.removeAttr("aria-activedescendant"),this.trigger("blurred")},_onFocus:function(){this.trigger("focused")},_onKeydown:function(e){var t=i[e.which||e.keyCode];this._managePreventDefault(t,e),t&&this._shouldTrigger(t,e)&&this.trigger(t+"Keyed",e)},_onInput:function(){this._checkInputValue()},_managePreventDefault:function(e,t){var n,i,r;switch(e){case"tab":i=this.getHint(),r=this.getInputValue(),n=i&&i!==r&&!l(t);break;case"up":case"down":n=!l(t);break;default:n=!1}n&&t.preventDefault()},_shouldTrigger:function(e,t){var n;switch(e){case"tab":n=!l(t);break;default:n=!0}return n},_checkInputValue:function(){var e,t,n,i,r;e=this.getInputValue(),i=e,r=this.query,n=!(!(t=a.normalizeQuery(i)===a.normalizeQuery(r))||!this.query)&&this.query.length!==e.length,this.query=e,t?n&&this.trigger("whitespaceChanged",this.query):this.trigger("queryChanged",this.query)},focus:function(){this.$input.focus()},blur:function(){this.$input.blur()},getQuery:function(){return this.query},setQuery:function(e){this.query=e},getInputValue:function(){return this.$input.val()},setInputValue:function(e,t){void 0===e&&(e=this.query),this.$input.val(e),t?this.clearHint():this._checkInputValue()},expand:function(){this.$input.attr("aria-expanded","true")},collapse:function(){this.$input.attr("aria-expanded","false")},setActiveDescendant:function(e){this.$input.attr("aria-activedescendant",e)},removeActiveDescendant:function(){this.$input.removeAttr("aria-activedescendant")},resetInputValue:function(){this.setInputValue(this.query,!0)},getHint:function(){return this.$hint.val()},setHint:function(e){this.$hint.val(e)},clearHint:function(){this.setHint("")},clearHintIfInvalid:function(){var e,t,n;n=(e=this.getInputValue())!==(t=this.getHint())&&0===t.indexOf(e),""!==e&&n&&!this.hasOverflow()||this.clearHint()},getLanguageDirection:function(){return(this.$input.css("direction")||"ltr").toLowerCase()},hasOverflow:function(){var e=this.$input.width()-2;return this.$overflowHelper.text(this.getInputValue()),this.$overflowHelper.width()>=e},isCursorAtEnd:function(){var e,t,n;return e=this.$input.val().length,t=this.$input[0].selectionStart,r.isNumber(t)?t===e:!document.selection||((n=document.selection.createRange()).moveStart("character",-e),e===n.text.length)},destroy:function(){this.$hint.off(".aa"),this.$input.off(".aa"),this.$hint=this.$input=this.$overflowHelper=null}}),e.exports=a},function(e,t,n){"use strict";var i,r,o,s=[n(270),n(271),n(272),n(273),n(274)],a=-1,l=[],c=!1;function u(){i&&r&&(i=!1,r.length?l=r.concat(l):a=-1,l.length&&h())}function h(){if(!i){c=!1,i=!0;for(var e=l.length,t=setTimeout(u);e;){for(r=l,l=[];r&&++a<e;)r[a].run();a=-1,e=l.length}r=null,a=-1,i=!1,clearTimeout(t)}}for(var d=-1,f=s.length;++d<f;)if(s[d]&&s[d].test&&s[d].test()){o=s[d].install(h);break}function p(e,t){this.fun=e,this.array=t}p.prototype.run=function(){var e=this.fun,t=this.array;switch(t.length){case 0:return e();case 1:return e(t[0]);case 2:return e(t[0],t[1]);case 3:return e(t[0],t[1],t[2]);default:return e.apply(null,t)}},e.exports=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new p(e,t)),c||i||(c=!0,o())}},function(e,t,n){"use strict";(function(e){t.test=function(){return void 0!==e&&!e.browser},t.install=function(t){return function(){e.nextTick(t)}}}).call(this,n(43))},function(e,t,n){"use strict";(function(e){var n=e.MutationObserver||e.WebKitMutationObserver;t.test=function(){return n},t.install=function(t){var i=0,r=new n(t),o=e.document.createTextNode("");return r.observe(o,{characterData:!0}),function(){o.data=i=++i%2}}}).call(this,n(16))},function(e,t,n){"use strict";(function(e){t.test=function(){return!e.setImmediate&&void 0!==e.MessageChannel},t.install=function(t){var n=new e.MessageChannel;return n.port1.onmessage=t,function(){n.port2.postMessage(0)}}}).call(this,n(16))},function(e,t,n){"use strict";(function(e){t.test=function(){return"document"in e&&"onreadystatechange"in e.document.createElement("script")},t.install=function(t){return function(){var n=e.document.createElement("script");return n.onreadystatechange=function(){t(),n.onreadystatechange=null,n.parentNode.removeChild(n),n=null},e.document.documentElement.appendChild(n),t}}}).call(this,n(16))},function(e,t,n){"use strict";t.test=function(){return!0},t.install=function(e){return function(){setTimeout(e,0)}}},function(e,t,n){"use strict";var i=n(13),r=n(20),o=n(64),s=n(276),a=n(65);function l(e){var t,n,o,s=this;(e=e||{}).menu||i.error("menu is required"),i.isArray(e.datasets)||i.isObject(e.datasets)||i.error("1 or more datasets required"),e.datasets||i.error("datasets is required"),this.isOpen=!1,this.isEmpty=!0,this.minLength=e.minLength||0,this.templates={},this.appendTo=e.appendTo||!1,this.css=i.mixin({},a,e.appendTo?a.appendTo:{}),this.cssClasses=e.cssClasses=i.mixin({},a.defaultClasses,e.cssClasses||{}),this.cssClasses.prefix=e.cssClasses.formattedPrefix||i.formatPrefix(this.cssClasses.prefix,this.cssClasses.noPrefix),t=i.bind(this._onSuggestionClick,this),n=i.bind(this._onSuggestionMouseEnter,this),o=i.bind(this._onSuggestionMouseLeave,this);var c=i.className(this.cssClasses.prefix,this.cssClasses.suggestion);this.$menu=r.element(e.menu).on("mouseenter.aa",c,n).on("mouseleave.aa",c,o).on("click.aa",c,t),this.$container=e.appendTo?e.wrapper:this.$menu,e.templates&&e.templates.header&&(this.templates.header=i.templatify(e.templates.header),this.$menu.prepend(this.templates.header())),e.templates&&e.templates.empty&&(this.templates.empty=i.templatify(e.templates.empty),this.$empty=r.element('<div class="'+i.className(this.cssClasses.prefix,this.cssClasses.empty,!0)+'"></div>'),this.$menu.append(this.$empty),this.$empty.hide()),this.datasets=i.map(e.datasets,(function(t){return function(e,t,n){return new l.Dataset(i.mixin({$menu:e,cssClasses:n},t))}(s.$menu,t,e.cssClasses)})),i.each(this.datasets,(function(e){var t=e.getRoot();t&&0===t.parent().length&&s.$menu.append(t),e.onSync("rendered",s._onRendered,s)})),e.templates&&e.templates.footer&&(this.templates.footer=i.templatify(e.templates.footer),this.$menu.append(this.templates.footer()));var u=this;r.element(window).resize((function(){u._redraw()}))}i.mixin(l.prototype,o,{_onSuggestionClick:function(e){this.trigger("suggestionClicked",r.element(e.currentTarget))},_onSuggestionMouseEnter:function(e){var t=r.element(e.currentTarget);if(!t.hasClass(i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0))){this._removeCursor();var n=this;setTimeout((function(){n._setCursor(t,!1)}),0)}},_onSuggestionMouseLeave:function(e){if(e.relatedTarget&&r.element(e.relatedTarget).closest("."+i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0)).length>0)return;this._removeCursor(),this.trigger("cursorRemoved")},_onRendered:function(e,t){if(this.isEmpty=i.every(this.datasets,(function(e){return e.isEmpty()})),this.isEmpty)if(t.length>=this.minLength&&this.trigger("empty"),this.$empty)if(t.length<this.minLength)this._hide();else{var n=this.templates.empty({query:this.datasets[0]&&this.datasets[0].query});this.$empty.html(n),this.$empty.show(),this._show()}else i.any(this.datasets,(function(e){return e.templates&&e.templates.empty}))?t.length<this.minLength?this._hide():this._show():this._hide();else this.isOpen&&(this.$empty&&(this.$empty.empty(),this.$empty.hide()),t.length>=this.minLength?this._show():this._hide());this.trigger("datasetRendered")},_hide:function(){this.$container.hide()},_show:function(){this.$container.css("display","block"),this._redraw(),this.trigger("shown")},_redraw:function(){this.isOpen&&this.appendTo&&this.trigger("redrawn")},_getSuggestions:function(){return this.$menu.find(i.className(this.cssClasses.prefix,this.cssClasses.suggestion))},_getCursor:function(){return this.$menu.find(i.className(this.cssClasses.prefix,this.cssClasses.cursor)).first()},_setCursor:function(e,t){e.first().addClass(i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0)).attr("aria-selected","true"),this.trigger("cursorMoved",t)},_removeCursor:function(){this._getCursor().removeClass(i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0)).removeAttr("aria-selected")},_moveCursor:function(e){var t,n,i,r;this.isOpen&&(n=this._getCursor(),t=this._getSuggestions(),this._removeCursor(),-1!==(i=((i=t.index(n)+e)+1)%(t.length+1)-1)?(i<-1&&(i=t.length-1),this._setCursor(r=t.eq(i),!0),this._ensureVisible(r)):this.trigger("cursorRemoved"))},_ensureVisible:function(e){var t,n,i,r;n=(t=e.position().top)+e.height()+parseInt(e.css("margin-top"),10)+parseInt(e.css("margin-bottom"),10),i=this.$menu.scrollTop(),r=this.$menu.height()+parseInt(this.$menu.css("padding-top"),10)+parseInt(this.$menu.css("padding-bottom"),10),t<0?this.$menu.scrollTop(i+t):r<n&&this.$menu.scrollTop(i+(n-r))},close:function(){this.isOpen&&(this.isOpen=!1,this._removeCursor(),this._hide(),this.trigger("closed"))},open:function(){this.isOpen||(this.isOpen=!0,this.isEmpty||this._show(),this.trigger("opened"))},setLanguageDirection:function(e){this.$menu.css("ltr"===e?this.css.ltr:this.css.rtl)},moveCursorUp:function(){this._moveCursor(-1)},moveCursorDown:function(){this._moveCursor(1)},getDatumForSuggestion:function(e){var t=null;return e.length&&(t={raw:s.extractDatum(e),value:s.extractValue(e),datasetName:s.extractDatasetName(e)}),t},getCurrentCursor:function(){return this._getCursor().first()},getDatumForCursor:function(){return this.getDatumForSuggestion(this._getCursor().first())},getDatumForTopSuggestion:function(){return this.getDatumForSuggestion(this._getSuggestions().first())},cursorTopSuggestion:function(){this._setCursor(this._getSuggestions().first(),!1)},update:function(e){i.each(this.datasets,(function(t){t.update(e)}))},empty:function(){i.each(this.datasets,(function(e){e.clear()})),this.isEmpty=!0},isVisible:function(){return this.isOpen&&!this.isEmpty},destroy:function(){this.$menu.off(".aa"),this.$menu=null,i.each(this.datasets,(function(e){e.destroy()}))}}),l.Dataset=s,e.exports=l},function(e,t,n){"use strict";var i=n(13),r=n(20),o=n(127),s=n(65),a=n(64);function l(e){var t,n,a,l;(e=e||{}).templates=e.templates||{},e.source||i.error("missing source"),e.name&&(t=e.name,!/^[_a-zA-Z0-9-]+$/.test(t))&&i.error("invalid dataset name: "+e.name),this.query=null,this._isEmpty=!0,this.highlight=!!e.highlight,this.name=void 0===e.name||null===e.name?i.getUniqueId():e.name,this.source=e.source,this.displayFn=(n=(n=e.display||e.displayKey)||"value",i.isFunction(n)?n:function(e){return e[n]}),this.debounce=e.debounce,this.cache=!1!==e.cache,this.templates=(a=e.templates,l=this.displayFn,{empty:a.empty&&i.templatify(a.empty),header:a.header&&i.templatify(a.header),footer:a.footer&&i.templatify(a.footer),suggestion:a.suggestion||function(e){return"<p>"+l(e)+"</p>"}}),this.css=i.mixin({},s,e.appendTo?s.appendTo:{}),this.cssClasses=e.cssClasses=i.mixin({},s.defaultClasses,e.cssClasses||{}),this.cssClasses.prefix=e.cssClasses.formattedPrefix||i.formatPrefix(this.cssClasses.prefix,this.cssClasses.noPrefix);var c=i.className(this.cssClasses.prefix,this.cssClasses.dataset);this.$el=e.$menu&&e.$menu.find(c+"-"+this.name).length>0?r.element(e.$menu.find(c+"-"+this.name)[0]):r.element(o.dataset.replace("%CLASS%",this.name).replace("%PREFIX%",this.cssClasses.prefix).replace("%DATASET%",this.cssClasses.dataset)),this.$menu=e.$menu,this.clearCachedSuggestions()}l.extractDatasetName=function(e){return r.element(e).data("aaDataset")},l.extractValue=function(e){return r.element(e).data("aaValue")},l.extractDatum=function(e){var t=r.element(e).data("aaDatum");return"string"==typeof t&&(t=JSON.parse(t)),t},i.mixin(l.prototype,a,{_render:function(e,t){if(this.$el){var n,s=this,a=[].slice.call(arguments,2);if(this.$el.empty(),n=t&&t.length,this._isEmpty=!n,!n&&this.templates.empty)this.$el.html(l.apply(this,a)).prepend(s.templates.header?u.apply(this,a):null).append(s.templates.footer?h.apply(this,a):null);else if(n)this.$el.html(c.apply(this,a)).prepend(s.templates.header?u.apply(this,a):null).append(s.templates.footer?h.apply(this,a):null);else if(t&&!Array.isArray(t))throw new TypeError("suggestions must be an array");this.$menu&&this.$menu.addClass(this.cssClasses.prefix+(n?"with":"without")+"-"+this.name).removeClass(this.cssClasses.prefix+(n?"without":"with")+"-"+this.name),this.trigger("rendered",e)}function l(){var t=[].slice.call(arguments,0);return t=[{query:e,isEmpty:!0}].concat(t),s.templates.empty.apply(this,t)}function c(){var e,n,a=[].slice.call(arguments,0),l=this,c=o.suggestions.replace("%PREFIX%",this.cssClasses.prefix).replace("%SUGGESTIONS%",this.cssClasses.suggestions);return e=r.element(c).css(this.css.suggestions),n=i.map(t,u),e.append.apply(e,n),e;function u(e){var t,n=o.suggestion.replace("%PREFIX%",l.cssClasses.prefix).replace("%SUGGESTION%",l.cssClasses.suggestion);return(t=r.element(n).attr({role:"option",id:["option",Math.floor(1e8*Math.random())].join("-")}).append(s.templates.suggestion.apply(this,[e].concat(a)))).data("aaDataset",s.name),t.data("aaValue",s.displayFn(e)||void 0),t.data("aaDatum",JSON.stringify(e)),t.children().each((function(){r.element(this).css(l.css.suggestionChild)})),t}}function u(){var t=[].slice.call(arguments,0);return t=[{query:e,isEmpty:!n}].concat(t),s.templates.header.apply(this,t)}function h(){var t=[].slice.call(arguments,0);return t=[{query:e,isEmpty:!n}].concat(t),s.templates.footer.apply(this,t)}},getRoot:function(){return this.$el},update:function(e){function t(t){if(!this.canceled&&e===this.query){var n=[].slice.call(arguments,1);this.cacheSuggestions(e,t,n),this._render.apply(this,[e,t].concat(n))}}if(this.query=e,this.canceled=!1,this.shouldFetchFromCache(e))t.apply(this,[this.cachedSuggestions].concat(this.cachedRenderExtraArgs));else{var n=this,i=function(){n.canceled||n.source(e,t.bind(n))};if(this.debounce){clearTimeout(this.debounceTimeout),this.debounceTimeout=setTimeout((function(){n.debounceTimeout=null,i()}),this.debounce)}else i()}},cacheSuggestions:function(e,t,n){this.cachedQuery=e,this.cachedSuggestions=t,this.cachedRenderExtraArgs=n},shouldFetchFromCache:function(e){return this.cache&&this.cachedQuery===e&&this.cachedSuggestions&&this.cachedSuggestions.length},clearCachedSuggestions:function(){delete this.cachedQuery,delete this.cachedSuggestions,delete this.cachedRenderExtraArgs},cancel:function(){this.canceled=!0},clear:function(){this.cancel(),this.$el.empty(),this.trigger("rendered","")},isEmpty:function(){return this._isEmpty},destroy:function(){this.clearCachedSuggestions(),this.$el=null}}),e.exports=l},function(e,t,n){"use strict";e.exports={hits:n(278),popularIn:n(279)}},function(e,t,n){"use strict";var i=n(13),r=n(128),o=n(129);e.exports=function(e,t){var n=o(e.as._ua);return n&&n[0]>=3&&n[1]>20&&((t=t||{}).additionalUA="autocomplete.js "+r),function(n,r){e.search(n,t,(function(e,t){e?i.error(e.message):r(t.hits,t)}))}}},function(e,t,n){"use strict";var i=n(13),r=n(128),o=n(129);e.exports=function(e,t,n,s){var a=o(e.as._ua);if(a&&a[0]>=3&&a[1]>20&&((t=t||{}).additionalUA="autocomplete.js "+r),!n.source)return i.error("Missing 'source' key");var l=i.isFunction(n.source)?n.source:function(e){return e[n.source]};if(!n.index)return i.error("Missing 'index' key");var c=n.index;return s=s||{},function(a,u){e.search(a,t,(function(e,a){if(e)i.error(e.message);else{if(a.hits.length>0){var h=a.hits[0],d=i.mixin({hitsPerPage:0},n);delete d.source,delete d.index;var f=o(c.as._ua);return f&&f[0]>=3&&f[1]>20&&(t.additionalUA="autocomplete.js "+r),void c.search(l(h),d,(function(e,t){if(e)i.error(e.message);else{var n=[];if(s.includeAll){var r=s.allTitle||"All departments";n.push(i.mixin({facet:{value:r,count:t.nbHits}},i.cloneDeep(h)))}i.each(t.facets,(function(e,t){i.each(e,(function(e,r){n.push(i.mixin({facet:{facet:t,value:r,count:e}},i.cloneDeep(h)))}))}));for(var o=1;o<a.hits.length;++o)n.push(a.hits[o]);u(n,a)}}))}u([])}}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="algolia-docsearch-suggestion",r={suggestion:'\n <a class="'+i+"\n {{#isCategoryHeader}}"+i+"__main{{/isCategoryHeader}}\n {{#isSubCategoryHeader}}"+i+'__secondary{{/isSubCategoryHeader}}\n "\n aria-label="Link to the result"\n href="{{{url}}}"\n >\n <div class="'+i+'--category-header">\n <span class="'+i+'--category-header-lvl0">{{{category}}}</span>\n </div>\n <div class="'+i+'--wrapper">\n <div class="'+i+'--subcategory-column">\n <span class="'+i+'--subcategory-column-text">{{{subcategory}}}</span>\n </div>\n {{#isTextOrSubcategoryNonEmpty}}\n <div class="'+i+'--content">\n <div class="'+i+'--subcategory-inline">{{{subcategory}}}</div>\n <div class="'+i+'--title">{{{title}}}</div>\n {{#text}}<div class="'+i+'--text">{{{text}}}</div>{{/text}}\n </div>\n {{/isTextOrSubcategoryNonEmpty}}\n </div>\n </a>\n ',suggestionSimple:'\n <div class="'+i+"\n {{#isCategoryHeader}}"+i+"__main{{/isCategoryHeader}}\n {{#isSubCategoryHeader}}"+i+'__secondary{{/isSubCategoryHeader}}\n suggestion-layout-simple\n ">\n <div class="'+i+'--category-header">\n {{^isLvl0}}\n <span class="'+i+"--category-header-lvl0 "+i+'--category-header-item">{{{category}}}</span>\n {{^isLvl1}}\n {{^isLvl1EmptyOrDuplicate}}\n <span class="'+i+"--category-header-lvl1 "+i+'--category-header-item">\n {{{subcategory}}}\n </span>\n {{/isLvl1EmptyOrDuplicate}}\n {{/isLvl1}}\n {{/isLvl0}}\n <div class="'+i+"--title "+i+'--category-header-item">\n {{#isLvl2}}\n {{{title}}}\n {{/isLvl2}}\n {{#isLvl1}}\n {{{subcategory}}}\n {{/isLvl1}}\n {{#isLvl0}}\n {{{category}}}\n {{/isLvl0}}\n </div>\n </div>\n <div class="'+i+'--wrapper">\n {{#text}}\n <div class="'+i+'--content">\n <div class="'+i+'--text">{{{text}}}</div>\n </div>\n {{/text}}\n </div>\n </div>\n ',footer:'\n <div class="algolia-docsearch-footer">\n Search by <a class="algolia-docsearch-footer--logo" href="https://www.algolia.com/docsearch">Algolia</a>\n </div>\n ',empty:'\n <div class="'+i+'">\n <div class="'+i+'--wrapper">\n <div class="'+i+"--content "+i+'--no-results">\n <div class="'+i+'--title">\n <div class="'+i+'--text">\n No results found for query <b>"{{query}}"</b>\n </div>\n </div>\n </div>\n </div>\n </div>\n ',searchBox:'\n <form novalidate="novalidate" onsubmit="return false;" class="searchbox">\n <div role="search" class="searchbox__wrapper">\n <input id="docsearch" type="search" name="search" placeholder="Search the docs" autocomplete="off" required="required" class="searchbox__input"/>\n <button type="submit" title="Submit your search query." class="searchbox__submit" >\n <svg width=12 height=12 role="img" aria-label="Search">\n <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sbx-icon-search-13"></use>\n </svg>\n </button>\n <button type="reset" title="Clear the search query." class="searchbox__reset hide">\n <svg width=12 height=12 role="img" aria-label="Reset">\n <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sbx-icon-clear-3"></use>\n </svg>\n </button>\n </div>\n</form>\n\n<div class="svg-icons" style="height: 0; width: 0; position: absolute; visibility: hidden">\n <svg xmlns="http://www.w3.org/2000/svg">\n <symbol id="sbx-icon-clear-3" viewBox="0 0 40 40"><path d="M16.228 20L1.886 5.657 0 3.772 3.772 0l1.885 1.886L20 16.228 34.343 1.886 36.228 0 40 3.772l-1.886 1.885L23.772 20l14.342 14.343L40 36.228 36.228 40l-1.885-1.886L20 23.772 5.657 38.114 3.772 40 0 36.228l1.886-1.885L16.228 20z" fill-rule="evenodd"></symbol>\n <symbol id="sbx-icon-search-13" viewBox="0 0 40 40"><path d="M26.806 29.012a16.312 16.312 0 0 1-10.427 3.746C7.332 32.758 0 25.425 0 16.378 0 7.334 7.333 0 16.38 0c9.045 0 16.378 7.333 16.378 16.38 0 3.96-1.406 7.593-3.746 10.426L39.547 37.34c.607.608.61 1.59-.004 2.203a1.56 1.56 0 0 1-2.202.004L26.807 29.012zm-10.427.627c7.322 0 13.26-5.938 13.26-13.26 0-7.324-5.938-13.26-13.26-13.26-7.324 0-13.26 5.936-13.26 13.26 0 7.322 5.936 13.26 13.26 13.26z" fill-rule="evenodd"></symbol>\n </svg>\n</div>\n '};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=n(130),s=(i=o)&&i.__esModule?i:{default:i};var a={mergeKeyWithParent:function(e,t){if(void 0===e[t])return e;if("object"!==r(e[t]))return e;var n=s.default.extend({},e,e[t]);return delete n[t],n},groupBy:function(e,t){var n={};return s.default.each(e,(function(e,i){if(void 0===i[t])throw new Error("[groupBy]: Object has no key "+t);var r=i[t];"string"==typeof r&&(r=r.toLowerCase()),Object.prototype.hasOwnProperty.call(n,r)||(n[r]=[]),n[r].push(i)})),n},values:function(e){return Object.keys(e).map((function(t){return e[t]}))},flatten:function(e){var t=[];return e.forEach((function(e){Array.isArray(e)?e.forEach((function(e){t.push(e)})):t.push(e)})),t},flattenAndFlagFirst:function(e,t){var n=this.values(e).map((function(e){return e.map((function(e,n){return e[t]=0===n,e}))}));return this.flatten(n)},compact:function(e){var t=[];return e.forEach((function(e){e&&t.push(e)})),t},getHighlightedValue:function(e,t){return e._highlightResult&&e._highlightResult.hierarchy_camel&&e._highlightResult.hierarchy_camel[t]&&e._highlightResult.hierarchy_camel[t].matchLevel&&"none"!==e._highlightResult.hierarchy_camel[t].matchLevel&&e._highlightResult.hierarchy_camel[t].value?e._highlightResult.hierarchy_camel[t].value:e._highlightResult&&e._highlightResult&&e._highlightResult[t]&&e._highlightResult[t].value?e._highlightResult[t].value:e[t]},getSnippetedValue:function(e,t){if(!e._snippetResult||!e._snippetResult[t]||!e._snippetResult[t].value)return e[t];var n=e._snippetResult[t].value;return n[0]!==n[0].toUpperCase()&&(n="…"+n),-1===[".","!","?"].indexOf(n[n.length-1])&&(n+="…"),n},deepClone:function(e){return JSON.parse(JSON.stringify(e))}};t.default=a},function(e,t,n){"use strict";n.r(t);n(134),n(135),n(136),n(213),n(222),n(233),n(234);var i=n(0),r=n.n(i),o=(n(235),n(236),n(132)),s=n.n(o);function a(e,t){e.css("height",t+"px")}function l(e){var t=ace.edit(e);return t.getSession().setMode("ace/mode/questdb"),t.setTheme("ace/theme/merbivore_soft"),t.setShowPrintMargin(!1),t.setDisplayIndentGuides(!1),t.setHighlightActiveLine(!1),t.$blockScrolling=1/0,r()(window).on("resize",(function(){t.resize()})),t}var c=r()(".js-sql-panel"),u=r()(".js-export-url"),h=r()("#editor"),d=r()("#sqlEditor"),f=r()("#console-top"),p=r()("#page-wrapper"),g=h.find(".js-query-message-panel"),m=r()("nav.navbar-default"),v=r()(window),y=r()("#grid"),w=r()("#quick-vis"),x=r()("#js-toggle-chart"),b=r()("#js-toggle-grid"),_=350,S=!1;function C(){if(S){var e,t=m.height(),n=p.height(),i=g.height();t>n&&(e=t),t<n&&(e=v.height()),e&&e<_+350&&(e=_+350),a(f,_),a(d,_-i-60)}}function A(){if("undefined"!=typeof Storage){var e=localStorage.getItem("splitter.position");e&&((_=parseInt(e))||(_=350))}}function k(){"undefined"!=typeof Storage&&localStorage.setItem("splitter.position",_)}function T(e,t){"console"===t?(S=!0,c.show()):(S=!1,c.hide())}function M(){x.addClass("active"),b.removeClass("active"),y.hide(),w.show(),w.resize()}function L(){x.removeClass("active"),b.addClass("active"),y.show(),w.hide(),y.resize()}function E(e){v.bind("resize",C),e.on("query.out.dataset",(function(e,t){var n;u.val((n=t.query,window.location.protocol+"//"+window.location.host+"/exp?query="+encodeURIComponent(n)))})),u.click((function(){this.select()})),new s.a(".js-export-copy-url"),r()(".js-query-refresh").click((function(){e.trigger("grid.refresh")})),e.on("splitter.console.resize",(function(t,n){_+=n,v.trigger("resize"),e.trigger("preferences.save")})),e.on("preferences.save",k),e.on("preferences.load",A),e.on("active.panel",T),e.query(),e.domController(),d.editor(e),y.grid(e),w.quickVis(e),r()("#console-splitter").splitter(e,"console",200,0),x.click(M),b.click(L),e.on("query.out.dataset",L)}var $=r()(".js-import-panel"),R=r()("#import-top"),O=r()("#import-detail"),I=r()("#import-menu")[0],D=r()(".footer")[0],P=R.find(".ud-canvas"),N=r()(window),F=!1,B=450;function H(){if(F){var e=N[0].innerHeight,t=D.offsetHeight;a(R,B),a(O,e-t-B-I.offsetHeight-10);var n=R[0].getBoundingClientRect(),i=P[0].getBoundingClientRect();a(P,B-(i.top-n.top)-10)}}function z(e,t){"import"===t?(F=!0,$.show(),N.trigger("resize")):(F=!1,$.hide())}function W(e,t){B+=t,N.trigger("resize")}var j=n(6),V=n.n(j),q={color:["#2ec7c9","#b6a2de","#5ab1ef","#ffb980","#d87a80","#8d98b3","#e5cf0d","#97b552","#95706d","#dc69aa","#07a2a4","#9a7fd1","#588dd5","#f5994e","#c05050","#59678c","#c9ab00","#7eb00a","#6f5553","#c14089"],title:{textStyle:{fontWeight:"normal",color:"#008acd"}},dataRange:{itemWidth:15,color:["#5ab1ef","#e0ffff"]},toolbox:{color:["#1e90ff","#1e90ff","#1e90ff","#1e90ff"],effectiveColor:"#ff4500"},tooltip:{backgroundColor:"rgba(50,50,50,0.5)",axisPointer:{type:"line",lineStyle:{color:"#008acd"},crossStyle:{color:"#008acd"},shadowStyle:{color:"rgba(200,200,200,0.2)"}}},dataZoom:{dataBackgroundColor:"#efefff",fillerColor:"rgba(182,162,222,0.2)",handleColor:"#008acd"},grid:{borderColor:"#eee"},categoryAxis:{axisLine:{lineStyle:{color:"#008acd"}},splitLine:{lineStyle:{color:["#eee"]}}},valueAxis:{axisLine:{lineStyle:{color:"#008acd"}},splitArea:{show:!0,areaStyle:{color:["rgba(250,250,250,0.1)","rgba(200,200,200,0.1)"]}},splitLine:{lineStyle:{color:["#eee"]}}},polar:{axisLine:{lineStyle:{color:"#ddd"}},splitArea:{show:!0,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(200,200,200,0.2)"]}},splitLine:{lineStyle:{color:"#ddd"}}},timeline:{lineStyle:{color:"#008acd"},controlStyle:{normal:{color:"#008acd"},emphasis:{color:"#008acd"}},symbol:"emptyCircle",symbolSize:3},bar:{itemStyle:{normal:{barBorderRadius:5},emphasis:{barBorderRadius:5}}},line:{smooth:!0,symbol:"emptyCircle",symbolSize:3},k:{itemStyle:{normal:{color:"#d87a80",color0:"#2ec7c9",lineStyle:{color:"#d87a80",color0:"#2ec7c9"}}}},scatter:{symbol:"circle",symbolSize:4},radar:{symbol:"emptyCircle",symbolSize:3},map:{itemStyle:{normal:{areaStyle:{color:"#ddd"},label:{textStyle:{color:"#d87a80"}}},emphasis:{areaStyle:{color:"#fe994e"}}}},force:{itemStyle:{normal:{linkStyle:{color:"#1e90ff"}}}},chord:{itemStyle:{normal:{borderWidth:1,borderColor:"rgba(128, 128, 128, 0.5)",chordStyle:{lineStyle:{color:"rgba(128, 128, 128, 0.5)"}}},emphasis:{borderWidth:1,borderColor:"rgba(128, 128, 128, 0.5)",chordStyle:{lineStyle:{color:"rgba(128, 128, 128, 0.5)"}}}}},gauge:{axisLine:{lineStyle:{color:[[.2,"#2ec7c9"],[.8,"#5ab1ef"],[1,"#d87a80"]],width:10}},axisTick:{splitNumber:10,length:15,lineStyle:{color:"auto"}},splitLine:{length:22,lineStyle:{color:"auto"}},pointer:{width:5}},textStyle:{fontFamily:"微软雅黑, Arial, Verdana, sans-serif"}};function U(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,t){if(!e)return;if("string"==typeof e)return G(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return G(e,t)}(e))){var t=0,n=function(){};return{s:n,n:function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,r,o=!0,s=!1;return{s:function(){i=e[Symbol.iterator]()},n:function(){var e=i.next();return o=e.done,e},e:function(e){s=!0,r=e},f:function(){try{o||null==i.return||i.return()}finally{if(s)throw r}}}}function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function K(e,t,n){this.mapQueries=e,this.mapSeries=t,this.mapAxis=n}function Y(e){for(var t in e){if(e.hasOwnProperty(t))if(!e[t].ready)return!1}return!0}function X(e){for(var t in e)e.hasOwnProperty(t)&&(e[t].ready=!1)}function J(e){for(var t=e.split(","),n=new Map,i=t.length,r=0;r<i;r++)n.set(t[r].trim(),null);return n}function Q(e){console.log(e)}function Z(e,t,n){var i=e.columns,r=n.query.name+".",o=n.doneCallback,s=function(e){for(var t=[],n=0;n<e.length;n++){var i=e[n];t[i.name]={name:i.name,index:n}}return t}(i);console.log("query responded: "+r),function(e,t,n,i){var r=t.length;for(var o in e)if(e.hasOwnProperty(o)){var s=e[o];if(s.ready)continue;console.log("analysing series"),console.log(s),console.log(n);var a=s.columnMap;s.ready=!0;var l,c=U(a.keys());try{for(c.s();!(l=c.n()).done;){var u=l.value,h=n[u.startsWith(t)?u.substr(r,u.length-r):u];h&&(s.dataLength?s.dataLength!==i.length&&(s.error="Column data is of unequal length"):s.dataLength=i.length,a.set(u,{dataset:i,columnIndex:h.index})),null===a.get(u)&&(s.ready=!1)}}catch(e){c.e(e)}finally{c.f()}}}(n.mapSeries,r,s,e.dataset),function(e,t,n,i){var r=t.length;for(var o in e)if(e.hasOwnProperty(o)){var s=e[o];if(s.ready)continue;if("Category column"===s.valueType){var a=n[s.column.startsWith(t)?s.column.substr(r,s.column.length-r):s.column];a?(s.ready=!0,s.dataset=i,s.columnIndex=a.index):s.ready=!1}else s.ready=!0}}(n.mapAxis,r,s,e.dataset);var a=Y(n.mapSeries),l=Y(n.mapAxis);if(console.log("series ready: "+a),console.log("axis ready: "+l),a&&l){console.log("before"),console.log(n.chartOptions),console.log("mapAxis:"),console.log(n.mapAxis),n.chartOptions.legend=function(e){var t=[];for(var n in e)if(e.hasOwnProperty(n)){var i=e[n];t.push(i.name)}return{data:t}}(n.mapSeries);var c=function(e){var t=[],n=[],i=[],r=[],o=0,s=0;for(var a in e)if(e.hasOwnProperty(a)){var l=e[a],c={name:l.name,scale:l.scale};switch(l.valueType){case"Category column":c.type="category";for(var u=l.dataset.length,h=new Array(u),d=0;d<u;d++)h[d]=l.dataset[d][l.columnIndex];c.data=h;break;case"Category values":c.type="category",c.data=JSON.parse(l.values);break;default:c.type="value"}"X-axis"===l.type?(i[l.name]=o++,n.push(c)):(r[l.name]=s++,t.push(c))}return{xAxis:n,yAxis:t,xMap:i,yMap:r}}(n.mapAxis);n.chartOptions.yAxis=c.yAxis,n.chartOptions.xAxis=c.xAxis,n.chartOptions.series=function(e,t,n){console.log("maps"),console.log(t),console.log(n);var i=[];for(var r in e)if(e.hasOwnProperty(r)){var o,s=e[r],a=s.columnMap,l=a.size,c=[],u=U(a.values());try{for(u.s();!(o=u.n()).done;){var h=o.value;c.push(h)}}catch(e){u.e(e)}finally{u.f()}var d={name:s.name};if(d.stack=s.stack,s.axis){console.log("have axis: "+s.axis);var f=n[s.axis];d.yAxisIndex=f||0;var p=t[s.axis];d.xAxisIndex=p||0}else d.xAxisIndex=0,d.yAxisIndex=0;switch(s.chartType){case"Line":d.type="line",d.itemStyle={normal:{lineStyle:{type:"solid"}}};break;case"Bar":d.type="bar";break;case"Area":d.type="line",d.itemStyle={normal:{areaStyle:{type:"default"}}};break;case"Scatter":d.type="scatter";break;default:d.type="line"}var g=s.dataLength,m=new Array(g);if(d.data=m,1===l)for(var v=c[0],y=0;y<g;y++)m[y]=v.dataset[y][v.columnIndex];else if(l>1)for(var w=0;w<g;w++){for(var x=new Array(a.length),b=0;b<l;b++){var _=c[b];x[b]=_.dataset[w][_.columnIndex]}m[w]=x}i.push(d)}return i}(n.mapSeries,c.xMap,c.yMap),console.log("opts"),console.log(n.chartOptions),o("done",n.chartOptions)}else o("incomplete")}function ee(e,t){var n=!1;for(var i in e)if(e.hasOwnProperty(i)){var r=e[i];if(r.timestamp&&r.timestamp>t){n=!0;break}}return console.log("mapChanged"),console.log(e),console.log(n),n}K.prototype.generateOptions=function(e){var t={};for(var n in function(e){for(var t in e)if(e.hasOwnProperty(t)){var n=e[t];n.columnMap=J(n.columns)}}(this.mapSeries),X(this.mapSeries),X(this.mapAxis),this.mapQueries)if(this.mapQueries.hasOwnProperty(n)){var i=this.mapQueries[n],o={query:i.textNormalized,count:!1},s=r.a.get("/exec",o);s.query=i,s.mapSeries=this.mapSeries,s.mapAxis=this.mapAxis,s.doneCallback=e,s.chartOptions=t,s.done(Z).fail(Q)}},K.prototype.stateChanged=function(e){return ee(this.mapQueries,e)||ee(this.mapAxis,e)||ee(this.mapSeries,e)},K.prototype.serializeState=function(){var e=[],t=0;for(var n in this.mapQueries)if(this.mapQueries.hasOwnProperty(n)){var i=this.mapQueries[n];e.push({id:i.id,name:i.name,text:i.text,textNormalized:i.textNormalized}),i.timestamp&&i.timestamp>t&&(t=i.timestamp)}var r=[];for(var o in this.mapAxis)if(this.mapAxis.hasOwnProperty(o)){var s=this.mapAxis[o];r.push({id:s.id,name:s.name,type:s.type,valueType:s.valueType,column:s.column,scale:s.scale}),s.timestamp&&s.timestamp>t&&(t=r.timestamp)}var a=[];for(var l in this.mapSeries)if(this.mapSeries.hasOwnProperty(l)){var c=this.mapSeries[l];a.push({id:c.id,name:c.name,chartType:c.chartType,stack:c.stack,columns:c.columns,axis:c.axis}),c.timestamp&&c.timestamp>t&&(t=c.timestamp)}return{queries:e,axis:r,series:a,timestamp:t}};var te,ne,ie=K,re=r()(".js-vis-panel"),oe=re.find("#vis-canvas"),se=re.find("#vis-menu"),ae=re.find("#vis-forms"),le=r()(".footer")[0],ce=!1,ue=450,he=-1;function de(){if(ce){var e=window.innerHeight,t=se[0].offsetHeight;a(ae,ue),a(oe,e-t-ue-le.offsetHeight),ne.resize()}}function fe(e,t){"visualisation"===t?(ce=!0,re.show(),de()):(ce=!1,re.hide())}function pe(e,t){ue-=t,r()(window).trigger("resize")}function ge(e){if(void 0===e||he<e.timestamp){var t=te.serializeState();e&&(he=e.timestamp),console.log("serializing"),console.log(t),localStorage.setItem("vis",JSON.stringify(t))}}function me(e,t){switch(e){case"done":t&&ne.setOption(t,!0);break;default:console.log(e)}}function ve(){te.generateOptions(me)}function ye(e,t,n){if("undefined"!=typeof Storage){var i=localStorage.getItem("vis");if(i){var r=JSON.parse(i);r&&(console.log("loading"),console.log(r),r.queries&&e.setMap(r.queries),r.axis&&t.setMap(r.axis),r.series&&n.setMap(r.series))}e.onUpdate(ge),t.onUpdate(ge),n.onUpdate(ge)}}n(237);var we=n(133),xe=n.n(we)()({apiKey:"b2a69b4869a2a85284a82fb57519dcda",indexName:"questdb",inputSelector:"#help-input",algoliaOptions:{}});function be(){return(65536*(1+Math.random())|0).toString(16).substring(1)}function _e(){return be()+be()+"-"+be()+"-"+be()+"-"+be()+"-"+be()+be()+be()}function Se(e){return e.toFixed(0).replace(/./g,(function(e,t,n){return t&&"."!==e&&(n.length-t)%3==0?","+e:e}))}function Ce(e){return e<1024?e:e<1048576?Math.round(e/1024)+"KB":e<1073741824?Math.round(e/1024/1024)+"MB":Math.round(e/1024/1024/1024)+"GB"}function Ae(e){e.stopPropagation(),e.preventDefault&&e.preventDefault()}function ke(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Te(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ke(Object(n),!0).forEach((function(t){Me(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ke(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Me(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}xe.autocomplete.off("autocomplete:selected"),xe.autocomplete.on("autocomplete:selected",(function(e,t){window.open(t.url,"_blank")})),r.a.fn.grid=function(e){var t,n,i,o,s,a,l,c,u,h,d,f,p,g,m,v,y,w,x,b,_=60,S=28,C=128,A=400,k=1e7,T=100,M=75,L=120,E=160,$=e,R=r()(this),O=[],I=[],D=-1,P=0,N=C,F=N-1,B=Math.floor(1e3/3),H=2*B,z=[],W=A,j=S,V=[],q=-1,U=-1;function G(e,t){if(e.questIndex!==t){var n,i=I[Math.floor(t/1e3)];if(i){var r=i[t%1e3];if(r)for(n=0;n<O.length;n++)e.childNodes[n].innerHTML=null!==r[n]?r[n].toString():"null";e.questIndex=t}else{for(n=0;n<O.length;n++)e.childNodes[n].innerHTML="";e.questIndex=-1}e.style.top=t*j-y+"px",e===w&&(t===q?(e.className="qg-r qg-r-active",e.childNodes[U].className+=" qg-c-active"):(e.className="qg-r",e.childNodes[U].className="qg-c qg-w"+U))}}function K(){for(var e=Math.max(0,Math.floor((p-W)/j)),t=Math.min(f/j,Math.ceil((p+W+W)/j)),n=e;n<t;n++)G(V[n&F],n)}function Y(e){return null===I[e]||void 0===I[e]||0===I[e].length}function X(e,t){var n,i,o;if(function(){for(var e=0;e<I.length;e++)(e<a||e>l)&&I[e]&&delete I[e]}(),e!==t&&Y(e)&&Y(t))i=(n=1e3*e)+1e3*(t-e+1),o=function(n){I[e]=n.dataset.splice(0,1e3),I[t]=n.dataset,K()};else if(!Y(e)||Y(t)&&e!==t){if(Y(e)&&e!==t||!Y(t))return void K();i=(n=1e3*t)+1e3,o=function(e){I[t]=e.dataset,K()}}else i=(n=1e3*e)+1e3,o=function(t){I[e]=t.dataset,K()};r.a.get("/exec",{query:c,limit:n+","+i,nm:!0}).done(o)}function J(e,t){u&&clearTimeout(u),u=setTimeout((function(){X(e,t)}),75)}function Q(e){var t=Math.max(0,Math.floor((p-W)/j)),n=Math.min(f/j,Math.ceil((p+W+W)/j));0!==e&&function(e,t,n){var i,r,o,s;if(t==t&&n==n)if(i=Math.floor(t/1e3),o=Math.floor(n/1e3),e>0){if(s=n%1e3,i>=a&&o<l)return;if(o===l)return void(s>H&&(l=o+1,a=o,J(o,o+1)));i<o?(J(i,o),a=i,l=o):s>H?(J(o,o+1),a=o,l=o+1):(l=i,a=i,J(i,i))}else{if(r=t%1e3,i>a&&o<=l)return;if(i===a)return void(r<B&&a>0&&(a=Math.max(0,i-1),l=i,J(i-1,i)));i<o?(J(i,o),a=i,l=o):r<B&&i>0?(J(i-1,i),a=Math.max(0,i-1),l=i):(a=i,l=i,J(i,i))}}(e,t,n),0===t?n=N:n>d-2&&(t=Math.max(0,n-N));for(var i=t;i<n;i++){var r=V[i&F];r&&G(r,i)}}function Z(e){switch(O[e].type){case"STRING":case"SYMBOL":return"text-align: left;";default:return""}}function ee(e){for(var t=0;t<s.length;t++)e.push(".qg-w"+t+"{width:"+s[t]+"px;"+Z(t)+"}");e.push(".qg-r{width:"+D+"px;}"),e.push(".qg-canvas{width:"+D+"px;}"),P=2}function te(e){for(var t=0;t<s.length;t++)e.push(".qg-w"+t+"{width:"+100*s[t]/D+"%;"+Z(t)+"}");e.push(".qg-r{width:100%;}"),e.push(".qg-canvas{width:100%;}"),P=1}function ne(e){$.trigger("editor.insert.column",e.toElement.innerHTML)}function ie(){x.className="qg-c qg-w"+U}function re(e){var t;((x=w.childNodes[U]).className+=" qg-c-active",e)&&((t=Math.max(0,x.offsetLeft-5))<n.scrollLeft?n.scrollLeft=t:(t=x.offsetLeft+x.clientWidth+5)>n.scrollLeft+n.clientWidth&&(n.scrollLeft=t-n.clientWidth))}function oe(e){if(q>0){q=Math.max(0,q-e),w.className="qg-r",ie(),(w=V[q&F]).className="qg-r qg-r-active",re();var t=q*j-y;t<n.scrollTop&&(n.scrollTop=Math.max(0,t))}}function se(e){if(q>-1&&q<d-1){q=Math.min(d-1,q+e),w.className="qg-r",ie(),(w=V[q&F]).className="qg-r qg-r-active",re();var t=q*j-W+j-y;t>n.scrollTop&&(n.scrollTop=t)}}function ae(e){o.scrollLeft(n.scrollLeft);var t=n.scrollTop;if(t!==m||e){var i=p;Math.abs(t-m)>4*W?(p=0===t?0:Math.min(Math.ceil((t+W)*v-W),f-W),y=p-(m=t)):g-W>0&&(t>=g-W?(p=Math.max(0,f-W),y=p-(m=t),se(d-q)):(0===t&&m>0?(p=0,y=0,oe(q)):p+=t-m,m=t)),Q(p-i)}h&&(h.empty(),h.append("time = "+new Date+"<br>"),h.append("y = "+p+"<br>"),h.append("M = "+v+"<br>"),h.append("o = "+y+"<br>"),h.append("h = "+g+"<br>"),h.append("vp = "+W+"<br>"),h.append("yMax = "+f+"<br>"),h.append("top = "+m+"<br>"),h.append("activeRow = "+q+"<br>"))}function le(){var e=window.innerHeight-r()(window).scrollTop();W=Math.round(e-n.getBoundingClientRect().top)-M,W=Math.max(W,L),b=Math.floor(W/j),n.style.height=W+"px",R.css("height",Math.max(Math.round(e-R[0].getBoundingClientRect().top)-M,E)+"px"),function(){if(I.length>0){var e=n.offsetWidth,i=null;if(D<e&&1!==P?i=te:D>e&&2!==P&&(i=ee),i){t&&t.remove(),t=r()('<style type="text/css" rel="stylesheet"/>').appendTo(r()("head"));var o=[];i(o),o.push(".qg-c{height:"+j+"px;}"),t[0].styleSheet?t[0].styleSheet.cssText=o.join(" "):t[0].appendChild(document.createTextNode(o.join(" ")))}}}(),ae(!0)}function ce(){w&&(w.className="qg-r"),this.focus(),(w=this.parentElement).className+=" qg-r-active",q=w.questIndex,x&&(x.className="qg-c qg-w"+U),x=this,U=this.cellIndex,x.className+=" qg-c-active"}function ue(e){delete z["which"in e?e.which:e.keyCode]}function he(e){var t="which"in e?e.which:e.keyCode,n=!0;switch(t){case 33:oe(b);break;case 38:z[91]?oe(q):oe(1);break;case 40:z[91]?se(d-q):se(1);break;case 34:se(b);break;case 39:U>-1&&U<O.length-1&&(ie(),U++,re(!0));break;case 37:U>0&&(ie(),U--,re(!0));break;case 35:z[17]?se(d-q):U>-1&&U!==O.length-1&&(ie(),U=O.length-1,re(!0));break;case 36:z[17]?oe(q):U>0&&(ie(),U=0,re(!0));break;case 113:x&&ie(),$.trigger("editor.focus");break;default:z[t]=!0,n=!1}n&&e.preventDefault()}function de(){x&&w&&(x.click(),w.focus())}function fe(e,u){var h;m=0,p=0,y=0,d=0,t&&t.remove(),o.empty(),i.empty(),V=[],P=0,I=[],c=null,a=0,l=0,z=[],w=null,x=null,q=0,U=0,c=u.query,I.push(u.dataset),O=u.columns,function(){for(var e=0;e<N;e++){var t=r()('<div class="qg-r" tabindex="'+e+'"/>');0===e&&(w=t);for(var n=0;n<O.length;n++){var o=r()('<div class="qg-c qg-w'+n+'"/>').click(ce).appendTo(t)[0];0===e&&0===n&&(x=o),o.cellIndex=n}t.css({top:-100,height:j}).appendTo(i),V.push(t[0])}}(),h=u.count,v=(f=(d+=h)*j)/(g=f<k?f:k),i.css("height",0===g?1:g),function(){var e,t,n;for(s=[],D=0,e=0;e<O.length;e++){var i=O[e],a=r()('<div class="qg-header qg-w'+e+'">'+i.name+"</div>").click(ne).appendTo(o);switch(i.type){case"STRING":case"SYMBOL":a.addClass("qg-header-l")}n=Math.max(_,Math.ceil(8*i.name.length*1.2+8)),s.push(n),D+=n}var l=I[0].length>T?T:I[0].length;for(e=0;e<l;e++){var c=I[0][e],u=0;for(t=0;t<c.length;t++){var h=c[t],d=null!==h?h.toString():"null";n=Math.max(_,8*d.length+8),s[t]=Math.max(n,s[t]),u+=s[t]}D=Math.max(D,u)}}(),n.scrollTop=0,le(),de()}function pe(){c&&$.trigger("query.in.export",{q:c})}function ge(){c&&$.trigger("query.in.exec",{q:c})}h=r()("#debug"),o=R.find(".qg-header-row"),(n=R.find(".qg-viewport")[0]).onscroll=ae,(i=R.find(".qg-canvas")).bind("keydown",he),i.bind("keyup",ue),r()(window).resize(le),$.on("query.out.dataset",fe),$.on("grid.focus",de),$.on("grid.refresh",ge),$.on("grid.publish.query",pe),$.on("active.panel",le),le()},r.a.fn.importManager=function(e){var t,n={},i=e,o=0,s=[],a=null,l=null,c=null;function u(e){if(e.lengthComputable){var t=e.loaded||e.position;l.find(" > .ud-progress").css("width",100*t/a.size+"%")}}function h(){var e=!1,t=!1;for(var i in n)if(n.hasOwnProperty(i)){var o=n[i];if(o.selected&&(e=!0,o.retry)){t=!0;break}}r()("#btnImportClearSelected").attr("disabled",!e),r()("#btnRetry").attr("disabled",!t)}function d(e,t){switch(e.retry){case 1:t.find(".js-row-append").addClass("label-danger"),t.find(".js-row-overwrite").removeClass("label-danger");break;case 2:t.find(".js-row-append").removeClass("label-danger"),t.find(".js-row-overwrite").addClass("label-danger");break;default:t.find(".js-row-append").removeClass("label-danger"),t.find(".js-row-overwrite").removeClass("label-danger")}e.selected?t.find(".js-row-toggle").removeClass("fa-square-o").addClass("fa-check-square-o"):t.find(".js-row-toggle").removeClass("fa-check-square-o").addClass("fa-square-o"),e.forceHeader?t.find(".js-row-toggle-header").addClass("label-success"):t.find(".js-row-toggle-header").removeClass("label-success"),e.skipLev?t.find(".js-row-lev").addClass("label-success"):t.find(".js-row-lev").removeClass("label-success"),h()}function f(e,t){t.retry=2,d(t,r()("#"+t.id+" > .ud-c0"))}function p(e,t){t.retry=1,d(t,r()("#"+t.id+" > .ud-c0"))}function g(e,t){t.retry=0,d(t,r()("#"+t.id+" > .ud-c0"))}function m(){var e=r.a.ajaxSettings.xhr();return e.upload&&e.upload.addEventListener("progress",u,!1),e}var v={xhr:m,url:"/imp?fmt=json",type:"POST",contentType:!1,processData:!1,cache:!1},y={type:"GET",contentType:!1,processData:!1,cache:!1};function w(){var e=r()(this),t=n[e.parent().parent().attr("id")];t.selected=!t.selected,d(t,e.parent())}function x(){var e=r()(this),t=n[e.parent().parent().attr("id")];switch(t.retry){case 1:t.retry=0,t.selected=!1;break;default:t.retry=1,t.selected=!0}d(t,e.parent())}function b(){var e=r()(this),t=n[e.parent().parent().attr("id")];switch(t.retry){case 2:t.retry=0,t.selected=!1;break;default:t.retry=2,t.selected=!0}d(t,e.parent())}function _(){var e=r()(this),t=n[e.parent().parent().attr("id")];t.forceHeader=!t.forceHeader,d(t,e.parent())}function S(){var e=r()(this),t=n[e.parent().parent().attr("id")];t.skipLev=!t.skipLev,d(t,e.parent())}function C(){var e=r()(this);O(n[e.parent().parent().attr("id")])}function A(){var e=r()(this),t=n[e.parent().parent().attr("id")];i.trigger("query.build.execute",t.name)}function k(e){var t=n[r()(this).parent().attr("id")];t.importState>-1&&r()(document).trigger("import.detail",t),Ae(e)}function T(e,t,n){var i=l;if(i.find(" > .ud-status").html(t),i.find(" > .ud-progress").remove(),a.selected=!1,n){var o=s.shift();o?R(o):(a=null,l=null,c=null)}r()("#btnImportCancel").attr("disabled",null===a),r()(document).trigger("import.detail.updated",e)}function M(e){if(a.delta=(new Date).getTime()-a.time,"OK"===e.status){a.response=e,a.importState=0,g(0,a),l.find(".js-row-imported").html(Se(e.rowsImported)),l.find(".js-row-rejected").html(Se(e.rowsRejected)),l.find(".js-row-header").html(e.header?"Yes":"No");var t=e.rowsRejected>0?"label-warning":"label-success";T(a,'<span class="label '+t+'">imported in '+a.delta/1e3+"s</span>",!0)}else a.importState=4,a.response=e.status,T(a,'<span class="label label-danger">failed</span>',!0)}function L(e){g(0,a),"abort"!==e.statusText?(a.importState=function(e){switch(e){case 0:return 3;case 400:return 4;case 500:return 5;default:return 101}}(e.status),a.response=e.responseJSON.status,T(a,'<span class="label label-danger">failed</span>',!0)):T(a,'<span class="label label-warning">aborted</span>',!0)}function E(){T(a,'<span class="label label-info">importing</span>',!1),l.append('<div class="ud-progress"></div>'),c=r.a.ajax(function(){if(v.url="/imp?fmt=json",2===a.retry&&(v.url+="&overwrite=true"),a.forceHeader&&(v.url+="&forceHeader=true"),a.skipLev&&(v.url+="&skipLev=true"),v.xhr=m,v.data=new FormData,a.response&&a.response.columns){for(var e=[],t=0;t<a.response.columns.length;t++){var n=a.response.columns[t];n.altType&&n.type!==n.altType.text&&"AUTO"!==n.altType.text?e.push({name:n.name,type:n.altType.value}):0!==n.errors||"DATE"===n.type||void 0!==n.altType&&"AUTO"===n.altType.text||e.push({name:n.name,type:n.type})}v.data.append("schema",JSON.stringify(e))}return"file"===a.type?v.data.append("data",a.file):"clipboard"===a.type&&(v.url=v.url+"&name="+encodeURIComponent(a.name),v.data.append("data",a.content)),a.time=(new Date).getTime(),v}()).done(M).fail(L)}function $(e){switch(e.status){case"Exists":a.importState=1,T(a,'<span class="label label-danger">exists</span>',!0);break;case"Does not exist":a.importState=0,E();break;case"Reserved name":a.importState=2,T(a,'<span class="label label-danger">reserved</span>',!0);break;default:a.importState=101,T(a,'<span class="label label-danger">failed</span>',!0)}}function R(e){a=e,l=r()("#"+e.id),e.retry?(a.importState=0,E()):(y.url="/chk?f=json&j="+encodeURIComponent(e.name),r.a.ajax(y).then($).fail(L))}function O(e){null==a?R(e):a!==e&&s.push(e)}function I(e){var i,s;n[e.id]=e,i=e,s=r()('\n <div id="'.concat(i.id,'" class="ud-row" style="top: ').concat(o,'px;">\n <div class="ud-cell ud-c0">\n <i class="fa fa-square-o ud-checkbox js-row-toggle"></i>\n <span class="label js-row-append" title="Append">A</span>\n <span class="label js-row-overwrite" title="Overwrite">O</span>\n <span class="label js-row-lev" title="Skip lines with extra values">LEV</span>\n <span class="label js-row-toggle-header" title="Header">H</span>\n <i class="fa fa-upload js-row-upload"></i>\n </div>\n <div class="ud-cell ud-c1">').concat(i.name,'</div>\n <div class="ud-cell ud-c2"><i class="fa fa-eye js-row-query"></i></div>\n <div class="ud-cell ud-c3">').concat(i.sizeFmt,'</div>\n <div class="ud-cell ud-c4 js-row-imported">?</div>\n <div class="ud-cell ud-c5 js-row-rejected">?</div>\n <div class="ud-cell ud-c6 js-row-header">?</div>\n <div class="ud-cell ud-c7 ud-status">\n <span class="label">pending</span>\n </div>\n </div>\n ')),t.append(s),s.find(".js-row-toggle").click(w),s.find(".js-row-append").click(x),s.find(".js-row-overwrite").click(b),s.find(".js-row-lev").click(S),s.find(".js-row-toggle-header").click(_),s.find(".js-row-upload").click(C),s.find(".js-row-query").click(A),s.find(".ud-c1").click(k),s.find(".ud-c2").click(k),s.find(".ud-c3").click(k),o+=35,O(e)}function D(e,t){for(var n=0;n<t.files.length;n++){var i=t.files[n];I({id:_e(),name:i.name,size:i.size,file:i,type:"file",sizeFmt:Ce(i.size),selected:!1,imported:!1,forceHeader:!1})}}function P(e,t){I({id:_e(),name:"clipboard-"+(new Date).getTime(),size:t.length,type:"clipboard",content:t,sizeFmt:Ce(t.length),selected:!1,imported:!1,forceHeader:!1})}function N(){for(var e in n)if(n.hasOwnProperty(e)){var i=n[e];if(i.selected&&i!==a){var l=s.indexOf(i);l>-1&&delete s[l],r()("#"+e).remove(),delete n[e],r()(document).trigger("import.cleared",i)}}o=0;for(var c=t.find(".ud-row"),u=0;u<c.length;u++)r()(c[u]).css("top",o),o+=35;h()}function F(){for(var e in n)if(n.hasOwnProperty(e)){var t=n[e];t.selected&&t.retry&&O(t)}}function B(){null!==c&&c.abort()}return t=this.find("> .ud-canvas"),r()(document).on("dropbox.files",D),r()(document).on("dropbox.clipboard",P),r()(document).on("import.line.overwrite",f),r()(document).on("import.line.append",p),r()(document).on("import.line.abort",g),r()("#btnImportClearSelected").click(N),r()("#btnImportCancel").click(B),r()("#btnRetry").click(F),this},r.a.fn.dropbox=function(e){var t=r()(),n=this;function i(){n.removeClass("drag-drop").addClass("drag-idle")}function o(e){Ae(e),i(),t=r()(),r()(document).trigger("dropbox.files",e.originalEvent.dataTransfer)}function s(e){var t;window.clipboardData&&window.clipboardData.getData?t=window.clipboardData.getData("Text"):e.originalEvent.clipboardData&&e.originalEvent.clipboardData.getData&&(t=e.originalEvent.clipboardData.getData("text/plain")),r()(document).trigger("dropbox.clipboard",t)}function a(e){Ae(e),0===t.size()&&n.addClass("drag-drop").removeClass("drag-idle"),t=t.add(e.target)}function l(e){setTimeout((function(){0===(t=t.not(e.target)).size()&&i()}),1)}function c(e,t){"import"===t?(r()(document).on("drop",o),r()(document).on("paste",s),r()(document).on("dragenter",a),r()(document).on("dragover",Ae),r()(document).on("dragleave",l)):(r()(document).unbind("drop",o),r()(document).unbind("paste",s),r()(document).unbind("dragenter",a),r()(document).unbind("dragover",Ae),r()(document).unbind("dragleave",l))}return function(){e.on("active.panel",c);var t=r()("#js-browse-files-input")[0];r()("#js-browse-files").click((function(){t.click()})),t.onchange=function(){r()(document).trigger("dropbox.files",t),t.value=""}}(),this},r.a.fn.importEditor=function(e){var t,n,i=r()(this),o=r()(".stats-switcher"),s=r()("#js-import-editor"),a=r()("#js-import-error"),l=r()("#js-import-placeholder"),c=r()(this).find(".js-message"),u=r()(this).find(".js-import-tab-name"),h=r()(this).find(".import-rejected"),d=r()(this).find(".import-imported"),f=r()(this).find(".js-rejected-row-count"),p=r()(this).find(".js-imported-row-count"),g=r()(this).find(".ud-canvas"),m=r()(".footer")[0].offsetHeight,v=[{text:"AUTO",value:null},{text:"BOOLEAN",value:"BOOLEAN"},{text:"BYTE",value:"BYTE"},{text:"DOUBLE",value:"DOUBLE"},{text:"DATE",value:"DATE"},{text:"FLOAT",value:"FLOAT"},{text:"INT",value:"INT"},{text:"LONG",value:"LONG"},{text:"SHORT",value:"SHORT"},{text:"CHAR",value:"CHAR"},{text:"STRING",value:"STRING"},{text:"SYMBOL",value:"SYMBOL"}],y=null,w=e;function x(){var e=g[0].getBoundingClientRect().top,t=Math.round(window.innerHeight-e);t=t-m-45,g[0].style.height=t+"px"}function b(){var e=r()(this);t.appendTo(e.parent()),t.css("left",e.css("left")),t.css("width",e.css("width"));var n=parseInt(r()(this).parent().find(".js-g-row").text())-1,i=y.response.columns[n];i.altType?t.val(i.altType.value):t.val(i.type),t.changeTargetDiv=e,t.changeTargetCol=i,t.show(),t.focus()}function _(){t.hide()}function S(e){return e.altType&&e.altType.text!==e.type?e.type+'<i class="fa fa-angle-double-right g-type-separator"></i>'+e.altType.text:e.type}function C(){var e=r()(this).find("option:selected");t.changeTargetCol.altType={text:e.text(),value:e.val()},t.changeTargetDiv.html(S(t.changeTargetCol)),function(){for(var e=!1,t=0;t<y.response.columns.length;t++){var n=y.response.columns[t];if(n.altType&&n.type!==n.altType.text){e=!0;break}}r()(document).trigger(e?"import.line.overwrite":"import.line.cancel",y)}(),_()}function A(e){if(0!==e.importState||e.response){if(e.response&&0===e.importState){u.html(n=e.response.location);var o=e.response.rowsImported,m=e.response.rowsRejected,v=o+m;if(h.css("width",Math.round(100*m/v)+"%"),d.css("width",Math.round(100*o/v)+"%"),f.html(m),p.html(o),g.empty(),e.response.columns)for(var y=0,w=0;w<e.response.columns.length;w++){var A=e.response.columns[w];g.append('<div class="ud-row" style="top: '+y+'px"><div class="ud-cell gc-1 g-other js-g-row">'+(w+1)+'</div><div class="ud-cell gc-2 g-other">'+(A.errors>0?'<i class="fa fa-exclamation-triangle g-warning"></i>':"")+A.name+'</div><div class="ud-cell gc-3 g-type">'+S(A)+'</div><div class="ud-cell gc-4 g-other">'+(void 0!==A.pattern?A.pattern:"")+'</div><div class="ud-cell gc-5 g-other">'+(void 0!==A.locale?A.locale:"")+'</div><div class="ud-cell gc-6 g-other">'+A.errors+"</div></div>"),y+=35}r()(".g-type").click(b),r()(".g-other").click(_),t.change(C),s.show(),a.hide(),x()}else{switch(e.importState){case 1:c.html("Table <strong>"+e.name+"</strong> already exists");break;case 2:c.html("Name <strong>"+e.name+"</strong> is reserved");break;case 3:c.html("Server is not responding...");break;case 4:c.html(e.response);break;case 5:c.html("Server encountered internal problem. Check server logs for more details.");break;default:c.html("Unknown error: "+e.responseStatus)}s.hide(),a.show(),l.hide()}i.show()}}r()(document).on("import.detail",(function(e,t){y=t,A(t)})),r()(document).on("import.detail.updated",(function(e,t){y===t&&t.response&&A(t)})),r()(document).on("import.cleared",(function(e,t){t===y&&(y=null,s.hide(),a.hide(),l.show())})),function(){t=r()('<select class="g-dynamic-select form-control m-b"/>');for(var e=0;e<v.length;e++){var n=v[e];r()("<option />",{value:n.value,text:n.text}).appendTo(t)}}(),r()(".import-stats-chart").click((function(){o.hasClass("stats-visible")?o.removeClass("stats-visible"):o.addClass("stats-visible")})),u.mouseover((function(){u.addClass("animated tada").one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",(function(){r()(this).removeClass("animated").removeClass("tada")}))})),u.click((function(){w.trigger("query.build.execute",n)})),r()(window).resize(x),w.on("active.panel",x)},r.a.fn.listManager=function(e,t,n,i){var o,s,a=r()(this),l=a.find(".qdb-list ul"),c=e,u=t,h=n,d=i,f=[],p=a.find(".qdb-list-add-btn"),g=a.find(".qdb-list-delete-btn"),m=a.find(".qdb-vis-form"),v=a.find(".qdb-vis-placeholder");function y(){0===l.find("li").length?(m.hide(),v.show()):(v.hide(),m.show())}function w(){return l.find("#"+s)}function x(e){if(s){var t=w()[0];if(t){if(!h(f[s]))return;t.className=""}}s=e.target.getAttribute("id"),e.target.className="active";var n=f[s];n?u(n):d()}function b(e){o&&o(e)}function _(){l.find("#"+this.id).html(this.name),b(this)}function S(e){e.callback=_;var t=e.id,n=e.name,i=r()('<li id="'.concat(t,'">').concat(n,"</li>"));return f[t]=e,i.click(x),i.appendTo(l),i}return p.click((function(){var e,t=l.find("li").length+1;do{e=c(t++)}while(l.find("#"+e.id).length>0);e.timestamp=(new Date).getTime();var n=S(e);y(),n.click(),b(e)})),g.click((function(){if(s){var e=w();if(delete f[s],b(),e){d();var t=e.next();0===t.length&&(t=e.prev()),e.remove(),0===t.length?s=null:t.click()}}y()})),y(),{getMap:function(){return f},setMap:function(e){var t;!function(){for(var e=l[0];e.firstChild;)e.removeChild(e.firstChild)}(),function(){for(var e in f)f.hasOwnProperty(e)&&delete f[e]}();for(var n=0,i=e.length;n<i;n++){var r=S(e[n]);t||(t=r)}t&&t.click(),y()},onUpdate:function(e){o=e}}},r.a.fn.query=function(){var e,t,n=r()(this),i=null,o=null,s={query:"",limit:""};function a(){null!==i&&(i.abort(),i=null)}function l(e){n.trigger("query.out.ok",{count:e.count,timings:e.timings&&Te({},e.timings,{fetch:1e6*(Date.now()-t)})}),e.dataset&&n.trigger("query.out.dataset",e),i=null}function c(r){n.trigger("query.out.error",{query:e,r:r.responseJSON,status:r.status,statusText:r.statusText,delta:(new Date).getTime()-t}),i=null}function u(){a(),s.query=e.q,s.limit="0,1000",s.count=!0,s.src="con",s.timings=!0,t=Date.now(),i=r.a.get("/exec",s),n.trigger("query.out.running"),i.done(l).fail(c)}n.on("query.in.exec",(function(t,n){e=n,null!==o&&(clearTimeout(o),o=null),o=setTimeout(u,50)})),n.on("query.in.cancel",a),n.on("query.publish",(function(){n.trigger("query.text",e)}))},r.a.fn.domController=function(){var e,t,n=r()(".js-query-spinner"),i=r()(".js-query-message-panel"),o=!1,s=r()(this);function a(){n.addClass("query-progress-animated",100),i.removeClass("query-message-ok"),i.html("&nbsp;Running...")}function l(){o=!0,t.html('<i class="fa fa-stop"></i>Cancel'),t.removeClass("js-query-run").addClass("js-query-cancel"),e=setTimeout(a,500)}function c(){t.html('<i class="fa fa-play"></i>Run'),t.removeClass("js-query-cancel").addClass("js-query-run"),clearTimeout(e),n.removeClass("query-progress-animated"),o=!1}function u(e,t){if(c(),i.removeClass("query-message-ok").addClass("query-message-error"),"abort"===t.statusText)i.html("Cancelled by user");else if(t.r){var n=function(e,t){for(var n=0,i=0,r=Math.min(t,e.q.length),o=0;o<r;o++)"\n"===e.q.charAt(o)?(n++,i=0):i++;return{r:n+1+e.r,c:(0===n?i+e.c:i)+1}}(t.query,t.r.position);i.html('\n <div>\n Failed, it looks like there is an error with the query:\n <br />\n <span class="query-error-at"><strong>'.concat(n.r,":").concat(n.c,"</strong>&nbsp;&nbsp;").concat(t.r.error,"</span>\n </div>\n ")),s.trigger("editor.show.error",n)}else 0===t.status?i.html("Server down?"):i.html("Server error: "+t.status)}function h(e){return Math.round(100*(e+Number.EPSILON))/100}function d(e){return 0===e?"0":e>1e9?"".concat(h(e/1e9),"s"):e>1e6?"".concat(h(e/1e6),"ms"):e>1e3?"".concat(h(e/1e3),"μs"):"".concat(e,"ns")}function f(e,t){c(),i.removeClass("query-message-error").addClass("query-message-ok");var n=t.count?'<div class="query-result-value">\n <div>\n Row count\n </div>\n <div>\n '.concat(t.count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),"\n </div>\n </div>"):"";t.timings?i.html('\n <div class="query-result-value">\n <div>\n Fetching time\n </div>\n <div>\n '.concat(d(t.timings.fetch),'\n </div>\n </div>\n <div class="query-result-value">\n <div>\n Execution time\n </div>\n <div>\n ').concat(d(t.timings.execute),'\n </div>\n </div>\n <div class="query-result-value">\n <div>\n Counting time\n </div>\n <div>\n ').concat(d(t.timings.count),'\n </div>\n </div>\n <div class="query-result-value">\n <div>\n Compiling time\n </div>\n <div>\n ').concat(d(t.timings.compiler),"\n </div>\n </div>\n ").concat(n,"\n ")):n?i.html(n):i.html("&nbsp;Success!")}function p(){o?s.trigger("query.in.cancel"):s.trigger("editor.execute")}function g(e){e.preventDefault(),s.trigger("grid.publish.query")}function m(e,t){t&&(window.location.href="/exp?query="+encodeURIComponent(t.q))}(t=r()(".js-query-run")).click(p),s.on("query.out.error",u),s.on("query.out.ok",f),s.on("query.out.running",l),s.on("query.in.export",m),r()(".js-editor-toggle-invisible").click((function(){s.trigger("editor.toggle.invisibles")})),r()(".js-query-export").click(g)},r.a.fn.editor=function(e){var t,n,i="query.text",r="editor.line",o="editor.col",s=ace.require("ace/range").Range,a={wrap:!0,caseSensitive:!0,wholeWord:!1,regExp:!1,preventScroll:!1},c=e;function u(){n&&(t.session.removeMarker(n),n=null)}function h(){if("undefined"!=typeof Storage){var e=localStorage.getItem(i);e&&t.setValue(e);var n=localStorage.getItem(r),s=localStorage.getItem(o);n&&s&&setTimeout((function(){t.gotoLine(n,s)}),50)}}function d(){"undefined"!=typeof Storage&&(localStorage.setItem(i,t.getValue()),localStorage.setItem(r,t.getCursorPosition().row+1),localStorage.setItem(o,t.getCursorPosition().column))}function f(){var e;c.trigger("preferences.save"),u(),(e=""===t.getSelectedText()?function(){for(var e=t.getValue(),n=t.getCursorPosition(),i=0,r=0,o=0,s=0,a=-1,l=null,c=!1,u=[],h=0;h<e.length;h++){switch(e.charAt(h)){case";":if(c){r++;continue}i<n.row||i===n.row&&r<n.column?(u.push({row:o,col:s,pos:a,lim:h}),o=i,s=r,a=h+1,r++):l=-1===a?e.substring(0,h):e.substring(a,h);break;case" ":a===h&&(o=i,s=r,a=h+1),r++;break;case"\n":i++,r=0,a===h&&(o=i,s=r,a=h+1,r++);break;case"'":c=!c,r++;break;default:r++}if(null!==l)break}if(null===l&&(l=-1===a?e:e.substring(a)),0===l.length){var d=u.pop();return d?{q:e.substring(d.pos,d.lim),r:d.row,c:d.col}:null}return{q:l,r:o,c:s}}():function(){for(var e,n=t.getSelectedText(),i=n.length;i>0&&(" "===(e=n.charAt(i))||"\n"===e||";"===e);)i--;if(i>0){n=n.substr(0,i+1);var r=t.getSelectionRange();return{q:n,r:r.start.row,c:r.start.column}}return null}())&&c.trigger("query.in.exec",e)}function p(e,i){var r=t.session.getTokenAt(i.r-1,i.c);n=t.session.addMarker(new s(i.r-1,i.c-1,i.r-1,i.c+r.value.length-1),"js-syntax-error","text",!0),t.gotoLine(i.r,i.c-1),t.focus()}function g(){t.renderer.setShowInvisibles(!t.renderer.getShowInvisibles())}function m(){c.trigger("grid.focus")}function v(e,n){if(!t.find("'"+n+"'",a)){var i=t.session.getLength(),r="\n'"+n+"';";t.session.insert({row:i,column:0},r),t.selection.moveCursorToPosition({row:i+1,column:0}),t.selection.selectLine()}f()}function y(e,n){t.insert(", "+n),t.focus()}(t=l(this[0])).session.on("change",u),c.on("editor.execute",f),c.on("editor.execute.alt",f),c.on("editor.show.error",p),c.on("editor.toggle.invisibles",g),c.on("query.build.execute",v),c.on("editor.insert.column",y),c.on("editor.focus",(function(){t.scrollToLine(t.getCursorPosition().row+1,!0,!0,(function(){})),t.focus()})),t.commands.addCommand({name:"editor.execute",bindKey:"F9",exec:f}),t.commands.addCommand({name:"editor.execute.alt",bindKey:{mac:"Command-Enter",win:"Ctrl-Enter"},exec:f}),t.commands.addCommand({name:"editor.focus.grid",bindKey:"F2",exec:m}),c.on("preferences.load",h),c.on("preferences.save",d)};var Le,Ee=n(48),$e=n.n(Ee);function Re(e,t){if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var n=0,i=e.length;n<i;n++)if(e[n]instanceof Array&&t[n]instanceof Array){if(!e[n].equals(t[n]))return!1}else if(e[n]!==t[n])return!1;return!0}function Oe(e,t){var n=r()("#side-menu").find("a");Le.trigger("active.panel",e);for(var i=n.length,o=0;o<i;o++)o===t?n[o].setAttribute("class","selected"):n[o].setAttribute("class","")}function Ie(){Oe("console",0)}function De(){Oe("visualisation",1)}function Pe(){Oe("import",2)}r.a.fn.quickVis=function(e){var t,n,i,o,s,a,l,c,u,h,d=75,f=120,p=160,g=e,m=r()(this),v=r()("#_qvis_frm_draw"),y=new Set,w={title:{},tooltip:{},legend:{data:["Series"]},xAxis:{data:[]},yAxis:{},series:[{name:"Y-axis",type:"bar",data:[]}]},x=new $e.a({select:"#_qvis_frm_chart_type"}),b=new $e.a({select:"#_qvis_frm_axis_x"}),_=new $e.a({select:"#_qvis_frm_axis_y"});function S(){var e=window.innerHeight-r()(window).scrollTop(),i=Math.max(Math.round(e-t.getBoundingClientRect().top)-d,f);t.style.height=i+"px";var o=Math.max(Math.round(e-m[0].getBoundingClientRect().top)-d,p);m.css("height",o+"px"),n.resize()}function C(){v.html('<i class="fa fa-play"></i>Draw'),v.removeClass("js-chart-cancel").addClass("js-chart-draw")}function A(e){try{var t,i=e.columns,r=e.dataset;if(i&&r){var o,c=new Map;for(t=0;t<i.length;t++)c.set(i[t].name,t);if(null!=s){var u=c.get(s),h=[];for(t=0;t<r.length;t++)h[t]=r[t][u];o={type:"category",name:s,data:h}}else o={};var d=[];if(a.length>0)for(t=0;t<a.length;t++){var f=c.get(a[t]);if(f){for(var p=[],g=0;g<r.length;g++)p[g]=r[g][f];d[t]="area"===l?{type:"line",name:a[t],data:p,areaStyle:{},smooth:!0,symbol:"none"}:{name:a[t],type:l,data:p,large:!0}}}var m={legend:{},xAxis:o,yAxis:{type:"value"},series:d};n.setOption(m,!0)}}finally{C()}}function k(e){h=null,g.trigger("query.out.ok",{delta:(new Date).getTime()-o,count:e.count}),c=e,u=i,A(e)}function T(e){h=null,C(),g.trigger("query.out.error",{query:u,r:e.responseJSON,status:e.status,statusText:e.statusText,delta:(new Date).getTime()-o})}function M(){v.html('<i class="fa fa-stop"></i>Cancel'),v.removeClass("js-chart-draw").addClass("js-chart-cancel"),l=x.selected();var e=b.selected(),t=_.selected();if(Re(e,s)&&Re(t,a)&&i===u)A(c);else{y.clear(),(s=b.selected())&&y.add(s),a=_.selected(),function(e,t){for(var n=0;n<e.length;n++)t.add(e[n])}(_.selected(),y);var n="";y.forEach((function(e){""!==n&&(n+=","),n+=e}));var d={};d.query=i,d.count=!1,d.cols=n,d.src="vis",o=(new Date).getTime(),h=r.a.get("/exec",d),g.trigger("query.out.running"),h.done(k).fail(T)}}function L(){n.setOption(w,!0)}function E(e,t){for(var n=[],r=t.columns,o=0;o<r.length;o++)n[o]={text:r[o].name};b.setData(n),_.setData(n),_.set(n.slice(1).map((function(e){return e.text}))),i=t.query,L()}function $(){h&&(h.abort(),h=null)}function R(){return h?g.trigger("query.in.cancel"):g.trigger("chart.draw"),!1}t=m.find(".quick-vis-canvas")[0],r()(window).resize(S),g.on("active.panel",S),n=V.a.init(t,q),g.on("query.out.dataset",E),g.on("query.in.cancel",$),g.on("chart.draw",M),v.click(R),L(),S()},r.a.fn.splitter=function(e,t,n,i){var o,s,a,l,c=r()(e),u=r()(this),h="splitter."+t+".resize",d=n,f=i;function p(e){e.preventDefault(),e.pageY>d&&e.pageY<window.innerHeight+r()(window).scrollTop()-f&&(a=e.pageY,o[0].style=l+"top: "+e.pageY+"px;")}function g(){r()(document).off("mousemove",p),r()(document).off("mouseup",g),o[0].style="display: none",u.removeClass("qs-dragging"),c.trigger(h,a-s)}r()(this).mousedown((function(){var e=u[0].getBoundingClientRect();s=e.top+r()(window).scrollTop(),l="position: absolute; left: "+e.left+"px; width: "+e.width+"px; height: "+e.height+"px;",o||(o=r()('<div class="qs-ghost"></div>')).appendTo("body"),o[0].style=l+"top: "+s+"px;",u.addClass("qs-dragging"),r()(document).mousemove(p),r()(document).mouseup(g)}))},r.a.fn.queryForm=function(){var e,t=r()(this),n=t.find("#_vis_frm_query_name")[0],i=t.find(".qdb-vis-query-name"),o=i.find(".help-block"),s=t.find(".js-vis-title"),a=l(t.find("#_vis_frm_query_text")[0]),c={query:"",limit:"0,0",count:!1};function u(e,t,n){n.query.columns=e.columns,n.query.error=null}function h(e){e.query.columns=null,e.query.error=e.responseJSON}function d(e){var t=!1;if(""===n.value&&(i.addClass("has-error"),o.html("Please fill this field"),t=!0),t)return!1;o.html(""),i.removeClass("has-error");var s=!1;e.name!==n.value&&(e.name=n.value,s=!0);var l=a.getValue();if(e.text!==l){s=!0,e.text=l;var d=function(e){if(!e||0===e.length)return null;var t=e.trim(),n=t.length;return 0===n?null:";"===t.charAt(n-1)?t.substr(0,n-1):t}(l);e.textNormalized!==d&&(e.textNormalized=d,e.textNormalized&&function(e){c.query=e.textNormalized;var t=r.a.get("/exec",c);t.query=e,t.done(u).fail(h)}(e))}return s&&(e.timestamp=(new Date).getTime()),e.callback&&e.callback(),!0}function f(){e&&d(e)}return n.onfocusout=f,a.on("blur",f),t.listManager((function(e){return{id:"_li_query_"+e,name:"query"+e}}),(function(t){e=t,n.value=t.name,t.text?a.setValue(t.text,-1):a.setValue("",-1),""===t.name?s.html("&lt;no name&gt;"):s.html(t.name),n.focus()}),d,(function(){n.value="",a.value="",e=null}))},r.a.fn.seriesForm=function(){var e,t=r()(this),n=t.find("#_vis_frm_ser_name")[0],i=t.find("#_vis_frm_ser_chart_type")[0],o=t.find("#_vis_frm_ser_columns")[0],s=t.find("#_vis_frm_ser_stack")[0],a=t.find("#_vis_frm_ser_color")[0],l=t.find("#_vis_frm_ser_axis")[0];function c(e){var t=!1;return e.name!==n.value&&(e.name=n.value,t=!0),e.chartType!==i.value&&(e.chartType=i.value,t=!0),e.columns!==o.value&&(e.columns=o.value,t=!0),e.stack!==s.value&&(e.stack=s.value,t=!0),e.color!==a.value&&(e.color=a.value,t=!0),e.axis!==l.value&&(e.axis=l.value,t=!0),t&&(e.timestamp=(new Date).getTime()),e.callback&&e.callback(),!0}function u(){e&&c(e)}return n.onfocusout=u,i.onfocusout=u,o.onfocusout=u,s.onfocusout=u,a.onfocusout=u,l.onfocusout=u,t.listManager((function(e){return{id:"_li_series_"+e,name:"series"+e}}),(function(t){e=t,n.value=t.name,i.value=t.chartType?t.chartType:"Line",o.value=t.columns?t.columns:"",s.value=t.stack?t.stack:"",a.value=t.color?t.color:"",l.value=t.axis?t.axis:""}),c,(function(){n.value="",i.value="Line",o.value="",s.value="",a.value="",l.value=""}))},r.a.fn.axisForm=function(){var e,t=r()(this),n=t.find("#_vis_frm_axis_name")[0],i=t.find("#_vis_frm_axis_type")[0],o=t.find("#_vis_frm_axis_value_type")[0],s=t.find("#_vis_frm_axis_column")[0],a=t.find("#_vis_frm_axis_values")[0],l=t.find("#_vis_frm_axis_scale")[0];function c(e){console.log("axis copy to mem");var t=!1;return e.name!==n.value&&(e.name=n.value,t=!0),e.type!==i.value&&(e.type=i.value,t=!0),e.valueType!==o.value&&(e.valueType=o.value,t=!0),e.column!==s.value&&(e.column=s.value,t=!0),e.values!==a.value&&(e.values=a.value,t=!0),e.scale!==l.checked&&(e.scale=l.checked),t&&(e.timestamp=(new Date).getTime()),e.callback&&e.callback(),!0}function u(){e&&c(e)}return n.onfocusout=u,i.onfocusout=u,o.onfocusout=u,s.onfocusout=u,a.onfocusout=u,l.onfocusout=u,t.listManager((function(e){return{id:"_li_axis_"+e,name:"axis"+e,scale:!1}}),(function(t){e=t,console.log("copyToForm"),console.log(t),n.value=t.name,t.type?i.value=t.type:i.value="X-axis",t.valueType?o.value=t.valueType:o.value="Category column",t.column?s.value=t.column:s.value="",t.values?a.value=t.values:a.value="",t.scale?l.checked=!0:l.checked=!1}),c,(function(){n.value="",i.value="X-axis",o.value="Category column",s.value="",a.value="",l.checked=!1}))},history.pushState(null,null,"index.html"),window.addEventListener("popstate",(function(){history.pushState(null,null,"index.html")})),ace.define("ace/mode/sql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],(function(e,t){var n=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,r=function(){i=this.createKeywordMapper({"support.function":"avg|count|first|last|max|min|sum|ucase|lcase|mid|len|round|rank|now|format|coalesce|ifnull|isnull|nvl",keyword:"select|insert|update|delete|from|where|and|or|by|order|limit|as|case|when|else|end|type|left|right|join|on|outer|desc|asc|union|create|table|primary|key|if|foreign|not|references|default|null|inner|cross|natural|database|drop|grant|over|sample|partition|latest|NaN|with|rename|truncate|asof|copy|alter|into|values|index|add|column|then","constant.language":"true|false","storage.type":"int|date|string|symbol|float|double|binary|timestamp|long|long256"},"identifier",!0),this.$rules={start:[{token:"comment",regex:"--.*$"},{token:"comment",start:"/\\*",end:"\\*/"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:i,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]},this.normalizeRules()};n.inherits(r,i),t.SqlHighlightRules=r})),ace.define("ace/mode/questdb",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sql_highlight_rules","ace/range"],(function(e,t){var n=e("../lib/oop"),i=e("./text").Mode,r=e("./sql_highlight_rules").SqlHighlightRules,o=(e("../range").Range,function(){this.HighlightRules=r});n.inherits(o,i),function(){this.lineCommentStart="--",this.$id="ace/mode/questdb"}.call(o.prototype),t.Mode=o})),r()(document).ready((function(){var e;Le=r()({}),r()("#side-menu").metisMenu(),r()("a#nav-console").click(Ie),r()("a#nav-import").click(Pe),r()("a#nav-visualisation").click(De),Le.on("query.build.execute",Ie),E(Le),e=Le,N.bind("resize",H),r()("#dragTarget").dropbox(e),r()("#import-file-list").importManager(e),r()("#import-detail").importEditor(e),r()("#import-splitter").splitter(e,"import",470,300),e.on("splitter.import.resize",W),e.on("active.panel",z),function(e){r()(window).bind("resize",de),e.on("active.panel",fe),e.on("splitter.vis.resize",pe),ne=V.a.init(oe[0],q),r()("#vis-splitter").splitter(e,"vis",300,ue);var t=r()("#vis-tab-queries").queryForm(),n=r()("#vis-tab-series").seriesForm(),i=r()("#vis-tab-axis").axisForm();te=new ie(t.getMap(),n.getMap(),i.getMap()),ye(t,i,n),r()("#btnVisFetch").click(ve),r()("#btnVisReload").click((function(){ye(t,i,n)}))}(Le),Ie(),Le.trigger("preferences.load"),r()(window).trigger("resize")}))}]);
\ No newline at end of file
*/var i;i=function(){"use strict";function e(e){return"function"==typeof e}var i=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},r=0,o=void 0,s=void 0,a=function(e,t){p[r]=e,p[r+1]=t,2===(r+=2)&&(s?s(g):x())},l="undefined"!=typeof window?window:void 0,c=l||{},u=c.MutationObserver||c.WebKitMutationObserver,h="undefined"==typeof self&&void 0!==t&&"[object process]"==={}.toString.call(t),d="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function f(){var e=setTimeout;return function(){return e(g,1)}}var p=new Array(1e3);function g(){for(var e=0;e<r;e+=2)(0,p[e])(p[e+1]),p[e]=void 0,p[e+1]=void 0;r=0}var m,v,y,w,x=void 0;function b(e,t){var n=this,i=new this.constructor(C);void 0===i[S]&&I(i);var r=n._state;if(r){var o=arguments[r-1];a((function(){return R(r,i,o,n._result)}))}else E(n,i,e,t);return i}function _(e){if(e&&"object"==typeof e&&e.constructor===this)return e;var t=new this(C);return k(t,e),t}h?x=function(){return t.nextTick(g)}:u?(v=0,y=new u(g),w=document.createTextNode(""),y.observe(w,{characterData:!0}),x=function(){w.data=v=++v%2}):d?((m=new MessageChannel).port1.onmessage=g,x=function(){return m.port2.postMessage(0)}):x=void 0===l?function(){try{var e=Function("return this")().require("vertx");return void 0!==(o=e.runOnLoop||e.runOnContext)?function(){o(g)}:f()}catch(e){return f()}}():f();var S=Math.random().toString(36).substring(2);function C(){}function A(t,n,i){n.constructor===t.constructor&&i===b&&n.constructor.resolve===_?function(e,t){1===t._state?M(e,t._result):2===t._state?L(e,t._result):E(t,void 0,(function(t){return k(e,t)}),(function(t){return L(e,t)}))}(t,n):void 0===i?M(t,n):e(i)?function(e,t,n){a((function(e){var i=!1,r=function(e,t,n,i){try{e.call(t,n,i)}catch(e){return e}}(n,t,(function(n){i||(i=!0,t!==n?k(e,n):M(e,n))}),(function(t){i||(i=!0,L(e,t))}),e._label);!i&&r&&(i=!0,L(e,r))}),e)}(t,n,i):M(t,n)}function k(e,t){if(e===t)L(e,new TypeError("You cannot resolve a promise with itself"));else if(r=typeof(i=t),null===i||"object"!==r&&"function"!==r)M(e,t);else{var n=void 0;try{n=t.then}catch(t){return void L(e,t)}A(e,t,n)}var i,r}function T(e){e._onerror&&e._onerror(e._result),$(e)}function M(e,t){void 0===e._state&&(e._result=t,e._state=1,0!==e._subscribers.length&&a($,e))}function L(e,t){void 0===e._state&&(e._state=2,e._result=t,a(T,e))}function E(e,t,n,i){var r=e._subscribers,o=r.length;e._onerror=null,r[o]=t,r[o+1]=n,r[o+2]=i,0===o&&e._state&&a($,e)}function $(e){var t=e._subscribers,n=e._state;if(0!==t.length){for(var i=void 0,r=void 0,o=e._result,s=0;s<t.length;s+=3)i=t[s],r=t[s+n],i?R(n,i,r,o):r(o);e._subscribers.length=0}}function R(t,n,i,r){var o=e(i),s=void 0,a=void 0,l=!0;if(o){try{s=i(r)}catch(e){l=!1,a=e}if(n===s)return void L(n,new TypeError("A promises callback cannot return that same promise."))}else s=r;void 0!==n._state||(o&&l?k(n,s):!1===l?L(n,a):1===t?M(n,s):2===t&&L(n,s))}var O=0;function I(e){e[S]=O++,e._state=void 0,e._result=void 0,e._subscribers=[]}var D=function(){function e(e,t){this._instanceConstructor=e,this.promise=new e(C),this.promise[S]||I(this.promise),i(t)?(this.length=t.length,this._remaining=t.length,this._result=new Array(this.length),0===this.length?M(this.promise,this._result):(this.length=this.length||0,this._enumerate(t),0===this._remaining&&M(this.promise,this._result))):L(this.promise,new Error("Array Methods must be provided an Array"))}return e.prototype._enumerate=function(e){for(var t=0;void 0===this._state&&t<e.length;t++)this._eachEntry(e[t],t)},e.prototype._eachEntry=function(e,t){var n=this._instanceConstructor,i=n.resolve;if(i===_){var r=void 0,o=void 0,s=!1;try{r=e.then}catch(e){s=!0,o=e}if(r===b&&void 0!==e._state)this._settledAt(e._state,t,e._result);else if("function"!=typeof r)this._remaining--,this._result[t]=e;else if(n===P){var a=new n(C);s?L(a,o):A(a,e,r),this._willSettleAt(a,t)}else this._willSettleAt(new n((function(t){return t(e)})),t)}else this._willSettleAt(i(e),t)},e.prototype._settledAt=function(e,t,n){var i=this.promise;void 0===i._state&&(this._remaining--,2===e?L(i,n):this._result[t]=n),0===this._remaining&&M(i,this._result)},e.prototype._willSettleAt=function(e,t){var n=this;E(e,void 0,(function(e){return n._settledAt(1,t,e)}),(function(e){return n._settledAt(2,t,e)}))},e}(),P=function(){function t(e){this[S]=O++,this._result=this._state=void 0,this._subscribers=[],C!==e&&("function"!=typeof e&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof t?function(e,t){try{t((function(t){k(e,t)}),(function(t){L(e,t)}))}catch(t){L(e,t)}}(this,e):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}return t.prototype.catch=function(e){return this.then(null,e)},t.prototype.finally=function(t){var n=this.constructor;return e(t)?this.then((function(e){return n.resolve(t()).then((function(){return e}))}),(function(e){return n.resolve(t()).then((function(){throw e}))})):this.then(t,t)},t}();return P.prototype.then=b,P.all=function(e){return new D(this,e).promise},P.race=function(e){var t=this;return i(e)?new t((function(n,i){for(var r=e.length,o=0;o<r;o++)t.resolve(e[o]).then(n,i)})):new t((function(e,t){return t(new TypeError("You must pass an array to race."))}))},P.resolve=_,P.reject=function(e){var t=new this(C);return L(t,e),t},P._setScheduler=function(e){s=e},P._setAsap=function(e){a=e},P._asap=a,P.polyfill=function(){var e=void 0;if(void 0!==n)e=n;else if("undefined"!=typeof self)e=self;else try{e=Function("return this")()}catch(e){throw new Error("polyfill failed because global object is unavailable in this environment")}var t=e.Promise;if(t){var i=null;try{i=Object.prototype.toString.call(t.resolve())}catch(e){}if("[object Promise]"===i&&!t.cast)return}e.Promise=P},P.Promise=P,P},e.exports=i()}).call(this,n(43),n(16))},function(e,t,n){"use strict";e.exports=function(e,t){/\?/.test(e)?e+="&":e+="?";return e+i(t)};var i=n(124)},function(e,t,n){"use strict";e.exports=function(e,t,n){if("GET"!==t.method)return void n(new Error("Method "+t.method+" "+e+" is not supported by JSONP."));t.debug("JSONP: start");var o=!1,s=!1;r+=1;var a=document.getElementsByTagName("head")[0],l=document.createElement("script"),c="algoliaJSONP_"+r,u=!1;window[c]=function(e){!function(){try{delete window[c],delete window[c+"_loaded"]}catch(e){window[c]=window[c+"_loaded"]=void 0}}(),s?t.debug("JSONP: Late answer, ignoring"):(o=!0,f(),n(null,{body:e,responseText:JSON.stringify(e)}))},e+="&callback="+c,t.jsonBody&&t.jsonBody.params&&(e+="&"+t.jsonBody.params);var h=setTimeout((function(){t.debug("JSONP: Script timeout"),s=!0,f(),n(new i.RequestTimeout)}),t.timeouts.complete);function d(){t.debug("JSONP: success"),u||s||(u=!0,o||(t.debug("JSONP: Fail. Script loaded but did not call the callback"),f(),n(new i.JSONPScriptFail)))}function f(){clearTimeout(h),l.onload=null,l.onreadystatechange=null,l.onerror=null,a.removeChild(l)}l.onreadystatechange=function(){"loaded"!==this.readyState&&"complete"!==this.readyState||d()},l.onload=d,l.onerror=function(){t.debug("JSONP: Script error"),u||s||(f(),n(new i.JSONPScriptError))},l.async=!0,l.defer=!0,l.src=e,a.appendChild(l)};var i=n(44),r=0},function(e,t,n){e.exports=function(e){return function(t,o,s){var a=n(27);(s=s&&a(s)||{}).hosts=s.hosts||["places-dsn.algolia.net","places-1.algolianet.com","places-2.algolianet.com","places-3.algolianet.com"],0!==arguments.length&&"object"!=typeof t&&void 0!==t||(t="",o="",s._allowEmptyCredentials=!0);var l=e(t,o,s),c=l.initIndex("places");return c.search=r("query","/1/places/query"),c.reverse=function(e,t){var n=i.encode(e);return this.as._jsonRequest({method:"GET",url:"/1/places/reverse?"+n,hostType:"read",callback:t})},c.getObject=function(e,t){return this.as._jsonRequest({method:"GET",url:"/1/places/"+encodeURIComponent(e),hostType:"read",callback:t})},c}};var i=n(262),r=n(121)},function(e,t,n){"use strict";t.decode=t.parse=n(263),t.encode=t.stringify=n(124)},function(e,t,n){"use strict";function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,t,n,o){t=t||"&",n=n||"=";var s={};if("string"!=typeof e||0===e.length)return s;var a=/\+/g;e=e.split(t);var l=1e3;o&&"number"==typeof o.maxKeys&&(l=o.maxKeys);var c=e.length;l>0&&c>l&&(c=l);for(var u=0;u<c;++u){var h,d,f,p,g=e[u].replace(a,"%20"),m=g.indexOf(n);m>=0?(h=g.substr(0,m),d=g.substr(m+1)):(h=g,d=""),f=decodeURIComponent(h),p=decodeURIComponent(d),i(s,f)?r(s[f])?s[f].push(p):s[f]=[s[f],p]:s[f]=p}return s};var r=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},function(e,t,n){"use strict";e.exports="3.35.1"},function(e,t,n){"use strict";e.exports=n(266)},function(e,t,n){"use strict";var i=n(125);n(20).element=i;var r=n(13);r.isArray=i.isArray,r.isFunction=i.isFunction,r.isObject=i.isPlainObject,r.bind=i.proxy,r.each=function(e,t){i.each(e,(function(e,n){return t(n,e)}))},r.map=i.map,r.mixin=i.extend,r.Event=i.Event;var o=n(267),s=n(126);function a(e,t,n,a){n=r.isArray(n)?n:[].slice.call(arguments,2);var l=i(e).each((function(e,r){var l=i(r),c=new s({el:l}),u=a||new o({input:l,eventBus:c,dropdownMenuContainer:t.dropdownMenuContainer,hint:void 0===t.hint||!!t.hint,minLength:t.minLength,autoselect:t.autoselect,autoselectOnBlur:t.autoselectOnBlur,tabAutocomplete:t.tabAutocomplete,openOnFocus:t.openOnFocus,templates:t.templates,debug:t.debug,clearOnSelected:t.clearOnSelected,cssClasses:t.cssClasses,datasets:n,keyboardShortcuts:t.keyboardShortcuts,appendTo:t.appendTo,autoWidth:t.autoWidth,ariaLabel:t.ariaLabel||r.getAttribute("aria-label")});l.data("aaAutocomplete",u)}));return l.autocomplete={},r.each(["open","close","getVal","setVal","destroy","getWrapper"],(function(e){l.autocomplete[e]=function(){var t,n=arguments;return l.each((function(r,o){var s=i(o).data("aaAutocomplete");t=s[e].apply(s,n)})),t}})),l}a.sources=o.sources,a.escapeHighlightedString=r.escapeHighlightedString;var l="autocomplete"in window,c=window.autocomplete;a.noConflict=function(){return l?window.autocomplete=c:delete window.autocomplete,a},e.exports=a},function(e,t,n){"use strict";var i=n(13),r=n(20),o=n(126),s=n(268),a=n(275),l=n(127),c=n(65);function u(e){var t,n;if((e=e||{}).input||i.error("missing input"),this.isActivated=!1,this.debug=!!e.debug,this.autoselect=!!e.autoselect,this.autoselectOnBlur=!!e.autoselectOnBlur,this.openOnFocus=!!e.openOnFocus,this.minLength=i.isNumber(e.minLength)?e.minLength:1,this.autoWidth=void 0===e.autoWidth||!!e.autoWidth,this.clearOnSelected=!!e.clearOnSelected,this.tabAutocomplete=void 0===e.tabAutocomplete||!!e.tabAutocomplete,e.hint=!!e.hint,e.hint&&e.appendTo)throw new Error("[autocomplete.js] hint and appendTo options can't be used at the same time");this.css=e.css=i.mixin({},c,e.appendTo?c.appendTo:{}),this.cssClasses=e.cssClasses=i.mixin({},c.defaultClasses,e.cssClasses||{}),this.cssClasses.prefix=e.cssClasses.formattedPrefix=i.formatPrefix(this.cssClasses.prefix,this.cssClasses.noPrefix),this.listboxId=e.listboxId=[this.cssClasses.root,"listbox",i.getUniqueId()].join("-");var s=function(e){var t,n,o,s;t=r.element(e.input),n=r.element(l.wrapper.replace("%ROOT%",e.cssClasses.root)).css(e.css.wrapper),e.appendTo||"block"!==t.css("display")||"table"!==t.parent().css("display")||n.css("display","table-cell");var a=l.dropdown.replace("%PREFIX%",e.cssClasses.prefix).replace("%DROPDOWN_MENU%",e.cssClasses.dropdownMenu);o=r.element(a).css(e.css.dropdown).attr({role:"listbox",id:e.listboxId}),e.templates&&e.templates.dropdownMenu&&o.html(i.templatify(e.templates.dropdownMenu)());(s=t.clone().css(e.css.hint).css(function(e){return{backgroundAttachment:e.css("background-attachment"),backgroundClip:e.css("background-clip"),backgroundColor:e.css("background-color"),backgroundImage:e.css("background-image"),backgroundOrigin:e.css("background-origin"),backgroundPosition:e.css("background-position"),backgroundRepeat:e.css("background-repeat"),backgroundSize:e.css("background-size")}}(t))).val("").addClass(i.className(e.cssClasses.prefix,e.cssClasses.hint,!0)).removeAttr("id name placeholder required").prop("readonly",!0).attr({"aria-hidden":"true",autocomplete:"off",spellcheck:"false",tabindex:-1}),s.removeData&&s.removeData();t.data("aaAttrs",{"aria-autocomplete":t.attr("aria-autocomplete"),"aria-expanded":t.attr("aria-expanded"),"aria-owns":t.attr("aria-owns"),autocomplete:t.attr("autocomplete"),dir:t.attr("dir"),role:t.attr("role"),spellcheck:t.attr("spellcheck"),style:t.attr("style"),type:t.attr("type")}),t.addClass(i.className(e.cssClasses.prefix,e.cssClasses.input,!0)).attr({autocomplete:"off",spellcheck:!1,role:"combobox","aria-autocomplete":e.datasets&&e.datasets[0]&&e.datasets[0].displayKey?"both":"list","aria-expanded":"false","aria-label":e.ariaLabel,"aria-owns":e.listboxId}).css(e.hint?e.css.input:e.css.inputWithNoHint);try{t.attr("dir")||t.attr("dir","auto")}catch(e){}return(n=e.appendTo?n.appendTo(r.element(e.appendTo).eq(0)).eq(0):t.wrap(n).parent()).prepend(e.hint?s:null).append(o),{wrapper:n,input:t,hint:s,menu:o}}(e);this.$node=s.wrapper;var a=this.$input=s.input;t=s.menu,n=s.hint,e.dropdownMenuContainer&&r.element(e.dropdownMenuContainer).css("position","relative").append(t.css("top","0")),a.on("blur.aa",(function(e){var n=document.activeElement;i.isMsie()&&(t[0]===n||t[0].contains(n))&&(e.preventDefault(),e.stopImmediatePropagation(),i.defer((function(){a.focus()})))})),t.on("mousedown.aa",(function(e){e.preventDefault()})),this.eventBus=e.eventBus||new o({el:a}),this.dropdown=new u.Dropdown({appendTo:e.appendTo,wrapper:this.$node,menu:t,datasets:e.datasets,templates:e.templates,cssClasses:e.cssClasses,minLength:this.minLength}).onSync("suggestionClicked",this._onSuggestionClicked,this).onSync("cursorMoved",this._onCursorMoved,this).onSync("cursorRemoved",this._onCursorRemoved,this).onSync("opened",this._onOpened,this).onSync("closed",this._onClosed,this).onSync("shown",this._onShown,this).onSync("empty",this._onEmpty,this).onSync("redrawn",this._onRedrawn,this).onAsync("datasetRendered",this._onDatasetRendered,this),this.input=new u.Input({input:a,hint:n}).onSync("focused",this._onFocused,this).onSync("blurred",this._onBlurred,this).onSync("enterKeyed",this._onEnterKeyed,this).onSync("tabKeyed",this._onTabKeyed,this).onSync("escKeyed",this._onEscKeyed,this).onSync("upKeyed",this._onUpKeyed,this).onSync("downKeyed",this._onDownKeyed,this).onSync("leftKeyed",this._onLeftKeyed,this).onSync("rightKeyed",this._onRightKeyed,this).onSync("queryChanged",this._onQueryChanged,this).onSync("whitespaceChanged",this._onWhitespaceChanged,this),this._bindKeyboardShortcuts(e),this._setLanguageDirection()}i.mixin(u.prototype,{_bindKeyboardShortcuts:function(e){if(e.keyboardShortcuts){var t=this.$input,n=[];i.each(e.keyboardShortcuts,(function(e){"string"==typeof e&&(e=e.toUpperCase().charCodeAt(0)),n.push(e)})),r.element(document).keydown((function(e){var i=e.target||e.srcElement,r=i.tagName;if(!i.isContentEditable&&"INPUT"!==r&&"SELECT"!==r&&"TEXTAREA"!==r){var o=e.which||e.keyCode;-1!==n.indexOf(o)&&(t.focus(),e.stopPropagation(),e.preventDefault())}}))}},_onSuggestionClicked:function(e,t){var n;(n=this.dropdown.getDatumForSuggestion(t))&&this._select(n,{selectionMethod:"click"})},_onCursorMoved:function(e,t){var n=this.dropdown.getDatumForCursor(),i=this.dropdown.getCurrentCursor().attr("id");this.input.setActiveDescendant(i),n&&(t&&this.input.setInputValue(n.value,!0),this.eventBus.trigger("cursorchanged",n.raw,n.datasetName))},_onCursorRemoved:function(){this.input.resetInputValue(),this._updateHint(),this.eventBus.trigger("cursorremoved")},_onDatasetRendered:function(){this._updateHint(),this.eventBus.trigger("updated")},_onOpened:function(){this._updateHint(),this.input.expand(),this.eventBus.trigger("opened")},_onEmpty:function(){this.eventBus.trigger("empty")},_onRedrawn:function(){this.$node.css("top","0px"),this.$node.css("left","0px");var e=this.$input[0].getBoundingClientRect();this.autoWidth&&this.$node.css("width",e.width+"px");var t=this.$node[0].getBoundingClientRect(),n=e.bottom-t.top;this.$node.css("top",n+"px");var i=e.left-t.left;this.$node.css("left",i+"px"),this.eventBus.trigger("redrawn")},_onShown:function(){this.eventBus.trigger("shown"),this.autoselect&&this.dropdown.cursorTopSuggestion()},_onClosed:function(){this.input.clearHint(),this.input.removeActiveDescendant(),this.input.collapse(),this.eventBus.trigger("closed")},_onFocused:function(){if(this.isActivated=!0,this.openOnFocus){var e=this.input.getQuery();e.length>=this.minLength?this.dropdown.update(e):this.dropdown.empty(),this.dropdown.open()}},_onBlurred:function(){var e,t;e=this.dropdown.getDatumForCursor(),t=this.dropdown.getDatumForTopSuggestion();var n={selectionMethod:"blur"};this.debug||(this.autoselectOnBlur&&e?this._select(e,n):this.autoselectOnBlur&&t?this._select(t,n):(this.isActivated=!1,this.dropdown.empty(),this.dropdown.close()))},_onEnterKeyed:function(e,t){var n,i;n=this.dropdown.getDatumForCursor(),i=this.dropdown.getDatumForTopSuggestion();var r={selectionMethod:"enterKey"};n?(this._select(n,r),t.preventDefault()):this.autoselect&&i&&(this._select(i,r),t.preventDefault())},_onTabKeyed:function(e,t){if(this.tabAutocomplete){var n;(n=this.dropdown.getDatumForCursor())?(this._select(n,{selectionMethod:"tabKey"}),t.preventDefault()):this._autocomplete(!0)}else this.dropdown.close()},_onEscKeyed:function(){this.dropdown.close(),this.input.resetInputValue()},_onUpKeyed:function(){var e=this.input.getQuery();this.dropdown.isEmpty&&e.length>=this.minLength?this.dropdown.update(e):this.dropdown.moveCursorUp(),this.dropdown.open()},_onDownKeyed:function(){var e=this.input.getQuery();this.dropdown.isEmpty&&e.length>=this.minLength?this.dropdown.update(e):this.dropdown.moveCursorDown(),this.dropdown.open()},_onLeftKeyed:function(){"rtl"===this.dir&&this._autocomplete()},_onRightKeyed:function(){"ltr"===this.dir&&this._autocomplete()},_onQueryChanged:function(e,t){this.input.clearHintIfInvalid(),t.length>=this.minLength?this.dropdown.update(t):this.dropdown.empty(),this.dropdown.open(),this._setLanguageDirection()},_onWhitespaceChanged:function(){this._updateHint(),this.dropdown.open()},_setLanguageDirection:function(){var e=this.input.getLanguageDirection();this.dir!==e&&(this.dir=e,this.$node.css("direction",e),this.dropdown.setLanguageDirection(e))},_updateHint:function(){var e,t,n,r,o;(e=this.dropdown.getDatumForTopSuggestion())&&this.dropdown.isVisible()&&!this.input.hasOverflow()?(t=this.input.getInputValue(),n=s.normalizeQuery(t),r=i.escapeRegExChars(n),(o=new RegExp("^(?:"+r+")(.+$)","i").exec(e.value))?this.input.setHint(t+o[1]):this.input.clearHint()):this.input.clearHint()},_autocomplete:function(e){var t,n,i,r;t=this.input.getHint(),n=this.input.getQuery(),i=e||this.input.isCursorAtEnd(),t&&n!==t&&i&&((r=this.dropdown.getDatumForTopSuggestion())&&this.input.setInputValue(r.value),this.eventBus.trigger("autocompleted",r.raw,r.datasetName))},_select:function(e,t){void 0!==e.value&&this.input.setQuery(e.value),this.clearOnSelected?this.setVal(""):this.input.setInputValue(e.value,!0),this._setLanguageDirection(),!1===this.eventBus.trigger("selected",e.raw,e.datasetName,t).isDefaultPrevented()&&(this.dropdown.close(),i.defer(i.bind(this.dropdown.empty,this.dropdown)))},open:function(){if(!this.isActivated){var e=this.input.getInputValue();e.length>=this.minLength?this.dropdown.update(e):this.dropdown.empty()}this.dropdown.open()},close:function(){this.dropdown.close()},setVal:function(e){e=i.toStr(e),this.isActivated?this.input.setInputValue(e):(this.input.setQuery(e),this.input.setInputValue(e,!0)),this._setLanguageDirection()},getVal:function(){return this.input.getQuery()},destroy:function(){this.input.destroy(),this.dropdown.destroy(),function(e,t){var n=e.find(i.className(t.prefix,t.input));i.each(n.data("aaAttrs"),(function(e,t){void 0===e?n.removeAttr(t):n.attr(t,e)})),n.detach().removeClass(i.className(t.prefix,t.input,!0)).insertAfter(e),n.removeData&&n.removeData("aaAttrs");e.remove()}(this.$node,this.cssClasses),this.$node=null},getWrapper:function(){return this.dropdown.$container[0]}}),u.Dropdown=a,u.Input=s,u.sources=n(277),e.exports=u},function(e,t,n){"use strict";var i;i={9:"tab",27:"esc",37:"left",39:"right",13:"enter",38:"up",40:"down"};var r=n(13),o=n(20),s=n(64);function a(e){var t,n,s,a,l,c=this;(e=e||{}).input||r.error("input is missing"),t=r.bind(this._onBlur,this),n=r.bind(this._onFocus,this),s=r.bind(this._onKeydown,this),a=r.bind(this._onInput,this),this.$hint=o.element(e.hint),this.$input=o.element(e.input).on("blur.aa",t).on("focus.aa",n).on("keydown.aa",s),0===this.$hint.length&&(this.setHint=this.getHint=this.clearHint=this.clearHintIfInvalid=r.noop),r.isMsie()?this.$input.on("keydown.aa keypress.aa cut.aa paste.aa",(function(e){i[e.which||e.keyCode]||r.defer(r.bind(c._onInput,c,e))})):this.$input.on("input.aa",a),this.query=this.$input.val(),this.$overflowHelper=(l=this.$input,o.element('<pre aria-hidden="true"></pre>').css({position:"absolute",visibility:"hidden",whiteSpace:"pre",fontFamily:l.css("font-family"),fontSize:l.css("font-size"),fontStyle:l.css("font-style"),fontVariant:l.css("font-variant"),fontWeight:l.css("font-weight"),wordSpacing:l.css("word-spacing"),letterSpacing:l.css("letter-spacing"),textIndent:l.css("text-indent"),textRendering:l.css("text-rendering"),textTransform:l.css("text-transform")}).insertAfter(l))}function l(e){return e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}a.normalizeQuery=function(e){return(e||"").replace(/^\s*/g,"").replace(/\s{2,}/g," ")},r.mixin(a.prototype,s,{_onBlur:function(){this.resetInputValue(),this.$input.removeAttr("aria-activedescendant"),this.trigger("blurred")},_onFocus:function(){this.trigger("focused")},_onKeydown:function(e){var t=i[e.which||e.keyCode];this._managePreventDefault(t,e),t&&this._shouldTrigger(t,e)&&this.trigger(t+"Keyed",e)},_onInput:function(){this._checkInputValue()},_managePreventDefault:function(e,t){var n,i,r;switch(e){case"tab":i=this.getHint(),r=this.getInputValue(),n=i&&i!==r&&!l(t);break;case"up":case"down":n=!l(t);break;default:n=!1}n&&t.preventDefault()},_shouldTrigger:function(e,t){var n;switch(e){case"tab":n=!l(t);break;default:n=!0}return n},_checkInputValue:function(){var e,t,n,i,r;e=this.getInputValue(),i=e,r=this.query,n=!(!(t=a.normalizeQuery(i)===a.normalizeQuery(r))||!this.query)&&this.query.length!==e.length,this.query=e,t?n&&this.trigger("whitespaceChanged",this.query):this.trigger("queryChanged",this.query)},focus:function(){this.$input.focus()},blur:function(){this.$input.blur()},getQuery:function(){return this.query},setQuery:function(e){this.query=e},getInputValue:function(){return this.$input.val()},setInputValue:function(e,t){void 0===e&&(e=this.query),this.$input.val(e),t?this.clearHint():this._checkInputValue()},expand:function(){this.$input.attr("aria-expanded","true")},collapse:function(){this.$input.attr("aria-expanded","false")},setActiveDescendant:function(e){this.$input.attr("aria-activedescendant",e)},removeActiveDescendant:function(){this.$input.removeAttr("aria-activedescendant")},resetInputValue:function(){this.setInputValue(this.query,!0)},getHint:function(){return this.$hint.val()},setHint:function(e){this.$hint.val(e)},clearHint:function(){this.setHint("")},clearHintIfInvalid:function(){var e,t,n;n=(e=this.getInputValue())!==(t=this.getHint())&&0===t.indexOf(e),""!==e&&n&&!this.hasOverflow()||this.clearHint()},getLanguageDirection:function(){return(this.$input.css("direction")||"ltr").toLowerCase()},hasOverflow:function(){var e=this.$input.width()-2;return this.$overflowHelper.text(this.getInputValue()),this.$overflowHelper.width()>=e},isCursorAtEnd:function(){var e,t,n;return e=this.$input.val().length,t=this.$input[0].selectionStart,r.isNumber(t)?t===e:!document.selection||((n=document.selection.createRange()).moveStart("character",-e),e===n.text.length)},destroy:function(){this.$hint.off(".aa"),this.$input.off(".aa"),this.$hint=this.$input=this.$overflowHelper=null}}),e.exports=a},function(e,t,n){"use strict";var i,r,o,s=[n(270),n(271),n(272),n(273),n(274)],a=-1,l=[],c=!1;function u(){i&&r&&(i=!1,r.length?l=r.concat(l):a=-1,l.length&&h())}function h(){if(!i){c=!1,i=!0;for(var e=l.length,t=setTimeout(u);e;){for(r=l,l=[];r&&++a<e;)r[a].run();a=-1,e=l.length}r=null,a=-1,i=!1,clearTimeout(t)}}for(var d=-1,f=s.length;++d<f;)if(s[d]&&s[d].test&&s[d].test()){o=s[d].install(h);break}function p(e,t){this.fun=e,this.array=t}p.prototype.run=function(){var e=this.fun,t=this.array;switch(t.length){case 0:return e();case 1:return e(t[0]);case 2:return e(t[0],t[1]);case 3:return e(t[0],t[1],t[2]);default:return e.apply(null,t)}},e.exports=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new p(e,t)),c||i||(c=!0,o())}},function(e,t,n){"use strict";(function(e){t.test=function(){return void 0!==e&&!e.browser},t.install=function(t){return function(){e.nextTick(t)}}}).call(this,n(43))},function(e,t,n){"use strict";(function(e){var n=e.MutationObserver||e.WebKitMutationObserver;t.test=function(){return n},t.install=function(t){var i=0,r=new n(t),o=e.document.createTextNode("");return r.observe(o,{characterData:!0}),function(){o.data=i=++i%2}}}).call(this,n(16))},function(e,t,n){"use strict";(function(e){t.test=function(){return!e.setImmediate&&void 0!==e.MessageChannel},t.install=function(t){var n=new e.MessageChannel;return n.port1.onmessage=t,function(){n.port2.postMessage(0)}}}).call(this,n(16))},function(e,t,n){"use strict";(function(e){t.test=function(){return"document"in e&&"onreadystatechange"in e.document.createElement("script")},t.install=function(t){return function(){var n=e.document.createElement("script");return n.onreadystatechange=function(){t(),n.onreadystatechange=null,n.parentNode.removeChild(n),n=null},e.document.documentElement.appendChild(n),t}}}).call(this,n(16))},function(e,t,n){"use strict";t.test=function(){return!0},t.install=function(e){return function(){setTimeout(e,0)}}},function(e,t,n){"use strict";var i=n(13),r=n(20),o=n(64),s=n(276),a=n(65);function l(e){var t,n,o,s=this;(e=e||{}).menu||i.error("menu is required"),i.isArray(e.datasets)||i.isObject(e.datasets)||i.error("1 or more datasets required"),e.datasets||i.error("datasets is required"),this.isOpen=!1,this.isEmpty=!0,this.minLength=e.minLength||0,this.templates={},this.appendTo=e.appendTo||!1,this.css=i.mixin({},a,e.appendTo?a.appendTo:{}),this.cssClasses=e.cssClasses=i.mixin({},a.defaultClasses,e.cssClasses||{}),this.cssClasses.prefix=e.cssClasses.formattedPrefix||i.formatPrefix(this.cssClasses.prefix,this.cssClasses.noPrefix),t=i.bind(this._onSuggestionClick,this),n=i.bind(this._onSuggestionMouseEnter,this),o=i.bind(this._onSuggestionMouseLeave,this);var c=i.className(this.cssClasses.prefix,this.cssClasses.suggestion);this.$menu=r.element(e.menu).on("mouseenter.aa",c,n).on("mouseleave.aa",c,o).on("click.aa",c,t),this.$container=e.appendTo?e.wrapper:this.$menu,e.templates&&e.templates.header&&(this.templates.header=i.templatify(e.templates.header),this.$menu.prepend(this.templates.header())),e.templates&&e.templates.empty&&(this.templates.empty=i.templatify(e.templates.empty),this.$empty=r.element('<div class="'+i.className(this.cssClasses.prefix,this.cssClasses.empty,!0)+'"></div>'),this.$menu.append(this.$empty),this.$empty.hide()),this.datasets=i.map(e.datasets,(function(t){return function(e,t,n){return new l.Dataset(i.mixin({$menu:e,cssClasses:n},t))}(s.$menu,t,e.cssClasses)})),i.each(this.datasets,(function(e){var t=e.getRoot();t&&0===t.parent().length&&s.$menu.append(t),e.onSync("rendered",s._onRendered,s)})),e.templates&&e.templates.footer&&(this.templates.footer=i.templatify(e.templates.footer),this.$menu.append(this.templates.footer()));var u=this;r.element(window).resize((function(){u._redraw()}))}i.mixin(l.prototype,o,{_onSuggestionClick:function(e){this.trigger("suggestionClicked",r.element(e.currentTarget))},_onSuggestionMouseEnter:function(e){var t=r.element(e.currentTarget);if(!t.hasClass(i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0))){this._removeCursor();var n=this;setTimeout((function(){n._setCursor(t,!1)}),0)}},_onSuggestionMouseLeave:function(e){if(e.relatedTarget&&r.element(e.relatedTarget).closest("."+i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0)).length>0)return;this._removeCursor(),this.trigger("cursorRemoved")},_onRendered:function(e,t){if(this.isEmpty=i.every(this.datasets,(function(e){return e.isEmpty()})),this.isEmpty)if(t.length>=this.minLength&&this.trigger("empty"),this.$empty)if(t.length<this.minLength)this._hide();else{var n=this.templates.empty({query:this.datasets[0]&&this.datasets[0].query});this.$empty.html(n),this.$empty.show(),this._show()}else i.any(this.datasets,(function(e){return e.templates&&e.templates.empty}))?t.length<this.minLength?this._hide():this._show():this._hide();else this.isOpen&&(this.$empty&&(this.$empty.empty(),this.$empty.hide()),t.length>=this.minLength?this._show():this._hide());this.trigger("datasetRendered")},_hide:function(){this.$container.hide()},_show:function(){this.$container.css("display","block"),this._redraw(),this.trigger("shown")},_redraw:function(){this.isOpen&&this.appendTo&&this.trigger("redrawn")},_getSuggestions:function(){return this.$menu.find(i.className(this.cssClasses.prefix,this.cssClasses.suggestion))},_getCursor:function(){return this.$menu.find(i.className(this.cssClasses.prefix,this.cssClasses.cursor)).first()},_setCursor:function(e,t){e.first().addClass(i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0)).attr("aria-selected","true"),this.trigger("cursorMoved",t)},_removeCursor:function(){this._getCursor().removeClass(i.className(this.cssClasses.prefix,this.cssClasses.cursor,!0)).removeAttr("aria-selected")},_moveCursor:function(e){var t,n,i,r;this.isOpen&&(n=this._getCursor(),t=this._getSuggestions(),this._removeCursor(),-1!==(i=((i=t.index(n)+e)+1)%(t.length+1)-1)?(i<-1&&(i=t.length-1),this._setCursor(r=t.eq(i),!0),this._ensureVisible(r)):this.trigger("cursorRemoved"))},_ensureVisible:function(e){var t,n,i,r;n=(t=e.position().top)+e.height()+parseInt(e.css("margin-top"),10)+parseInt(e.css("margin-bottom"),10),i=this.$menu.scrollTop(),r=this.$menu.height()+parseInt(this.$menu.css("padding-top"),10)+parseInt(this.$menu.css("padding-bottom"),10),t<0?this.$menu.scrollTop(i+t):r<n&&this.$menu.scrollTop(i+(n-r))},close:function(){this.isOpen&&(this.isOpen=!1,this._removeCursor(),this._hide(),this.trigger("closed"))},open:function(){this.isOpen||(this.isOpen=!0,this.isEmpty||this._show(),this.trigger("opened"))},setLanguageDirection:function(e){this.$menu.css("ltr"===e?this.css.ltr:this.css.rtl)},moveCursorUp:function(){this._moveCursor(-1)},moveCursorDown:function(){this._moveCursor(1)},getDatumForSuggestion:function(e){var t=null;return e.length&&(t={raw:s.extractDatum(e),value:s.extractValue(e),datasetName:s.extractDatasetName(e)}),t},getCurrentCursor:function(){return this._getCursor().first()},getDatumForCursor:function(){return this.getDatumForSuggestion(this._getCursor().first())},getDatumForTopSuggestion:function(){return this.getDatumForSuggestion(this._getSuggestions().first())},cursorTopSuggestion:function(){this._setCursor(this._getSuggestions().first(),!1)},update:function(e){i.each(this.datasets,(function(t){t.update(e)}))},empty:function(){i.each(this.datasets,(function(e){e.clear()})),this.isEmpty=!0},isVisible:function(){return this.isOpen&&!this.isEmpty},destroy:function(){this.$menu.off(".aa"),this.$menu=null,i.each(this.datasets,(function(e){e.destroy()}))}}),l.Dataset=s,e.exports=l},function(e,t,n){"use strict";var i=n(13),r=n(20),o=n(127),s=n(65),a=n(64);function l(e){var t,n,a,l;(e=e||{}).templates=e.templates||{},e.source||i.error("missing source"),e.name&&(t=e.name,!/^[_a-zA-Z0-9-]+$/.test(t))&&i.error("invalid dataset name: "+e.name),this.query=null,this._isEmpty=!0,this.highlight=!!e.highlight,this.name=void 0===e.name||null===e.name?i.getUniqueId():e.name,this.source=e.source,this.displayFn=(n=(n=e.display||e.displayKey)||"value",i.isFunction(n)?n:function(e){return e[n]}),this.debounce=e.debounce,this.cache=!1!==e.cache,this.templates=(a=e.templates,l=this.displayFn,{empty:a.empty&&i.templatify(a.empty),header:a.header&&i.templatify(a.header),footer:a.footer&&i.templatify(a.footer),suggestion:a.suggestion||function(e){return"<p>"+l(e)+"</p>"}}),this.css=i.mixin({},s,e.appendTo?s.appendTo:{}),this.cssClasses=e.cssClasses=i.mixin({},s.defaultClasses,e.cssClasses||{}),this.cssClasses.prefix=e.cssClasses.formattedPrefix||i.formatPrefix(this.cssClasses.prefix,this.cssClasses.noPrefix);var c=i.className(this.cssClasses.prefix,this.cssClasses.dataset);this.$el=e.$menu&&e.$menu.find(c+"-"+this.name).length>0?r.element(e.$menu.find(c+"-"+this.name)[0]):r.element(o.dataset.replace("%CLASS%",this.name).replace("%PREFIX%",this.cssClasses.prefix).replace("%DATASET%",this.cssClasses.dataset)),this.$menu=e.$menu,this.clearCachedSuggestions()}l.extractDatasetName=function(e){return r.element(e).data("aaDataset")},l.extractValue=function(e){return r.element(e).data("aaValue")},l.extractDatum=function(e){var t=r.element(e).data("aaDatum");return"string"==typeof t&&(t=JSON.parse(t)),t},i.mixin(l.prototype,a,{_render:function(e,t){if(this.$el){var n,s=this,a=[].slice.call(arguments,2);if(this.$el.empty(),n=t&&t.length,this._isEmpty=!n,!n&&this.templates.empty)this.$el.html(l.apply(this,a)).prepend(s.templates.header?u.apply(this,a):null).append(s.templates.footer?h.apply(this,a):null);else if(n)this.$el.html(c.apply(this,a)).prepend(s.templates.header?u.apply(this,a):null).append(s.templates.footer?h.apply(this,a):null);else if(t&&!Array.isArray(t))throw new TypeError("suggestions must be an array");this.$menu&&this.$menu.addClass(this.cssClasses.prefix+(n?"with":"without")+"-"+this.name).removeClass(this.cssClasses.prefix+(n?"without":"with")+"-"+this.name),this.trigger("rendered",e)}function l(){var t=[].slice.call(arguments,0);return t=[{query:e,isEmpty:!0}].concat(t),s.templates.empty.apply(this,t)}function c(){var e,n,a=[].slice.call(arguments,0),l=this,c=o.suggestions.replace("%PREFIX%",this.cssClasses.prefix).replace("%SUGGESTIONS%",this.cssClasses.suggestions);return e=r.element(c).css(this.css.suggestions),n=i.map(t,u),e.append.apply(e,n),e;function u(e){var t,n=o.suggestion.replace("%PREFIX%",l.cssClasses.prefix).replace("%SUGGESTION%",l.cssClasses.suggestion);return(t=r.element(n).attr({role:"option",id:["option",Math.floor(1e8*Math.random())].join("-")}).append(s.templates.suggestion.apply(this,[e].concat(a)))).data("aaDataset",s.name),t.data("aaValue",s.displayFn(e)||void 0),t.data("aaDatum",JSON.stringify(e)),t.children().each((function(){r.element(this).css(l.css.suggestionChild)})),t}}function u(){var t=[].slice.call(arguments,0);return t=[{query:e,isEmpty:!n}].concat(t),s.templates.header.apply(this,t)}function h(){var t=[].slice.call(arguments,0);return t=[{query:e,isEmpty:!n}].concat(t),s.templates.footer.apply(this,t)}},getRoot:function(){return this.$el},update:function(e){function t(t){if(!this.canceled&&e===this.query){var n=[].slice.call(arguments,1);this.cacheSuggestions(e,t,n),this._render.apply(this,[e,t].concat(n))}}if(this.query=e,this.canceled=!1,this.shouldFetchFromCache(e))t.apply(this,[this.cachedSuggestions].concat(this.cachedRenderExtraArgs));else{var n=this,i=function(){n.canceled||n.source(e,t.bind(n))};if(this.debounce){clearTimeout(this.debounceTimeout),this.debounceTimeout=setTimeout((function(){n.debounceTimeout=null,i()}),this.debounce)}else i()}},cacheSuggestions:function(e,t,n){this.cachedQuery=e,this.cachedSuggestions=t,this.cachedRenderExtraArgs=n},shouldFetchFromCache:function(e){return this.cache&&this.cachedQuery===e&&this.cachedSuggestions&&this.cachedSuggestions.length},clearCachedSuggestions:function(){delete this.cachedQuery,delete this.cachedSuggestions,delete this.cachedRenderExtraArgs},cancel:function(){this.canceled=!0},clear:function(){this.cancel(),this.$el.empty(),this.trigger("rendered","")},isEmpty:function(){return this._isEmpty},destroy:function(){this.clearCachedSuggestions(),this.$el=null}}),e.exports=l},function(e,t,n){"use strict";e.exports={hits:n(278),popularIn:n(279)}},function(e,t,n){"use strict";var i=n(13),r=n(128),o=n(129);e.exports=function(e,t){var n=o(e.as._ua);return n&&n[0]>=3&&n[1]>20&&((t=t||{}).additionalUA="autocomplete.js "+r),function(n,r){e.search(n,t,(function(e,t){e?i.error(e.message):r(t.hits,t)}))}}},function(e,t,n){"use strict";var i=n(13),r=n(128),o=n(129);e.exports=function(e,t,n,s){var a=o(e.as._ua);if(a&&a[0]>=3&&a[1]>20&&((t=t||{}).additionalUA="autocomplete.js "+r),!n.source)return i.error("Missing 'source' key");var l=i.isFunction(n.source)?n.source:function(e){return e[n.source]};if(!n.index)return i.error("Missing 'index' key");var c=n.index;return s=s||{},function(a,u){e.search(a,t,(function(e,a){if(e)i.error(e.message);else{if(a.hits.length>0){var h=a.hits[0],d=i.mixin({hitsPerPage:0},n);delete d.source,delete d.index;var f=o(c.as._ua);return f&&f[0]>=3&&f[1]>20&&(t.additionalUA="autocomplete.js "+r),void c.search(l(h),d,(function(e,t){if(e)i.error(e.message);else{var n=[];if(s.includeAll){var r=s.allTitle||"All departments";n.push(i.mixin({facet:{value:r,count:t.nbHits}},i.cloneDeep(h)))}i.each(t.facets,(function(e,t){i.each(e,(function(e,r){n.push(i.mixin({facet:{facet:t,value:r,count:e}},i.cloneDeep(h)))}))}));for(var o=1;o<a.hits.length;++o)n.push(a.hits[o]);u(n,a)}}))}u([])}}))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="algolia-docsearch-suggestion",r={suggestion:'\n <a class="'+i+"\n {{#isCategoryHeader}}"+i+"__main{{/isCategoryHeader}}\n {{#isSubCategoryHeader}}"+i+'__secondary{{/isSubCategoryHeader}}\n "\n aria-label="Link to the result"\n href="{{{url}}}"\n >\n <div class="'+i+'--category-header">\n <span class="'+i+'--category-header-lvl0">{{{category}}}</span>\n </div>\n <div class="'+i+'--wrapper">\n <div class="'+i+'--subcategory-column">\n <span class="'+i+'--subcategory-column-text">{{{subcategory}}}</span>\n </div>\n {{#isTextOrSubcategoryNonEmpty}}\n <div class="'+i+'--content">\n <div class="'+i+'--subcategory-inline">{{{subcategory}}}</div>\n <div class="'+i+'--title">{{{title}}}</div>\n {{#text}}<div class="'+i+'--text">{{{text}}}</div>{{/text}}\n </div>\n {{/isTextOrSubcategoryNonEmpty}}\n </div>\n </a>\n ',suggestionSimple:'\n <div class="'+i+"\n {{#isCategoryHeader}}"+i+"__main{{/isCategoryHeader}}\n {{#isSubCategoryHeader}}"+i+'__secondary{{/isSubCategoryHeader}}\n suggestion-layout-simple\n ">\n <div class="'+i+'--category-header">\n {{^isLvl0}}\n <span class="'+i+"--category-header-lvl0 "+i+'--category-header-item">{{{category}}}</span>\n {{^isLvl1}}\n {{^isLvl1EmptyOrDuplicate}}\n <span class="'+i+"--category-header-lvl1 "+i+'--category-header-item">\n {{{subcategory}}}\n </span>\n {{/isLvl1EmptyOrDuplicate}}\n {{/isLvl1}}\n {{/isLvl0}}\n <div class="'+i+"--title "+i+'--category-header-item">\n {{#isLvl2}}\n {{{title}}}\n {{/isLvl2}}\n {{#isLvl1}}\n {{{subcategory}}}\n {{/isLvl1}}\n {{#isLvl0}}\n {{{category}}}\n {{/isLvl0}}\n </div>\n </div>\n <div class="'+i+'--wrapper">\n {{#text}}\n <div class="'+i+'--content">\n <div class="'+i+'--text">{{{text}}}</div>\n </div>\n {{/text}}\n </div>\n </div>\n ',footer:'\n <div class="algolia-docsearch-footer">\n Search by <a class="algolia-docsearch-footer--logo" href="https://www.algolia.com/docsearch">Algolia</a>\n </div>\n ',empty:'\n <div class="'+i+'">\n <div class="'+i+'--wrapper">\n <div class="'+i+"--content "+i+'--no-results">\n <div class="'+i+'--title">\n <div class="'+i+'--text">\n No results found for query <b>"{{query}}"</b>\n </div>\n </div>\n </div>\n </div>\n </div>\n ',searchBox:'\n <form novalidate="novalidate" onsubmit="return false;" class="searchbox">\n <div role="search" class="searchbox__wrapper">\n <input id="docsearch" type="search" name="search" placeholder="Search the docs" autocomplete="off" required="required" class="searchbox__input"/>\n <button type="submit" title="Submit your search query." class="searchbox__submit" >\n <svg width=12 height=12 role="img" aria-label="Search">\n <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sbx-icon-search-13"></use>\n </svg>\n </button>\n <button type="reset" title="Clear the search query." class="searchbox__reset hide">\n <svg width=12 height=12 role="img" aria-label="Reset">\n <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#sbx-icon-clear-3"></use>\n </svg>\n </button>\n </div>\n</form>\n\n<div class="svg-icons" style="height: 0; width: 0; position: absolute; visibility: hidden">\n <svg xmlns="http://www.w3.org/2000/svg">\n <symbol id="sbx-icon-clear-3" viewBox="0 0 40 40"><path d="M16.228 20L1.886 5.657 0 3.772 3.772 0l1.885 1.886L20 16.228 34.343 1.886 36.228 0 40 3.772l-1.886 1.885L23.772 20l14.342 14.343L40 36.228 36.228 40l-1.885-1.886L20 23.772 5.657 38.114 3.772 40 0 36.228l1.886-1.885L16.228 20z" fill-rule="evenodd"></symbol>\n <symbol id="sbx-icon-search-13" viewBox="0 0 40 40"><path d="M26.806 29.012a16.312 16.312 0 0 1-10.427 3.746C7.332 32.758 0 25.425 0 16.378 0 7.334 7.333 0 16.38 0c9.045 0 16.378 7.333 16.378 16.38 0 3.96-1.406 7.593-3.746 10.426L39.547 37.34c.607.608.61 1.59-.004 2.203a1.56 1.56 0 0 1-2.202.004L26.807 29.012zm-10.427.627c7.322 0 13.26-5.938 13.26-13.26 0-7.324-5.938-13.26-13.26-13.26-7.324 0-13.26 5.936-13.26 13.26 0 7.322 5.936 13.26 13.26 13.26z" fill-rule="evenodd"></symbol>\n </svg>\n</div>\n '};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=n(130),s=(i=o)&&i.__esModule?i:{default:i};var a={mergeKeyWithParent:function(e,t){if(void 0===e[t])return e;if("object"!==r(e[t]))return e;var n=s.default.extend({},e,e[t]);return delete n[t],n},groupBy:function(e,t){var n={};return s.default.each(e,(function(e,i){if(void 0===i[t])throw new Error("[groupBy]: Object has no key "+t);var r=i[t];"string"==typeof r&&(r=r.toLowerCase()),Object.prototype.hasOwnProperty.call(n,r)||(n[r]=[]),n[r].push(i)})),n},values:function(e){return Object.keys(e).map((function(t){return e[t]}))},flatten:function(e){var t=[];return e.forEach((function(e){Array.isArray(e)?e.forEach((function(e){t.push(e)})):t.push(e)})),t},flattenAndFlagFirst:function(e,t){var n=this.values(e).map((function(e){return e.map((function(e,n){return e[t]=0===n,e}))}));return this.flatten(n)},compact:function(e){var t=[];return e.forEach((function(e){e&&t.push(e)})),t},getHighlightedValue:function(e,t){return e._highlightResult&&e._highlightResult.hierarchy_camel&&e._highlightResult.hierarchy_camel[t]&&e._highlightResult.hierarchy_camel[t].matchLevel&&"none"!==e._highlightResult.hierarchy_camel[t].matchLevel&&e._highlightResult.hierarchy_camel[t].value?e._highlightResult.hierarchy_camel[t].value:e._highlightResult&&e._highlightResult&&e._highlightResult[t]&&e._highlightResult[t].value?e._highlightResult[t].value:e[t]},getSnippetedValue:function(e,t){if(!e._snippetResult||!e._snippetResult[t]||!e._snippetResult[t].value)return e[t];var n=e._snippetResult[t].value;return n[0]!==n[0].toUpperCase()&&(n="…"+n),-1===[".","!","?"].indexOf(n[n.length-1])&&(n+="…"),n},deepClone:function(e){return JSON.parse(JSON.stringify(e))}};t.default=a},function(e,t,n){"use strict";n.r(t);n(134),n(135),n(136),n(213),n(222),n(233),n(234);var i=n(0),r=n.n(i),o=(n(235),n(236),n(132)),s=n.n(o);function a(e,t){e.css("height",t+"px")}function l(e){var t=ace.edit(e);return t.getSession().setMode("ace/mode/questdb"),t.setTheme("ace/theme/merbivore_soft"),t.setShowPrintMargin(!1),t.setDisplayIndentGuides(!1),t.setHighlightActiveLine(!1),t.$blockScrolling=1/0,r()(window).on("resize",(function(){t.resize()})),t}var c=r()(".js-sql-panel"),u=r()(".js-export-url"),h=r()("#editor"),d=r()("#sqlEditor"),f=r()("#console-top"),p=r()("#page-wrapper"),g=h.find(".js-query-message-panel"),m=r()("nav.navbar-default"),v=r()(window),y=r()("#grid"),w=r()("#quick-vis"),x=r()("#js-toggle-chart"),b=r()("#js-toggle-grid"),_=350,S=!1;function C(){if(S){var e,t=m.height(),n=p.height(),i=g.height();t>n&&(e=t),t<n&&(e=v.height()),e&&e<_+350&&(e=_+350),a(f,_),a(d,_-i-60)}}function A(){if("undefined"!=typeof Storage){var e=localStorage.getItem("splitter.position");e&&((_=parseInt(e))||(_=350))}}function k(){"undefined"!=typeof Storage&&localStorage.setItem("splitter.position",_)}function T(e,t){"console"===t?(S=!0,c.show()):(S=!1,c.hide())}function M(){x.addClass("active"),b.removeClass("active"),y.hide(),w.show(),w.resize()}function L(){x.removeClass("active"),b.addClass("active"),y.show(),w.hide(),y.resize()}function E(e){v.bind("resize",C),e.on("query.out.dataset",(function(e,t){var n;u.val((n=t.query,window.location.protocol+"//"+window.location.host+"/exp?query="+encodeURIComponent(n)))})),u.click((function(){this.select()})),new s.a(".js-export-copy-url"),r()(".js-query-refresh").click((function(){e.trigger("grid.refresh")})),e.on("splitter.console.resize",(function(t,n){_+=n,v.trigger("resize"),e.trigger("preferences.save")})),e.on("preferences.save",k),e.on("preferences.load",A),e.on("active.panel",T),e.query(),e.domController(),d.editor(e),y.grid(e),w.quickVis(e),r()("#console-splitter").splitter(e,"console",200,0),x.click(M),b.click(L),e.on("query.out.dataset",L)}var $=r()(".js-import-panel"),R=r()("#import-top"),O=r()("#import-detail"),I=r()("#import-menu")[0],D=r()(".footer")[0],P=R.find(".ud-canvas"),N=r()(window),F=!1,B=450;function H(){if(F){var e=N[0].innerHeight,t=D.offsetHeight;a(R,B),a(O,e-t-B-I.offsetHeight-10);var n=R[0].getBoundingClientRect(),i=P[0].getBoundingClientRect();a(P,B-(i.top-n.top)-10)}}function z(e,t){"import"===t?(F=!0,$.show(),N.trigger("resize")):(F=!1,$.hide())}function W(e,t){B+=t,N.trigger("resize")}var j=n(6),V=n.n(j),q={color:["#2ec7c9","#b6a2de","#5ab1ef","#ffb980","#d87a80","#8d98b3","#e5cf0d","#97b552","#95706d","#dc69aa","#07a2a4","#9a7fd1","#588dd5","#f5994e","#c05050","#59678c","#c9ab00","#7eb00a","#6f5553","#c14089"],title:{textStyle:{fontWeight:"normal",color:"#008acd"}},dataRange:{itemWidth:15,color:["#5ab1ef","#e0ffff"]},toolbox:{color:["#1e90ff","#1e90ff","#1e90ff","#1e90ff"],effectiveColor:"#ff4500"},tooltip:{backgroundColor:"rgba(50,50,50,0.5)",axisPointer:{type:"line",lineStyle:{color:"#008acd"},crossStyle:{color:"#008acd"},shadowStyle:{color:"rgba(200,200,200,0.2)"}}},dataZoom:{dataBackgroundColor:"#efefff",fillerColor:"rgba(182,162,222,0.2)",handleColor:"#008acd"},grid:{borderColor:"#eee"},categoryAxis:{axisLine:{lineStyle:{color:"#008acd"}},splitLine:{lineStyle:{color:["#eee"]}}},valueAxis:{axisLine:{lineStyle:{color:"#008acd"}},splitArea:{show:!0,areaStyle:{color:["rgba(250,250,250,0.1)","rgba(200,200,200,0.1)"]}},splitLine:{lineStyle:{color:["#eee"]}}},polar:{axisLine:{lineStyle:{color:"#ddd"}},splitArea:{show:!0,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(200,200,200,0.2)"]}},splitLine:{lineStyle:{color:"#ddd"}}},timeline:{lineStyle:{color:"#008acd"},controlStyle:{normal:{color:"#008acd"},emphasis:{color:"#008acd"}},symbol:"emptyCircle",symbolSize:3},bar:{itemStyle:{normal:{barBorderRadius:5},emphasis:{barBorderRadius:5}}},line:{smooth:!0,symbol:"emptyCircle",symbolSize:3},k:{itemStyle:{normal:{color:"#d87a80",color0:"#2ec7c9",lineStyle:{color:"#d87a80",color0:"#2ec7c9"}}}},scatter:{symbol:"circle",symbolSize:4},radar:{symbol:"emptyCircle",symbolSize:3},map:{itemStyle:{normal:{areaStyle:{color:"#ddd"},label:{textStyle:{color:"#d87a80"}}},emphasis:{areaStyle:{color:"#fe994e"}}}},force:{itemStyle:{normal:{linkStyle:{color:"#1e90ff"}}}},chord:{itemStyle:{normal:{borderWidth:1,borderColor:"rgba(128, 128, 128, 0.5)",chordStyle:{lineStyle:{color:"rgba(128, 128, 128, 0.5)"}}},emphasis:{borderWidth:1,borderColor:"rgba(128, 128, 128, 0.5)",chordStyle:{lineStyle:{color:"rgba(128, 128, 128, 0.5)"}}}}},gauge:{axisLine:{lineStyle:{color:[[.2,"#2ec7c9"],[.8,"#5ab1ef"],[1,"#d87a80"]],width:10}},axisTick:{splitNumber:10,length:15,lineStyle:{color:"auto"}},splitLine:{length:22,lineStyle:{color:"auto"}},pointer:{width:5}},textStyle:{fontFamily:"微软雅黑, Arial, Verdana, sans-serif"}};function U(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,t){if(!e)return;if("string"==typeof e)return G(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return G(e,t)}(e))){var t=0,n=function(){};return{s:n,n:function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,r,o=!0,s=!1;return{s:function(){i=e[Symbol.iterator]()},n:function(){var e=i.next();return o=e.done,e},e:function(e){s=!0,r=e},f:function(){try{o||null==i.return||i.return()}finally{if(s)throw r}}}}function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function K(e,t,n){this.mapQueries=e,this.mapSeries=t,this.mapAxis=n}function Y(e){for(var t in e){if(e.hasOwnProperty(t))if(!e[t].ready)return!1}return!0}function X(e){for(var t in e)e.hasOwnProperty(t)&&(e[t].ready=!1)}function J(e){for(var t=e.split(","),n=new Map,i=t.length,r=0;r<i;r++)n.set(t[r].trim(),null);return n}function Q(e){console.log(e)}function Z(e,t,n){var i=e.columns,r=n.query.name+".",o=n.doneCallback,s=function(e){for(var t=[],n=0;n<e.length;n++){var i=e[n];t[i.name]={name:i.name,index:n}}return t}(i);console.log("query responded: "+r),function(e,t,n,i){var r=t.length;for(var o in e)if(e.hasOwnProperty(o)){var s=e[o];if(s.ready)continue;console.log("analysing series"),console.log(s),console.log(n);var a=s.columnMap;s.ready=!0;var l,c=U(a.keys());try{for(c.s();!(l=c.n()).done;){var u=l.value,h=n[u.startsWith(t)?u.substr(r,u.length-r):u];h&&(s.dataLength?s.dataLength!==i.length&&(s.error="Column data is of unequal length"):s.dataLength=i.length,a.set(u,{dataset:i,columnIndex:h.index})),null===a.get(u)&&(s.ready=!1)}}catch(e){c.e(e)}finally{c.f()}}}(n.mapSeries,r,s,e.dataset),function(e,t,n,i){var r=t.length;for(var o in e)if(e.hasOwnProperty(o)){var s=e[o];if(s.ready)continue;if("Category column"===s.valueType){var a=n[s.column.startsWith(t)?s.column.substr(r,s.column.length-r):s.column];a?(s.ready=!0,s.dataset=i,s.columnIndex=a.index):s.ready=!1}else s.ready=!0}}(n.mapAxis,r,s,e.dataset);var a=Y(n.mapSeries),l=Y(n.mapAxis);if(console.log("series ready: "+a),console.log("axis ready: "+l),a&&l){console.log("before"),console.log(n.chartOptions),console.log("mapAxis:"),console.log(n.mapAxis),n.chartOptions.legend=function(e){var t=[];for(var n in e)if(e.hasOwnProperty(n)){var i=e[n];t.push(i.name)}return{data:t}}(n.mapSeries);var c=function(e){var t=[],n=[],i=[],r=[],o=0,s=0;for(var a in e)if(e.hasOwnProperty(a)){var l=e[a],c={name:l.name,scale:l.scale};switch(l.valueType){case"Category column":c.type="category";for(var u=l.dataset.length,h=new Array(u),d=0;d<u;d++)h[d]=l.dataset[d][l.columnIndex];c.data=h;break;case"Category values":c.type="category",c.data=JSON.parse(l.values);break;default:c.type="value"}"X-axis"===l.type?(i[l.name]=o++,n.push(c)):(r[l.name]=s++,t.push(c))}return{xAxis:n,yAxis:t,xMap:i,yMap:r}}(n.mapAxis);n.chartOptions.yAxis=c.yAxis,n.chartOptions.xAxis=c.xAxis,n.chartOptions.series=function(e,t,n){console.log("maps"),console.log(t),console.log(n);var i=[];for(var r in e)if(e.hasOwnProperty(r)){var o,s=e[r],a=s.columnMap,l=a.size,c=[],u=U(a.values());try{for(u.s();!(o=u.n()).done;){var h=o.value;c.push(h)}}catch(e){u.e(e)}finally{u.f()}var d={name:s.name};if(d.stack=s.stack,s.axis){console.log("have axis: "+s.axis);var f=n[s.axis];d.yAxisIndex=f||0;var p=t[s.axis];d.xAxisIndex=p||0}else d.xAxisIndex=0,d.yAxisIndex=0;switch(s.chartType){case"Line":d.type="line",d.itemStyle={normal:{lineStyle:{type:"solid"}}};break;case"Bar":d.type="bar";break;case"Area":d.type="line",d.itemStyle={normal:{areaStyle:{type:"default"}}};break;case"Scatter":d.type="scatter";break;default:d.type="line"}var g=s.dataLength,m=new Array(g);if(d.data=m,1===l)for(var v=c[0],y=0;y<g;y++)m[y]=v.dataset[y][v.columnIndex];else if(l>1)for(var w=0;w<g;w++){for(var x=new Array(a.length),b=0;b<l;b++){var _=c[b];x[b]=_.dataset[w][_.columnIndex]}m[w]=x}i.push(d)}return i}(n.mapSeries,c.xMap,c.yMap),console.log("opts"),console.log(n.chartOptions),o("done",n.chartOptions)}else o("incomplete")}function ee(e,t){var n=!1;for(var i in e)if(e.hasOwnProperty(i)){var r=e[i];if(r.timestamp&&r.timestamp>t){n=!0;break}}return console.log("mapChanged"),console.log(e),console.log(n),n}K.prototype.generateOptions=function(e){var t={};for(var n in function(e){for(var t in e)if(e.hasOwnProperty(t)){var n=e[t];n.columnMap=J(n.columns)}}(this.mapSeries),X(this.mapSeries),X(this.mapAxis),this.mapQueries)if(this.mapQueries.hasOwnProperty(n)){var i=this.mapQueries[n],o={query:i.textNormalized,count:!1},s=r.a.get("/exec",o);s.query=i,s.mapSeries=this.mapSeries,s.mapAxis=this.mapAxis,s.doneCallback=e,s.chartOptions=t,s.done(Z).fail(Q)}},K.prototype.stateChanged=function(e){return ee(this.mapQueries,e)||ee(this.mapAxis,e)||ee(this.mapSeries,e)},K.prototype.serializeState=function(){var e=[],t=0;for(var n in this.mapQueries)if(this.mapQueries.hasOwnProperty(n)){var i=this.mapQueries[n];e.push({id:i.id,name:i.name,text:i.text,textNormalized:i.textNormalized}),i.timestamp&&i.timestamp>t&&(t=i.timestamp)}var r=[];for(var o in this.mapAxis)if(this.mapAxis.hasOwnProperty(o)){var s=this.mapAxis[o];r.push({id:s.id,name:s.name,type:s.type,valueType:s.valueType,column:s.column,scale:s.scale}),s.timestamp&&s.timestamp>t&&(t=r.timestamp)}var a=[];for(var l in this.mapSeries)if(this.mapSeries.hasOwnProperty(l)){var c=this.mapSeries[l];a.push({id:c.id,name:c.name,chartType:c.chartType,stack:c.stack,columns:c.columns,axis:c.axis}),c.timestamp&&c.timestamp>t&&(t=c.timestamp)}return{queries:e,axis:r,series:a,timestamp:t}};var te,ne,ie=K,re=r()(".js-vis-panel"),oe=re.find("#vis-canvas"),se=re.find("#vis-menu"),ae=re.find("#vis-forms"),le=r()(".footer")[0],ce=!1,ue=450,he=-1;function de(){if(ce){var e=window.innerHeight,t=se[0].offsetHeight;a(ae,ue),a(oe,e-t-ue-le.offsetHeight),ne.resize()}}function fe(e,t){"visualisation"===t?(ce=!0,re.show(),de()):(ce=!1,re.hide())}function pe(e,t){ue-=t,r()(window).trigger("resize")}function ge(e){if(void 0===e||he<e.timestamp){var t=te.serializeState();e&&(he=e.timestamp),console.log("serializing"),console.log(t),localStorage.setItem("vis",JSON.stringify(t))}}function me(e,t){switch(e){case"done":t&&ne.setOption(t,!0);break;default:console.log(e)}}function ve(){te.generateOptions(me)}function ye(e,t,n){if("undefined"!=typeof Storage){var i=localStorage.getItem("vis");if(i){var r=JSON.parse(i);r&&(console.log("loading"),console.log(r),r.queries&&e.setMap(r.queries),r.axis&&t.setMap(r.axis),r.series&&n.setMap(r.series))}e.onUpdate(ge),t.onUpdate(ge),n.onUpdate(ge)}}n(237);var we=n(133),xe=n.n(we)()({apiKey:"b2a69b4869a2a85284a82fb57519dcda",indexName:"questdb",inputSelector:"#help-input",algoliaOptions:{}});function be(){return(65536*(1+Math.random())|0).toString(16).substring(1)}function _e(){return be()+be()+"-"+be()+"-"+be()+"-"+be()+"-"+be()+be()+be()}function Se(e){return e.toFixed(0).replace(/./g,(function(e,t,n){return t&&"."!==e&&(n.length-t)%3==0?","+e:e}))}function Ce(e){return e<1024?e:e<1048576?Math.round(e/1024)+"KB":e<1073741824?Math.round(e/1024/1024)+"MB":Math.round(e/1024/1024/1024)+"GB"}function Ae(e){e.stopPropagation(),e.preventDefault&&e.preventDefault()}function ke(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function Te(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ke(Object(n),!0).forEach((function(t){Me(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ke(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Me(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}xe.autocomplete.off("autocomplete:selected"),xe.autocomplete.on("autocomplete:selected",(function(e,t){window.open(t.url,"_blank")})),r.a.fn.grid=function(e){var t,n,i,o,s,a,l,c,u,h,d,f,p,g,m,v,y,w,x,b,_=60,S=28,C=128,A=400,k=1e7,T=100,M=75,L=120,E=160,$=e,R=r()(this),O=[],I=[],D=-1,P=0,N=C,F=N-1,B=Math.floor(1e3/3),H=2*B,z=[],W=A,j=S,V=[],q=-1,U=-1;function G(e,t){if(e.questIndex!==t){var n,i=I[Math.floor(t/1e3)];if(i){var r=i[t%1e3];if(r)for(n=0;n<O.length;n++)e.childNodes[n].innerHTML=null!==r[n]?r[n].toString():"null";e.questIndex=t}else{for(n=0;n<O.length;n++)e.childNodes[n].innerHTML="";e.questIndex=-1}e.style.top=t*j-y+"px",e===w&&(t===q?(e.className="qg-r qg-r-active",e.childNodes[U].className+=" qg-c-active"):(e.className="qg-r",e.childNodes[U].className="qg-c qg-w"+U))}}function K(){for(var e=Math.max(0,Math.floor((p-W)/j)),t=Math.min(f/j,Math.ceil((p+W+W)/j)),n=e;n<t;n++)G(V[n&F],n)}function Y(e){return null===I[e]||void 0===I[e]||0===I[e].length}function X(e,t){var n,i,o;if(function(){for(var e=0;e<I.length;e++)(e<a||e>l)&&I[e]&&delete I[e]}(),e!==t&&Y(e)&&Y(t))i=(n=1e3*e)+1e3*(t-e+1),o=function(n){I[e]=n.dataset.splice(0,1e3),I[t]=n.dataset,K()};else if(!Y(e)||Y(t)&&e!==t){if(Y(e)&&e!==t||!Y(t))return void K();i=(n=1e3*t)+1e3,o=function(e){I[t]=e.dataset,K()}}else i=(n=1e3*e)+1e3,o=function(t){I[e]=t.dataset,K()};r.a.get("/exec",{query:c,limit:n+","+i,nm:!0}).done(o)}function J(e,t){u&&clearTimeout(u),u=setTimeout((function(){X(e,t)}),75)}function Q(e){var t=Math.max(0,Math.floor((p-W)/j)),n=Math.min(f/j,Math.ceil((p+W+W)/j));0!==e&&function(e,t,n){var i,r,o,s;if(t==t&&n==n)if(i=Math.floor(t/1e3),o=Math.floor(n/1e3),e>0){if(s=n%1e3,i>=a&&o<l)return;if(o===l)return void(s>H&&(l=o+1,a=o,J(o,o+1)));i<o?(J(i,o),a=i,l=o):s>H?(J(o,o+1),a=o,l=o+1):(l=i,a=i,J(i,i))}else{if(r=t%1e3,i>a&&o<=l)return;if(i===a)return void(r<B&&a>0&&(a=Math.max(0,i-1),l=i,J(i-1,i)));i<o?(J(i,o),a=i,l=o):r<B&&i>0?(J(i-1,i),a=Math.max(0,i-1),l=i):(a=i,l=i,J(i,i))}}(e,t,n),0===t?n=N:n>d-2&&(t=Math.max(0,n-N));for(var i=t;i<n;i++){var r=V[i&F];r&&G(r,i)}}function Z(e){switch(O[e].type){case"STRING":case"SYMBOL":return"text-align: left;";default:return""}}function ee(e){for(var t=0;t<s.length;t++)e.push(".qg-w"+t+"{width:"+s[t]+"px;"+Z(t)+"}");e.push(".qg-r{width:"+D+"px;}"),e.push(".qg-canvas{width:"+D+"px;}"),P=2}function te(e){for(var t=0;t<s.length;t++)e.push(".qg-w"+t+"{width:"+100*s[t]/D+"%;"+Z(t)+"}");e.push(".qg-r{width:100%;}"),e.push(".qg-canvas{width:100%;}"),P=1}function ne(e){$.trigger("editor.insert.column",e.toElement.innerHTML)}function ie(){x.className="qg-c qg-w"+U}function re(e){var t;((x=w.childNodes[U]).className+=" qg-c-active",e)&&((t=Math.max(0,x.offsetLeft-5))<n.scrollLeft?n.scrollLeft=t:(t=x.offsetLeft+x.clientWidth+5)>n.scrollLeft+n.clientWidth&&(n.scrollLeft=t-n.clientWidth))}function oe(e){if(q>0){q=Math.max(0,q-e),w.className="qg-r",ie(),(w=V[q&F]).className="qg-r qg-r-active",re();var t=q*j-y;t<n.scrollTop&&(n.scrollTop=Math.max(0,t))}}function se(e){if(q>-1&&q<d-1){q=Math.min(d-1,q+e),w.className="qg-r",ie(),(w=V[q&F]).className="qg-r qg-r-active",re();var t=q*j-W+j-y;t>n.scrollTop&&(n.scrollTop=t)}}function ae(e){o.scrollLeft(n.scrollLeft);var t=n.scrollTop;if(t!==m||e){var i=p;t>=g-W?(p=Math.max(0,f-W),y=p-(m=t),se(d-q)):(0===t&&m>0?(p=0,y=0,oe(q)):p+=t-m,m=t),Q(p-i)}h&&(h.empty(),h.append("time = "+new Date+"<br>"),h.append("y = "+p+"<br>"),h.append("M = "+v+"<br>"),h.append("o = "+y+"<br>"),h.append("h = "+g+"<br>"),h.append("vp = "+W+"<br>"),h.append("yMax = "+f+"<br>"),h.append("top = "+m+"<br>"),h.append("activeRow = "+q+"<br>"))}function le(){var e=window.innerHeight-r()(window).scrollTop();W=Math.round(e-n.getBoundingClientRect().top)-M,W=Math.max(W,L),b=Math.floor(W/j),n.style.height=W+"px",R.css("height",Math.max(Math.round(e-R[0].getBoundingClientRect().top)-M,E)+"px"),function(){if(I.length>0){var e=n.offsetWidth,i=null;if(D<e&&1!==P?i=te:D>e&&2!==P&&(i=ee),i){t&&t.remove(),t=r()('<style type="text/css" rel="stylesheet"/>').appendTo(r()("head"));var o=[];i(o),o.push(".qg-c{height:"+j+"px;}"),t[0].styleSheet?t[0].styleSheet.cssText=o.join(" "):t[0].appendChild(document.createTextNode(o.join(" ")))}}}(),ae(!0)}function ce(){w&&(w.className="qg-r"),this.focus(),(w=this.parentElement).className+=" qg-r-active",q=w.questIndex,x&&(x.className="qg-c qg-w"+U),x=this,U=this.cellIndex,x.className+=" qg-c-active"}function ue(e){delete z["which"in e?e.which:e.keyCode]}function he(e){var t="which"in e?e.which:e.keyCode,n=!0;switch(t){case 33:oe(b);break;case 38:z[91]?oe(q):oe(1);break;case 40:z[91]?se(d-q):se(1);break;case 34:se(b);break;case 39:U>-1&&U<O.length-1&&(ie(),U++,re(!0));break;case 37:U>0&&(ie(),U--,re(!0));break;case 35:z[17]?se(d-q):U>-1&&U!==O.length-1&&(ie(),U=O.length-1,re(!0));break;case 36:z[17]?oe(q):U>0&&(ie(),U=0,re(!0));break;case 113:x&&ie(),$.trigger("editor.focus");break;default:z[t]=!0,n=!1}n&&e.preventDefault()}function de(){x&&w&&(x.click(),w.focus())}function fe(e,u){var h;m=0,p=0,y=0,d=0,t&&t.remove(),o.empty(),i.empty(),V=[],P=0,I=[],c=null,a=0,l=0,z=[],w=null,x=null,q=0,U=0,c=u.query,I.push(u.dataset),O=u.columns,function(){for(var e=0;e<N;e++){var t=r()('<div class="qg-r" tabindex="'+e+'"/>');0===e&&(w=t);for(var n=0;n<O.length;n++){var o=r()('<div class="qg-c qg-w'+n+'"/>').click(ce).appendTo(t)[0];0===e&&0===n&&(x=o),o.cellIndex=n}t.css({top:-100,height:j}).appendTo(i),V.push(t[0])}}(),h=u.count,v=(f=(d+=h)*j)/(g=f<k?f:k),i.css("height",0===g?1:g),function(){var e,t,n;for(s=[],D=0,e=0;e<O.length;e++){var i=O[e],a=r()('<div class="qg-header qg-w'+e+'">'+i.name+"</div>").click(ne).appendTo(o);switch(i.type){case"STRING":case"SYMBOL":a.addClass("qg-header-l")}n=Math.max(_,Math.ceil(8*i.name.length*1.2+8)),s.push(n),D+=n}var l=I[0].length>T?T:I[0].length;for(e=0;e<l;e++){var c=I[0][e],u=0;for(t=0;t<c.length;t++){var h=c[t],d=null!==h?h.toString():"null";n=Math.max(_,8*d.length+8),s[t]=Math.max(n,s[t]),u+=s[t]}D=Math.max(D,u)}}(),n.scrollTop=0,le(),de()}function pe(){c&&$.trigger("query.in.export",{q:c})}function ge(){c&&$.trigger("query.in.exec",{q:c})}h=r()("#debug"),o=R.find(".qg-header-row"),(n=R.find(".qg-viewport")[0]).onscroll=ae,(i=R.find(".qg-canvas")).bind("keydown",he),i.bind("keyup",ue),r()(window).resize(le),$.on("query.out.dataset",fe),$.on("grid.focus",de),$.on("grid.refresh",ge),$.on("grid.publish.query",pe),$.on("active.panel",le),le()},r.a.fn.importManager=function(e){var t,n={},i=e,o=0,s=[],a=null,l=null,c=null;function u(e){if(e.lengthComputable){var t=e.loaded||e.position;l.find(" > .ud-progress").css("width",100*t/a.size+"%")}}function h(){var e=!1,t=!1;for(var i in n)if(n.hasOwnProperty(i)){var o=n[i];if(o.selected&&(e=!0,o.retry)){t=!0;break}}r()("#btnImportClearSelected").attr("disabled",!e),r()("#btnRetry").attr("disabled",!t)}function d(e,t){switch(e.retry){case 1:t.find(".js-row-append").addClass("label-danger"),t.find(".js-row-overwrite").removeClass("label-danger");break;case 2:t.find(".js-row-append").removeClass("label-danger"),t.find(".js-row-overwrite").addClass("label-danger");break;default:t.find(".js-row-append").removeClass("label-danger"),t.find(".js-row-overwrite").removeClass("label-danger")}e.selected?t.find(".js-row-toggle").removeClass("fa-square-o").addClass("fa-check-square-o"):t.find(".js-row-toggle").removeClass("fa-check-square-o").addClass("fa-square-o"),e.forceHeader?t.find(".js-row-toggle-header").addClass("label-success"):t.find(".js-row-toggle-header").removeClass("label-success"),e.skipLev?t.find(".js-row-lev").addClass("label-success"):t.find(".js-row-lev").removeClass("label-success"),h()}function f(e,t){t.retry=2,d(t,r()("#"+t.id+" > .ud-c0"))}function p(e,t){t.retry=1,d(t,r()("#"+t.id+" > .ud-c0"))}function g(e,t){t.retry=0,d(t,r()("#"+t.id+" > .ud-c0"))}function m(){var e=r.a.ajaxSettings.xhr();return e.upload&&e.upload.addEventListener("progress",u,!1),e}var v={xhr:m,url:"/imp?fmt=json",type:"POST",contentType:!1,processData:!1,cache:!1},y={type:"GET",contentType:!1,processData:!1,cache:!1};function w(){var e=r()(this),t=n[e.parent().parent().attr("id")];t.selected=!t.selected,d(t,e.parent())}function x(){var e=r()(this),t=n[e.parent().parent().attr("id")];switch(t.retry){case 1:t.retry=0,t.selected=!1;break;default:t.retry=1,t.selected=!0}d(t,e.parent())}function b(){var e=r()(this),t=n[e.parent().parent().attr("id")];switch(t.retry){case 2:t.retry=0,t.selected=!1;break;default:t.retry=2,t.selected=!0}d(t,e.parent())}function _(){var e=r()(this),t=n[e.parent().parent().attr("id")];t.forceHeader=!t.forceHeader,d(t,e.parent())}function S(){var e=r()(this),t=n[e.parent().parent().attr("id")];t.skipLev=!t.skipLev,d(t,e.parent())}function C(){var e=r()(this);O(n[e.parent().parent().attr("id")])}function A(){var e=r()(this),t=n[e.parent().parent().attr("id")];i.trigger("query.build.execute",t.name)}function k(e){var t=n[r()(this).parent().attr("id")];t.importState>-1&&r()(document).trigger("import.detail",t),Ae(e)}function T(e,t,n){var i=l;if(i.find(" > .ud-status").html(t),i.find(" > .ud-progress").remove(),a.selected=!1,n){var o=s.shift();o?R(o):(a=null,l=null,c=null)}r()("#btnImportCancel").attr("disabled",null===a),r()(document).trigger("import.detail.updated",e)}function M(e){if(a.delta=(new Date).getTime()-a.time,"OK"===e.status){a.response=e,a.importState=0,g(0,a),l.find(".js-row-imported").html(Se(e.rowsImported)),l.find(".js-row-rejected").html(Se(e.rowsRejected)),l.find(".js-row-header").html(e.header?"Yes":"No");var t=e.rowsRejected>0?"label-warning":"label-success";T(a,'<span class="label '+t+'">imported in '+a.delta/1e3+"s</span>",!0)}else a.importState=4,a.response=e.status,T(a,'<span class="label label-danger">failed</span>',!0)}function L(e){g(0,a),"abort"!==e.statusText?(a.importState=function(e){switch(e){case 0:return 3;case 400:return 4;case 500:return 5;default:return 101}}(e.status),a.response=e.responseJSON.status,T(a,'<span class="label label-danger">failed</span>',!0)):T(a,'<span class="label label-warning">aborted</span>',!0)}function E(){T(a,'<span class="label label-info">importing</span>',!1),l.append('<div class="ud-progress"></div>'),c=r.a.ajax(function(){if(v.url="/imp?fmt=json",2===a.retry&&(v.url+="&overwrite=true"),a.forceHeader&&(v.url+="&forceHeader=true"),a.skipLev&&(v.url+="&skipLev=true"),v.xhr=m,v.data=new FormData,a.response&&a.response.columns){for(var e=[],t=0;t<a.response.columns.length;t++){var n=a.response.columns[t];n.altType&&n.type!==n.altType.text&&"AUTO"!==n.altType.text?e.push({name:n.name,type:n.altType.value}):0!==n.errors||"DATE"===n.type||void 0!==n.altType&&"AUTO"===n.altType.text||e.push({name:n.name,type:n.type})}v.data.append("schema",JSON.stringify(e))}return"file"===a.type?v.data.append("data",a.file):"clipboard"===a.type&&(v.url=v.url+"&name="+encodeURIComponent(a.name),v.data.append("data",a.content)),a.time=(new Date).getTime(),v}()).done(M).fail(L)}function $(e){switch(e.status){case"Exists":a.importState=1,T(a,'<span class="label label-danger">exists</span>',!0);break;case"Does not exist":a.importState=0,E();break;case"Reserved name":a.importState=2,T(a,'<span class="label label-danger">reserved</span>',!0);break;default:a.importState=101,T(a,'<span class="label label-danger">failed</span>',!0)}}function R(e){a=e,l=r()("#"+e.id),e.retry?(a.importState=0,E()):(y.url="/chk?f=json&j="+encodeURIComponent(e.name),r.a.ajax(y).then($).fail(L))}function O(e){null==a?R(e):a!==e&&s.push(e)}function I(e){var i,s;n[e.id]=e,i=e,s=r()('\n <div id="'.concat(i.id,'" class="ud-row" style="top: ').concat(o,'px;">\n <div class="ud-cell ud-c0">\n <i class="fa fa-square-o ud-checkbox js-row-toggle"></i>\n <span class="label js-row-append" title="Append">A</span>\n <span class="label js-row-overwrite" title="Overwrite">O</span>\n <span class="label js-row-lev" title="Skip lines with extra values">LEV</span>\n <span class="label js-row-toggle-header" title="Header">H</span>\n <i class="fa fa-upload js-row-upload"></i>\n </div>\n <div class="ud-cell ud-c1">').concat(i.name,'</div>\n <div class="ud-cell ud-c2"><i class="fa fa-eye js-row-query"></i></div>\n <div class="ud-cell ud-c3">').concat(i.sizeFmt,'</div>\n <div class="ud-cell ud-c4 js-row-imported">?</div>\n <div class="ud-cell ud-c5 js-row-rejected">?</div>\n <div class="ud-cell ud-c6 js-row-header">?</div>\n <div class="ud-cell ud-c7 ud-status">\n <span class="label">pending</span>\n </div>\n </div>\n ')),t.append(s),s.find(".js-row-toggle").click(w),s.find(".js-row-append").click(x),s.find(".js-row-overwrite").click(b),s.find(".js-row-lev").click(S),s.find(".js-row-toggle-header").click(_),s.find(".js-row-upload").click(C),s.find(".js-row-query").click(A),s.find(".ud-c1").click(k),s.find(".ud-c2").click(k),s.find(".ud-c3").click(k),o+=35,O(e)}function D(e,t){for(var n=0;n<t.files.length;n++){var i=t.files[n];I({id:_e(),name:i.name,size:i.size,file:i,type:"file",sizeFmt:Ce(i.size),selected:!1,imported:!1,forceHeader:!1})}}function P(e,t){I({id:_e(),name:"clipboard-"+(new Date).getTime(),size:t.length,type:"clipboard",content:t,sizeFmt:Ce(t.length),selected:!1,imported:!1,forceHeader:!1})}function N(){for(var e in n)if(n.hasOwnProperty(e)){var i=n[e];if(i.selected&&i!==a){var l=s.indexOf(i);l>-1&&delete s[l],r()("#"+e).remove(),delete n[e],r()(document).trigger("import.cleared",i)}}o=0;for(var c=t.find(".ud-row"),u=0;u<c.length;u++)r()(c[u]).css("top",o),o+=35;h()}function F(){for(var e in n)if(n.hasOwnProperty(e)){var t=n[e];t.selected&&t.retry&&O(t)}}function B(){null!==c&&c.abort()}return t=this.find("> .ud-canvas"),r()(document).on("dropbox.files",D),r()(document).on("dropbox.clipboard",P),r()(document).on("import.line.overwrite",f),r()(document).on("import.line.append",p),r()(document).on("import.line.abort",g),r()("#btnImportClearSelected").click(N),r()("#btnImportCancel").click(B),r()("#btnRetry").click(F),this},r.a.fn.dropbox=function(e){var t=r()(),n=this;function i(){n.removeClass("drag-drop").addClass("drag-idle")}function o(e){Ae(e),i(),t=r()(),r()(document).trigger("dropbox.files",e.originalEvent.dataTransfer)}function s(e){var t;window.clipboardData&&window.clipboardData.getData?t=window.clipboardData.getData("Text"):e.originalEvent.clipboardData&&e.originalEvent.clipboardData.getData&&(t=e.originalEvent.clipboardData.getData("text/plain")),r()(document).trigger("dropbox.clipboard",t)}function a(e){Ae(e),0===t.size()&&n.addClass("drag-drop").removeClass("drag-idle"),t=t.add(e.target)}function l(e){setTimeout((function(){0===(t=t.not(e.target)).size()&&i()}),1)}function c(e,t){"import"===t?(r()(document).on("drop",o),r()(document).on("paste",s),r()(document).on("dragenter",a),r()(document).on("dragover",Ae),r()(document).on("dragleave",l)):(r()(document).unbind("drop",o),r()(document).unbind("paste",s),r()(document).unbind("dragenter",a),r()(document).unbind("dragover",Ae),r()(document).unbind("dragleave",l))}return function(){e.on("active.panel",c);var t=r()("#js-browse-files-input")[0];r()("#js-browse-files").click((function(){t.click()})),t.onchange=function(){r()(document).trigger("dropbox.files",t),t.value=""}}(),this},r.a.fn.importEditor=function(e){var t,n,i=r()(this),o=r()(".stats-switcher"),s=r()("#js-import-editor"),a=r()("#js-import-error"),l=r()("#js-import-placeholder"),c=r()(this).find(".js-message"),u=r()(this).find(".js-import-tab-name"),h=r()(this).find(".import-rejected"),d=r()(this).find(".import-imported"),f=r()(this).find(".js-rejected-row-count"),p=r()(this).find(".js-imported-row-count"),g=r()(this).find(".ud-canvas"),m=r()(".footer")[0].offsetHeight,v=[{text:"AUTO",value:null},{text:"BOOLEAN",value:"BOOLEAN"},{text:"BYTE",value:"BYTE"},{text:"DOUBLE",value:"DOUBLE"},{text:"DATE",value:"DATE"},{text:"FLOAT",value:"FLOAT"},{text:"INT",value:"INT"},{text:"LONG",value:"LONG"},{text:"SHORT",value:"SHORT"},{text:"CHAR",value:"CHAR"},{text:"STRING",value:"STRING"},{text:"SYMBOL",value:"SYMBOL"}],y=null,w=e;function x(){var e=g[0].getBoundingClientRect().top,t=Math.round(window.innerHeight-e);t=t-m-45,g[0].style.height=t+"px"}function b(){var e=r()(this);t.appendTo(e.parent()),t.css("left",e.css("left")),t.css("width",e.css("width"));var n=parseInt(r()(this).parent().find(".js-g-row").text())-1,i=y.response.columns[n];i.altType?t.val(i.altType.value):t.val(i.type),t.changeTargetDiv=e,t.changeTargetCol=i,t.show(),t.focus()}function _(){t.hide()}function S(e){return e.altType&&e.altType.text!==e.type?e.type+'<i class="fa fa-angle-double-right g-type-separator"></i>'+e.altType.text:e.type}function C(){var e=r()(this).find("option:selected");t.changeTargetCol.altType={text:e.text(),value:e.val()},t.changeTargetDiv.html(S(t.changeTargetCol)),function(){for(var e=!1,t=0;t<y.response.columns.length;t++){var n=y.response.columns[t];if(n.altType&&n.type!==n.altType.text){e=!0;break}}r()(document).trigger(e?"import.line.overwrite":"import.line.cancel",y)}(),_()}function A(e){if(0!==e.importState||e.response){if(e.response&&0===e.importState){u.html(n=e.response.location);var o=e.response.rowsImported,m=e.response.rowsRejected,v=o+m;if(h.css("width",Math.round(100*m/v)+"%"),d.css("width",Math.round(100*o/v)+"%"),f.html(m),p.html(o),g.empty(),e.response.columns)for(var y=0,w=0;w<e.response.columns.length;w++){var A=e.response.columns[w];g.append('<div class="ud-row" style="top: '+y+'px"><div class="ud-cell gc-1 g-other js-g-row">'+(w+1)+'</div><div class="ud-cell gc-2 g-other">'+(A.errors>0?'<i class="fa fa-exclamation-triangle g-warning"></i>':"")+A.name+'</div><div class="ud-cell gc-3 g-type">'+S(A)+'</div><div class="ud-cell gc-4 g-other">'+(void 0!==A.pattern?A.pattern:"")+'</div><div class="ud-cell gc-5 g-other">'+(void 0!==A.locale?A.locale:"")+'</div><div class="ud-cell gc-6 g-other">'+A.errors+"</div></div>"),y+=35}r()(".g-type").click(b),r()(".g-other").click(_),t.change(C),s.show(),a.hide(),x()}else{switch(e.importState){case 1:c.html("Table <strong>"+e.name+"</strong> already exists");break;case 2:c.html("Name <strong>"+e.name+"</strong> is reserved");break;case 3:c.html("Server is not responding...");break;case 4:c.html(e.response);break;case 5:c.html("Server encountered internal problem. Check server logs for more details.");break;default:c.html("Unknown error: "+e.responseStatus)}s.hide(),a.show(),l.hide()}i.show()}}r()(document).on("import.detail",(function(e,t){y=t,A(t)})),r()(document).on("import.detail.updated",(function(e,t){y===t&&t.response&&A(t)})),r()(document).on("import.cleared",(function(e,t){t===y&&(y=null,s.hide(),a.hide(),l.show())})),function(){t=r()('<select class="g-dynamic-select form-control m-b"/>');for(var e=0;e<v.length;e++){var n=v[e];r()("<option />",{value:n.value,text:n.text}).appendTo(t)}}(),r()(".import-stats-chart").click((function(){o.hasClass("stats-visible")?o.removeClass("stats-visible"):o.addClass("stats-visible")})),u.mouseover((function(){u.addClass("animated tada").one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",(function(){r()(this).removeClass("animated").removeClass("tada")}))})),u.click((function(){w.trigger("query.build.execute",n)})),r()(window).resize(x),w.on("active.panel",x)},r.a.fn.listManager=function(e,t,n,i){var o,s,a=r()(this),l=a.find(".qdb-list ul"),c=e,u=t,h=n,d=i,f=[],p=a.find(".qdb-list-add-btn"),g=a.find(".qdb-list-delete-btn"),m=a.find(".qdb-vis-form"),v=a.find(".qdb-vis-placeholder");function y(){0===l.find("li").length?(m.hide(),v.show()):(v.hide(),m.show())}function w(){return l.find("#"+s)}function x(e){if(s){var t=w()[0];if(t){if(!h(f[s]))return;t.className=""}}s=e.target.getAttribute("id"),e.target.className="active";var n=f[s];n?u(n):d()}function b(e){o&&o(e)}function _(){l.find("#"+this.id).html(this.name),b(this)}function S(e){e.callback=_;var t=e.id,n=e.name,i=r()('<li id="'.concat(t,'">').concat(n,"</li>"));return f[t]=e,i.click(x),i.appendTo(l),i}return p.click((function(){var e,t=l.find("li").length+1;do{e=c(t++)}while(l.find("#"+e.id).length>0);e.timestamp=(new Date).getTime();var n=S(e);y(),n.click(),b(e)})),g.click((function(){if(s){var e=w();if(delete f[s],b(),e){d();var t=e.next();0===t.length&&(t=e.prev()),e.remove(),0===t.length?s=null:t.click()}}y()})),y(),{getMap:function(){return f},setMap:function(e){var t;!function(){for(var e=l[0];e.firstChild;)e.removeChild(e.firstChild)}(),function(){for(var e in f)f.hasOwnProperty(e)&&delete f[e]}();for(var n=0,i=e.length;n<i;n++){var r=S(e[n]);t||(t=r)}t&&t.click(),y()},onUpdate:function(e){o=e}}},r.a.fn.query=function(){var e,t,n=r()(this),i=null,o=null,s={query:"",limit:""};function a(){null!==i&&(i.abort(),i=null)}function l(e){n.trigger("query.out.ok",{count:e.count,timings:e.timings&&Te({},e.timings,{fetch:1e6*(Date.now()-t)})}),e.dataset&&n.trigger("query.out.dataset",e),i=null}function c(r){n.trigger("query.out.error",{query:e,r:r.responseJSON,status:r.status,statusText:r.statusText,delta:(new Date).getTime()-t}),i=null}function u(){a(),s.query=e.q,s.limit="0,1000",s.count=!0,s.src="con",s.timings=!0,t=Date.now(),i=r.a.get("/exec",s),n.trigger("query.out.running"),i.done(l).fail(c)}n.on("query.in.exec",(function(t,n){e=n,null!==o&&(clearTimeout(o),o=null),o=setTimeout(u,50)})),n.on("query.in.cancel",a),n.on("query.publish",(function(){n.trigger("query.text",e)}))},r.a.fn.domController=function(){var e,t,n=r()(".js-query-spinner"),i=r()(".js-query-message-panel"),o=!1,s=r()(this);function a(){n.addClass("query-progress-animated",100),i.removeClass("query-message-ok"),i.html("&nbsp;Running...")}function l(){o=!0,t.html('<i class="fa fa-stop"></i>Cancel'),t.removeClass("js-query-run").addClass("js-query-cancel"),e=setTimeout(a,500)}function c(){t.html('<i class="fa fa-play"></i>Run'),t.removeClass("js-query-cancel").addClass("js-query-run"),clearTimeout(e),n.removeClass("query-progress-animated"),o=!1}function u(e,t){if(c(),i.removeClass("query-message-ok").addClass("query-message-error"),"abort"===t.statusText)i.html("Cancelled by user");else if(t.r){var n=function(e,t){for(var n=0,i=0,r=Math.min(t,e.q.length),o=0;o<r;o++)"\n"===e.q.charAt(o)?(n++,i=0):i++;return{r:n+1+e.r,c:(0===n?i+e.c:i)+1}}(t.query,t.r.position);i.html('\n <div>\n Failed, it looks like there is an error with the query:\n <br />\n <span class="query-error-at"><strong>'.concat(n.r,":").concat(n.c,"</strong>&nbsp;&nbsp;").concat(t.r.error,"</span>\n </div>\n ")),s.trigger("editor.show.error",n)}else 0===t.status?i.html("Server down?"):i.html("Server error: "+t.status)}function h(e){return Math.round(100*(e+Number.EPSILON))/100}function d(e){return 0===e?"0":e>1e9?"".concat(h(e/1e9),"s"):e>1e6?"".concat(h(e/1e6),"ms"):e>1e3?"".concat(h(e/1e3),"μs"):"".concat(e,"ns")}function f(e,t){c(),i.removeClass("query-message-error").addClass("query-message-ok");var n=t.count?'<div class="query-result-value">\n <div>\n Row count\n </div>\n <div>\n '.concat(t.count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),"\n </div>\n </div>"):"";t.timings?i.html('\n <div class="query-result-value">\n <div>\n Fetching time\n </div>\n <div>\n '.concat(d(t.timings.fetch),'\n </div>\n </div>\n <div class="query-result-value">\n <div>\n Execution time\n </div>\n <div>\n ').concat(d(t.timings.execute),'\n </div>\n </div>\n <div class="query-result-value">\n <div>\n Counting time\n </div>\n <div>\n ').concat(d(t.timings.count),'\n </div>\n </div>\n <div class="query-result-value">\n <div>\n Compiling time\n </div>\n <div>\n ').concat(d(t.timings.compiler),"\n </div>\n </div>\n ").concat(n,"\n ")):n?i.html(n):i.html("&nbsp;Success!")}function p(){o?s.trigger("query.in.cancel"):s.trigger("editor.execute")}function g(e){e.preventDefault(),s.trigger("grid.publish.query")}function m(e,t){t&&(window.location.href="/exp?query="+encodeURIComponent(t.q))}(t=r()(".js-query-run")).click(p),s.on("query.out.error",u),s.on("query.out.ok",f),s.on("query.out.running",l),s.on("query.in.export",m),r()(".js-editor-toggle-invisible").click((function(){s.trigger("editor.toggle.invisibles")})),r()(".js-query-export").click(g)},r.a.fn.editor=function(e){var t,n,i="query.text",r="editor.line",o="editor.col",s=ace.require("ace/range").Range,a={wrap:!0,caseSensitive:!0,wholeWord:!1,regExp:!1,preventScroll:!1},c=e;function u(){n&&(t.session.removeMarker(n),n=null)}function h(){if("undefined"!=typeof Storage){var e=localStorage.getItem(i);e&&t.setValue(e);var n=localStorage.getItem(r),s=localStorage.getItem(o);n&&s&&setTimeout((function(){t.gotoLine(n,s)}),50)}}function d(){"undefined"!=typeof Storage&&(localStorage.setItem(i,t.getValue()),localStorage.setItem(r,t.getCursorPosition().row+1),localStorage.setItem(o,t.getCursorPosition().column))}function f(){var e;c.trigger("preferences.save"),u(),(e=""===t.getSelectedText()?function(){for(var e=t.getValue(),n=t.getCursorPosition(),i=0,r=0,o=0,s=0,a=-1,l=null,c=!1,u=[],h=0;h<e.length;h++){switch(e.charAt(h)){case";":if(c){r++;continue}i<n.row||i===n.row&&r<n.column?(u.push({row:o,col:s,pos:a,lim:h}),o=i,s=r,a=h+1,r++):l=-1===a?e.substring(0,h):e.substring(a,h);break;case" ":a===h&&(o=i,s=r,a=h+1),r++;break;case"\n":i++,r=0,a===h&&(o=i,s=r,a=h+1,r++);break;case"'":c=!c,r++;break;default:r++}if(null!==l)break}if(null===l&&(l=-1===a?e:e.substring(a)),0===l.length){var d=u.pop();return d?{q:e.substring(d.pos,d.lim),r:d.row,c:d.col}:null}return{q:l,r:o,c:s}}():function(){for(var e,n=t.getSelectedText(),i=n.length;i>0&&(" "===(e=n.charAt(i))||"\n"===e||";"===e);)i--;if(i>0){n=n.substr(0,i+1);var r=t.getSelectionRange();return{q:n,r:r.start.row,c:r.start.column}}return null}())&&c.trigger("query.in.exec",e)}function p(e,i){var r=t.session.getTokenAt(i.r-1,i.c);n=t.session.addMarker(new s(i.r-1,i.c-1,i.r-1,i.c+r.value.length-1),"js-syntax-error","text",!0),t.gotoLine(i.r,i.c-1),t.focus()}function g(){t.renderer.setShowInvisibles(!t.renderer.getShowInvisibles())}function m(){c.trigger("grid.focus")}function v(e,n){if(!t.find("'"+n+"'",a)){var i=t.session.getLength(),r="\n'"+n+"';";t.session.insert({row:i,column:0},r),t.selection.moveCursorToPosition({row:i+1,column:0}),t.selection.selectLine()}f()}function y(e,n){t.insert(", "+n),t.focus()}(t=l(this[0])).session.on("change",u),c.on("editor.execute",f),c.on("editor.execute.alt",f),c.on("editor.show.error",p),c.on("editor.toggle.invisibles",g),c.on("query.build.execute",v),c.on("editor.insert.column",y),c.on("editor.focus",(function(){t.scrollToLine(t.getCursorPosition().row+1,!0,!0,(function(){})),t.focus()})),t.commands.addCommand({name:"editor.execute",bindKey:"F9",exec:f}),t.commands.addCommand({name:"editor.execute.alt",bindKey:{mac:"Command-Enter",win:"Ctrl-Enter"},exec:f}),t.commands.addCommand({name:"editor.focus.grid",bindKey:"F2",exec:m}),c.on("preferences.load",h),c.on("preferences.save",d)};var Le,Ee=n(48),$e=n.n(Ee);function Re(e,t){if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var n=0,i=e.length;n<i;n++)if(e[n]instanceof Array&&t[n]instanceof Array){if(!e[n].equals(t[n]))return!1}else if(e[n]!==t[n])return!1;return!0}function Oe(e,t){var n=r()("#side-menu").find("a");Le.trigger("active.panel",e);for(var i=n.length,o=0;o<i;o++)o===t?n[o].setAttribute("class","selected"):n[o].setAttribute("class","")}function Ie(){Oe("console",0)}function De(){Oe("visualisation",1)}function Pe(){Oe("import",2)}r.a.fn.quickVis=function(e){var t,n,i,o,s,a,l,c,u,h,d=75,f=120,p=160,g=e,m=r()(this),v=r()("#_qvis_frm_draw"),y=new Set,w={title:{},tooltip:{},legend:{data:["Series"]},xAxis:{data:[]},yAxis:{},series:[{name:"Y-axis",type:"bar",data:[]}]},x=new $e.a({select:"#_qvis_frm_chart_type"}),b=new $e.a({select:"#_qvis_frm_axis_x"}),_=new $e.a({select:"#_qvis_frm_axis_y"});function S(){var e=window.innerHeight-r()(window).scrollTop(),i=Math.max(Math.round(e-t.getBoundingClientRect().top)-d,f);t.style.height=i+"px";var o=Math.max(Math.round(e-m[0].getBoundingClientRect().top)-d,p);m.css("height",o+"px"),n.resize()}function C(){v.html('<i class="fa fa-play"></i>Draw'),v.removeClass("js-chart-cancel").addClass("js-chart-draw")}function A(e){try{var t,i=e.columns,r=e.dataset;if(i&&r){var o,c=new Map;for(t=0;t<i.length;t++)c.set(i[t].name,t);if(null!=s){var u=c.get(s),h=[];for(t=0;t<r.length;t++)h[t]=r[t][u];o={type:"category",name:s,data:h}}else o={};var d=[];if(a.length>0)for(t=0;t<a.length;t++){var f=c.get(a[t]);if(f){for(var p=[],g=0;g<r.length;g++)p[g]=r[g][f];d[t]="area"===l?{type:"line",name:a[t],data:p,areaStyle:{},smooth:!0,symbol:"none"}:{name:a[t],type:l,data:p,large:!0}}}var m={legend:{},xAxis:o,yAxis:{type:"value"},series:d};n.setOption(m,!0)}}finally{C()}}function k(e){h=null,g.trigger("query.out.ok",{delta:(new Date).getTime()-o,count:e.count}),c=e,u=i,A(e)}function T(e){h=null,C(),g.trigger("query.out.error",{query:u,r:e.responseJSON,status:e.status,statusText:e.statusText,delta:(new Date).getTime()-o})}function M(){v.html('<i class="fa fa-stop"></i>Cancel'),v.removeClass("js-chart-draw").addClass("js-chart-cancel"),l=x.selected();var e=b.selected(),t=_.selected();if(Re(e,s)&&Re(t,a)&&i===u)A(c);else{y.clear(),(s=b.selected())&&y.add(s),a=_.selected(),function(e,t){for(var n=0;n<e.length;n++)t.add(e[n])}(_.selected(),y);var n="";y.forEach((function(e){""!==n&&(n+=","),n+=e}));var d={};d.query=i,d.count=!1,d.cols=n,d.src="vis",o=(new Date).getTime(),h=r.a.get("/exec",d),g.trigger("query.out.running"),h.done(k).fail(T)}}function L(){n.setOption(w,!0)}function E(e,t){for(var n=[],r=t.columns,o=0;o<r.length;o++)n[o]={text:r[o].name};b.setData(n),_.setData(n),_.set(n.slice(1).map((function(e){return e.text}))),i=t.query,L()}function $(){h&&(h.abort(),h=null)}function R(){return h?g.trigger("query.in.cancel"):g.trigger("chart.draw"),!1}t=m.find(".quick-vis-canvas")[0],r()(window).resize(S),g.on("active.panel",S),n=V.a.init(t,q),g.on("query.out.dataset",E),g.on("query.in.cancel",$),g.on("chart.draw",M),v.click(R),L(),S()},r.a.fn.splitter=function(e,t,n,i){var o,s,a,l,c=r()(e),u=r()(this),h="splitter."+t+".resize",d=n,f=i;function p(e){e.preventDefault(),e.pageY>d&&e.pageY<window.innerHeight+r()(window).scrollTop()-f&&(a=e.pageY,o[0].style=l+"top: "+e.pageY+"px;")}function g(){r()(document).off("mousemove",p),r()(document).off("mouseup",g),o[0].style="display: none",u.removeClass("qs-dragging"),c.trigger(h,a-s)}r()(this).mousedown((function(){var e=u[0].getBoundingClientRect();s=e.top+r()(window).scrollTop(),l="position: absolute; left: "+e.left+"px; width: "+e.width+"px; height: "+e.height+"px;",o||(o=r()('<div class="qs-ghost"></div>')).appendTo("body"),o[0].style=l+"top: "+s+"px;",u.addClass("qs-dragging"),r()(document).mousemove(p),r()(document).mouseup(g)}))},r.a.fn.queryForm=function(){var e,t=r()(this),n=t.find("#_vis_frm_query_name")[0],i=t.find(".qdb-vis-query-name"),o=i.find(".help-block"),s=t.find(".js-vis-title"),a=l(t.find("#_vis_frm_query_text")[0]),c={query:"",limit:"0,0",count:!1};function u(e,t,n){n.query.columns=e.columns,n.query.error=null}function h(e){e.query.columns=null,e.query.error=e.responseJSON}function d(e){var t=!1;if(""===n.value&&(i.addClass("has-error"),o.html("Please fill this field"),t=!0),t)return!1;o.html(""),i.removeClass("has-error");var s=!1;e.name!==n.value&&(e.name=n.value,s=!0);var l=a.getValue();if(e.text!==l){s=!0,e.text=l;var d=function(e){if(!e||0===e.length)return null;var t=e.trim(),n=t.length;return 0===n?null:";"===t.charAt(n-1)?t.substr(0,n-1):t}(l);e.textNormalized!==d&&(e.textNormalized=d,e.textNormalized&&function(e){c.query=e.textNormalized;var t=r.a.get("/exec",c);t.query=e,t.done(u).fail(h)}(e))}return s&&(e.timestamp=(new Date).getTime()),e.callback&&e.callback(),!0}function f(){e&&d(e)}return n.onfocusout=f,a.on("blur",f),t.listManager((function(e){return{id:"_li_query_"+e,name:"query"+e}}),(function(t){e=t,n.value=t.name,t.text?a.setValue(t.text,-1):a.setValue("",-1),""===t.name?s.html("&lt;no name&gt;"):s.html(t.name),n.focus()}),d,(function(){n.value="",a.value="",e=null}))},r.a.fn.seriesForm=function(){var e,t=r()(this),n=t.find("#_vis_frm_ser_name")[0],i=t.find("#_vis_frm_ser_chart_type")[0],o=t.find("#_vis_frm_ser_columns")[0],s=t.find("#_vis_frm_ser_stack")[0],a=t.find("#_vis_frm_ser_color")[0],l=t.find("#_vis_frm_ser_axis")[0];function c(e){var t=!1;return e.name!==n.value&&(e.name=n.value,t=!0),e.chartType!==i.value&&(e.chartType=i.value,t=!0),e.columns!==o.value&&(e.columns=o.value,t=!0),e.stack!==s.value&&(e.stack=s.value,t=!0),e.color!==a.value&&(e.color=a.value,t=!0),e.axis!==l.value&&(e.axis=l.value,t=!0),t&&(e.timestamp=(new Date).getTime()),e.callback&&e.callback(),!0}function u(){e&&c(e)}return n.onfocusout=u,i.onfocusout=u,o.onfocusout=u,s.onfocusout=u,a.onfocusout=u,l.onfocusout=u,t.listManager((function(e){return{id:"_li_series_"+e,name:"series"+e}}),(function(t){e=t,n.value=t.name,i.value=t.chartType?t.chartType:"Line",o.value=t.columns?t.columns:"",s.value=t.stack?t.stack:"",a.value=t.color?t.color:"",l.value=t.axis?t.axis:""}),c,(function(){n.value="",i.value="Line",o.value="",s.value="",a.value="",l.value=""}))},r.a.fn.axisForm=function(){var e,t=r()(this),n=t.find("#_vis_frm_axis_name")[0],i=t.find("#_vis_frm_axis_type")[0],o=t.find("#_vis_frm_axis_value_type")[0],s=t.find("#_vis_frm_axis_column")[0],a=t.find("#_vis_frm_axis_values")[0],l=t.find("#_vis_frm_axis_scale")[0];function c(e){console.log("axis copy to mem");var t=!1;return e.name!==n.value&&(e.name=n.value,t=!0),e.type!==i.value&&(e.type=i.value,t=!0),e.valueType!==o.value&&(e.valueType=o.value,t=!0),e.column!==s.value&&(e.column=s.value,t=!0),e.values!==a.value&&(e.values=a.value,t=!0),e.scale!==l.checked&&(e.scale=l.checked),t&&(e.timestamp=(new Date).getTime()),e.callback&&e.callback(),!0}function u(){e&&c(e)}return n.onfocusout=u,i.onfocusout=u,o.onfocusout=u,s.onfocusout=u,a.onfocusout=u,l.onfocusout=u,t.listManager((function(e){return{id:"_li_axis_"+e,name:"axis"+e,scale:!1}}),(function(t){e=t,console.log("copyToForm"),console.log(t),n.value=t.name,t.type?i.value=t.type:i.value="X-axis",t.valueType?o.value=t.valueType:o.value="Category column",t.column?s.value=t.column:s.value="",t.values?a.value=t.values:a.value="",t.scale?l.checked=!0:l.checked=!1}),c,(function(){n.value="",i.value="X-axis",o.value="Category column",s.value="",a.value="",l.checked=!1}))},history.pushState(null,null,"index.html"),window.addEventListener("popstate",(function(){history.pushState(null,null,"index.html")})),ace.define("ace/mode/sql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],(function(e,t){var n=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,r=function(){i=this.createKeywordMapper({"support.function":"avg|count|first|last|max|min|sum|ucase|lcase|mid|len|round|rank|now|format|coalesce|ifnull|isnull|nvl",keyword:"select|insert|update|delete|from|where|and|or|by|order|limit|as|case|when|else|end|type|left|right|join|on|outer|desc|asc|union|create|table|primary|key|if|foreign|not|references|default|null|inner|cross|natural|database|drop|grant|over|sample|partition|latest|NaN|with|rename|truncate|asof|copy|alter|into|values|index|add|column|then","constant.language":"true|false","storage.type":"int|date|string|symbol|float|double|binary|timestamp|long|long256"},"identifier",!0),this.$rules={start:[{token:"comment",regex:"--.*$"},{token:"comment",start:"/\\*",end:"\\*/"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:i,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]},this.normalizeRules()};n.inherits(r,i),t.SqlHighlightRules=r})),ace.define("ace/mode/questdb",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sql_highlight_rules","ace/range"],(function(e,t){var n=e("../lib/oop"),i=e("./text").Mode,r=e("./sql_highlight_rules").SqlHighlightRules,o=(e("../range").Range,function(){this.HighlightRules=r});n.inherits(o,i),function(){this.lineCommentStart="--",this.$id="ace/mode/questdb"}.call(o.prototype),t.Mode=o})),r()(document).ready((function(){var e;Le=r()({}),r()("#side-menu").metisMenu(),r()("a#nav-console").click(Ie),r()("a#nav-import").click(Pe),r()("a#nav-visualisation").click(De),Le.on("query.build.execute",Ie),E(Le),e=Le,N.bind("resize",H),r()("#dragTarget").dropbox(e),r()("#import-file-list").importManager(e),r()("#import-detail").importEditor(e),r()("#import-splitter").splitter(e,"import",470,300),e.on("splitter.import.resize",W),e.on("active.panel",z),function(e){r()(window).bind("resize",de),e.on("active.panel",fe),e.on("splitter.vis.resize",pe),ne=V.a.init(oe[0],q),r()("#vis-splitter").splitter(e,"vis",300,ue);var t=r()("#vis-tab-queries").queryForm(),n=r()("#vis-tab-series").seriesForm(),i=r()("#vis-tab-axis").axisForm();te=new ie(t.getMap(),n.getMap(),i.getMap()),ye(t,i,n),r()("#btnVisFetch").click(ve),r()("#btnVisReload").click((function(){ye(t,i,n)}))}(Le),Ie(),Le.trigger("preferences.load"),r()(window).trigger("resize")}))}]);
\ No newline at end of file
......@@ -17,6 +17,7 @@ module.exports = {
"prettier/babel",
"prettier/standard",
],
globals: { ace: true },
parser: "@typescript-eslint/parser",
parserOptions: {
ecmaFeatures: {},
......@@ -29,6 +30,8 @@ module.exports = {
rules: {
"@typescript-eslint/prefer-interface": "off",
"@typescript-eslint/no-empty-function": "off",
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/no-this-alias": "off",
"quote-props": ["error", "as-needed"],
"object-shorthand": ["error", "always"],
"no-var": ["error"],
......
......@@ -12,7 +12,7 @@
"node": ">=12.16.2"
},
"scripts": {
"ci:lint:ts": "eslint 'src/**/*.ts' --max-warnings=0 --config .eslintrc.js",
"ci:lint": "eslint 'src/js/**/*' --max-warnings=0 --config .eslintrc.js",
"type-check": "tsc --noEmit",
"type-check:watch": "npm run type-check -- --watch",
"build": "cross-env NODE_ENV=production webpack && node utils/deploy.js",
......
......@@ -490,41 +490,32 @@ $.fn.grid = function (msgBus) {
}
}
function viewportScroll(force) {
function viewportScroll(event) {
header.scrollLeft(viewport.scrollLeft)
var scrollTop = viewport.scrollTop
if (scrollTop !== top || force) {
if (scrollTop !== top || event) {
var oldY = y
if (Math.abs(scrollTop - top) > 4 * vp) {
y =
scrollTop === 0
? 0
: Math.min(Math.ceil((scrollTop + vp) * M - vp), yMax - vp)
// if grid content fits in viewport we don't need to adjust activeRow
if (scrollTop >= h - vp) {
// final leap to bottom of grid
// this happens when container div runs out of vertical height
// and we artificially force leap to bottom
y = Math.max(0, yMax - vp)
top = scrollTop
o = y - top
} else if (h - vp > 0) {
// if grid content fits in viewport we don't need to adjust activeRow
if (scrollTop >= h - vp) {
// final leap to bottom of grid
// this happens when container div runs out of vertical height
// and we artificially force leap to bottom
y = Math.max(0, yMax - vp)
top = scrollTop
o = y - top
activeRowDown(r - activeRow)
activeRowDown(r - activeRow)
} else {
if (scrollTop === 0 && top > 0) {
// this happens when grid is coming slowly back up after being scrolled down harshly
// because 'y' is much greater than top, we have to jump to top artificially.
y = 0
o = 0
activeRowUp(activeRow)
} else {
if (scrollTop === 0 && top > 0) {
// this happens when grid is coming slowly back up after being scrolled down harshly
// because 'y' is much greater than top, we have to jump to top artificially.
y = 0
o = 0
activeRowUp(activeRow)
} else {
y += scrollTop - top
}
top = scrollTop
y += scrollTop - top
}
top = scrollTop
}
renderViewport(y - oldY)
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册