diff --git a/web/ui/dist/build.js b/web/ui/dist/build.js index 22b14e7..499e468 100644 --- a/web/ui/dist/build.js +++ b/web/ui/dist/build.js @@ -34,7 +34,7 @@ E=!1,v.cache.add(i,k.html()),v.activate.all(f),w.onFirstLoad.call(k[0],f,h,A),w. g.verbose.apply(console,arguments)))},error:function(){h.silent||(g.error=Function.prototype.bind.call(console.error,console,h.name+":"),g.error.apply(console,arguments))},performance:{log:function(e){var t,i,o;h.performance&&(t=(new Date).getTime(),o=s||t,i=t-o,s=t,l.push({Name:e[0],Arguments:[].slice.call(e,1)||"","Execution Time":i})),clearTimeout(g.performance.timer),g.performance.timer=setTimeout(g.performance.display,500)},display:function(){var t=h.name+":",i=0;s=!1,clearTimeout(g.performance.timer),e.each(l,function(e,t){i+=t["Execution Time"]}),t+=" "+i+"ms",a&&(t+=" '"+a+"'"),(console.group!==o||console.table!==o)&&l.length>0&&(console.groupCollapsed(t),console.table?console.table(l):e.each(l,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),l=[]}},invoke:function(t,i,r){var a,s,l,c=D;return i=i||d,r=S||r,"string"==typeof t&&c!==o&&(t=t.split(/[\. ]/),a=t.length-1,e.each(t,function(i,n){var r=i!=a?n+t[i+1].charAt(0).toUpperCase()+t[i+1].slice(1):t;if(e.isPlainObject(c[r])&&i!=a)c=c[r];else{if(c[r]!==o)return s=c[r],!1;if(!e.isPlainObject(c[n])||i==a)return c[n]!==o?(s=c[n],!1):(g.error(x.method,t),!1);c=c[n]}})),e.isFunction(s)?l=s.apply(r,i):s!==o&&(l=s),e.isArray(n)?n.push(l):n!==o?n=[n,l]:l!==o&&(n=l),s}},u?(D===o&&g.initialize(),g.invoke(c)):(D!==o&&D.invoke("destroy"),g.initialize())}),n!==o?n:this},e.api.settings={name:"API",namespace:"api",debug:!1,verbose:!1,performance:!0,api:{},cache:!0,interruptRequests:!0,on:"auto",stateContext:!1,loadingDuration:0,hideError:"auto",errorDuration:2e3,encodeParameters:!0,action:!1,url:!1,base:"",urlData:{},defaultData:!0,serializeForm:!1,throttle:0,throttleFirstRequest:!0,method:"get",data:{},dataType:"json",mockResponse:!1,mockResponseAsync:!1,response:!1,responseAsync:!1,beforeSend:function(e){return e},beforeXHR:function(e){},onRequest:function(e,t){},onResponse:!1,onSuccess:function(e,t){},onComplete:function(e,t){},onFailure:function(e,t){},onError:function(e,t){},onAbort:function(e,t){},successTest:!1,error:{beforeSend:"The before send function has aborted the request",error:"There was an error with your request",exitConditions:"API Request Aborted. Exit conditions met",JSONParse:"JSON could not be parsed during error handling",legacyParameters:"You are using legacy API success callback names",method:"The method you called is not defined",missingAction:"API action used but no url was defined",missingSerialize:"jquery-serialize-object is required to add form data to an existing data object",missingURL:"No URL specified for api event",noReturnedValue:"The beforeSend callback must return a settings object, beforeSend ignored.",noStorage:"Caching responses locally requires session storage",parseError:"There was an error parsing your request",requiredParameter:"Missing a required URL parameter: ",statusMessage:"Server gave an error: ",timeout:"Your request timed out"},regExp:{required:/\{\$*[A-z0-9]+\}/g,optional:/\{\/\$*[A-z0-9]+\}/g},className:{loading:"loading",error:"error"},selector:{disabled:".disabled",form:"form"},metadata:{action:"action",url:"url"}}}(jQuery,window,document),function(e,t,i,o){"use strict";t="undefined"!=typeof t&&t.Math==Math?t:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),e.fn.state=function(t){var n,r=e(this),a=r.selector||"",s=("ontouchstart"in i.documentElement,(new Date).getTime()),l=[],c=arguments[0],u="string"==typeof c,d=[].slice.call(arguments,1);return r.each(function(){var i,f=e.isPlainObject(t)?e.extend(!0,{},e.fn.state.settings,t):e.extend({},e.fn.state.settings),m=f.error,b=f.metadata,p=f.className,g=f.namespace,h=f.states,v=f.text,A="."+g,w=g+"-module",x=e(this),y=this,k=x.data(w);i={initialize:function(){i.verbose("Initializing module"),f.automatic&&i.add.defaults(),f.context&&""!==a?e(f.context).on(a,"mouseenter"+A,i.change.text).on(a,"mouseleave"+A,i.reset.text).on(a,"click"+A,i.toggle.state):x.on("mouseenter"+A,i.change.text).on("mouseleave"+A,i.reset.text).on("click"+A,i.toggle.state),i.instantiate()},instantiate:function(){i.verbose("Storing instance of module",i),k=i,x.data(w,i)},destroy:function(){i.verbose("Destroying previous module",k),x.off(A).removeData(w)},refresh:function(){i.verbose("Refreshing selector cache"),x=e(y)},add:{defaults:function(){var n=t&&e.isPlainObject(t.states)?t.states:{};e.each(f.defaults,function(t,r){i.is[t]!==o&&i.is[t]()&&(i.verbose("Adding default states",t,y),e.extend(f.states,r,n))})}},is:{active:function(){return x.hasClass(p.active)},loading:function(){return x.hasClass(p.loading)},inactive:function(){return!x.hasClass(p.active)},state:function(e){return p[e]!==o&&x.hasClass(p[e])},enabled:function(){return!x.is(f.filter.active)},disabled:function(){return x.is(f.filter.active)},textEnabled:function(){return!x.is(f.filter.text)},button:function(){return x.is(".button:not(a, .submit)")},input:function(){return x.is("input")},progress:function(){return x.is(".ui.progress")}},allow:function(e){i.debug("Now allowing state",e),h[e]=!0},disallow:function(e){i.debug("No longer allowing",e),h[e]=!1},allows:function(e){return h[e]||!1},enable:function(){x.removeClass(p.disabled)},disable:function(){x.addClass(p.disabled)},setState:function(e){i.allows(e)&&x.addClass(p[e])},removeState:function(e){i.allows(e)&&x.removeClass(p[e])},toggle:{state:function(){var t,n;if(i.allows("active")&&i.is.enabled()){if(i.refresh(),e.fn.api!==o)if(t=x.api("get request"),n=x.api("was cancelled"))i.debug("API Request cancelled by beforesend"),f.activateTest=function(){return!1},f.deactivateTest=function(){return!1};else if(t)return void i.listenTo(t);i.change.state()}}},listenTo:function(t){i.debug("API request detected, waiting for state signal",t),t&&(v.loading&&i.update.text(v.loading),e.when(t).then(function(){"resolved"==t.state()?(i.debug("API request succeeded"),f.activateTest=function(){return!0},f.deactivateTest=function(){return!0}):(i.debug("API request failed"),f.activateTest=function(){return!1},f.deactivateTest=function(){return!1}),i.change.state()}))},change:{state:function(){i.debug("Determining state change direction"),i.is.inactive()?i.activate():i.deactivate(),f.sync&&i.sync(),f.onChange.call(y)},text:function(){i.is.textEnabled()&&(i.is.disabled()?(i.verbose("Changing text to disabled text",v.hover),i.update.text(v.disabled)):i.is.active()?v.hover?(i.verbose("Changing text to hover text",v.hover),i.update.text(v.hover)):v.deactivate&&(i.verbose("Changing text to deactivating text",v.deactivate),i.update.text(v.deactivate)):v.hover?(i.verbose("Changing text to hover text",v.hover),i.update.text(v.hover)):v.activate&&(i.verbose("Changing text to activating text",v.activate),i.update.text(v.activate)))}},activate:function(){f.activateTest.call(y)&&(i.debug("Setting state to active"),x.addClass(p.active),i.update.text(v.active),f.onActivate.call(y))},deactivate:function(){f.deactivateTest.call(y)&&(i.debug("Setting state to inactive"),x.removeClass(p.active),i.update.text(v.inactive),f.onDeactivate.call(y))},sync:function(){i.verbose("Syncing other buttons to current state"),i.is.active()?r.not(x).state("activate"):r.not(x).state("deactivate")},get:{text:function(){return f.selector.text?x.find(f.selector.text).text():x.html()},textFor:function(e){return v[e]||!1}},flash:{text:function(e,t,o){var n=i.get.text();i.debug("Flashing text message",e,t),e=e||f.text.flash,t=t||f.flashDuration,o=o||function(){},i.update.text(e),setTimeout(function(){i.update.text(n),o.call(y)},t)}},reset:{text:function(){var e=v.active||x.data(b.storedText),t=v.inactive||x.data(b.storedText);i.is.textEnabled()&&(i.is.active()&&e?(i.verbose("Resetting active text",e),i.update.text(e)):t&&(i.verbose("Resetting inactive text",e),i.update.text(t)))}},update:{text:function(e){var t=i.get.text();e&&e!==t?(i.debug("Updating text",e),f.selector.text?x.data(b.storedText,e).find(f.selector.text).text(e):x.data(b.storedText,e).html(e)):i.debug("Text is already set, ignoring update",e)}},setting:function(t,n){if(i.debug("Changing setting",t,n),e.isPlainObject(t))e.extend(!0,f,t);else{if(n===o)return f[t];e.isPlainObject(f[t])?e.extend(!0,f[t],n):f[t]=n}},internal:function(t,n){if(e.isPlainObject(t))e.extend(!0,i,t);else{if(n===o)return i[t];i[t]=n}},debug:function(){!f.silent&&f.debug&&(f.performance?i.performance.log(arguments):(i.debug=Function.prototype.bind.call(console.info,console,f.name+":"),i.debug.apply(console,arguments)))},verbose:function(){!f.silent&&f.verbose&&f.debug&&(f.performance?i.performance.log(arguments):(i.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),i.verbose.apply(console,arguments)))},error:function(){f.silent||(i.error=Function.prototype.bind.call(console.error,console,f.name+":"),i.error.apply(console,arguments))},performance:{log:function(e){var t,o,n;f.performance&&(t=(new Date).getTime(),n=s||t,o=t-n,s=t,l.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:y,"Execution Time":o})),clearTimeout(i.performance.timer),i.performance.timer=setTimeout(i.performance.display,500)},display:function(){var t=f.name+":",n=0;s=!1,clearTimeout(i.performance.timer),e.each(l,function(e,t){n+=t["Execution Time"]}),t+=" "+n+"ms",a&&(t+=" '"+a+"'"),(console.group!==o||console.table!==o)&&l.length>0&&(console.groupCollapsed(t),console.table?console.table(l):e.each(l,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),l=[]}},invoke:function(t,r,a){var s,l,c,u=k;return r=r||d,a=y||a,"string"==typeof t&&u!==o&&(t=t.split(/[\. ]/),s=t.length-1,e.each(t,function(n,r){var a=n!=s?r+t[n+1].charAt(0).toUpperCase()+t[n+1].slice(1):t;if(e.isPlainObject(u[a])&&n!=s)u=u[a];else{if(u[a]!==o)return l=u[a],!1;if(!e.isPlainObject(u[r])||n==s)return u[r]!==o?(l=u[r],!1):(i.error(m.method,t),!1);u=u[r]}})),e.isFunction(l)?c=l.apply(a,r):l!==o&&(c=l),e.isArray(n)?n.push(c):n!==o?n=[n,c]:c!==o&&(n=c),l}},u?(k===o&&i.initialize(),i.invoke(c)):(k!==o&&k.invoke("destroy"),i.initialize())}),n!==o?n:this},e.fn.state.settings={name:"State",debug:!1,verbose:!1,namespace:"state",performance:!0,onActivate:function(){},onDeactivate:function(){},onChange:function(){},activateTest:function(){return!0},deactivateTest:function(){return!0},automatic:!0,sync:!1,flashDuration:1e3,filter:{text:".loading, .disabled",active:".disabled"},context:!1,error:{beforeSend:"The before send function has cancelled state change",method:"The method you called is not defined."},metadata:{promise:"promise",storedText:"stored-text"},className:{active:"active",disabled:"disabled",error:"error",loading:"loading",success:"success",warning:"warning"},selector:{text:!1},defaults:{input:{disabled:!0,loading:!0,active:!0},button:{disabled:!0,loading:!0,active:!0},progress:{active:!0,success:!0,warning:!0,error:!0}},states:{active:!0,disabled:!0,error:!0,loading:!0,success:!0,warning:!0},text:{disabled:!1,flash:!1,hover:!1,active:!1,inactive:!1,activate:!1,deactivate:!1}}}(jQuery,window,document),function(e,t,i,o){"use strict";t="undefined"!=typeof t&&t.Math==Math?t:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),e.fn.visibility=function(n){var r,a=e(this),s=a.selector||"",l=(new Date).getTime(),c=[],u=arguments[0],d="string"==typeof u,f=[].slice.call(arguments,1),m=a.length,b=0;return a.each(function(){var a,p,g,h,v=e.isPlainObject(n)?e.extend(!0,{},e.fn.visibility.settings,n):e.extend({},e.fn.visibility.settings),A=v.className,w=v.namespace,x=v.error,y=v.metadata,k="."+w,C="module-"+w,F=e(t),B=e(this),I=e(v.context),S=(B.selector||"",B.data(C)),E=t.requestAnimationFrame||t.mozRequestAnimationFrame||t.webkitRequestAnimationFrame||t.msRequestAnimationFrame||function(e){setTimeout(e,0)},D=this,T=!1;h={initialize:function(){h.debug("Initializing",v),h.setup.cache(),h.should.trackChanges()&&("image"==v.type&&h.setup.image(),"fixed"==v.type&&h.setup.fixed(),v.observeChanges&&h.observeChanges(),h.bind.events()),h.save.position(),h.is.visible()||h.error(x.visible,B),v.initialCheck&&h.checkVisibility(),h.instantiate()},instantiate:function(){h.debug("Storing instance",h),B.data(C,h),S=h},destroy:function(){h.verbose("Destroying previous module"),g&&g.disconnect(),p&&p.disconnect(),F.off("load"+k,h.event.load).off("resize"+k,h.event.resize),I.off("scroll"+k,h.event.scroll).off("scrollchange"+k,h.event.scrollchange),"fixed"==v.type&&(h.resetFixed(),h.remove.placeholder()),B.off(k).removeData(C)},observeChanges:function(){"MutationObserver"in t&&(p=new MutationObserver(h.event.contextChanged),g=new MutationObserver(h.event.changed),p.observe(i,{childList:!0,subtree:!0}),g.observe(D,{childList:!0,subtree:!0}),h.debug("Setting up mutation observer",g))},bind:{events:function(){h.verbose("Binding visibility events to scroll and resize"),v.refreshOnLoad&&F.on("load"+k,h.event.load),F.on("resize"+k,h.event.resize),I.off("scroll"+k).on("scroll"+k,h.event.scroll).on("scrollchange"+k,h.event.scrollchange)}},event:{changed:function(e){h.verbose("DOM tree modified, updating visibility calculations"),h.timer=setTimeout(function(){h.verbose("DOM tree modified, updating sticky menu"),h.refresh()},100)},contextChanged:function(t){[].forEach.call(t,function(t){t.removedNodes&&[].forEach.call(t.removedNodes,function(t){(t==D||e(t).find(D).length>0)&&(h.debug("Element removed from DOM, tearing down events"),h.destroy())})})},resize:function(){h.debug("Window resized"),v.refreshOnResize&&E(h.refresh)},load:function(){h.debug("Page finished loading"),E(h.refresh)},scroll:function(){v.throttle?(clearTimeout(h.timer),h.timer=setTimeout(function(){I.triggerHandler("scrollchange"+k,[I.scrollTop()])},v.throttle)):E(function(){I.triggerHandler("scrollchange"+k,[I.scrollTop()])})},scrollchange:function(e,t){h.checkVisibility(t)}},precache:function(t,o){t instanceof Array||(t=[t]);for(var n=t.length,r=0,a=[],s=i.createElement("img"),l=function(){r++,r>=t.length&&e.isFunction(o)&&o()};n--;)s=i.createElement("img"),s.onload=l,s.onerror=l,s.src=t[n],a.push(s)},enableCallbacks:function(){h.debug("Allowing callbacks to occur"),T=!1},disableCallbacks:function(){h.debug("Disabling all callbacks temporarily"),T=!0},should:{trackChanges:function(){return d?(h.debug("One time query, no need to bind events"),!1):(h.debug("Callbacks being attached"),!0)}},setup:{cache:function(){h.cache={occurred:{},screen:{},element:{}}},image:function(){var e=B.data(y.src);e&&(h.verbose("Lazy loading image",e),v.once=!0,v.observeChanges=!1,v.onOnScreen=function(){h.debug("Image on screen",D),h.precache(e,function(){h.set.image(e,function(){b++,b==m&&v.onAllLoaded.call(this),v.onLoad.call(this)})})})},fixed:function(){h.debug("Setting up fixed"),v.once=!1,v.observeChanges=!1,v.initialCheck=!0,v.refreshOnLoad=!0,n.transition||(v.transition=!1),h.create.placeholder(),h.debug("Added placeholder",a),v.onTopPassed=function(){h.debug("Element passed, adding fixed position",B),h.show.placeholder(),h.set.fixed(),v.transition&&e.fn.transition!==o&&B.transition(v.transition,v.duration)},v.onTopPassedReverse=function(){h.debug("Element returned to position, removing fixed",B),h.hide.placeholder(),h.remove.fixed()}}},create:{placeholder:function(){h.verbose("Creating fixed position placeholder"),a=B.clone(!1).css("display","none").addClass(A.placeholder).insertAfter(B)}},show:{placeholder:function(){h.verbose("Showing placeholder"),a.css("display","block").css("visibility","hidden")}},hide:{placeholder:function(){h.verbose("Hiding placeholder"),a.css("display","none").css("visibility","")}},set:{fixed:function(){h.verbose("Setting element to fixed position"),B.addClass(A.fixed).css({position:"fixed",top:v.offset+"px",left:"auto",zIndex:v.zIndex}),v.onFixed.call(D)},image:function(t,i){B.attr("src",t),v.transition?e.fn.transition!==o?B.transition(v.transition,v.duration,i):B.fadeIn(v.duration,i):B.show()}},is:{onScreen:function(){var e=h.get.elementCalculations();return e.onScreen},offScreen:function(){var e=h.get.elementCalculations();return e.offScreen},visible:function(){return!(!h.cache||!h.cache.element||0===h.cache.element.width&&0===h.cache.element.offset.top)}},refresh:function(){h.debug("Refreshing constants (width/height)"),"fixed"==v.type&&h.resetFixed(),h.reset(),h.save.position(),v.checkOnRefresh&&h.checkVisibility(),v.onRefresh.call(D)},resetFixed:function(){h.remove.fixed(),h.remove.occurred()},reset:function(){h.verbose("Resetting all cached values"),e.isPlainObject(h.cache)&&(h.cache.screen={},h.cache.element={})},checkVisibility:function(e){h.verbose("Checking visibility of element",h.cache.element),!T&&h.is.visible()&&(h.save.scroll(e),h.save.calculations(),h.passed(),h.passingReverse(),h.topVisibleReverse(),h.bottomVisibleReverse(),h.topPassedReverse(),h.bottomPassedReverse(),h.onScreen(),h.offScreen(),h.passing(),h.topVisible(),h.bottomVisible(),h.topPassed(),h.bottomPassed(),v.onUpdate&&v.onUpdate.call(D,h.get.elementCalculations()))},passed:function(t,i){var n=h.get.elementCalculations();if(t&&i)v.onPassed[t]=i;else{if(t!==o)return h.get.pixelsPassed(t)>n.pixelsPassed;n.passing&&e.each(v.onPassed,function(e,t){n.bottomVisible||n.pixelsPassed>h.get.pixelsPassed(e)?h.execute(t,e):v.once||h.remove.occurred(t)})}},onScreen:function(e){var t=h.get.elementCalculations(),i=e||v.onOnScreen,n="onScreen";if(e&&(h.debug("Adding callback for onScreen",e),v.onOnScreen=e),t.onScreen?h.execute(i,n):v.once||h.remove.occurred(n),e!==o)return t.onOnScreen},offScreen:function(e){var t=h.get.elementCalculations(),i=e||v.onOffScreen,n="offScreen";if(e&&(h.debug("Adding callback for offScreen",e),v.onOffScreen=e),t.offScreen?h.execute(i,n):v.once||h.remove.occurred(n),e!==o)return t.onOffScreen},passing:function(e){var t=h.get.elementCalculations(),i=e||v.onPassing,n="passing";if(e&&(h.debug("Adding callback for passing",e),v.onPassing=e),t.passing?h.execute(i,n):v.once||h.remove.occurred(n),e!==o)return t.passing},topVisible:function(e){var t=h.get.elementCalculations(),i=e||v.onTopVisible,n="topVisible";if(e&&(h.debug("Adding callback for top visible",e),v.onTopVisible=e),t.topVisible?h.execute(i,n):v.once||h.remove.occurred(n),e===o)return t.topVisible},bottomVisible:function(e){var t=h.get.elementCalculations(),i=e||v.onBottomVisible,n="bottomVisible";if(e&&(h.debug("Adding callback for bottom visible",e),v.onBottomVisible=e),t.bottomVisible?h.execute(i,n):v.once||h.remove.occurred(n),e===o)return t.bottomVisible},topPassed:function(e){var t=h.get.elementCalculations(),i=e||v.onTopPassed,n="topPassed";if(e&&(h.debug("Adding callback for top passed",e),v.onTopPassed=e),t.topPassed?h.execute(i,n):v.once||h.remove.occurred(n),e===o)return t.topPassed},bottomPassed:function(e){var t=h.get.elementCalculations(),i=e||v.onBottomPassed,n="bottomPassed";if(e&&(h.debug("Adding callback for bottom passed",e),v.onBottomPassed=e),t.bottomPassed?h.execute(i,n):v.once||h.remove.occurred(n),e===o)return t.bottomPassed},passingReverse:function(e){var t=h.get.elementCalculations(),i=e||v.onPassingReverse,n="passingReverse";if(e&&(h.debug("Adding callback for passing reverse",e),v.onPassingReverse=e),t.passing?v.once||h.remove.occurred(n):h.get.occurred("passing")&&h.execute(i,n),e!==o)return!t.passing},topVisibleReverse:function(e){var t=h.get.elementCalculations(),i=e||v.onTopVisibleReverse,n="topVisibleReverse";if(e&&(h.debug("Adding callback for top visible reverse",e),v.onTopVisibleReverse=e),t.topVisible?v.once||h.remove.occurred(n):h.get.occurred("topVisible")&&h.execute(i,n),e===o)return!t.topVisible},bottomVisibleReverse:function(e){var t=h.get.elementCalculations(),i=e||v.onBottomVisibleReverse,n="bottomVisibleReverse";if(e&&(h.debug("Adding callback for bottom visible reverse",e),v.onBottomVisibleReverse=e),t.bottomVisible?v.once||h.remove.occurred(n):h.get.occurred("bottomVisible")&&h.execute(i,n),e===o)return!t.bottomVisible},topPassedReverse:function(e){var t=h.get.elementCalculations(),i=e||v.onTopPassedReverse,n="topPassedReverse";if(e&&(h.debug("Adding callback for top passed reverse",e),v.onTopPassedReverse=e),t.topPassed?v.once||h.remove.occurred(n):h.get.occurred("topPassed")&&h.execute(i,n),e===o)return!t.onTopPassed},bottomPassedReverse:function(e){var t=h.get.elementCalculations(),i=e||v.onBottomPassedReverse,n="bottomPassedReverse";if(e&&(h.debug("Adding callback for bottom passed reverse",e),v.onBottomPassedReverse=e),t.bottomPassed?v.once||h.remove.occurred(n):h.get.occurred("bottomPassed")&&h.execute(i,n),e===o)return!t.bottomPassed},execute:function(e,t){var i=h.get.elementCalculations(),o=h.get.screenCalculations();e=e||!1,e&&(v.continuous?(h.debug("Callback being called continuously",t,i),e.call(D,i,o)):h.get.occurred(t)||(h.debug("Conditions met",t,i),e.call(D,i,o))),h.save.occurred(t)},remove:{fixed:function(){h.debug("Removing fixed position"),B.removeClass(A.fixed).css({position:"",top:"",left:"",zIndex:""}),v.onUnfixed.call(D)},placeholder:function(){h.debug("Removing placeholder content"),a&&a.remove()},occurred:function(e){if(e){var t=h.cache.occurred;t[e]!==o&&t[e]===!0&&(h.debug("Callback can now be called again",e),h.cache.occurred[e]=!1)}else h.cache.occurred={}}},save:{calculations:function(){h.verbose("Saving all calculations necessary to determine positioning"),h.save.direction(),h.save.screenCalculations(),h.save.elementCalculations()},occurred:function(e){e&&(h.cache.occurred[e]!==o&&h.cache.occurred[e]===!0||(h.verbose("Saving callback occurred",e),h.cache.occurred[e]=!0))},scroll:function(e){e=e+v.offset||I.scrollTop()+v.offset,h.cache.scroll=e},direction:function(){var e,t=h.get.scroll(),i=h.get.lastScroll();return e=t>i&&i?"down":t=t.top,t.topPassed=e.top>=t.top,t.bottomVisible=e.bottom>=t.bottom,t.bottomPassed=e.top>=t.bottom,t.pixelsPassed=0,t.percentagePassed=0,t.onScreen=t.topVisible&&!t.bottomPassed,t.passing=t.topPassed&&!t.bottomPassed,t.offScreen=!t.onScreen,t.passing&&(t.pixelsPassed=e.top-t.top,t.percentagePassed=(e.top-t.top)/t.height),h.cache.element=t,h.verbose("Updated element calculations",t),t},screenCalculations:function(){var e=h.get.scroll();return h.save.direction(),h.cache.screen.top=e,h.cache.screen.bottom=e+h.cache.screen.height,h.cache.screen},screenSize:function(){h.verbose("Saving window position"),h.cache.screen={height:I.height()}},position:function(){h.save.screenSize(),h.save.elementPosition()}},get:{pixelsPassed:function(e){var t=h.get.elementCalculations();return e.search("%")>-1?t.height*(parseInt(e,10)/100):parseInt(e,10)},occurred:function(e){return h.cache.occurred!==o&&(h.cache.occurred[e]||!1)},direction:function(){return h.cache.direction===o&&h.save.direction(),h.cache.direction},elementPosition:function(){return h.cache.element===o&&h.save.elementPosition(),h.cache.element},elementCalculations:function(){return h.cache.element===o&&h.save.elementCalculations(),h.cache.element},screenCalculations:function(){return h.cache.screen===o&&h.save.screenCalculations(),h.cache.screen},screenSize:function(){return h.cache.screen===o&&h.save.screenSize(),h.cache.screen},scroll:function(){return h.cache.scroll===o&&h.save.scroll(),h.cache.scroll},lastScroll:function(){return h.cache.screen===o?(h.debug("First scroll event, no last scroll could be found"),!1):h.cache.screen.top}},setting:function(t,i){if(e.isPlainObject(t))e.extend(!0,v,t);else{if(i===o)return v[t];v[t]=i}},internal:function(t,i){if(e.isPlainObject(t))e.extend(!0,h,t);else{if(i===o)return h[t];h[t]=i}},debug:function(){!v.silent&&v.debug&&(v.performance?h.performance.log(arguments):(h.debug=Function.prototype.bind.call(console.info,console,v.name+":"),h.debug.apply(console,arguments)))},verbose:function(){!v.silent&&v.verbose&&v.debug&&(v.performance?h.performance.log(arguments):(h.verbose=Function.prototype.bind.call(console.info,console,v.name+":"),h.verbose.apply(console,arguments)))},error:function(){v.silent||(h.error=Function.prototype.bind.call(console.error,console,v.name+":"),h.error.apply(console,arguments))},performance:{log:function(e){var t,i,o;v.performance&&(t=(new Date).getTime(),o=l||t,i=t-o,l=t,c.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:D,"Execution Time":i})),clearTimeout(h.performance.timer),h.performance.timer=setTimeout(h.performance.display,500)},display:function(){var t=v.name+":",i=0;l=!1,clearTimeout(h.performance.timer),e.each(c,function(e,t){i+=t["Execution Time"]}),t+=" "+i+"ms",s&&(t+=" '"+s+"'"),(console.group!==o||console.table!==o)&&c.length>0&&(console.groupCollapsed(t),console.table?console.table(c):e.each(c,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),c=[]}},invoke:function(t,i,n){var a,s,l,c=S;return i=i||f,n=D||n,"string"==typeof t&&c!==o&&(t=t.split(/[\. ]/),a=t.length-1,e.each(t,function(i,n){var r=i!=a?n+t[i+1].charAt(0).toUpperCase()+t[i+1].slice(1):t;if(e.isPlainObject(c[r])&&i!=a)c=c[r];else{if(c[r]!==o)return s=c[r],!1;if(!e.isPlainObject(c[n])||i==a)return c[n]!==o?(s=c[n],!1):(h.error(x.method,t),!1);c=c[n]}})),e.isFunction(s)?l=s.apply(n,i):s!==o&&(l=s),e.isArray(r)?r.push(l):r!==o?r=[r,l]:l!==o&&(r=l),s}},d?(S===o&&h.initialize(),S.save.scroll(),S.save.calculations(),h.invoke(u)):(S!==o&&S.invoke("destroy"),h.initialize())}),r!==o?r:this},e.fn.visibility.settings={name:"Visibility",namespace:"visibility",debug:!1,verbose:!1,performance:!0,observeChanges:!0,initialCheck:!0,refreshOnLoad:!0,refreshOnResize:!0,checkOnRefresh:!0,once:!0,continuous:!1,offset:0,includeMargin:!1,context:t,throttle:!1,type:!1,zIndex:"10",transition:"fade in",duration:1e3,onPassed:{},onOnScreen:!1,onOffScreen:!1,onPassing:!1,onTopVisible:!1,onBottomVisible:!1,onTopPassed:!1,onBottomPassed:!1,onPassingReverse:!1,onTopVisibleReverse:!1,onBottomVisibleReverse:!1,onTopPassedReverse:!1,onBottomPassedReverse:!1,onLoad:function(){},onAllLoaded:function(){},onFixed:function(){},onUnfixed:function(){},onUpdate:!1,onRefresh:function(){},metadata:{src:"src"},className:{fixed:"fixed",placeholder:"placeholder"},error:{method:"The method you called is not defined.",visible:"Element is hidden, you must call refresh after element becomes visible"}}}(jQuery,window,document)},function(e,t,i){var o=i(34);"string"==typeof o&&(o=[[e.i,o,""]]);i(43)(o,{});o.locals&&(e.exports=o.locals)},function(e,t,i){var o,n;o=i(21);var r=i(47);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;i(58),o=i(22);var r=i(46);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;i(57),o=i(23);var r=i(45);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;o=i(24);var r=i(55);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;o=i(26);var r=i(52);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;o=i(27);var r=i(48);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;o=i(28);var r=i(51);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;i(59),o=i(29);var r=i(56);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){var o,n;o=i(30);var r=i(53);n=o=o||{},"object"!=typeof o.default&&"function"!=typeof o.default||(n=o=o.default),"function"==typeof n&&(n=n.options),n.render=r.render,n.staticRenderFns=r.staticRenderFns,e.exports=o},function(e,t,i){"use strict";function o(e,t){e||"undefined"!=typeof console&&console.warn("[vue-router] "+t)}function n(e,t){switch(typeof t){case"undefined":return;case"object":return t;case"function":return t(e);case"boolean":return t?e.params:void 0;default:o(!1,'props in "'+e.path+'" is a '+typeof t+", expecting an object, function or boolean.")}}function r(e,t){if(void 0===t&&(t={}),e){var i;try{i=a(e)}catch(e){i={}}for(var o in t)i[o]=t[o];return i}return t}function a(e){var t={};return(e=e.trim().replace(/^(\?|#|&)/,""))?(e.split("&").forEach(function(e){var i=e.replace(/\+/g," ").split("="),o=Me(i.shift()),n=i.length>0?Me(i.join("=")):null;void 0===t[o]?t[o]=n:Array.isArray(t[o])?t[o].push(n):t[o]=[t[o],n]}),t):t}function s(e){var t=e?Object.keys(e).map(function(t){var i=e[t];if(void 0===i)return"";if(null===i)return Te(t);if(Array.isArray(i)){var o=[];return i.slice().forEach(function(e){void 0!==e&&(null===e?o.push(Te(t)):o.push(Te(t)+"="+Te(e)))}),o.join("&")}return Te(t)+"="+Te(i)}).filter(function(e){return e.length>0}).join("&"):null;return t?"?"+t:""}function l(e,t,i){var o={name:t.name||e&&e.name,meta:e&&e.meta||{},path:t.path||"/",hash:t.hash||"",query:t.query||{},params:t.params||{},fullPath:u(t),matched:e?c(e):[]};return i&&(o.redirectedFrom=u(i)),Object.freeze(o)}function c(e){for(var t=[];e;)t.unshift(e),e=e.parent;return t}function u(e){var t=e.path,i=e.query;void 0===i&&(i={});var o=e.hash;return void 0===o&&(o=""),(t||"/")+s(i)+o}function d(e,t){return t===je?e===t:!!t&&(e.path&&t.path?e.path.replace(ze,"")===t.path.replace(ze,"")&&e.hash===t.hash&&f(e.query,t.query):!(!e.name||!t.name)&&(e.name===t.name&&e.hash===t.hash&&f(e.query,t.query)&&f(e.params,t.params)))}function f(e,t){void 0===e&&(e={}),void 0===t&&(t={});var i=Object.keys(e),o=Object.keys(t);return i.length===o.length&&i.every(function(i){return String(e[i])===String(t[i])})}function m(e,t){return 0===e.path.replace(ze,"/").indexOf(t.path.replace(ze,"/"))&&(!t.hash||e.hash===t.hash)&&b(e.query,t.query)}function b(e,t){for(var i in t)if(!(i in e))return!1;return!0}function p(e){if(!(e.metaKey||e.ctrlKey||e.shiftKey||e.defaultPrevented||void 0!==e.button&&0!==e.button)){if(e.target&&e.target.getAttribute){var t=e.target.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function g(e){if(e)for(var t,i=0;i=0&&(t=e.slice(o),e=e.slice(0,o));var n=e.indexOf("?");return n>=0&&(i=e.slice(n+1),e=e.slice(0,n)),{path:e,query:i,hash:t}}function w(e){return e.replace(/\/\//g,"/")}function x(e,t,i){var o=t||Object.create(null),n=i||Object.create(null);return e.forEach(function(e){y(o,n,e)}),{pathMap:o,nameMap:n}}function y(e,t,i,o,n){var r=i.path,a=i.name,s={path:k(r,o),components:i.components||{default:i.component},instances:{},name:a,parent:o,matchAs:n,redirect:i.redirect,beforeEnter:i.beforeEnter,meta:i.meta||{},props:null==i.props?{}:i.components?i.props:{default:i.props}};if(i.children&&i.children.forEach(function(i){var o=n?w(n+"/"+i.path):void 0;y(e,t,i,s,o)}),void 0!==i.alias)if(Array.isArray(i.alias))i.alias.forEach(function(n){var r={path:n,children:i.children};y(e,t,r,o,s.path)});else{var l={path:i.alias,children:i.children};y(e,t,l,o,s.path)}e[s.path]||(e[s.path]=s),a&&(t[a]||(t[a]=s))}function k(e,t){return e=e.replace(/\/$/,""),"/"===e[0]?e:null==t?e:w(t.path+"/"+e)}function C(e,t){for(var i,o=[],n=0,r=0,a="",s=t&&t.delimiter||"/";null!=(i=We.exec(e));){var l=i[0],c=i[1],u=i.index;if(a+=e.slice(r,u),r=u+l.length,c)a+=c[1];else{var d=e[r],f=i[2],m=i[3],b=i[4],p=i[5],g=i[6],h=i[7];a&&(o.push(a),a="");var v=null!=f&&null!=d&&d!==f,A="+"===g||"*"===g,w="?"===g||"*"===g,x=i[2]||s,y=b||p;o.push({name:m||n++,prefix:f||"",delimiter:x,optional:w,repeat:A,partial:v,asterisk:!!h,pattern:y?D(y):h?".*":"[^"+E(x)+"]+?"})}}return r-1&&(o.params[l]=t.params[l]);if(r)return o.path=_(r.path,o.params,'named route "'+n+'"'),a(r,o,i)}else if(o.path){o.params={};for(var d in c)if(H(d,o.params,o.path))return a(c[d],o,i)}return a(null,o)}function n(e,t){var n=e.redirect,r="function"==typeof n?n(l(e,t)):n;if("string"==typeof r&&(r={path:r}),!r||"object"!=typeof r)return a(null,t);var s=r,c=s.name,d=s.path,f=t.query,m=t.hash,b=t.params;if(f=s.hasOwnProperty("query")?s.query:f,m=s.hasOwnProperty("hash")?s.hash:m,b=s.hasOwnProperty("params")?s.params:b,c){u[c];return i({_normalized:!0,name:c,query:f,hash:m,params:b},void 0,t)}if(d){var p=U(d,e),g=_(p,b,'redirect route with path "'+p+'"');return i({_normalized:!0,path:g,query:f,hash:m},void 0,t)}return o(!1,"invalid redirect option: "+JSON.stringify(r)),a(null,t)}function r(e,t,o){var n=_(o,t.params,'aliased route with path "'+o+'"'),r=i({_normalized:!0,path:n});if(r){var s=r.matched,l=s[s.length-1];return t.params=r.params,a(l,t)}return a(null,t)}function a(e,t,i){return e&&e.redirect?n(e,i||t):e&&e.matchAs?r(e,t,e.matchAs):l(e,t,i)}var s=x(e),c=s.pathMap,u=s.nameMap;return{match:i,addRoutes:t}}function H(e,t,i){var o=P(e),n=o.regexp,r=o.keys,a=i.match(n);if(!a)return!1;if(!t)return!0;for(var s=1,l=a.length;s=e.length?i():e[n]?t(e[n],function(){o(n+1)}):o(n+1)};o(0)}function re(e){if(!e)if(Pe){var t=document.querySelector("base");e=t?t.getAttribute("href"):"/"}else e="/";return"/"!==e.charAt(0)&&(e="/"+e),e.replace(/\/$/,"")}function ae(e,t){var i,o=Math.max(e.length,t.length);for(i=0;i=0?t:0)+"#"+e)}function Fe(e,t,i){var o="hash"===i?"#"+t:t;return e?w(e+"/"+o):o}var Be,Ie={name:"router-view",functional:!0,props:{name:{type:String,default:"default"}},render:function(e,t){var i=t.props,o=t.children,r=t.parent,a=t.data;a.routerView=!0;for(var s=i.name,l=r.$route,c=r._routerViewCache||(r._routerViewCache={}),u=0,d=!1;r;)r.$vnode&&r.$vnode.data.routerView&&u++,r._inactive&&(d=!0),r=r.$parent;if(a.routerViewDepth=u,d)return e(c[s],a,o);var f=l.matched[u];if(!f)return c[s]=null,e();var m=c[s]=f.components[s],b=a.hook||(a.hook={});return b.init=function(e){f.instances[s]=e.child},b.prepatch=function(e,t){f.instances[s]=t.child},b.destroy=function(e){f.instances[s]===e.child&&(f.instances[s]=void 0)},a.props=n(l,f.props&&f.props[s]),e(m,a,o)}},Se=/[!'()*]/g,Ee=function(e){return"%"+e.charCodeAt(0).toString(16)},De=/%2C/g,Te=function(e){return encodeURIComponent(e).replace(Se,Ee).replace(De,",")},Me=decodeURIComponent,ze=/\/?$/,je=l(null,{path:"/"}),Le=[String,Object],Re=[String,Array],Oe={name:"router-link",props:{to:{type:Le,required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,event:{type:Re,default:"click"}},render:function(e){var t=this,i=this.$router,o=this.$route,n=i.resolve(this.to,o,this.append),r=n.location,a=n.route,s=n.href,c={},u=this.activeClass||i.options.linkActiveClass||"router-link-active",f=r.path?l(null,r):a;c[u]=this.exact?d(o,f):m(o,f);var b=function(e){p(e)&&(t.replace?i.replace(r):i.push(r))},h={click:p};Array.isArray(this.event)?this.event.forEach(function(e){h[e]=b}):h[this.event]=b;var v={class:c};if("a"===this.tag)v.on=h,v.attrs={href:s};else{var A=g(this.$slots.default);if(A){A.isStatic=!1;var w=Be.util.extend,x=A.data=w({},A.data);x.on=h;var y=A.data.attrs=w({},A.data.attrs);y.href=s}else v.on=h}return e(this.tag,v,this.$slots.default)}},Pe="undefined"!=typeof window,_e=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)},Ye=_e,Ne=O,Qe=C,He=F,Ue=S,Ge=R,We=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");Ne.parse=Qe,Ne.compile=He,Ne.tokensToFunction=Ue,Ne.tokensToRegExp=Ge;var Ve=Object.create(null),qe=Object.create(null),Je=Object.create(null),Xe=Pe&&function(){var e=window.navigator.userAgent;return(e.indexOf("Android 2.")===-1&&e.indexOf("Android 4.0")===-1||e.indexOf("Mobile Safari")===-1||e.indexOf("Chrome")!==-1||e.indexOf("Windows Phone")!==-1)&&(window.history&&"pushState"in window.history)}(),Ze=Pe&&window.performance&&window.performance.now?window.performance:Date,$e=K(),Ke=function(e,t){this.router=e,this.base=re(t),this.current=je,this.pending=null,this.ready=!1,this.readyCbs=[]};Ke.prototype.listen=function(e){this.cb=e},Ke.prototype.onReady=function(e){this.ready?e():this.readyCbs.push(e)},Ke.prototype.transitionTo=function(e,t,i){var o=this,n=this.router.match(e,this.current);this.confirmTransition(n,function(){o.updateRoute(n),t&&t(n),o.ensureURL(),o.ready||(o.ready=!0,o.readyCbs.forEach(function(e){e(n)}))},i)},Ke.prototype.confirmTransition=function(e,t,i){var o=this,n=this.current,r=function(){i&&i()};if(d(e,n)&&e.matched.length===n.matched.length)return this.ensureURL(),r();var a=ae(this.current.matched,e.matched),s=a.updated,l=a.deactivated,c=a.activated,u=[].concat(ce(l),this.router.beforeHooks,ue(s),c.map(function(e){return e.beforeEnter}),pe(c));this.pending=e;var f=function(t,i){return o.pending!==e?r():void t(e,n,function(e){e===!1?(o.ensureURL(!0),r()):"string"==typeof e||"object"==typeof e?("object"==typeof e&&e.replace?o.replace(e):o.push(e),r()):i(e)})};ne(u,f,function(){var i=[],n=function(){return o.current===e},a=fe(c,i,n);ne(a,f,function(){return o.pending!==e?r():(o.pending=null,t(e),void(o.router.app&&o.router.app.$nextTick(function(){i.forEach(function(e){return e()})})))})})},Ke.prototype.updateRoute=function(e){var t=this.current;this.current=e,this.cb&&this.cb(e),this.router.afterHooks.forEach(function(i){i&&i(e,t)})};var et=function(e){function t(t,i){var o=this;e.call(this,t,i);var n=t.options.scrollBehavior;n&&G(),window.addEventListener("popstate",function(e){o.transitionTo(Ae(o.base),function(e){n&&W(t,e,o.current,!0)})})}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,i){var o=this;this.transitionTo(e,function(e){ie(w(o.base+e.fullPath)),W(o.router,e,o.current,!1),t&&t(e)},i)},t.prototype.replace=function(e,t,i){var o=this;this.transitionTo(e,function(e){oe(w(o.base+e.fullPath)),W(o.router,e,o.current,!1),t&&t(e)},i)},t.prototype.ensureURL=function(e){if(Ae(this.base)!==this.current.fullPath){var t=w(this.base+this.current.fullPath);e?ie(t):oe(t)}},t.prototype.getCurrentLocation=function(){return Ae(this.base)},t}(Ke),tt=function(e){function t(t,i,o){e.call(this,t,i),o&&we(this.base)||xe()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this;window.addEventListener("hashchange",function(){xe()&&e.transitionTo(ye(),function(e){Ce(e.fullPath)})})},t.prototype.push=function(e,t,i){this.transitionTo(e,function(e){ke(e.fullPath),t&&t(e)},i)},t.prototype.replace=function(e,t,i){this.transitionTo(e,function(e){Ce(e.fullPath),t&&t(e)},i)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;ye()!==t&&(e?ke(t):Ce(t))},t.prototype.getCurrentLocation=function(){return ye()},t}(Ke),it=function(e){function t(t,i){e.call(this,t,i),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,i){var o=this;this.transitionTo(e,function(e){o.stack=o.stack.slice(0,o.index+1).concat(e),o.index++,t&&t(e)},i)},t.prototype.replace=function(e,t,i){var o=this;this.transitionTo(e,function(e){o.stack=o.stack.slice(0,o.index).concat(e),t&&t(e)},i)},t.prototype.go=function(e){var t=this,i=this.index+e;if(!(i<0||i>=this.stack.length)){var o=this.stack[i];this.confirmTransition(o,function(){t.index=i,t.updateRoute(o)})}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(Ke),ot=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.afterHooks=[],this.matcher=Q(e.routes||[]);var t=e.mode||"hash";switch(this.fallback="history"===t&&!Xe,this.fallback&&(t="hash"),Pe||(t="abstract"),this.mode=t,t){case"history":this.history=new et(this,e.base);break;case"hash":this.history=new tt(this,e.base,this.fallback);break;case"abstract":this.history=new it(this,e.base)}},nt={currentRoute:{}};ot.prototype.match=function(e,t,i){return this.matcher.match(e,t,i)},nt.currentRoute.get=function(){return this.history&&this.history.current},ot.prototype.init=function(e){var t=this;if(this.apps.push(e),!this.app){this.app=e;var i=this.history;if(i instanceof et)i.transitionTo(i.getCurrentLocation());else if(i instanceof tt){var o=function(){i.setupListeners()};i.transitionTo(i.getCurrentLocation(),o,o)}i.listen(function(e){t.apps.forEach(function(t){t._route=e})})}},ot.prototype.beforeEach=function(e){this.beforeHooks.push(e)},ot.prototype.afterEach=function(e){this.afterHooks.push(e)},ot.prototype.onReady=function(e){this.history.onReady(e)},ot.prototype.push=function(e,t,i){this.history.push(e,t,i)},ot.prototype.replace=function(e,t,i){this.history.replace(e,t,i)},ot.prototype.go=function(e){this.history.go(e)},ot.prototype.back=function(){this.go(-1)},ot.prototype.forward=function(){this.go(1)},ot.prototype.getMatchedComponents=function(e){var t=e?this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map(function(e){return Object.keys(e.components).map(function(t){return e.components[t]})})):[]},ot.prototype.resolve=function(e,t,i){var o=Y(e,t||this.history.current,i),n=this.match(o,t),r=n.redirectedFrom||n.fullPath,a=this.history.base,s=Fe(a,r,this.mode);return{location:o,route:n,href:s,normalizedTo:o,resolved:n}},ot.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==je&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(ot.prototype,nt),ot.install=h,ot.version="2.2.1",Pe&&window.Vue&&window.Vue.use(ot),e.exports=ot},function(e,t,i){"use strict";(function(t){function i(e){return null==e?"":"object"==typeof e?JSON.stringify(e,null,2):String(e)}function o(e){var t=parseFloat(e);return isNaN(t)?e:t}function n(e,t){for(var i=Object.create(null),o=e.split(","),n=0;n-1)return e.splice(i,1)}}function a(e,t){return sn.call(e,t)}function s(e){return"string"==typeof e||"number"==typeof e}function l(e){var t=Object.create(null);return function(i){var o=t[i];return o||(t[i]=e(i))}}function c(e,t){function i(i){var o=arguments.length;return o?o>1?e.apply(t,arguments):e.call(t,i):e.call(t)}return i._length=e.length,i}function u(e,t){t=t||0;for(var i=e.length-t,o=new Array(i);i--;)o[i]=e[i+t];return o}function d(e,t){for(var i in t)e[i]=t[i];return e}function f(e){return null!==e&&"object"==typeof e}function m(e){return mn.call(e)===bn}function b(e){for(var t={},i=0;i1?u(i):i;for(var o=u(arguments,1),n=0,r=i.length;n=0&&Kn[i].id>e.id;)i--;Kn.splice(Math.max(i,or)+1,0,e)}else Kn.push(e);tr||(tr=!0,En(Be))}}function Se(e){ar.clear(),Ee(e,ar)}function Ee(e,t){var i,o,n=Array.isArray(e);if((n||f(e))&&Object.isExtensible(e)){if(e.__ob__){var r=e.__ob__.dep.id;if(t.has(r))return;t.add(r)}if(n)for(i=e.length;i--;)Ee(e[i],t);else for(o=Object.keys(e),i=o.length;i--;)Ee(e[o[i]],t)}}function De(e){e._watchers=[];var t=e.$options;t.props&&Te(e,t.props),t.methods&&Le(e,t.methods),t.data?Me(e):I(e._data={},!0),t.computed&&ze(e,t.computed),t.watch&&Re(e,t.watch)}function Te(e,t){var i=e.$options.propsData||{},o=e.$options._propKeys=Object.keys(t),n=!e.$parent;Pn.shouldConvert=n;for(var r=function(n){var r=o[n];S(e,r,_(r,t,i,e))},a=0;a-1:e.test(t)}function Xe(e,t){for(var i in e){var o=e[i];if(o){var n=qe(o.componentOptions);n&&!t(n)&&(Ze(o),e[i]=null)}}}function Ze(e){e&&(e.componentInstance._inactive||Ce(e.componentInstance,"deactivated"),e.componentInstance.$destroy())}function $e(e){var t={};t.get=function(){return hn},Object.defineProperty(e,"config",t),e.util=Qn,e.set=E,e.delete=D,e.nextTick=En,e.options=Object.create(null),hn._assetTypes.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,d(e.options.components,dr),Ue(e),Ge(e),We(e),Ve(e)}function Ke(e){for(var t=e.data,i=e,o=e;o.componentInstance;)o=o.componentInstance._vnode,o.data&&(t=et(o.data,t));for(;i=i.parent;)i.data&&(t=et(t,i.data));return tt(t)}function et(e,t){return{staticClass:it(e.staticClass,t.staticClass),class:e.class?[e.class,t.class]:t.class}}function tt(e){var t=e.class,i=e.staticClass;return i||t?it(i,ot(t)):""}function it(e,t){return e?t?e+" "+t:e:t||""}function ot(e){var t="";if(!e)return t;if("string"==typeof e)return e;if(Array.isArray(e)){for(var i,o=0,n=e.length;o-1?Ir[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Ir[e]=/HTMLUnknownElement/.test(t.toString())}function at(e){if("string"==typeof e){if(e=document.querySelector(e),!e)return document.createElement("div")}return e}function st(e,t){var i=document.createElement(e);return"select"!==e?i:(t.data&&t.data.attrs&&"multiple"in t.data.attrs&&i.setAttribute("multiple","multiple"),i)}function lt(e,t){return document.createElementNS(yr[e],t)}function ct(e){return document.createTextNode(e)}function ut(e){return document.createComment(e)}function dt(e,t,i){e.insertBefore(t,i)}function ft(e,t){e.removeChild(t)}function mt(e,t){e.appendChild(t)}function bt(e){return e.parentNode}function pt(e){return e.nextSibling}function gt(e){return e.tagName}function ht(e,t){e.textContent=t}function vt(e,t,i){e.setAttribute(t,i)}function At(e,t){var i=e.data.ref;if(i){var o=e.context,n=e.componentInstance||e.elm,a=o.$refs;t?Array.isArray(a[i])?r(a[i],n):a[i]===n&&(a[i]=void 0):e.data.refInFor?Array.isArray(a[i])&&a[i].indexOf(n)<0?a[i].push(n):a[i]=[n]:a[i]=n}}function wt(e){return null==e}function xt(e){return null!=e}function yt(e,t){return e.key===t.key&&e.tag===t.tag&&e.isComment===t.isComment&&!e.data==!t.data}function kt(e,t,i){var o,n,r={};for(o=t;o<=i;++o)n=e[o].key,xt(n)&&(r[n]=o);return r}function Ct(e){function t(e){return new Hn(I.tagName(e).toLowerCase(),{},[],void 0,e)}function i(e,t){function i(){0===--i.listeners&&o(e)}return i.listeners=t,i}function o(e){var t=I.parentNode(e);t&&I.removeChild(t,e)}function r(e,t,i,o,n){if(e.isRootInsert=!n,!a(e,t,i,o)){var r=e.data,s=e.children,l=e.tag;xt(l)?(e.elm=e.ns?I.createElementNS(e.ns,l):I.createElement(l,e),b(e),d(e,s,t),xt(r)&&m(e,t),u(i,e.elm,o)):e.isComment?(e.elm=I.createComment(e.text),u(i,e.elm,o)):(e.elm=I.createTextNode(e.text),u(i,e.elm,o))}}function a(e,t,i,o){var n=e.data;if(xt(n)){var r=xt(e.componentInstance)&&n.keepAlive;if(xt(n=n.hook)&&xt(n=n.init)&&n(e,!1,i,o),xt(e.componentInstance))return l(e,t),r&&c(e,t,i,o),!0}}function l(e,t){e.data.pendingInsert&&t.push.apply(t,e.data.pendingInsert),e.elm=e.componentInstance.$el,f(e)?(m(e,t),b(e)):(At(e),t.push(e))}function c(e,t,i,o){for(var n,r=e;r.componentInstance;)if(r=r.componentInstance._vnode,xt(n=r.data)&&xt(n=n.transition)){for(n=0;nf?(c=wt(i[g+1])?null:i[g+1].elm,p(e,c,i,d,g,o)):d>g&&h(e,t,u,f)}function w(e,t,i,o){if(e!==t){if(t.isStatic&&e.isStatic&&t.key===e.key&&(t.isCloned||t.isOnce))return t.elm=e.elm,void(t.componentInstance=e.componentInstance);var n,r=t.data,a=xt(r);a&&xt(n=r.hook)&&xt(n=n.prepatch)&&n(e,t);var s=t.elm=e.elm,l=e.children,c=t.children;if(a&&f(t)){for(n=0;n-1?t.split(/\s+/).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var i=" "+e.getAttribute("class")+" ";i.indexOf(" "+t+" ")<0&&e.setAttribute("class",(i+t).trim())}}function Gt(e,t){if(t&&t.trim())if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t);else{for(var i=" "+e.getAttribute("class")+" ",o=" "+t+" ";i.indexOf(o)>=0;)i=i.replace(o," ");e.setAttribute("class",i.trim())}}function Wt(e){Kr(function(){Kr(e)})}function Vt(e,t){(e._transitionClasses||(e._transitionClasses=[])).push(t),Ut(e,t)}function qt(e,t){e._transitionClasses&&r(e._transitionClasses,t),Gt(e,t)}function Jt(e,t,i){var o=Xt(e,t),n=o.type,r=o.timeout,a=o.propCount;if(!n)return i();var s=n===Vr?Xr:$r,l=0,c=function(){e.removeEventListener(s,u),i()},u=function(t){t.target===e&&++l>=a&&c()};setTimeout(function(){l0&&(i=Vr,u=a,d=r.length):t===qr?c>0&&(i=qr,u=c,d=l.length):(u=Math.max(a,c),i=u>0?a>c?Vr:qr:null,d=i?i===Vr?r.length:l.length:0);var f=i===Vr&&ea.test(o[Jr+"Property"]);return{type:i,timeout:u,propCount:d,hasTransform:f}}function Zt(e,t){for(;e.length1,M=i._enterCb=ii(function(){D&&(qt(i,F),qt(i,C)),M.cancelled?(D&&qt(i,k),E&&E(i)):S&&S(i),i._enterCb=null});e.data.show||ne(e.data.hook||(e.data.hook={}),"insert",function(){var t=i.parentNode,o=t&&t._pending&&t._pending[e.key];o&&o.tag===e.tag&&o.elm._leaveCb&&o.elm._leaveCb(),I&&I(i,M)},"transition-insert"),B&&B(i),D&&(Vt(i,k),Vt(i,C),Wt(function(){Vt(i,F),qt(i,k),M.cancelled||T||Jt(i,r,M)})),e.data.show&&(t&&t(),I&&I(i,M)),D||T||M()}}}function ei(e,t){function i(){h.cancelled||(e.data.show||((o.parentNode._pending||(o.parentNode._pending={}))[e.key]=e),u&&u(o),p&&(Vt(o,s),Vt(o,c),Wt(function(){Vt(o,l),qt(o,s),h.cancelled||g||Jt(o,a,h)})),d&&d(o,h),p||g||h())}var o=e.elm;o._enterCb&&(o._enterCb.cancelled=!0,o._enterCb());var n=ti(e.data.transition);if(!n)return t();if(!o._leaveCb&&1===o.nodeType){var r=n.css,a=n.type,s=n.leaveClass,l=n.leaveToClass,c=n.leaveActiveClass,u=n.beforeLeave,d=n.leave,f=n.afterLeave,m=n.leaveCancelled,b=n.delayLeave,p=r!==!1&&!kn,g=d&&(d._length||d.length)>1,h=o._leaveCb=ii(function(){o.parentNode&&o.parentNode._pending&&(o.parentNode._pending[e.key]=null),p&&(qt(o,l),qt(o,c)),h.cancelled?(p&&qt(o,s),m&&m(o)):(t(),f&&f(o)),o._leaveCb=null});b?b(i):i()}}function ti(e){if(e){if("object"==typeof e){var t={};return e.css!==!1&&d(t,ta(e.name||"v")),d(t,e),t}return"string"==typeof e?ta(e):void 0}}function ii(e){var t=!1;return function(){t||(t=!0,e())}}function oi(e,t){t.data.show||Kt(t)}function ni(e,t,i){var o=t.value,n=e.multiple;if(!n||Array.isArray(o)){for(var r,a,s=0,l=e.options.length;s-1,a.selected!==r&&(a.selected=r);else if(h(ai(a),o))return void(e.selectedIndex!==s&&(e.selectedIndex=s));n||(e.selectedIndex=-1)}}function ri(e,t){for(var i=0,o=t.length;i',i.innerHTML.indexOf(t)>0}function wi(e){return ba=ba||document.createElement("div"),ba.innerHTML=e,ba.textContent}function xi(e,t){return t&&(e=e.replace(ss,"\n")),e.replace(rs,"<").replace(as,">").replace(ls,"&").replace(cs,'"')}function yi(e,t){function i(t){d+=t,e=e.substring(t)}function o(){var t=e.match(Fa);if(t){var o={tagName:t[1],attrs:[],start:d};i(t[0].length);for(var n,r;!(n=e.match(Ba))&&(r=e.match(ya));)i(r[0].length),o.attrs.push(r);if(n)return o.unarySlash=n[1],i(n[0].length),o.end=d,o}}function n(e){var i=e.tagName,o=e.unarySlash;c&&("p"===s&&va(i)&&r(s),ha(i)&&s===i&&r(i));for(var n=u(i)||"html"===i&&"head"===s||!!o,a=e.attrs.length,d=new Array(a),f=0;f=0&&l[n].lowerCasedTag!==r;n--);else n=0;if(n>=0){for(var a=l.length-1;a>=n;a--)t.end&&t.end(l[a].tag,i,o);l.length=n,s=n&&l[n-1].tag}else"br"===r?t.start&&t.start(e,[],!0,i,o):"p"===r&&(t.start&&t.start(e,[],!1,i,o),t.end&&t.end(e,i,o))}for(var a,s,l=[],c=t.expectHTML,u=t.isUnaryTag||pn,d=0;e;){if(a=e,s&&os(s)){var f=s.toLowerCase(),m=ns[f]||(ns[f]=new RegExp("([\\s\\S]*?)(]*>)","i")),b=0,p=e.replace(m,function(e,i,o){return b=o.length,"script"!==f&&"style"!==f&&"noscript"!==f&&(i=i.replace(//g,"$1").replace(//g,"$1")),t.chars&&t.chars(i),""});d+=e.length-p.length,e=p,r(f,d-b,d)}else{var g=e.indexOf("<");if(0===g){if(Ea.test(e)){var h=e.indexOf("-->");if(h>=0){i(h+3);continue}}if(Da.test(e)){var v=e.indexOf("]>");if(v>=0){i(v+2);continue}}var A=e.match(Sa);if(A){i(A[0].length);continue}var w=e.match(Ia);if(w){var x=d;i(w[0].length),r(w[1],x,d);continue}var y=o();if(y){n(y);continue}}var k=void 0,C=void 0,F=void 0;if(g>0){for(C=e.slice(g);!(Ia.test(C)||Fa.test(C)||Ea.test(C)||Da.test(C)||(F=C.indexOf("<",1),F<0));)g+=F,C=e.slice(g);k=e.substring(0,g),i(g)}g<0&&(k=e,e=""),t.chars&&k&&t.chars(k)}if(e===a&&t.chars){t.chars(e);break}}r()}function ki(e){function t(){(a||(a=[])).push(e.slice(b,n).trim()),b=n+1}var i,o,n,r,a,s=!1,l=!1,c=!1,u=!1,d=0,f=0,m=0,b=0;for(n=0;n=0&&(g=e.charAt(p)," "===g);p--);g&&/[\w$]/.test(g)||(u=!0)}}else void 0===r?(b=n+1,r=e.slice(0,n).trim()):t();if(void 0===r?r=e.slice(0,n).trim():0!==b&&t(),a)for(n=0;na&&r.push(JSON.stringify(e.slice(a,n)));var s=ki(o[1].trim());r.push("_s("+s+")"),a=n+o[0].length}return a=Ma}function Oi(e){return 34===e||39===e}function Pi(e){var t=1;for(Ra=La;!Ri();)if(e=Li(),Oi(e))_i(e);else if(91===e&&t++,93===e&&t--,0===t){Oa=La;break}}function _i(e){for(var t=e;!Ri()&&(e=Li(),e!==t););}function Yi(e,t){Pa=t.warn||Bi,_a=t.getTagNamespace||pn,Ya=t.mustUseProp||pn,Na=t.isPreTag||pn,Qa=Ii(t.modules,"preTransformNode"),Ha=Ii(t.modules,"transformNode"),Ua=Ii(t.modules,"postTransformNode"),Ga=t.delimiters;var i,o,n=[],r=t.preserveWhitespace!==!1,a=!1,s=!1;return yi(e,{expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,shouldDecodeNewlines:t.shouldDecodeNewlines,start:function(e,r,l){function c(e){}var u=o&&o.ns||_a(e);yn&&"svg"===u&&(r=no(r));var d={type:1,tag:e,attrsList:r,attrsMap:io(r),parent:o,children:[]};u&&(d.ns=u),oo(d)&&!In()&&(d.forbidden=!0);for(var f=0;f-1"+("true"===r?":("+t+")":":_q("+t+","+r+")")),Ti(e,"click","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+r+"):("+a+");if(Array.isArray($$a)){var $$v="+(o?"_n("+n+")":n)+",$$i=_i($$a,$$v);if($$c){$$i<0&&("+t+"=$$a.concat($$v))}else{$$i>-1&&("+t+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+t+"=$$c}",null,!0)}function Vo(e,t,i){var o=i&&i.number,n=Mi(e,"value")||"null";n=o?"_n("+n+")":n,Si(e,"checked","_q("+t+","+n+")"),Ti(e,"click",Xo(t,n),null,!0)}function qo(e,t,i){var o=e.attrsMap.type,n=i||{},r=n.lazy,a=n.number,s=n.trim,l=r||yn&&"range"===o?"change":"input",c=!r&&"range"!==o,u="input"===e.tag||"textarea"===e.tag,d=u?"$event.target.value"+(s?".trim()":""):s?"(typeof $event === 'string' ? $event.trim() : $event)":"$event";d=a||"number"===o?"_n("+d+")":d;var f=Xo(t,d);u&&c&&(f="if($event.target.composing)return;"+f),Si(e,"value",u?"_s("+t+")":"("+t+")"),Ti(e,l,f,null,!0),(s||a||"number"===o)&&Ti(e,"blur","$forceUpdate()")}function Jo(e,t,i){var o=i&&i.number,n='Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(o?"_n(val)":"val")+"})"+(null==e.attrsMap.multiple?"[0]":""),r=Xo(t,n);Ti(e,"change",r,null,!0)}function Xo(e,t){var i=ji(e);return null===i.idx?e+"="+t:"var $$exp = "+i.exp+", $$idx = "+i.idx+";if (!Array.isArray($$exp)){"+e+"="+t+"}else{$$exp.splice($$idx, 1, "+t+")}"}function Zo(e,t){t.value&&Si(e,"textContent","_s("+t.value+")")}function $o(e,t){t.value&&Si(e,"innerHTML","_s("+t.value+")")}function Ko(e,t){return t=t?d(d({},js),t):js,Yo(e,t)}function en(e,t,i){var o=(t&&t.warn||Tn,t&&t.delimiters?String(t.delimiters)+e:e);if(zs[o])return zs[o];var n={},r=Ko(e,t);n.render=tn(r.render);var a=r.staticRenderFns.length;n.staticRenderFns=new Array(a);for(var s=0;s0,Cn=xn&&xn.indexOf("edge/")>0,Fn=xn&&xn.indexOf("android")>0,Bn=xn&&/iphone|ipad|ipod|ios/.test(xn),In=function(){return void 0===nn&&(nn=!wn&&"undefined"!=typeof t&&"server"===t.process.env.VUE_ENV),nn},Sn=wn&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,En=function(){function e(){o=!1;var e=i.slice(0);i.length=0;for(var t=0;t1&&(t[i[0].trim()]=i[1].trim())}}),t}),Yr=/^--/,Nr=/\s*!important$/,Qr=function(e,t,i){Yr.test(t)?e.style.setProperty(t,i):Nr.test(i)?e.style.setProperty(t,i.replace(Nr,""),"important"):e.style[Ur(t)]=i},Hr=["Webkit","Moz","ms"],Ur=l(function(e){if(mr=mr||document.createElement("div"),e=cn(e),"filter"!==e&&e in mr.style)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),i=0;i\/=]+)/,wa=/(?:=)/,xa=[/"([^"]*)"+/.source,/'([^']*)'+/.source,/([^\s"'=<>`]+)/.source],ya=new RegExp("^\\s*"+Aa.source+"(?:\\s*("+wa.source+")\\s*(?:"+xa.join("|")+"))?"),ka="[a-zA-Z_][\\w\\-\\.]*",Ca="((?:"+ka+"\\:)?"+ka+")",Fa=new RegExp("^<"+Ca),Ba=/^\s*(\/?)>/,Ia=new RegExp("^<\\/"+Ca+"[^>]*>"),Sa=/^]+>/i,Ea=/^');\n\n if (commentEnd >= 0) {\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n continue\n }\n }\n\n var text = (void 0), rest$1 = (void 0), next = (void 0);\n if (textEnd > 0) {\n rest$1 = html.slice(textEnd);\n while (\n !endTag.test(rest$1) &&\n !startTagOpen.test(rest$1) &&\n !comment.test(rest$1) &&\n !conditionalComment.test(rest$1)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest$1.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest$1 = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(]*>)', 'i'));\n var endTagLength = 0;\n var rest = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (stackedTag !== 'script' && stackedTag !== 'style' && stackedTag !== 'noscript') {\n text = text\n .replace(//g, '$1')\n .replace(//g, '$1');\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest.length;\n html = rest;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last && options.chars) {\n options.chars(html);\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || tagName === 'html' && lastTag === 'head' || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n attrs[i] = {\n name: args[1],\n value: decodeAttr(\n value,\n options.shouldDecodeNewlines\n )\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n unarySlash = '';\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !/[\\w$]/.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + \",\" + args)\n }\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n tokens.push(JSON.stringify(text.slice(lastIndex, index)));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n tokens.push(JSON.stringify(text.slice(lastIndex)));\n }\n return tokens.join('+')\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue parser]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important\n) {\n // check capture modifier\n if (modifiers && modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers && modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n var events;\n if (modifiers && modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n var newHandler = { value: value, modifiers: modifiers };\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\nfunction getAndRemoveAttr (el, name) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n return val\n}\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n/**\n * parse directive model to do the array update transform. a[idx] = val => $$a.splice($$idx, 1, val)\n *\n * for loop possible cases:\n *\n * - test\n * - test[idx]\n * - test[test1[idx]]\n * - test[\"a\"][idx]\n * - xxx.test[a[a].test1[idx]]\n * - test.xxx.a[\"asa\"][test1[idx]]\n *\n */\n\nfunction parseModel (val) {\n str = val;\n len = str.length;\n index$1 = expressionPos = expressionEndPos = 0;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n return {\n exp: val,\n idx: null\n }\n }\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.substring(0, expressionPos),\n idx: val.substring(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /(.*?)\\s+(?:in|of)\\s+(.*)/;\nvar forIteratorRE = /\\((\\{[^}]*\\}|[^,]*),([^,]*)(?:,([^,]*))?\\)/;\nvar bindRE = /^:|^v-bind:/;\nvar onRE = /^@|^v-on:/;\nvar argRE = /:(.*)$/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(decode);\n\n// configurable state\nvar warn$1;\nvar platformGetTagNamespace;\nvar platformMustUseProp;\nvar platformIsPreTag;\nvar preTransforms;\nvar transforms;\nvar postTransforms;\nvar delimiters;\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$1 = options.warn || baseWarn;\n platformGetTagNamespace = options.getTagNamespace || no;\n platformMustUseProp = options.mustUseProp || no;\n platformIsPreTag = options.isPreTag || no;\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n delimiters = options.delimiters;\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n parseHTML(template, {\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: currentParent,\n children: []\n };\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n \"production\" !== 'production' && warn$1(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n preTransforms[i](element, options);\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else {\n processFor(element);\n processIf(element);\n processOnce(element);\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !attrs.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i$1 = 0; i$1 < transforms.length; i$1++) {\n transforms[i$1](element, options);\n }\n processAttrs(element);\n }\n\n function checkRootConstraints (el) {\n if (false) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warned = true;\n warn$1(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes:\\n' + template\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warned = true;\n warn$1(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements:\\n' + template\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (false) {\n warned = true;\n warn$1(\n \"Component template should contain exactly one root element:\" +\n \"\\n\\n\" + template + \"\\n\\n\" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || 'default';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n }\n // apply post-transforms\n for (var i$2 = 0; i$2 < postTransforms.length; i$2++) {\n postTransforms[i$2](element, options);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ') {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (false) {\n warned = true;\n warn$1(\n 'Component template requires a root element, rather than just text:\\n\\n' + template\n );\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var expression;\n if (!inVPre && text !== ' ' && (expression = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: expression,\n text: text\n });\n } else if (text !== ' ' || children[children.length - 1].text !== ' ') {\n currentParent.children.push({\n type: 3,\n text: text\n });\n }\n }\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (false) {\n warn$1(\"