diff --git a/devserver.js b/devserver.js index 99c8641..ba136b1 100644 --- a/devserver.js +++ b/devserver.js @@ -162,6 +162,39 @@ app.post('/api/triggers/time', function(req, res) }); + +var motionTriggers = { + enabled: true, + enabledDuringTimeTrigger: false, + transitionTime: 1000, + delay: 30000, + triggers: [ + { + pin: 14, + brightness: 64, + direction: 2, + enabled: true + }, + { + pin: 15, + brightness: 64, + direction: 3, + enabled: true + } + ] +}; + +app.get('/api/triggers/motion', function(req, res) +{ + res.send(motionTriggers); +}); + +app.post('/api/triggers/motion', function(req, res) +{ + res.sendStatus(200); +}); + + app.listen(3000, function() { console.log('Development server listening on port 3000') diff --git a/web/app.js b/web/app.js index d7a5aa4..3a6e8ee 100644 --- a/web/app.js +++ b/web/app.js @@ -44,7 +44,15 @@ function startApp() triggers: { time: { enabled: false, - transitionTime: 0, + transitionTime: null, + triggers: [] + }, + + motion: { + enabled: false, + enabledDuringTimeTrigger: false, + transitionTime: null, + delay: null, triggers: [] } }, @@ -125,10 +133,13 @@ function startApp() { self.loadTimeTriggers().then(function() { - self.loadSteps().then(function() + self.loadMotionTriggers().then(function() { - self.stopLoadingIndicator(); - self.loading = false; + self.loadSteps().then(function() + { + self.stopLoadingIndicator(); + self.loading = false; + }); }); }); }); @@ -230,6 +241,20 @@ function startApp() }); }, + loadMotionTriggers: function() + { + var self = this; + return axios.get('/api/triggers/motion') + .then(function(response) + { + if (typeof response.data == 'object') + self.triggers.motion = response.data; + }) + .catch(function(error) + { + console.log(error); + }); + }, loadSteps: function() { @@ -558,6 +583,8 @@ function startApp() self.saving = true; + // TODO motion triggers (or separate the forms?) + var timeSettings = { enabled: self.triggers.time.enabled, transitionTime: self.triggers.time.transitionTime, @@ -624,6 +651,23 @@ function startApp() self.triggers.time.triggers.splice(index, 1); }, + addMotionTrigger: function() + { + var self = this; + self.triggers.motion.triggers.push({ + brightness: 0, + enabled: true, + pin: 2, + direction: 0 + }); + }, + + deleteMotionTrigger: function(index) + { + var self = this; + self.triggers.motion.triggers.splice(index, 1); + }, + getDisplayTime: function(time, isRelative) { var result = ''; diff --git a/web/dist/bundle.css b/web/dist/bundle.css index 8ca5f70..fdbc322 100644 --- a/web/dist/bundle.css +++ b/web/dist/bundle.css @@ -1 +1 @@ -*,:after,:before{box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%}body{color:#606c76;font-family:Roboto,'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.6em;font-weight:300;letter-spacing:.01em;line-height:1.6}blockquote{border-left:.3rem solid #404040;margin-left:0;margin-right:0;padding:1rem 1.5rem}blockquote :last-child{margin-bottom:0}.button,button,input[type=button],input[type=reset],input[type=submit]{background-color:#06f;border:.1rem solid #06f;border-radius:.4rem;color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;height:3.8rem;letter-spacing:.1rem;line-height:3.8rem;padding:0 3rem;text-align:center;text-decoration:none;text-transform:uppercase;white-space:nowrap}.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{background-color:#606c76;border-color:#606c76;color:#fff;outline:0}.button[disabled],button[disabled],input[type=button][disabled],input[type=reset][disabled],input[type=submit][disabled]{cursor:default;opacity:.5}.button[disabled]:focus,.button[disabled]:hover,button[disabled]:focus,button[disabled]:hover,input[type=button][disabled]:focus,input[type=button][disabled]:hover,input[type=reset][disabled]:focus,input[type=reset][disabled]:hover,input[type=submit][disabled]:focus,input[type=submit][disabled]:hover{background-color:#06f;border-color:#06f}.button.button-outline,button.button-outline,input[type=button].button-outline,input[type=reset].button-outline,input[type=submit].button-outline{background-color:transparent;color:#06f}.button.button-outline:focus,.button.button-outline:hover,button.button-outline:focus,button.button-outline:hover,input[type=button].button-outline:focus,input[type=button].button-outline:hover,input[type=reset].button-outline:focus,input[type=reset].button-outline:hover,input[type=submit].button-outline:focus,input[type=submit].button-outline:hover{background-color:transparent;border-color:#606c76;color:#606c76}.button.button-outline[disabled]:focus,.button.button-outline[disabled]:hover,button.button-outline[disabled]:focus,button.button-outline[disabled]:hover,input[type=button].button-outline[disabled]:focus,input[type=button].button-outline[disabled]:hover,input[type=reset].button-outline[disabled]:focus,input[type=reset].button-outline[disabled]:hover,input[type=submit].button-outline[disabled]:focus,input[type=submit].button-outline[disabled]:hover{border-color:inherit;color:#06f}.button.button-clear,button.button-clear,input[type=button].button-clear,input[type=reset].button-clear,input[type=submit].button-clear{background-color:transparent;border-color:transparent;color:#06f}.button.button-clear:focus,.button.button-clear:hover,button.button-clear:focus,button.button-clear:hover,input[type=button].button-clear:focus,input[type=button].button-clear:hover,input[type=reset].button-clear:focus,input[type=reset].button-clear:hover,input[type=submit].button-clear:focus,input[type=submit].button-clear:hover{background-color:transparent;border-color:transparent;color:#606c76}.button.button-clear[disabled]:focus,.button.button-clear[disabled]:hover,button.button-clear[disabled]:focus,button.button-clear[disabled]:hover,input[type=button].button-clear[disabled]:focus,input[type=button].button-clear[disabled]:hover,input[type=reset].button-clear[disabled]:focus,input[type=reset].button-clear[disabled]:hover,input[type=submit].button-clear[disabled]:focus,input[type=submit].button-clear[disabled]:hover{color:#06f}code{background:#f4f5f6;border-radius:.4rem;font-size:86%;margin:0 .2rem;padding:.2rem .5rem;white-space:nowrap}pre{background:#f4f5f6;border-left:.3rem solid #06f;overflow-y:hidden}pre>code{border-radius:0;display:block;padding:1rem 1.5rem;white-space:pre}hr{border:0;border-top:.1rem solid #f4f5f6;margin:3rem 0}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{appearance:none;background-color:transparent;border:.1rem solid #404040;border-radius:.4rem;box-shadow:none;box-sizing:inherit;height:3.8rem;padding:.6rem 1rem;width:100%}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border-color:#06f;outline:0}select{background:url('data:image/svg+xml;utf8,') center right no-repeat;padding-right:3rem}select:focus{background-image:url('data:image/svg+xml;utf8,')}textarea{min-height:6.5rem}label,legend{display:block;font-size:1.6rem;font-weight:700;margin-bottom:.5rem}fieldset{border-width:0;padding:0}input[type=checkbox],input[type=radio]{display:inline}.label-inline{display:inline-block;font-weight:400;margin-left:.5rem}.container{margin:0 auto;max-width:112rem;padding:0 2rem;position:relative;width:100%}.row{display:flex;flex-direction:column;padding:0;width:100%}.row.row-no-padding{padding:0}.row.row-no-padding>.column{padding:0}.row.row-wrap{flex-wrap:wrap}.row.row-top{align-items:flex-start}.row.row-bottom{align-items:flex-end}.row.row-center{align-items:center}.row.row-stretch{align-items:stretch}.row.row-baseline{align-items:baseline}.row .column{display:block;flex:1 1 auto;margin-left:0;max-width:100%;width:100%}.row .column.column-offset-10{margin-left:10%}.row .column.column-offset-20{margin-left:20%}.row .column.column-offset-25{margin-left:25%}.row .column.column-offset-33,.row .column.column-offset-34{margin-left:33.3333%}.row .column.column-offset-50{margin-left:50%}.row .column.column-offset-66,.row .column.column-offset-67{margin-left:66.6666%}.row .column.column-offset-75{margin-left:75%}.row .column.column-offset-80{margin-left:80%}.row .column.column-offset-90{margin-left:90%}.row .column.column-10{flex:0 0 10%;max-width:10%}.row .column.column-20{flex:0 0 20%;max-width:20%}.row .column.column-25{flex:0 0 25%;max-width:25%}.row .column.column-33,.row .column.column-34{flex:0 0 33.3333%;max-width:33.3333%}.row .column.column-40{flex:0 0 40%;max-width:40%}.row .column.column-50{flex:0 0 50%;max-width:50%}.row .column.column-60{flex:0 0 60%;max-width:60%}.row .column.column-66,.row .column.column-67{flex:0 0 66.6666%;max-width:66.6666%}.row .column.column-75{flex:0 0 75%;max-width:75%}.row .column.column-80{flex:0 0 80%;max-width:80%}.row .column.column-90{flex:0 0 90%;max-width:90%}.row .column .column-top{align-self:flex-start}.row .column .column-bottom{align-self:flex-end}.row .column .column-center{align-self:center}@media (min-width:40rem){.row{flex-direction:row;margin-left:-1rem;width:calc(100% + 2rem)}.row .column{margin-bottom:inherit;padding:0 1rem}}a{color:#06f;text-decoration:none}a:focus,a:hover{color:#606c76}dl,ol,ul{list-style:none;margin-top:0;padding-left:0}dl dl,dl ol,dl ul,ol dl,ol ol,ol ul,ul dl,ul ol,ul ul{font-size:90%;margin:1.5rem 0 1.5rem 3rem}ol{list-style:decimal inside}ul{list-style:circle inside}.button,button,dd,dt,li{margin-bottom:1rem}fieldset,input,select,textarea{margin-bottom:1.5rem}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:2.5rem}table{border-spacing:0;width:100%}td,th{border-bottom:.1rem solid #e1e1e1;padding:1.2rem 1.5rem;text-align:left}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}b,strong{font-weight:700}p{margin-top:0}h1,h2,h3,h4,h5,h6{font-weight:300;letter-spacing:-.1rem;margin-bottom:2rem;margin-top:0}h1{font-size:4.6rem;line-height:1.2}h2{font-size:3.6rem;line-height:1.25}h3{font-size:2.8rem;line-height:1.3}h4{font-size:2.2rem;letter-spacing:-.08rem;line-height:1.35}h5{font-size:1.8rem;letter-spacing:-.05rem;line-height:1.5}h6{font-size:1.6rem;letter-spacing:0;line-height:1.4}img{max-width:100%}.clearfix:after{clear:both;content:' ';display:table}.float-left{float:left}.float-right{float:right}[v-cloak]{display:none}body{background-color:#000;color:#fff;font-family:Verdana,Arial,sans-serif;font-size:10pt;padding-bottom:3rem}@media screen and (min-width:768px){body{padding-top:3rem}}input,textarea{color:#fff}#container{background-color:#202020;margin-top:2rem;padding:1rem;box-shadow:0 0 50px #fcf6cf;border:solid 1px #000}@media screen and (min-width:768px){#container{width:768px;margin-left:auto;margin-right:auto}}.header{position:relative}.header img{float:left;margin-right:1rem}@media screen and (max-width:767px){.header .wifistatus{clear:both;margin-top:3rem}}@media screen and (min-width:768px){.header .wifistatus{position:absolute;right:0;top:0}}.header .wifistatus .indicator{display:inline-block;width:1rem;height:1rem;border-radius:50%;margin-right:.5rem}.header .wifistatus .indicator[data-status=connected]{background-color:#396}.header .wifistatus .indicator[data-status=disconnected]{border:solid 1px grey}.header .wifistatus .indicator[data-status=connecting]{background-color:#f93}.header .wifistatus .indicator[data-status=error]{background-color:#c00}h1{font-size:16pt;margin:0}h2{color:silver;font-size:10pt;margin:0}h3{color:grey;background-color:#282828;font-size:14pt;border-bottom:solid 1px grey}.version{color:grey;font-size:8pt;text-align:center;margin-top:2rem}.tabs{clear:both;margin-top:3rem}.tabs .button{background-color:#404040;color:#fff!important;border-color:grey}.tabs .button.button-outline{background-color:transparent}@media screen and (max-width:767px){.tabs .button{width:100%}}input[disabled]{cursor:not-allowed;color:grey;background-color:#262626}.label-inline{margin-right:2rem}.hint{display:block;font-size:8pt;color:grey;margin-bottom:1.5rem}.loading{margin-top:3rem;text-align:center}.suboptions{margin-left:5rem}.buttons{text-align:center}.sliders{margin-top:2rem}.step{margin-left:3rem;margin-right:3rem;position:relative}.step .slidercontainer{margin-right:4em}.step .value{position:absolute;right:0;top:.1rem;color:grey}.slider{-webkit-appearance:none;width:100%;height:.5rem;border-radius:.25rem;background:#404040;outline:0}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:2rem;height:2rem;border-radius:50%;background:#fcf6cf;cursor:pointer}.slider::-moz-range-thumb{width:2rem;height:2rem;border-radius:50%;background:#fcf6cf;cursor:pointer}.warning{background:#302f28;border:solid 1px #000;padding:.5em;margin-bottom:2rem}.nodata{color:grey;text-align:center}.clear{clear:both}.panel{border:solid 1px #404040;margin-bottom:2rem;padding:0}.panel .panel-header{background-color:#302f28;color:grey}.panel .panel-header input[type=checkbox]{margin-left:.5em;margin-top:.5em;margin-bottom:.5em}.panel .panel-header label{font-size:1em}@media screen and (min-width:768px){.panel .panel-header .actions{float:right}}.panel .panel-header a,.panel .panel-header label{color:#fff}.panel .panel-body{padding:2rem}select{background:#202020;color:#fff}select:focus{background-image:none}.inline{display:inline-block;width:auto}.checkbox{white-space:nowrap}.weekday label{width:5em} \ No newline at end of file +*,:after,:before{box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%}body{color:#606c76;font-family:Roboto,'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.6em;font-weight:300;letter-spacing:.01em;line-height:1.6}blockquote{border-left:.3rem solid #404040;margin-left:0;margin-right:0;padding:1rem 1.5rem}blockquote :last-child{margin-bottom:0}.button,button,input[type=button],input[type=reset],input[type=submit]{background-color:#06f;border:.1rem solid #06f;border-radius:.4rem;color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;height:3.8rem;letter-spacing:.1rem;line-height:3.8rem;padding:0 3rem;text-align:center;text-decoration:none;text-transform:uppercase;white-space:nowrap}.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{background-color:#606c76;border-color:#606c76;color:#fff;outline:0}.button[disabled],button[disabled],input[type=button][disabled],input[type=reset][disabled],input[type=submit][disabled]{cursor:default;opacity:.5}.button[disabled]:focus,.button[disabled]:hover,button[disabled]:focus,button[disabled]:hover,input[type=button][disabled]:focus,input[type=button][disabled]:hover,input[type=reset][disabled]:focus,input[type=reset][disabled]:hover,input[type=submit][disabled]:focus,input[type=submit][disabled]:hover{background-color:#06f;border-color:#06f}.button.button-outline,button.button-outline,input[type=button].button-outline,input[type=reset].button-outline,input[type=submit].button-outline{background-color:transparent;color:#06f}.button.button-outline:focus,.button.button-outline:hover,button.button-outline:focus,button.button-outline:hover,input[type=button].button-outline:focus,input[type=button].button-outline:hover,input[type=reset].button-outline:focus,input[type=reset].button-outline:hover,input[type=submit].button-outline:focus,input[type=submit].button-outline:hover{background-color:transparent;border-color:#606c76;color:#606c76}.button.button-outline[disabled]:focus,.button.button-outline[disabled]:hover,button.button-outline[disabled]:focus,button.button-outline[disabled]:hover,input[type=button].button-outline[disabled]:focus,input[type=button].button-outline[disabled]:hover,input[type=reset].button-outline[disabled]:focus,input[type=reset].button-outline[disabled]:hover,input[type=submit].button-outline[disabled]:focus,input[type=submit].button-outline[disabled]:hover{border-color:inherit;color:#06f}.button.button-clear,button.button-clear,input[type=button].button-clear,input[type=reset].button-clear,input[type=submit].button-clear{background-color:transparent;border-color:transparent;color:#06f}.button.button-clear:focus,.button.button-clear:hover,button.button-clear:focus,button.button-clear:hover,input[type=button].button-clear:focus,input[type=button].button-clear:hover,input[type=reset].button-clear:focus,input[type=reset].button-clear:hover,input[type=submit].button-clear:focus,input[type=submit].button-clear:hover{background-color:transparent;border-color:transparent;color:#606c76}.button.button-clear[disabled]:focus,.button.button-clear[disabled]:hover,button.button-clear[disabled]:focus,button.button-clear[disabled]:hover,input[type=button].button-clear[disabled]:focus,input[type=button].button-clear[disabled]:hover,input[type=reset].button-clear[disabled]:focus,input[type=reset].button-clear[disabled]:hover,input[type=submit].button-clear[disabled]:focus,input[type=submit].button-clear[disabled]:hover{color:#06f}code{background:#f4f5f6;border-radius:.4rem;font-size:86%;margin:0 .2rem;padding:.2rem .5rem;white-space:nowrap}pre{background:#f4f5f6;border-left:.3rem solid #06f;overflow-y:hidden}pre>code{border-radius:0;display:block;padding:1rem 1.5rem;white-space:pre}hr{border:0;border-top:.1rem solid #f4f5f6;margin:3rem 0}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{appearance:none;background-color:transparent;border:.1rem solid #404040;border-radius:.4rem;box-shadow:none;box-sizing:inherit;height:3.8rem;padding:.6rem 1rem;width:100%}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border-color:#06f;outline:0}select{background:url('data:image/svg+xml;utf8,') center right no-repeat;padding-right:3rem}select:focus{background-image:url('data:image/svg+xml;utf8,')}textarea{min-height:6.5rem}label,legend{display:block;font-size:1.6rem;font-weight:700;margin-bottom:.5rem}fieldset{border-width:0;padding:0}input[type=checkbox],input[type=radio]{display:inline}.label-inline{display:inline-block;font-weight:400;margin-left:.5rem}.container{margin:0 auto;max-width:112rem;padding:0 2rem;position:relative;width:100%}.row{display:flex;flex-direction:column;padding:0;width:100%}.row.row-no-padding{padding:0}.row.row-no-padding>.column{padding:0}.row.row-wrap{flex-wrap:wrap}.row.row-top{align-items:flex-start}.row.row-bottom{align-items:flex-end}.row.row-center{align-items:center}.row.row-stretch{align-items:stretch}.row.row-baseline{align-items:baseline}.row .column{display:block;flex:1 1 auto;margin-left:0;max-width:100%;width:100%}.row .column.column-offset-10{margin-left:10%}.row .column.column-offset-20{margin-left:20%}.row .column.column-offset-25{margin-left:25%}.row .column.column-offset-33,.row .column.column-offset-34{margin-left:33.3333%}.row .column.column-offset-50{margin-left:50%}.row .column.column-offset-66,.row .column.column-offset-67{margin-left:66.6666%}.row .column.column-offset-75{margin-left:75%}.row .column.column-offset-80{margin-left:80%}.row .column.column-offset-90{margin-left:90%}.row .column.column-10{flex:0 0 10%;max-width:10%}.row .column.column-20{flex:0 0 20%;max-width:20%}.row .column.column-25{flex:0 0 25%;max-width:25%}.row .column.column-33,.row .column.column-34{flex:0 0 33.3333%;max-width:33.3333%}.row .column.column-40{flex:0 0 40%;max-width:40%}.row .column.column-50{flex:0 0 50%;max-width:50%}.row .column.column-60{flex:0 0 60%;max-width:60%}.row .column.column-66,.row .column.column-67{flex:0 0 66.6666%;max-width:66.6666%}.row .column.column-75{flex:0 0 75%;max-width:75%}.row .column.column-80{flex:0 0 80%;max-width:80%}.row .column.column-90{flex:0 0 90%;max-width:90%}.row .column .column-top{align-self:flex-start}.row .column .column-bottom{align-self:flex-end}.row .column .column-center{align-self:center}@media (min-width:40rem){.row{flex-direction:row;margin-left:-1rem;width:calc(100% + 2rem)}.row .column{margin-bottom:inherit;padding:0 1rem}}a{color:#06f;text-decoration:none}a:focus,a:hover{color:#606c76}dl,ol,ul{list-style:none;margin-top:0;padding-left:0}dl dl,dl ol,dl ul,ol dl,ol ol,ol ul,ul dl,ul ol,ul ul{font-size:90%;margin:1.5rem 0 1.5rem 3rem}ol{list-style:decimal inside}ul{list-style:circle inside}.button,button,dd,dt,li{margin-bottom:1rem}fieldset,input,select,textarea{margin-bottom:1.5rem}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:2.5rem}table{border-spacing:0;width:100%}td,th{border-bottom:.1rem solid #e1e1e1;padding:1.2rem 1.5rem;text-align:left}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}b,strong{font-weight:700}p{margin-top:0}h1,h2,h3,h4,h5,h6{font-weight:300;letter-spacing:-.1rem;margin-bottom:2rem;margin-top:0}h1{font-size:4.6rem;line-height:1.2}h2{font-size:3.6rem;line-height:1.25}h3{font-size:2.8rem;line-height:1.3}h4{font-size:2.2rem;letter-spacing:-.08rem;line-height:1.35}h5{font-size:1.8rem;letter-spacing:-.05rem;line-height:1.5}h6{font-size:1.6rem;letter-spacing:0;line-height:1.4}img{max-width:100%}.clearfix:after{clear:both;content:' ';display:table}.float-left{float:left}.float-right{float:right}[v-cloak]{display:none}body{background-color:#000;color:#fff;font-family:Verdana,Arial,sans-serif;font-size:10pt;padding-bottom:3rem}@media screen and (min-width:768px){body{padding-top:3rem}}input,textarea{color:#fff}#container{background-color:#202020;margin-top:2rem;padding:1rem;box-shadow:0 0 50px #fcf6cf;border:solid 1px #000}@media screen and (min-width:768px){#container{width:768px;margin-left:auto;margin-right:auto}}.header{position:relative}.header img{float:left;margin-right:1rem}@media screen and (max-width:767px){.header .wifistatus{clear:both;margin-top:3rem}}@media screen and (min-width:768px){.header .wifistatus{position:absolute;right:0;top:0}}.header .wifistatus .indicator{display:inline-block;width:1rem;height:1rem;border-radius:50%;margin-right:.5rem}.header .wifistatus .indicator[data-status=connected]{background-color:#396}.header .wifistatus .indicator[data-status=disconnected]{border:solid 1px grey}.header .wifistatus .indicator[data-status=connecting]{background-color:#f93}.header .wifistatus .indicator[data-status=error]{background-color:#c00}h1{font-size:16pt;margin:0}h2{color:silver;font-size:10pt;margin:0}h3{color:grey;background-color:#282828;font-size:14pt;border-bottom:solid 1px grey}.version{color:grey;font-size:8pt;text-align:center;margin-top:2rem}.tabs{clear:both;margin-top:3rem}.tabs .button{background-color:#404040;color:#fff!important;border-color:grey}.tabs .button.button-outline{background-color:transparent}@media screen and (max-width:767px){.tabs .button{width:100%}}input[disabled]{cursor:not-allowed;color:grey;background-color:#262626}.label-inline{margin-right:2rem}.hint{display:block;font-size:8pt;color:grey;margin-bottom:1.5rem}.loading{margin-top:3rem;text-align:center}.suboptions{margin-left:5rem}.buttons{text-align:center}.sliders{margin-top:2rem}.step{margin-left:3rem;margin-right:3rem;position:relative}.step .slidercontainer{margin-right:4em}.step .value{position:absolute;right:0;top:.1rem;color:grey}.slider{-webkit-appearance:none;width:100%;height:.5rem;border-radius:.25rem;background:#404040;outline:0}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:2rem;height:2rem;border-radius:50%;background:#fcf6cf;cursor:pointer}.slider::-moz-range-thumb{width:2rem;height:2rem;border-radius:50%;background:#fcf6cf;cursor:pointer}.warning{background:#302f28;border:solid 1px #000;padding:.5em;margin-bottom:2rem}.nodata{color:grey;text-align:center}.clear{clear:both}.panel{border:solid 1px #404040;margin-bottom:2rem;padding:0}.panel .panel-header{background-color:#302f28;color:grey}.panel .panel-header input[type=checkbox]{margin-left:.5em;margin-top:.5em;margin-bottom:.5em}.panel .panel-header label{font-size:1em}@media screen and (min-width:768px){.panel .panel-header .actions{float:right}}.panel .panel-header a,.panel .panel-header label{color:#fff}.panel .panel-body{background-color:#242422;padding:2rem}select{background:#202020;color:#fff}select:focus{background-image:none}.inline{display:inline-block;width:auto}.checkbox{white-space:nowrap}.weekday label{width:5em} \ No newline at end of file diff --git a/web/dist/bundle.js b/web/dist/bundle.js index 8a53582..a02b708 100644 --- a/web/dist/bundle.js +++ b/web/dist/bundle.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.axios=t():e.axios=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";function r(e){var t=new a(e),n=o(a.prototype.request,t);return i.extend(n,a.prototype,t),i.extend(n,t),n}var i=n(2),o=n(3),a=n(5),s=n(6),c=r(s);c.Axios=a,c.create=function(e){return r(i.merge(s,e))},c.Cancel=n(23),c.CancelToken=n(24),c.isCancel=n(20),c.all=function(e){return Promise.all(e)},c.spread=n(25),e.exports=c,e.exports.default=c},function(e,t,n){"use strict";function r(e){return"[object Array]"===u.call(e)}function i(e){return null!==e&&"object"==typeof e}function o(e){return"[object Function]"===u.call(e)}function a(e,t){if(null!==e&&void 0!==e)if("object"!=typeof e&&(e=[e]),r(e))for(var n=0,i=e.length;n=200&&e<300}};c.headers={common:{Accept:"application/json, text/plain, */*"}},o.forEach(["delete","get","head"],function(e){c.headers[e]={}}),o.forEach(["post","put","patch"],function(e){c.headers[e]=o.merge(s)}),e.exports=c},function(e,t,n){"use strict";var r=n(2);e.exports=function(e,t){r.forEach(e,function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])})}},function(e,t,n){"use strict";var r=n(2),i=n(9),o=n(12),a=n(13),s=n(14),c=n(10),u="undefined"!=typeof window&&window.btoa&&window.btoa.bind(window)||n(15);e.exports=function(e){return new Promise(function(t,l){var f=e.data,d=e.headers;r.isFormData(f)&&delete d["Content-Type"];var p=new XMLHttpRequest,h="onreadystatechange",v=!1;if("undefined"==typeof window||!window.XDomainRequest||"withCredentials"in p||s(e.url)||(p=new window.XDomainRequest,h="onload",v=!0,p.onprogress=function(){},p.ontimeout=function(){}),e.auth){var m=e.auth.username||"",g=e.auth.password||"";d.Authorization="Basic "+u(m+":"+g)}if(p.open(e.method.toUpperCase(),o(e.url,e.params,e.paramsSerializer),!0),p.timeout=e.timeout,p[h]=function(){if(p&&(4===p.readyState||v)&&(0!==p.status||p.responseURL&&0===p.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in p?a(p.getAllResponseHeaders()):null,r={data:e.responseType&&"text"!==e.responseType?p.response:p.responseText,status:1223===p.status?204:p.status,statusText:1223===p.status?"No Content":p.statusText,headers:n,config:e,request:p};i(t,l,r),p=null}},p.onerror=function(){l(c("Network Error",e,null,p)),p=null},p.ontimeout=function(){l(c("timeout of "+e.timeout+"ms exceeded",e,"ECONNABORTED",p)),p=null},r.isStandardBrowserEnv()){var y=n(16),_=(e.withCredentials||s(e.url))&&e.xsrfCookieName?y.read(e.xsrfCookieName):void 0;_&&(d[e.xsrfHeaderName]=_)}if("setRequestHeader"in p&&r.forEach(d,function(e,t){void 0===f&&"content-type"===t.toLowerCase()?delete d[t]:p.setRequestHeader(t,e)}),e.withCredentials&&(p.withCredentials=!0),e.responseType)try{p.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&p.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&p.upload&&p.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then(function(e){p&&(p.abort(),l(e),p=null)}),void 0===f&&(f=null),p.send(f)})}},function(e,t,n){"use strict";var r=n(10);e.exports=function(e,t,n){var i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},function(e,t,n){"use strict";var r=n(11);e.exports=function(e,t,n,i,o){var a=new Error(e);return r(a,t,n,i,o)}},function(e,t){"use strict";e.exports=function(e,t,n,r,i){return e.config=t,n&&(e.code=n),e.request=r,e.response=i,e}},function(e,t,n){"use strict";function r(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var i=n(2);e.exports=function(e,t,n){if(!t)return e;var o;if(n)o=n(t);else if(i.isURLSearchParams(t))o=t.toString();else{var a=[];i.forEach(t,function(e,t){null!==e&&void 0!==e&&(i.isArray(e)&&(t+="[]"),i.isArray(e)||(e=[e]),i.forEach(e,function(e){i.isDate(e)?e=e.toISOString():i.isObject(e)&&(e=JSON.stringify(e)),a.push(r(t)+"="+r(e))}))}),o=a.join("&")}return o&&(e+=(-1===e.indexOf("?")?"?":"&")+o),e}},function(e,t,n){"use strict";var r=n(2),i=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,o,a={};return e?(r.forEach(e.split("\n"),function(e){if(o=e.indexOf(":"),t=r.trim(e.substr(0,o)).toLowerCase(),n=r.trim(e.substr(o+1)),t){if(a[t]&&i.indexOf(t)>=0)return;a[t]="set-cookie"===t?(a[t]?a[t]:[]).concat([n]):a[t]?a[t]+", "+n:n}}),a):a}},function(e,t,n){"use strict";var r=n(2);e.exports=r.isStandardBrowserEnv()?function(){function e(e){var t=e;return n&&(i.setAttribute("href",t),t=i.href),i.setAttribute("href",t),{href:i.href,protocol:i.protocol?i.protocol.replace(/:$/,""):"",host:i.host,search:i.search?i.search.replace(/^\?/,""):"",hash:i.hash?i.hash.replace(/^#/,""):"",hostname:i.hostname,port:i.port,pathname:"/"===i.pathname.charAt(0)?i.pathname:"/"+i.pathname}}var t,n=/(msie|trident)/i.test(navigator.userAgent),i=document.createElement("a");return t=e(window.location.href),function(n){var i=r.isString(n)?e(n):n;return i.protocol===t.protocol&&i.host===t.host}}():function(){return!0}},function(e,t){"use strict";function n(){this.message="String contains an invalid character"}var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",e.exports=function(e){for(var t,i,o=String(e),a="",s=0,c=r;o.charAt(0|s)||(c="=",s%1);a+=c.charAt(63&t>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;t=t<<8|i}return a}},function(e,t,n){"use strict";var r=n(2);e.exports=r.isStandardBrowserEnv()?{write:function(e,t,n,i,o,a){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(o)&&s.push("domain="+o),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,n){"use strict";function r(){this.handlers=[]}var i=n(2);r.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},r.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},r.prototype.forEach=function(e){i.forEach(this.handlers,function(t){null!==t&&e(t)})},e.exports=r},function(e,t,n){"use strict";function r(e){e.cancelToken&&e.cancelToken.throwIfRequested()}var i=n(2),o=n(19),a=n(20),s=n(6),c=n(21),u=n(22);e.exports=function(e){return r(e),e.baseURL&&!c(e.url)&&(e.url=u(e.baseURL,e.url)),e.headers=e.headers||{},e.data=o(e.data,e.headers,e.transformRequest),e.headers=i.merge(e.headers.common||{},e.headers[e.method]||{},e.headers||{}),i.forEach(["delete","get","head","post","put","patch","common"],function(t){delete e.headers[t]}),(e.adapter||s.adapter)(e).then(function(t){return r(e),t.data=o(t.data,t.headers,e.transformResponse),t},function(t){return a(t)||(r(e),t&&t.response&&(t.response.data=o(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)})}},function(e,t,n){"use strict";var r=n(2);e.exports=function(e,t,n){return r.forEach(n,function(n){e=n(e,t)}),e}},function(e,t){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},function(e,t){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t){"use strict";function n(e){this.message=e}n.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},n.prototype.__CANCEL__=!0,e.exports=n},function(e,t,n){"use strict";function r(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(e){t=e});var n=this;e(function(e){n.reason||(n.reason=new i(e),t(n.reason))})}var i=n(23);r.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},r.source=function(){var e;return{token:new r(function(t){e=t}),cancel:e}},e.exports=r},function(e,t){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}}])}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Vue=t()}(this,function(){"use strict";function e(e){return void 0===e||null===e}function t(e){return void 0!==e&&null!==e}function n(e){return!0===e}function r(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function i(e){return null!==e&&"object"==typeof e}function o(e){return"[object Object]"===hn.call(e)}function a(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function s(e){return null==e?"":"object"==typeof e?JSON.stringify(e,null,2):String(e)}function c(e){var t=parseFloat(e);return isNaN(t)?e:t}function u(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}function f(e,t){return gn.call(e,t)}function d(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}function p(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function h(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function v(e,t){for(var n in t)e[n]=t[n];return e}function m(e){for(var t={},n=0;n0&&(G((c=i(c,(a||"")+"_"+s))[0])&&G(l)&&(f[u]=k(l.text+c[0].text),c.shift()),f.push.apply(f,c)):r(c)?G(l)?f[u]=k(l.text+c):""!==c&&f.push(k(c)):G(c)&&G(l)?f[u]=k(l.text+c.text):(n(o._isVList)&&t(c.tag)&&e(c.key)&&t(a)&&(c.key="__vlist"+a+"_"+s+"__"),f.push(c)));return f}(u):void 0:c===Fr&&(s=function(e){for(var t=0;t=0||n.indexOf(e[i])<0)&&r.push(e[i]);return r}return e}(n[o],r[o],i[o]));return t}(e);r&&v(e.extendOptions,r),(t=e.options=I(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function je(e){this._init(e)}function Le(e){return e&&(e.Ctor.options.name||e.tag)}function Ee(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,!("[object RegExp]"!==hn.call(n))&&e.test(t));var n}function Pe(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=Le(a.componentOptions);s&&!t(s)&&Ie(n,o,r,i)}}}function Ie(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,l(n,t)}function De(e,n){return{staticClass:Fe(e.staticClass,n.staticClass),class:t(e.class)?[e.class,n.class]:n.class}}function Fe(e,t){return e?t?e+" "+t:e:t||""}function Ne(e){return Array.isArray(e)?function(e){for(var n,r="",i=0,o=e.length;i=0&&" "===(_=e.charAt(y));y--);_&&xi.test(_)||(p=!0)}}else void 0===o?(g=i+1,o=e.slice(0,i).trim()):t();if(void 0===o?o=e.slice(0,i).trim():0!==g&&t(),a)for(i=0;i-1?{exp:e.slice(0,Kr),key:'"'+e.slice(Kr+1)+'"'}:{exp:e,key:null};for(zr=e,Kr=Jr=Gr=0;!st();)ct(qr=at())?ut(qr):91===qr&&function(e){var t=1;for(Jr=Kr;!st();)if(e=at(),ct(e))ut(e);else if(91===e&&t++,93===e&&t--,0===t){Gr=Kr;break}}(qr);return{exp:e.slice(0,Jr),key:e.slice(Jr+1,Gr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function at(){return zr.charCodeAt(++Kr)}function st(){return Kr>=Hr}function ct(e){return 34===e||39===e}function ut(e){for(var t=e;!st()&&(e=at())!==t;);}function lt(e,t,n,r,i){var o,a,s,c,u;t=(u=t)._withTask||(u._withTask=function(){dr=!0;var e=u.apply(null,arguments);return dr=!1,e}),n&&(o=t,a=e,s=r,c=Xr,t=function e(){null!==o.apply(null,arguments)&&ft(a,e,s,c)}),Xr.addEventListener(e,t,Bn?{capture:r,passive:i}:r)}function ft(e,t,n,r){(r||Xr).removeEventListener(e,t._withTask||t,n)}function dt(n,r){if(!e(n.data.on)||!e(r.data.on)){var i=r.data.on||{},o=n.data.on||{};Xr=r.elm,function(e){if(t(e[ki])){var n=Dn?"change":"input";e[n]=[].concat(e[ki],e[n]||[]),delete e[ki]}t(e[$i])&&(e.change=[].concat(e[$i],e.change||[]),delete e[$i])}(i),q(i,o,lt,ft,r.context),Xr=void 0}}function pt(n,r){if(!e(n.data.domProps)||!e(r.data.domProps)){var i,o,a=r.elm,s=n.data.domProps||{},u=r.data.domProps||{};t(u.__ob__)&&(u=r.data.domProps=v({},u));for(i in s)e(u[i])&&(a[i]="");for(i in u){if(o=u[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i){a._value=o;var l=e(o)?"":String(o);d=l,!(f=a).composing&&("OPTION"===f.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(f,d)||function(e,n){var r=e.value,i=e._vModifiers;if(t(i)){if(i.lazy)return!1;if(i.number)return c(r)!==c(n);if(i.trim)return r.trim()!==n.trim()}return r!==n}(f,d))&&(a.value=l)}else a[i]=o}}var f,d}function ht(e){var t=vt(e.style);return e.staticStyle?v(e.staticStyle,t):t}function vt(e){return Array.isArray(e)?m(e):"string"==typeof e?Si(e):e}function mt(n,r){var i=r.data,o=n.data;if(!(e(i.staticStyle)&&e(i.style)&&e(o.staticStyle)&&e(o.style))){var a,s,c=r.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,d=vt(r.data.style)||{};r.data.normalizedStyle=t(d.__ob__)?v({},d):d;var p=function(e,t){for(var n,r={},i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=ht(i.data))&&v(r,n);(n=ht(e.data))&&v(r,n);for(var o=e;o=o.parent;)o.data&&(n=ht(o.data))&&v(r,n);return r}(r);for(s in f)e(p[s])&&ji(c,s,"");for(s in p)(a=p[s])!==f[s]&&ji(c,s,null==a?"":a)}}function gt(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function yt(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function _t(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&v(t,Ii(e.name||"v")),v(t,e),t}return"string"==typeof e?Ii(e):void 0}}function bt(e){Vi(function(){Vi(e)})}function wt(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),gt(e,t))}function xt(e,t){e._transitionClasses&&l(e._transitionClasses,t),yt(e,t)}function kt(e,t,n){var r=$t(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Fi?Ri:Bi,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c0&&(n=Fi,l=a,f=o.length):t===Ni?u>0&&(n=Ni,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Fi:Ni:null)?n===Fi?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Fi&&Ui.test(r[Mi+"Property"])}}function Ct(e,t){for(;e.length1}function Lt(e,t){!0!==t.data.show&&St(t)}function Et(e,t,n){Pt(e,t,n),(Dn||Nn)&&setTimeout(function(){Pt(e,t,n)},0)}function Pt(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s-1,a.selected!==o&&(a.selected=o);else if(y(Dt(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function It(e,t){return t.every(function(t){return!y(t,e)})}function Dt(e){return"_value"in e?e._value:e.value}function Ft(e){e.target.composing=!0}function Nt(e){e.target.composing&&(e.target.composing=!1,Mt(e.target,"input"))}function Mt(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Rt(e){return!e.componentInstance||e.data&&e.data.transition?e:Rt(e.componentInstance._vnode)}function Wt(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Wt(Y(t.children)):e}function Bt(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[_n(o)]=i[o];return t}function Vt(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function Ut(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function Ht(e){e.data.newPos=e.elm.getBoundingClientRect()}function zt(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}function qt(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:function(e){for(var t={},n=0,r=e.length;n':'
',So.innerHTML.indexOf(" ")>0}var pn=Object.freeze({}),hn=Object.prototype.toString,vn=u("slot,component",!0),mn=u("key,ref,slot,slot-scope,is"),gn=Object.prototype.hasOwnProperty,yn=/-(\w)/g,_n=d(function(e){return e.replace(yn,function(e,t){return t?t.toUpperCase():""})}),bn=d(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),wn=/\B([A-Z])/g,xn=d(function(e){return e.replace(wn,"-$1").toLowerCase()}),kn=function(e,t,n){return!1},$n=function(e){return e},Cn="data-server-rendered",An=["component","directive","filter"],Sn=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured"],Tn={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:kn,isReservedAttr:kn,isUnknownElement:kn,getTagNamespace:g,parsePlatformTagName:$n,mustUseProp:kn,_lifecycleHooks:Sn},On=/[^\w.$]/,jn="__proto__"in{},Ln="undefined"!=typeof window,En="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,Pn=En&&WXEnvironment.platform.toLowerCase(),In=Ln&&window.navigator.userAgent.toLowerCase(),Dn=In&&/msie|trident/.test(In),Fn=In&&In.indexOf("msie 9.0")>0,Nn=In&&In.indexOf("edge/")>0,Mn=In&&In.indexOf("android")>0||"android"===Pn,Rn=In&&/iphone|ipad|ipod|ios/.test(In)||"ios"===Pn,Wn=(In&&/chrome\/\d+/.test(In),{}.watch),Bn=!1;if(Ln)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Bn=!0}}),window.addEventListener("test-passive",null,Vn)}catch(e){}var Un,Hn,zn=function(){return void 0===Un&&(Un=!Ln&&"undefined"!=typeof global&&"server"===global.process.env.VUE_ENV),Un},qn=Ln&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Kn="undefined"!=typeof Symbol&&x(Symbol)&&"undefined"!=typeof Reflect&&x(Reflect.ownKeys);Hn="undefined"!=typeof Set&&x(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var Jn=g,Gn=0,Xn=function(){this.id=Gn++,this.subs=[]};Xn.prototype.addSub=function(e){this.subs.push(e)},Xn.prototype.removeSub=function(e){l(this.subs,e)},Xn.prototype.depend=function(){Xn.target&&Xn.target.addDep(this)},Xn.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;tCr&&br[n].id>e.id;)n--;br.splice(n+1,0,e)}else br.push(e);kr||(kr=!0,U(ce))}}(this)},Sr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||i(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){R(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},Sr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},Sr.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},Sr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||l(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var Tr={enumerable:!0,configurable:!0,get:g,set:g},Or={lazy:!0};$e(Ce.prototype);var jr,Lr,Er,Pr,Ir={init:function(e,n,r,i){if(!e.componentInstance||e.componentInstance._isDestroyed)(e.componentInstance=(a=e,s={_isComponent:!0,parent:_r,_parentVnode:a,_parentElm:r||null,_refElm:i||null},c=a.data.inlineTemplate,t(c)&&(s.render=c.render,s.staticRenderFns=c.staticRenderFns),new a.componentOptions.Ctor(s))).$mount(n?e.elm:void 0,n);else if(e.data.keepAlive){var o=e;Ir.prepatch(o,o)}var a,s,c},prepatch:function(e,t){var n=t.componentOptions;!function(e,t,n,r,i){var o=!!(i||e.$options._renderChildren||r.data.scopedSlots||e.$scopedSlots!==pn);if(e.$options._parentVnode=r,e.$vnode=r,e._vnode&&(e._vnode.parent=r),e.$options._renderChildren=i,e.$attrs=r.data&&r.data.attrs||pn,e.$listeners=n||pn,t&&e.$options.props){ir.shouldConvert=!1;for(var a=e._props,s=e.$options._propKeys||[],c=0;c1?h(n):n;for(var r=h(arguments,1),i=0,o=n.length;iparseInt(this.max)&&Ie(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};Rr=je,(Br={}).get=function(){return Tn},Object.defineProperty(Rr,"config",Br),Rr.util={warn:Jn,extend:v,mergeOptions:I,defineReactive:S},Rr.set=T,Rr.delete=O,Rr.nextTick=U,Rr.options=Object.create(null),An.forEach(function(e){Rr.options[e+"s"]=Object.create(null)}),Rr.options._base=Rr,v(Rr.options.components,Ur),Rr.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=h(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this},Rr.mixin=function(e){return this.options=I(this.options,e),this},function(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name,a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=I(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)ue(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)le(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,An.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=v({},a.options),i[r]=a,a}}(Rr),Wr=Rr,An.forEach(function(e){Wr[e]=function(t,n){return n?("component"===e&&o(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}),Object.defineProperty(je.prototype,"$isServer",{get:zn}),Object.defineProperty(je.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),je.version="2.5.13";var Hr,zr,qr,Kr,Jr,Gr,Xr,Zr,Yr=u("style,class"),Qr=u("input,textarea,option,select,progress"),ei=function(e,t,n){return"value"===n&&Qr(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},ti=u("contenteditable,draggable,spellcheck"),ni=u("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),ri="http://www.w3.org/1999/xlink",ii=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},oi=function(e){return ii(e)?e.slice(6,e.length):""},ai=function(e){return null==e||!1===e},si={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},ci=u("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),ui=u("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),li=function(e){return ci(e)||ui(e)},fi=Object.create(null),di=u("text,number,password,search,email,tel,url"),pi=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(si[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setAttribute:function(e,t,n){e.setAttribute(t,n)}}),hi={create:function(e,t){We(t)},update:function(e,t){e.data.ref!==t.data.ref&&(We(e,!0),We(t))},destroy:function(e){We(e,!0)}},vi=new Yn("",{},[]),mi=["create","activate","update","remove","destroy"],gi={create:Ue,update:Ue,destroy:function(e){Ue(e,vi)}},yi=Object.create(null),_i=[hi,gi],bi={create:qe,update:qe},wi={create:Je,update:Je},xi=/[\w).+\-_$\]]/,ki="__r",$i="__c",Ci={create:dt,update:dt},Ai={create:pt,update:pt},Si=d(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}),Ti=/^--/,Oi=/\s*!important$/,ji=function(e,t,n){if(Ti.test(t))e.style.setProperty(t,n);else if(Oi.test(n))e.style.setProperty(t,n.replace(Oi,""),"important");else{var r=Ei(t);if(Array.isArray(n))for(var i=0,o=n.length;ip?h(n,e(i[_+1])?null:i[_+1].elm,i,d,_,o):d>_&&m(0,r,f,p)}(c,d,p,o,s):t(p)?(t(r.text)&&C.setTextContent(c,""),h(c,null,p,0,p.length-1,o)):t(d)?m(0,d,0,d.length-1):t(r.text)&&C.setTextContent(c,""):r.text!==i.text&&C.setTextContent(c,i.text),t(l)&&t(u=l.hook)&&t(u=u.postpatch)&&u(r,i)}}}function _(e,r,i){if(n(i)&&t(e.parent))e.parent.data.pendingInsert=r;else for(var o=0;o-1?fi[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:fi[e]=/HTMLUnknownElement/.test(t.toString())},v(je.options.directives,qi),v(je.options.components,Xi),je.prototype.__patch__=Ln?Hi:g,je.prototype.$mount=function(e,t){return e=e&&Ln?Re(e):void 0,r=e,i=t,(n=this).$el=r,n.$options.render||(n.$options.render=er),se(n,"beforeMount"),new Sr(n,function(){n._update(n._render(),i)},g,null,!0),i=!1,null==n.$vnode&&(n._isMounted=!0,se(n,"mounted")),n;var n,r,i},je.nextTick(function(){Tn.devtools&&qn&&qn.emit("init",je)},0);var Zi,Yi=/\{\{((?:.|\n)+?)\}\}/g,Qi=/[-.*+?^${}()|[\]\/\\]/g,eo=d(function(e){var t=e[0].replace(Qi,"\\$&"),n=e[1].replace(Qi,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")}),to={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=rt(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=nt(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}},no={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=rt(e,"style");n&&(e.staticStyle=JSON.stringify(Si(n)));var r=nt(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},ro=u("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),io=u("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),oo=u("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),ao=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,so="[a-zA-Z_][\\w\\-\\.]*",co="((?:"+so+"\\:)?"+so+")",uo=new RegExp("^<"+co),lo=/^\s*(\/?)>/,fo=new RegExp("^<\\/"+co+"[^>]*>"),po=/^]+>/i,ho=/^/g,"$1").replace(//g,"$1")),Do(d,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});l+=e.length-h.length,e=h,r(d,l-f,l)}else{var v=e.indexOf("<");if(0===v){if(ho.test(e)){var m=e.indexOf("--\x3e");if(m>=0){t.shouldKeepComment&&t.comment(e.substring(4,m)),n(m+3);continue}}if(vo.test(e)){var g=e.indexOf("]>");if(g>=0){n(g+2);continue}}var y=e.match(po);if(y){n(y[0].length);continue}var _=e.match(fo);if(_){var b=l;n(_[0].length),r(_[1],b,l);continue}var w=function(){var t=e.match(uo);if(t){var r,i,o={tagName:t[1],attrs:[],start:l};for(n(t[0].length);!(r=e.match(lo))&&(i=e.match(ao));)n(i[0].length),o.attrs.push(i);if(r)return o.unarySlash=r[1],n(r[0].length),o.end=l,o}}();if(w){!function(e){var n,i,l,f=e.tagName,d=e.unarySlash;s&&("p"===o&&oo(f)&&r(o),u(f)&&o===f&&r(f));for(var p=c(f)||!!d,h=e.attrs.length,v=new Array(h),m=0;m=0){for(k=e.slice(v);!(fo.test(k)||uo.test(k)||ho.test(k)||vo.test(k)||($=k.indexOf("<",1))<0);)v+=$,k=e.slice(v);x=e.substring(0,v),n(v)}v<0&&(x=e,e=""),t.chars&&x&&t.chars(x)}if(e===i){t.chars&&t.chars(e);break}}r()}(e,{warn:go,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,start:function(e,a,u){var l=i&&i.ns||$o(e);Dn&&"svg"===l&&(a=function(e){for(var t=[],n=0;nc&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Ge(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c1?1:0:1:n?Math.min(n,2):0]?o[t].trim():e}function a(e){return JSON.parse(JSON.stringify(e))}function s(e){for(var n=arguments,r=Object(e),i=1;i=97&&t<=122||t>=65&&t<=90?"ident":t>=49&&t<=57?"number":"else"}function p(e){var t,n,r,i=e.trim();return("0"!==e.charAt(0)||!isNaN(e))&&(r=i,F.test(r)?(n=(t=i).charCodeAt(0))!==t.charCodeAt(t.length-1)||34!==n&&39!==n?t:t.slice(1,-1):"*"+i)}var h,v=Object.prototype.toString,m="[object Object]",g=Object.prototype.hasOwnProperty,y="undefined"!=typeof Intl&&void 0!==Intl.DateTimeFormat,_="undefined"!=typeof Intl&&void 0!==Intl.NumberFormat,b={beforeCreate:function(){var e=this.$options;if(e.i18n=e.i18n||(e.__i18n?{}:null),e.i18n){if(e.i18n instanceof M){if(e.__i18n)try{var t={};e.__i18n.forEach(function(e){t=s(t,JSON.parse(e))}),Object.keys(t).forEach(function(n){e.i18n.mergeLocaleMessage(n,t[n])})}catch(e){}this._i18n=e.i18n,this._i18nWatcher=this._i18n.watchI18nData(),this._i18n.subscribeDataChanging(this),this._subscribing=!0}else if(n(e.i18n)){if(this.$root&&this.$root.$i18n&&this.$root.$i18n instanceof M&&(e.i18n.root=this.$root.$i18n,e.i18n.formatter=this.$root.$i18n.formatter,e.i18n.fallbackLocale=this.$root.$i18n.fallbackLocale,e.i18n.silentTranslationWarn=this.$root.$i18n.silentTranslationWarn),e.__i18n)try{var r={};e.__i18n.forEach(function(e){r=s(r,JSON.parse(e))}),e.i18n.messages=r}catch(e){}this._i18n=new M(e.i18n),this._i18nWatcher=this._i18n.watchI18nData(),this._i18n.subscribeDataChanging(this),this._subscribing=!0,(void 0===e.i18n.sync||e.i18n.sync)&&(this._localeWatcher=this.$i18n.watchLocale())}}else this.$root&&this.$root.$i18n&&this.$root.$i18n instanceof M?(this._i18n=this.$root.$i18n,this._i18n.subscribeDataChanging(this),this._subscribing=!0):e.parent&&e.parent.$i18n&&e.parent.$i18n instanceof M&&(this._i18n=e.parent.$i18n,this._i18n.subscribeDataChanging(this),this._subscribing=!0)},beforeDestroy:function(){this._i18n&&(this._subscribing&&(this._i18n.unsubscribeDataChanging(this),delete this._subscribing),this._i18nWatcher&&(this._i18nWatcher(),delete this._i18nWatcher),this._localeWatcher&&(this._localeWatcher(),delete this._localeWatcher),this._i18n=null)}},w={name:"i18n",functional:!0,props:{tag:{type:String,default:"span"},path:{type:String,required:!0},locale:{type:String},places:{type:[Array,Object]}},render:function(t,n){var r=n.props,i=n.data,o=n.children,a=n.parent.$i18n;if(o=(o||[]).filter(function(e){return e.tag||(e.text=e.text.trim())}),!a)return o;var s=r.path,c=r.locale,u={},l=r.places||{},f=Array.isArray(l)?l.length>0:Object.keys(l).length>0,d=o.every(function(e){if(e.data&&e.data.attrs){var t=e.data.attrs.place;return void 0!==t&&""!==t}});return f&&o.length>0&&!d&&e("If places prop is set, all child elements must have place prop set."),Array.isArray(l)?l.forEach(function(e,t){u[t]=e}):Object.keys(l).forEach(function(e){u[e]=l[e]}),o.forEach(function(e,t){var n=d?""+e.data.attrs.place:""+t;u[n]=e}),t(r.tag,i,a.i(s,c,u))}},x=function(){this._caches=Object.create(null)};x.prototype.interpolate=function(e,n){var r=this._caches[e];return r||(r=function(e){for(var t=[],n=0,r="";n0)f--,l=j,h[C]();else{if(f=0,!1===(n=p(n)))return!1;h[A]()}};null!==l;)if(u++,"\\"!==(t=e[u])||!function(){var t=e[u+1];if(l===L&&"'"===t||l===E&&'"'===t)return u++,r="\\"+t,h[C](),!0}()){if(i=d(t),(o=(s=D[l])[i]||s.else||I)===I)return;if(l=o[0],(a=h[o[1]])&&(r=void 0===(r=o[2])?t:r,!1===a()))return;if(l===P)return c}}(e))&&(this._cache[e]=t),t||[]},N.prototype.getPathValue=function(e,n){if(!t(e))return null;var r,i=this.parsePath(n);if(r=i,Array.isArray(r)&&0===r.length)return null;for(var o=i.length,a=e,s=0;s-1)e.splice(n,1)}}(this._dataListeners,e)},M.prototype.watchI18nData=function(){var e=this;return this._vm.$watch("$data",function(){for(var t=e._dataListeners.length;t--;)h.nextTick(function(){e._dataListeners[t]&&e._dataListeners[t].$forceUpdate()})},{deep:!0})},M.prototype.watchLocale=function(){if(!this._sync||!this._root)return null;var e=this._vm;return this._root.vm.$watch("locale",function(t){e.$set(e,"locale",t),e.$forceUpdate()},{immediate:!0})},R.vm.get=function(){return this._vm},R.messages.get=function(){return a(this._getMessages())},R.dateTimeFormats.get=function(){return a(this._getDateTimeFormats())},R.numberFormats.get=function(){return a(this._getNumberFormats())},R.locale.get=function(){return this._vm.locale},R.locale.set=function(e){this._vm.$set(this._vm,"locale",e)},R.fallbackLocale.get=function(){return this._vm.fallbackLocale},R.fallbackLocale.set=function(e){this._vm.$set(this._vm,"fallbackLocale",e)},R.missing.get=function(){return this._missing},R.missing.set=function(e){this._missing=e},R.formatter.get=function(){return this._formatter},R.formatter.set=function(e){this._formatter=e},R.silentTranslationWarn.get=function(){return this._silentTranslationWarn},R.silentTranslationWarn.set=function(e){this._silentTranslationWarn=e},M.prototype._getMessages=function(){return this._vm.messages},M.prototype._getDateTimeFormats=function(){return this._vm.dateTimeFormats},M.prototype._getNumberFormats=function(){return this._vm.numberFormats},M.prototype._warnDefault=function(e,t,n,i){return r(n)?(this.missing&&this.missing.apply(null,[e,t,i]),t):n},M.prototype._isFallbackRoot=function(e){return!e&&!r(this._root)&&this._fallbackRoot},M.prototype._interpolate=function(e,t,i,o,a,s){if(!t)return null;var c,u=this._path.getPathValue(t,i);if(Array.isArray(u))return u;if(r(u)){if(!n(t))return null;if("string"!=typeof(c=t[i]))return null}else{if("string"!=typeof u)return null;c=u}return c.indexOf("@:")>=0&&(c=this._link(e,t,c,o,a,s)),s?this._render(c,a,s):c},M.prototype._link=function(e,t,n,r,i,o){var a=n,s=a.match(/(@:[\w\-_|.]+)/g);for(var c in s)if(s.hasOwnProperty(c)){var u=s[c],l=u.substr(2),f=this._interpolate(e,t,l,r,"raw"===i?"string":i,"raw"===i?void 0:o);if(this._isFallbackRoot(f)){if(!this._root)throw Error("unexpected error");var d=this._root;f=d._translate(d._getMessages(),d.locale,d.fallbackLocale,l,r,i,o)}a=(f=this._warnDefault(e,l,f,r))?a.replace(u,f):a}return a},M.prototype._render=function(e,t,n){var r=this._formatter.interpolate(e,n);return"string"===t?r.join(""):r},M.prototype._translate=function(e,t,n,i,o,a,s){var c=this._interpolate(t,e[t],i,o,a,s);return r(c)?r(c=this._interpolate(n,e[n],i,o,a,s))?null:c:c},M.prototype._t=function(e,t,n,r){for(var o=[],a=arguments.length-4;a-- >0;)o[a]=arguments[a+4];if(!e)return"";var s,c=i.apply(void 0,o),u=c.locale||t,l=this._translate(n,u,this.fallbackLocale,e,r,"string",c.params);if(this._isFallbackRoot(l)){if(!this._root)throw Error("unexpected error");return(s=this._root).t.apply(s,[e].concat(o))}return this._warnDefault(u,e,l,r)},M.prototype.t=function(e){for(var t=[],n=arguments.length-1;n-- >0;)t[n]=arguments[n+1];return(r=this)._t.apply(r,[e,this.locale,this._getMessages(),null].concat(t));var r},M.prototype._i=function(e,t,n,r,i){var o=this._translate(n,t,this.fallbackLocale,e,r,"raw",i);if(this._isFallbackRoot(o)){if(!this._root)throw Error("unexpected error");return this._root.i(e,t,i)}return this._warnDefault(t,e,o,r)},M.prototype.i=function(e,t,n){return e?("string"!=typeof t&&(t=this.locale),this._i(e,t,this._getMessages(),null,n)):""},M.prototype._tc=function(e,t,n,r,i){for(var a=[],s=arguments.length-5;s-- >0;)a[s]=arguments[s+5];return e?(void 0===i&&(i=1),o((c=this)._t.apply(c,[e,t,n,r].concat(a)),i)):"";var c},M.prototype.tc=function(e,t){for(var n=[],r=arguments.length-2;r-- >0;)n[r]=arguments[r+2];return(i=this)._tc.apply(i,[e,this.locale,this._getMessages(),null,t].concat(n));var i},M.prototype._te=function(e,t,n){for(var r=[],o=arguments.length-3;o-- >0;)r[o]=arguments[o+3];var a=i.apply(void 0,r).locale||t;return this._exist(n[a],e)},M.prototype.te=function(e,t){return this._te(e,this.locale,this._getMessages(),t)},M.prototype.getLocaleMessage=function(e){return a(this._vm.messages[e]||{})},M.prototype.setLocaleMessage=function(e,t){this._vm.messages[e]=t},M.prototype.mergeLocaleMessage=function(e,t){this._vm.messages[e]=h.util.extend(this._vm.messages[e]||{},t)},M.prototype.getDateTimeFormat=function(e){return a(this._vm.dateTimeFormats[e]||{})},M.prototype.setDateTimeFormat=function(e,t){this._vm.dateTimeFormats[e]=t},M.prototype.mergeDateTimeFormat=function(e,t){this._vm.dateTimeFormats[e]=h.util.extend(this._vm.dateTimeFormats[e]||{},t)},M.prototype._localizeDateTime=function(e,t,n,i,o){var a=t,s=i[a];if((r(s)||r(s[o]))&&(s=i[a=n]),r(s)||r(s[o]))return null;var c=s[o],u=a+"__"+o,l=this._dateTimeFormatters[u];return l||(l=this._dateTimeFormatters[u]=new Intl.DateTimeFormat(a,c)),l.format(e)},M.prototype._d=function(e,t,n){if(!n)return new Intl.DateTimeFormat(t).format(e);var r=this._localizeDateTime(e,t,this.fallbackLocale,this._getDateTimeFormats(),n);if(this._isFallbackRoot(r)){if(!this._root)throw Error("unexpected error");return this._root.d(e,n,t)}return r||""},M.prototype.d=function(e){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=this.locale,o=null;return 1===n.length?"string"==typeof n[0]?o=n[0]:t(n[0])&&(n[0].locale&&(i=n[0].locale),n[0].key&&(o=n[0].key)):2===n.length&&("string"==typeof n[0]&&(o=n[0]),"string"==typeof n[1]&&(i=n[1])),this._d(e,i,o)},M.prototype.getNumberFormat=function(e){return a(this._vm.numberFormats[e]||{})},M.prototype.setNumberFormat=function(e,t){this._vm.numberFormats[e]=t},M.prototype.mergeNumberFormat=function(e,t){this._vm.numberFormats[e]=h.util.extend(this._vm.numberFormats[e]||{},t)},M.prototype._localizeNumber=function(e,t,n,i,o){var a=t,s=i[a];if((r(s)||r(s[o]))&&(s=i[a=n]),r(s)||r(s[o]))return null;var c=s[o],u=a+"__"+o,l=this._numberFormatters[u];return l||(l=this._numberFormatters[u]=new Intl.NumberFormat(a,c)),l.format(e)},M.prototype._n=function(e,t,n){if(!n)return new Intl.NumberFormat(t).format(e);var r=this._localizeNumber(e,t,this.fallbackLocale,this._getNumberFormats(),n);if(this._isFallbackRoot(r)){if(!this._root)throw Error("unexpected error");return this._root.n(e,n,t)}return r||""},M.prototype.n=function(e){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=this.locale,o=null;return 1===n.length?"string"==typeof n[0]?o=n[0]:t(n[0])&&(n[0].locale&&(i=n[0].locale),n[0].key&&(o=n[0].key)):2===n.length&&("string"==typeof n[0]&&(o=n[0]),"string"==typeof n[1]&&(i=n[1])),this._n(e,i,o)},Object.defineProperties(M.prototype,R),M.availabilities={dateTimeFormat:y,numberFormat:_},M.install=function e(t){var n;(h=t).version&&Number(h.version.split(".")[0]),e.installed=!0,Object.defineProperty(h.prototype,"$i18n",{get:function(){return this._i18n}}),n=h,Object.defineProperty(n.prototype,"$t",{get:function(){var e=this;return function(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=e.$i18n;return i._t.apply(i,[t,i.locale,i._getMessages(),e].concat(n))}}}),Object.defineProperty(n.prototype,"$tc",{get:function(){var e=this;return function(t,n){for(var r=[],i=arguments.length-2;i-- >0;)r[i]=arguments[i+2];var o=e.$i18n;return o._tc.apply(o,[t,o.locale,o._getMessages(),e,n].concat(r))}}}),Object.defineProperty(n.prototype,"$te",{get:function(){var e=this;return function(t,n){var r=e.$i18n;return r._te(t,r.locale,r._getMessages(),n)}}}),Object.defineProperty(n.prototype,"$d",{get:function(){var e=this;return function(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];return(i=e.$i18n).d.apply(i,[t].concat(n));var i}}}),Object.defineProperty(n.prototype,"$n",{get:function(){var e=this;return function(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];return(i=e.$i18n).n.apply(i,[t].concat(n));var i}}}),h.mixin(b),h.directive("t",{bind:c,update:u}),h.component(w.name,w);var r=h.config.optionMergeStrategies;r.i18n=r.methods},M.version="7.3.4","undefined"!=typeof window&&window.Vue&&window.Vue.use(M),M});var messages={en:{title:"Stairs",systemID:"System ID",firmwareVersion:"Firmware version: ",copyright:"Copyright © 2017 Mark van Renswoude",loading:"Please wait, loading configuration...",applyButton:"Apply",applyButtonSaving:"Saving...",wifiStatus:{accesspoint:{title:"AP: ",disabled:"Disabled"},stationmode:{title:"WiFi: ",disabled:"Disabled",idle:"Idle",noSSID:"SSID not found",scanCompleted:"Scan completed",connectFailed:"Failed to connect",connectionLost:"Connection lost",disconnected:"Disconnected"}},status:{tabTitle:"Status",title:"Current status",allStepsTrue:"Set intensity for all steps",allStepsFalse:"Set intensity individually"},triggers:{tabTitle:"Triggers",timeTitle:"Time",timeInternet:"Please note that time triggers require an internet connection.",timeNoData:"No time triggers defined yet",timeAdd:"Add",timeDelete:"Delete",timeEnabled:"Enabled",timeFixedTime:"Fixed time",timeSunrise:"Sunrise",timeSunset:"Sunset",timeTime:"Time in minutes",timeMonday:"Monday",timeTuesday:"Tuesday",timeWednesday:"Wednesday",timeThursday:"Thursday",timeFriday:"Friday",timeSaturday:"Saturday",timeSunday:"Sunday",motionTitle:"Motion"},connection:{tabTitle:"Connection",title:"Connection parameters",accesspoint:"Enable access point",accesspointHint:"Allows for a direct connection from your device to this Stairs module for configuration purposes. The Stairs configuration is available on http://192.168.1.4/ when you are connected to it. Turn it off as soon as station mode is configured, as it is not secured in any way. You can always turn this option back on by pushing the access point button until the LED lights up.",stationmode:"Enable station mode",stationmodeHint:"Connect this Stairs module to your own WiFi router. Please enter the SSID, password and further configuration below.",ssid:"SSID",password:"Password",dhcp:"Use DHCP",dhcpHint:"Automatically assigns an IP address to this Stairs module. You probably want to keep this on unless you know what you're doing.",ipaddress:"IP address",subnetmask:"Subnet mask",gateway:"Gateway",hostname:"Hostname",hostnamePlaceholder:"Default: mac address"},system:{tabTitle:"System",ntpTitle:"Time synchronisation (NTP)",pinsTitle:"Hardware pinout",mapsTitle:"Google Maps API",firmwareTitle:"Firmware update",ntpLat:"Latitude",ntpLng:"Longitude",ntpLocation:"Get latitude / longitude from location",ntpLocationSearch:"Search",pinLEDAP:"Access Point status LED pin (+3.3v)",pinLEDSTA:"Station Mode status LED pin (+3.3v)",pinAPButton:"Enable Access Point button pin (pull low)",pinPWMDriverSDA:"PCA9685 PWM driver SDA pin (data)",pinPWMDriverSCL:"PCA9685 PWM driver SCL pin (clock)",pwmAddress:"PCA9685 PWM driver I²C address",pwmFrequency:"PCA9685 PWM driver frequency",mapsAPIKey:"Google Maps API key",mapsAPIKeyhint:"Recommended if using time triggers. Used for looking up the current timezone. Will work without an API key, but Google might throttle your request. Register for a free API key at http://console.developers.google.com/ and activate it's use for the Maps API."}},nl:{title:"Trap",systemID:"Systeem ID",firmwareVersion:"Firmware versie: ",copyright:"Copyright © 2017 Mark van Renswoude",loading:"Een ogenblik geduld, bezig met laden van configuratie...",applyButton:"Toepassen",applyButtonSaving:"Bezig met opslaan...",wifiStatus:{accesspoint:{title:"AP: ",disabled:"Uitgeschakeld"},stationmode:{title:"WiFi: ",disabled:"Uitgeschakeld",idle:"Slaapstand",noSSID:"SSID niet gevonden",scanCompleted:"Scan afgerond",connectFailed:"Kan geen verbinding maken",connectionLost:"Verbinding verloren",disconnected:"Niet verbonden"}},status:{tabTitle:"Status",title:"Huidige status",allStepsTrue:"Alle treden dezelfde intensiteit",allStepsFalse:"Treden individueel instellen"},triggers:{tabTitle:"Triggers",timeTitle:"Tijd",timeInternet:"Let op dat voor tijd triggers een internetverbinding vereist is.",timeNoData:"Nog geen tijd triggers geconfigureerd",timeAdd:"Toevoegen",timeDelete:"Verwijderen",timeEnabled:"Actief",timeFixedTime:"Vaste tijd",timeSunrise:"Zonsopkomst",timeSunset:"Zonsondergang",timeTime:"Tijd in minuten",timeMonday:"Maandag",timeTuesday:"Dinsdag",timeWednesday:"Woensdag",timeThursday:"Donderdag",timeFriday:"Vrijdag",timeSaturday:"Zaterdag",timeSunday:"Zondag",motionTitle:"Beweging"},connection:{tabTitle:"Verbinding",title:"Verbinding configuratie",accesspoint:"Access point inschakelen",accesspointhint:"Maakt het mogelijk om een directe connectie vanaf een apparaat naar deze Trap module te maken om de module te configureren. De Trap module is te benaderen via http://192.168.1.4/ nadat je connectie hebt gemaakt. Schakel deze optie uit na het configureren, aangezien deze niet beveiligd is. Je kunt deze optie ook inschakelen door op de Access point knop te drukken totdat de LED aan gaat.",stationmode:"Verbinding met WiFi maken",stationmodehint:"Verbind deze Trap module aan je eigen WiFi router. Vul hieronder het SSID en wachtwoord in, en configureer eventuel de overige opties.",ssid:"SSID",password:"Wachtwoord",dhcp:"Gebruik DHCP",dhcphint:"Automatisch een IP adres toewijzen aan deze Trap module. Waarschijnlijk wil je deze optie aan laten, tenzij je weet waar je mee bezig bent.",ipaddress:"IP adres",subnetmask:"Subnet masker",gateway:"Gateway",hostname:"Hostnaam",hostnamePlaceholder:"Standaard: mac adres"},system:{tabTitle:"Systeem",ntpTitle:"Tijd synchronisatie (NTP)",pinsTitle:"Hardware aansluitingen",mapsTitle:"Google Maps API",firmwareTitle:"Firmware bijwerken",ntpLat:"Breedtegraad",ntpLng:"Lengtegraad",ntpLocation:"Breedtegraad / lengtegraad ophalen op basis van locatie",ntpLocationSearch:"Zoeken",pinLEDAP:"Access Point status LED pin (+3.3v)",pinLEDSTA:"WiFi status LED pin (+3.3v)",pinAPButton:"Access Point inschakelen knop pin (actief laag)",pinPWMDriverSDA:"PCA9685 PWM driver SDA pin (data)",pinPWMDriverSCL:"PCA9685 PWM driver SCL pin (klok)",pwmAddress:"PCA9685 PWM driver I²C address",pwmFrequency:"PCA9685 PWM driver frequency",mapsAPIKey:"Google Maps API key",mapsAPIKeyhint:"Aangeraden bij gebruik van de tijd triggers. Wordt gebruikt om de huidige tijdzone te bepalen. Werkt ook zonder API key, maar Google beperkt dan sterk de requests. Registreer een gratis API key op http://console.developers.google.com/ en activeer het voor gebruik met de Maps API."}}};function startApp(){var e=new VueI18n({locale:navigator.language,fallbackLocale:"en",messages:messages});new Vue({el:"#app",i18n:e,data:{loading:!0,saving:!1,savingSteps:!1,loadingIndicator:"|",uploadProgress:!1,activeTab:"status",version:{systemID:"loading...",version:"loading..."},wifiStatus:{ap:{enabled:!1,ip:"0.0.0.0"},station:{enabled:!1,status:0,ip:"0.0.0.0"}},searchingLocation:!1,triggers:{time:{enabled:!1,transitionTime:0,triggers:[]}},connection:{hostname:null,accesspoint:!0,station:!1,ssid:null,password:null,dhcp:!0,ip:null,subnetmask:null,gateway:null},system:{lat:null,lng:null,pins:{ledAP:null,ledSTA:null,apButton:null,pwmSDA:null,pwmSCL:null},pwmAddress:null,pwmFrequency:null,mapsAPIKey:""},allSteps:!0,allStepsValue:0,steps:[],location:"",fixedTimes:[],relativeTimes:[]},created:function(){var t=this;document.title=e.t("title");var n=window.location.hash.substr(1);n&&(t.activeTab=n),t.startLoadingIndicator(),t.updateWiFiStatus(),t.disableStepsChanged=!1,t.savingStepsTimer=!1;for(var r=[],i=[],o=0;o<1440;o+=15)r.push(o);for(o=-240;o<=240;o+=15)i.push(o);t.fixedTimes=r,t.relativeTimes=i,t.loadVersion().then(function(){t.loadConnection().then(function(){t.loadSystem().then(function(){t.loadTimeTriggers().then(function(){t.loadSteps().then(function(){t.stopLoadingIndicator(),t.loading=!1})})})})})},methods:{loadVersion:function(){var e=this;return axios.get("/api/version").then(function(t){"object"==typeof t.data&&(e.version=t.data)}).catch(function(e){console.log(e)})},loadConnection:function(){var e=this;return axios.get("/api/connection").then(function(t){"object"==typeof t.data&&(e.connection=t.data)}).catch(function(e){console.log(e)})},loadSystem:function(){var e=this;return axios.get("/api/system").then(function(t){"object"==typeof t.data&&(e.system=t.data)}).catch(function(e){console.log(e)})},loadTimeTriggers:function(){var e=this;return axios.get("/api/triggers/time").then(function(t){if("object"==typeof t.data){var n={enabled:t.data.enabled||!1,transitionTime:t.data.transitionTime||0,triggers:[]};if(Array.isArray(t.data.triggers))for(var r=0;r0?0:i.time||0,relativeTime:i.triggerType>0?i.time||0:0,monday:(1&i.daysOfWeek)>0,tuesday:(2&i.daysOfWeek)>0,wednesday:(4&i.daysOfWeek)>0,thursday:(8&i.daysOfWeek)>0,friday:(16&i.daysOfWeek)>0,saturday:(32&i.daysOfWeek)>0,sunday:(64&i.daysOfWeek)>0})}e.triggers.time=n}}).catch(function(e){console.log(e)})},loadSteps:function(){var e=this;return axios.get("/api/steps").then(function(t){if(Array.isArray(t.data)){for(var n=!0,r=!1,i=0,o=[],a=0;a0){var n=t.data.results[0].geometry.location;e.system.lat=n.lat,e.system.lng=n.lng}}).catch(function(e){console.log(e)}).then(function(){e.searchingLocation=!1}))},applyTriggers:function(){var e=this;if(!e.saving){e.saving=!0;for(var t={enabled:e.triggers.time.enabled,transitionTime:e.triggers.time.transitionTime,triggers:[]},n=0;n0?r.relativeTime:r.fixedTime,daysOfWeek:(r.monday?1:0)|(r.tuesday?2:0)|(r.wednesday?4:0)|(r.thursday?8:0)|(r.friday?16:0)|(r.saturday?32:0)|(r.sunday?64:0)})}axios.post("/api/triggers/time",t).then(function(e){}).catch(function(e){console.log(e)}).then(function(){e.saving=!1})}},addTimeTrigger:function(){this.triggers.time.triggers.push({brightness:0,triggerType:0,enabled:!0,fixedTime:540,relativeTime:0,monday:!0,tuesday:!0,wednesday:!0,thursday:!0,friday:!0,saturday:!0,sunday:!0})},deleteTimeTrigger:function(e){this.triggers.time.triggers.splice(e,1)},getDisplayTime:function(e,t){var n="";t&&e>=0&&(n+="+");var r=Math.floor(e/60),i=Math.abs(e)%60;return n+=r+":",i<10&&(n+="0"),n+=i}},watch:{allSteps:{handler:function(){this.stepsChanged()},sync:!0},allStepsValue:{handler:function(){this.stepsChanged()},sync:!0},steps:{handler:function(){this.stepsChanged()},deep:!0,sync:!0},activeTab:function(e){window.location.hash="#"+e}}})} \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.axios=t():e.axios=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";function r(e){var t=new a(e),n=o(a.prototype.request,t);return i.extend(n,a.prototype,t),i.extend(n,t),n}var i=n(2),o=n(3),a=n(5),s=n(6),c=r(s);c.Axios=a,c.create=function(e){return r(i.merge(s,e))},c.Cancel=n(23),c.CancelToken=n(24),c.isCancel=n(20),c.all=function(e){return Promise.all(e)},c.spread=n(25),e.exports=c,e.exports.default=c},function(e,t,n){"use strict";function r(e){return"[object Array]"===u.call(e)}function i(e){return null!==e&&"object"==typeof e}function o(e){return"[object Function]"===u.call(e)}function a(e,t){if(null!==e&&void 0!==e)if("object"!=typeof e&&(e=[e]),r(e))for(var n=0,i=e.length;n=200&&e<300}};s.headers={common:{Accept:"application/json, text/plain, */*"}},i.forEach(["delete","get","head"],function(e){s.headers[e]={}}),i.forEach(["post","put","patch"],function(e){s.headers[e]=i.merge(a)}),e.exports=s},function(e,t,n){"use strict";var r=n(2);e.exports=function(e,t){r.forEach(e,function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])})}},function(e,t,n){"use strict";var r=n(2),i=n(9),o=n(12),a=n(13),s=n(14),c=n(10),u="undefined"!=typeof window&&window.btoa&&window.btoa.bind(window)||n(15);e.exports=function(e){return new Promise(function(t,l){var f=e.data,d=e.headers;r.isFormData(f)&&delete d["Content-Type"];var p=new XMLHttpRequest,h="onreadystatechange",v=!1;if("undefined"==typeof window||!window.XDomainRequest||"withCredentials"in p||s(e.url)||(p=new window.XDomainRequest,h="onload",v=!0,p.onprogress=function(){},p.ontimeout=function(){}),e.auth){var m=e.auth.username||"",g=e.auth.password||"";d.Authorization="Basic "+u(m+":"+g)}if(p.open(e.method.toUpperCase(),o(e.url,e.params,e.paramsSerializer),!0),p.timeout=e.timeout,p[h]=function(){if(p&&(4===p.readyState||v)&&(0!==p.status||p.responseURL&&0===p.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in p?a(p.getAllResponseHeaders()):null,r={data:e.responseType&&"text"!==e.responseType?p.response:p.responseText,status:1223===p.status?204:p.status,statusText:1223===p.status?"No Content":p.statusText,headers:n,config:e,request:p};i(t,l,r),p=null}},p.onerror=function(){l(c("Network Error",e,null,p)),p=null},p.ontimeout=function(){l(c("timeout of "+e.timeout+"ms exceeded",e,"ECONNABORTED",p)),p=null},r.isStandardBrowserEnv()){var y=n(16),_=(e.withCredentials||s(e.url))&&e.xsrfCookieName?y.read(e.xsrfCookieName):void 0;_&&(d[e.xsrfHeaderName]=_)}if("setRequestHeader"in p&&r.forEach(d,function(e,t){void 0===f&&"content-type"===t.toLowerCase()?delete d[t]:p.setRequestHeader(t,e)}),e.withCredentials&&(p.withCredentials=!0),e.responseType)try{p.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&p.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&p.upload&&p.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then(function(e){p&&(p.abort(),l(e),p=null)}),void 0===f&&(f=null),p.send(f)})}},function(e,t,n){"use strict";var r=n(10);e.exports=function(e,t,n){var i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},function(e,t,n){"use strict";var r=n(11);e.exports=function(e,t,n,i,o){var a=new Error(e);return r(a,t,n,i,o)}},function(e,t){"use strict";e.exports=function(e,t,n,r,i){return e.config=t,n&&(e.code=n),e.request=r,e.response=i,e}},function(e,t,n){"use strict";function r(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var i=n(2);e.exports=function(e,t,n){if(!t)return e;var o;if(n)o=n(t);else if(i.isURLSearchParams(t))o=t.toString();else{var a=[];i.forEach(t,function(e,t){null!==e&&void 0!==e&&(i.isArray(e)&&(t+="[]"),i.isArray(e)||(e=[e]),i.forEach(e,function(e){i.isDate(e)?e=e.toISOString():i.isObject(e)&&(e=JSON.stringify(e)),a.push(r(t)+"="+r(e))}))}),o=a.join("&")}return o&&(e+=(-1===e.indexOf("?")?"?":"&")+o),e}},function(e,t,n){"use strict";var r=n(2),i=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,o,a={};return e?(r.forEach(e.split("\n"),function(e){if(o=e.indexOf(":"),t=r.trim(e.substr(0,o)).toLowerCase(),n=r.trim(e.substr(o+1)),t){if(a[t]&&i.indexOf(t)>=0)return;a[t]="set-cookie"===t?(a[t]?a[t]:[]).concat([n]):a[t]?a[t]+", "+n:n}}),a):a}},function(e,t,n){"use strict";var r=n(2);e.exports=r.isStandardBrowserEnv()?function(){function e(e){var t=e;return n&&(i.setAttribute("href",t),t=i.href),i.setAttribute("href",t),{href:i.href,protocol:i.protocol?i.protocol.replace(/:$/,""):"",host:i.host,search:i.search?i.search.replace(/^\?/,""):"",hash:i.hash?i.hash.replace(/^#/,""):"",hostname:i.hostname,port:i.port,pathname:"/"===i.pathname.charAt(0)?i.pathname:"/"+i.pathname}}var t,n=/(msie|trident)/i.test(navigator.userAgent),i=document.createElement("a");return t=e(window.location.href),function(n){var i=r.isString(n)?e(n):n;return i.protocol===t.protocol&&i.host===t.host}}():function(){return!0}},function(e,t){"use strict";function n(){this.message="String contains an invalid character"}var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",e.exports=function(e){for(var t,i,o=String(e),a="",s=0,c=r;o.charAt(0|s)||(c="=",s%1);a+=c.charAt(63&t>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;t=t<<8|i}return a}},function(e,t,n){"use strict";var r=n(2);e.exports=r.isStandardBrowserEnv()?{write:function(e,t,n,i,o,a){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(o)&&s.push("domain="+o),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,n){"use strict";function r(){this.handlers=[]}var i=n(2);r.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},r.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},r.prototype.forEach=function(e){i.forEach(this.handlers,function(t){null!==t&&e(t)})},e.exports=r},function(e,t,n){"use strict";function r(e){e.cancelToken&&e.cancelToken.throwIfRequested()}var i=n(2),o=n(19),a=n(20),s=n(6),c=n(21),u=n(22);e.exports=function(e){r(e),e.baseURL&&!c(e.url)&&(e.url=u(e.baseURL,e.url)),e.headers=e.headers||{},e.data=o(e.data,e.headers,e.transformRequest),e.headers=i.merge(e.headers.common||{},e.headers[e.method]||{},e.headers||{}),i.forEach(["delete","get","head","post","put","patch","common"],function(t){delete e.headers[t]});return(e.adapter||s.adapter)(e).then(function(t){return r(e),t.data=o(t.data,t.headers,e.transformResponse),t},function(t){return a(t)||(r(e),t&&t.response&&(t.response.data=o(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)})}},function(e,t,n){"use strict";var r=n(2);e.exports=function(e,t,n){return r.forEach(n,function(n){e=n(e,t)}),e}},function(e,t){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},function(e,t){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t){"use strict";function n(e){this.message=e}n.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},n.prototype.__CANCEL__=!0,e.exports=n},function(e,t,n){"use strict";function r(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(e){t=e});var n=this;e(function(e){n.reason||(n.reason=new i(e),t(n.reason))})}var i=n(23);r.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},r.source=function(){var e;return{token:new r(function(t){e=t}),cancel:e}},e.exports=r},function(e,t){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}}])}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Vue=t()}(this,function(){"use strict";function e(e){return void 0===e||null===e}function t(e){return void 0!==e&&null!==e}function n(e){return!0===e}function r(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function i(e){return null!==e&&"object"==typeof e}function o(e){return"[object Object]"===mn.call(e)}function a(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function s(e){return null==e?"":"object"==typeof e?JSON.stringify(e,null,2):String(e)}function c(e){var t=parseFloat(e);return isNaN(t)?e:t}function u(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}function f(e,t){return _n.call(e,t)}function d(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}function p(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function h(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function v(e,t){for(var n in t)e[n]=t[n];return e}function m(e){for(var t={},n=0;n0&&(X((c=i(c,(a||"")+"_"+s))[0])&&X(l)&&(f[u]=$(l.text+c[0].text),c.shift()),f.push.apply(f,c)):r(c)?X(l)?f[u]=$(l.text+c):""!==c&&f.push($(c)):X(c)&&X(l)?f[u]=$(l.text+c.text):(n(o._isVList)&&t(c.tag)&&e(c.key)&&t(a)&&(c.key="__vlist"+a+"_"+s+"__"),f.push(c)));return f}(u):void 0:c===Lr&&(s=function(e){for(var t=0;t=0||n.indexOf(e[i])<0)&&r.push(e[i]);return r}return e}(n[o],r[o],i[o]));return t}(e);r&&v(e.extendOptions,r),(t=e.options=I(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function De(e){this._init(e)}function Ee(e){return e&&(e.Ctor.options.name||e.tag)}function Le(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,!("[object RegExp]"!==mn.call(n))&&e.test(t));var n}function Pe(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=Ee(a.componentOptions);s&&!t(s)&&Ie(n,o,r,i)}}}function Ie(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,l(n,t)}function Fe(e,n){return{staticClass:Ne(e.staticClass,n.staticClass),class:t(e.class)?[e.class,n.class]:n.class}}function Ne(e,t){return e?t?e+" "+t:e:t||""}function Me(e){return Array.isArray(e)?function(e){for(var n,r="",i=0,o=e.length;i=0&&" "===(m=e.charAt(v));v--);m&&yi.test(m)||(l=!0)}}else void 0===o?(h=i+1,o=e.slice(0,i).trim()):t();if(void 0===o?o=e.slice(0,i).trim():0!==h&&t(),a)for(i=0;i-1?{exp:e.slice(0,Vr),key:'"'+e.slice(Vr+1)+'"'}:{exp:e,key:null};for(Wr=e,Vr=Hr=zr=0;!ct();)ut(Ur=st())?lt(Ur):91===Ur&&function(e){var t=1;for(Hr=Vr;!ct();)if(e=st(),ut(e))lt(e);else if(91===e&&t++,93===e&&t--,0===t){zr=Vr;break}}(Ur);return{exp:e.slice(0,Hr),key:e.slice(Hr+1,zr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function st(){return Wr.charCodeAt(++Vr)}function ct(){return Vr>=Br}function ut(e){return 34===e||39===e}function lt(e){for(var t=e;!ct()&&(e=st())!==t;);}function ft(e,t,n,r,i){t=(o=t)._withTask||(o._withTask=function(){pr=!0;var e=o.apply(null,arguments);return pr=!1,e}),n&&(t=function(e,t,n){var r=qr;return function i(){null!==e.apply(null,arguments)&&dt(t,i,n,r)}}(t,e,r)),qr.addEventListener(e,t,Un?{capture:r,passive:i}:r);var o}function dt(e,t,n,r){(r||qr).removeEventListener(e,t._withTask||t,n)}function pt(n,r){if(!e(n.data.on)||!e(r.data.on)){var i=r.data.on||{},o=n.data.on||{};qr=r.elm,function(e){if(t(e[_i])){var n=Fn?"change":"input";e[n]=[].concat(e[_i],e[n]||[]),delete e[_i]}t(e[bi])&&(e.change=[].concat(e[bi],e.change||[]),delete e[bi])}(i),K(i,o,ft,dt,r.context),qr=void 0}}function ht(n,r){if(!e(n.data.domProps)||!e(r.data.domProps)){var i,o,a=r.elm,s=n.data.domProps||{},u=r.data.domProps||{};t(u.__ob__)&&(u=r.data.domProps=v({},u));for(i in s)e(u[i])&&(a[i]="");for(i in u){if(o=u[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i){a._value=o;var l=e(o)?"":String(o);d=l,!(f=a).composing&&("OPTION"===f.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(f,d)||function(e,n){var r=e.value,i=e._vModifiers;if(t(i)){if(i.lazy)return!1;if(i.number)return c(r)!==c(n);if(i.trim)return r.trim()!==n.trim()}return r!==n}(f,d))&&(a.value=l)}else a[i]=o}}var f,d}function vt(e){var t=mt(e.style);return e.staticStyle?v(e.staticStyle,t):t}function mt(e){return Array.isArray(e)?m(e):"string"==typeof e?ki(e):e}function gt(n,r){var i=r.data,o=n.data;if(!(e(i.staticStyle)&&e(i.style)&&e(o.staticStyle)&&e(o.style))){var a,s,c=r.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,d=mt(r.data.style)||{};r.data.normalizedStyle=t(d.__ob__)?v({},d):d;var p=function(e,t){for(var n,r={},i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=vt(i.data))&&v(r,n);(n=vt(e.data))&&v(r,n);for(var o=e;o=o.parent;)o.data&&(n=vt(o.data))&&v(r,n);return r}(r);for(s in f)e(p[s])&&Ai(c,s,"");for(s in p)(a=p[s])!==f[s]&&Ai(c,s,null==a?"":a)}}function yt(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function _t(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function bt(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&v(t,ji(e.name||"v")),v(t,e),t}return"string"==typeof e?ji(e):void 0}}function wt(e){Mi(function(){Mi(e)})}function xt(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),yt(e,t))}function kt(e,t){e._transitionClasses&&l(e._transitionClasses,t),_t(e,t)}function $t(e,t,n){var r=Tt(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ei?Ii:Ni,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c0&&(n=Ei,l=a,f=o.length):t===Li?u>0&&(n=Li,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ei:Li:null)?n===Ei?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ei&&Ri.test(r[Pi+"Property"])}}function At(e,t){for(;e.length1}function Et(e,t){!0!==t.data.show&&St(t)}function Lt(e,t,n){Pt(e,t,n),(Fn||Mn)&&setTimeout(function(){Pt(e,t,n)},0)}function Pt(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s-1,a.selected!==o&&(a.selected=o);else if(y(Ft(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function It(e,t){return t.every(function(t){return!y(t,e)})}function Ft(e){return"_value"in e?e._value:e.value}function Nt(e){e.target.composing=!0}function Mt(e){e.target.composing&&(e.target.composing=!1,Rt(e.target,"input"))}function Rt(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Bt(e){return!e.componentInstance||e.data&&e.data.transition?e:Bt(e.componentInstance._vnode)}function Wt(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Wt(Q(t.children)):e}function Ut(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[wn(o)]=i[o];return t}function Vt(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function Ht(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function zt(e){e.data.newPos=e.elm.getBoundingClientRect()}function qt(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}function Kt(e,t){var n=t?So:Co;return e.replace(n,function(e){return Ao[e]})}function Jt(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:function(e){for(var t={},n=0,r=e.length;n':'
',xo.innerHTML.indexOf(" ")>0}var vn=Object.freeze({}),mn=Object.prototype.toString,gn=u("slot,component",!0),yn=u("key,ref,slot,slot-scope,is"),_n=Object.prototype.hasOwnProperty,bn=/-(\w)/g,wn=d(function(e){return e.replace(bn,function(e,t){return t?t.toUpperCase():""})}),xn=d(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),kn=/\B([A-Z])/g,$n=d(function(e){return e.replace(kn,"-$1").toLowerCase()}),Tn=function(e,t,n){return!1},An=function(e){return e},Cn=["component","directive","filter"],Sn=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured"],On={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:Tn,isReservedAttr:Tn,isUnknownElement:Tn,getTagNamespace:g,parsePlatformTagName:An,mustUseProp:Tn,_lifecycleHooks:Sn},jn=/[^\w.$]/,Dn="__proto__"in{},En="undefined"!=typeof window,Ln="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,Pn=Ln&&WXEnvironment.platform.toLowerCase(),In=En&&window.navigator.userAgent.toLowerCase(),Fn=In&&/msie|trident/.test(In),Nn=In&&In.indexOf("msie 9.0")>0,Mn=In&&In.indexOf("edge/")>0,Rn=In&&In.indexOf("android")>0||"android"===Pn,Bn=In&&/iphone|ipad|ipod|ios/.test(In)||"ios"===Pn,Wn=(In&&/chrome\/\d+/.test(In),{}.watch),Un=!1;if(En)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Un=!0}}),window.addEventListener("test-passive",null,Vn)}catch(e){}var Hn,zn,qn=function(){return void 0===Hn&&(Hn=!En&&"undefined"!=typeof global&&"server"===global.process.env.VUE_ENV),Hn},Kn=En&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,Jn="undefined"!=typeof Symbol&&k(Symbol)&&"undefined"!=typeof Reflect&&k(Reflect.ownKeys);zn="undefined"!=typeof Set&&k(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var Gn=g,Xn=0,Zn=function(){this.id=Xn++,this.subs=[]};Zn.prototype.addSub=function(e){this.subs.push(e)},Zn.prototype.removeSub=function(e){l(this.subs,e)},Zn.prototype.depend=function(){Zn.target&&Zn.target.addDep(this)},Zn.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;tAr&&wr[n].id>e.id;)n--;wr.splice(n+1,0,e)}else wr.push(e);$r||($r=!0,H(ue))}}(this)},Sr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||i(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){B(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},Sr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},Sr.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},Sr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||l(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var Or={enumerable:!0,configurable:!0,get:g,set:g},jr={lazy:!0};Te(Ae.prototype);var Dr={init:function(e,n,r,i){if(!e.componentInstance||e.componentInstance._isDestroyed)(e.componentInstance=function(e,n,o,a){var s={_isComponent:!0,parent:br,_parentVnode:e,_parentElm:r||null,_refElm:i||null},c=e.data.inlineTemplate;return t(c)&&(s.render=c.render,s.staticRenderFns=c.staticRenderFns),new e.componentOptions.Ctor(s)}(e)).$mount(n?e.elm:void 0,n);else if(e.data.keepAlive){var o=e;Dr.prepatch(o,o)}},prepatch:function(e,t){var n=t.componentOptions;!function(e,t,n,r,i){var o=!!(i||e.$options._renderChildren||r.data.scopedSlots||e.$scopedSlots!==vn);if(e.$options._parentVnode=r,e.$vnode=r,e._vnode&&(e._vnode.parent=r),e.$options._renderChildren=i,e.$attrs=r.data&&r.data.attrs||vn,e.$listeners=n||vn,t&&e.$options.props){or.shouldConvert=!1;for(var a=e._props,s=e.$options._propKeys||[],c=0;c1?h(n):n;for(var r=h(arguments,1),i=0,o=n.length;iparseInt(this.max)&&Ie(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={};t.get=function(){return On},Object.defineProperty(e,"config",t),e.util={warn:Gn,extend:v,mergeOptions:I,defineReactive:S},e.set=O,e.delete=j,e.nextTick=H,e.options=Object.create(null),Cn.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,v(e.options.components,Rr),e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=h(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this},e.mixin=function(e){return this.options=I(this.options,e),this},function(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name,a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=I(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)le(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)fe(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,Cn.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=v({},a.options),i[r]=a,a}}(e),n=e,Cn.forEach(function(e){n[e]=function(t,n){return n?("component"===e&&o(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}});var n}(De),Object.defineProperty(De.prototype,"$isServer",{get:qn}),Object.defineProperty(De.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),De.version="2.5.13";var Br,Wr,Ur,Vr,Hr,zr,qr,Kr,Jr=u("style,class"),Gr=u("input,textarea,option,select,progress"),Xr=function(e,t,n){return"value"===n&&Gr(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Zr=u("contenteditable,draggable,spellcheck"),Yr=u("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Qr="http://www.w3.org/1999/xlink",ei=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},ti=function(e){return ei(e)?e.slice(6,e.length):""},ni=function(e){return null==e||!1===e},ri={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},ii=u("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),oi=u("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),ai=function(e){return ii(e)||oi(e)},si=Object.create(null),ci=u("text,number,password,search,email,tel,url"),ui=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(ri[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setAttribute:function(e,t,n){e.setAttribute(t,n)}}),li={create:function(e,t){We(t)},update:function(e,t){e.data.ref!==t.data.ref&&(We(e,!0),We(t))},destroy:function(e){We(e,!0)}},fi=new Qn("",{},[]),di=["create","activate","update","remove","destroy"],pi={create:He,update:He,destroy:function(e){He(e,fi)}},hi=Object.create(null),vi=[li,pi],mi={create:Ke,update:Ke},gi={create:Ge,update:Ge},yi=/[\w).+\-_$\]]/,_i="__r",bi="__c",wi={create:pt,update:pt},xi={create:ht,update:ht},ki=d(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}),$i=/^--/,Ti=/\s*!important$/,Ai=function(e,t,n){if($i.test(t))e.style.setProperty(t,n);else if(Ti.test(n))e.style.setProperty(t,n.replace(Ti,""),"important");else{var r=Si(t);if(Array.isArray(n))for(var i=0,o=n.length;ip?h(n,e(i[_+1])?null:i[_+1].elm,i,d,_,o):d>_&&m(0,r,f,p)}(c,d,p,o,s):t(p)?(t(r.text)&&T.setTextContent(c,""),h(c,null,p,0,p.length-1,o)):t(d)?m(0,d,0,d.length-1):t(r.text)&&T.setTextContent(c,""):r.text!==i.text&&T.setTextContent(c,i.text),t(l)&&t(u=l.hook)&&t(u=u.postpatch)&&u(r,i)}}}function _(e,r,i){if(n(i)&&t(e.parent))e.parent.data.pendingInsert=r;else for(var o=0;o-1?si[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:si[e]=/HTMLUnknownElement/.test(t.toString())},v(De.options.directives,Ui),v(De.options.components,qi),De.prototype.__patch__=En?Bi:g,De.prototype.$mount=function(e,t){return function(e,t,n){e.$el=t,e.$options.render||(e.$options.render=tr),ce(e,"beforeMount");return new Sr(e,function(){e._update(e._render(),n)},g,null,!0),n=!1,null==e.$vnode&&(e._isMounted=!0,ce(e,"mounted")),e}(this,e=e&&En?Be(e):void 0,t)},De.nextTick(function(){On.devtools&&Kn&&Kn.emit("init",De)},0);var Ki,Ji=/\{\{((?:.|\n)+?)\}\}/g,Gi=/[-.*+?^${}()|[\]\/\\]/g,Xi=d(function(e){var t=e[0].replace(Gi,"\\$&"),n=e[1].replace(Gi,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")}),Zi={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=it(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=rt(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}},Yi={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=it(e,"style");n&&(e.staticStyle=JSON.stringify(ki(n)));var r=rt(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},Qi=u("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),eo=u("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),to=u("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),no=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ro="((?:[a-zA-Z_][\\w\\-\\.]*\\:)?[a-zA-Z_][\\w\\-\\.]*)",io=new RegExp("^<"+ro),oo=/^\s*(\/?)>/,ao=new RegExp("^<\\/"+ro+"[^>]*>"),so=/^]+>/i,co=/^/g,"$1").replace(//g,"$1")),jo(d,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});l+=e.length-h.length,e=h,r(d,l-f,l)}else{var v=e.indexOf("<");if(0===v){if(co.test(e)){var m=e.indexOf("--\x3e");if(m>=0){t.shouldKeepComment&&t.comment(e.substring(4,m)),n(m+3);continue}}if(uo.test(e)){var g=e.indexOf("]>");if(g>=0){n(g+2);continue}}var y=e.match(so);if(y){n(y[0].length);continue}var _=e.match(ao);if(_){var b=l;n(_[0].length),r(_[1],b,l);continue}var w=function(){var t=e.match(io);if(t){var r={tagName:t[1],attrs:[],start:l};n(t[0].length);for(var i,o;!(i=e.match(oo))&&(o=e.match(no));)n(o[0].length),r.attrs.push(o);if(i)return r.unarySlash=i[1],n(i[0].length),r.end=l,r}}();if(w){!function(e){var n=e.tagName,i=e.unarySlash;s&&("p"===o&&to(n)&&r(o),u(n)&&o===n&&r(n));for(var l=c(n)||!!i,f=e.attrs.length,d=new Array(f),p=0;p=0){for(k=e.slice(v);!(ao.test(k)||io.test(k)||co.test(k)||uo.test(k)||($=k.indexOf("<",1))<0);)v+=$,k=e.slice(v);x=e.substring(0,v),n(v)}v<0&&(x=e,e=""),t.chars&&x&&t.chars(x)}if(e===i){t.chars&&t.chars(e);break}}r()}(e,{warn:fo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,start:function(e,a,u){var l=i&&i.ns||_o(e);Fn&&"svg"===l&&(a=function(e){for(var t=[],n=0;nc&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Xe(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c1?1:0:1:e?Math.min(e,2):0;var n}(t,n.length)]?n[t].trim():e}function a(e){return JSON.parse(JSON.stringify(e))}function s(e){for(var n=arguments,r=Object(e),i=1;i=97&&t<=122||t>=65&&t<=90?"ident":t>=49&&t<=57?"number":"else"}function p(e){var t=e.trim();return("0"!==e.charAt(0)||!isNaN(e))&&(n=t,F.test(n)?function(e){var t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}(t):"*"+t);var n}var h,v=Object.prototype.toString,m="[object Object]",g=Object.prototype.hasOwnProperty,y="undefined"!=typeof Intl&&void 0!==Intl.DateTimeFormat,_="undefined"!=typeof Intl&&void 0!==Intl.NumberFormat,b={beforeCreate:function(){var e=this.$options;if(e.i18n=e.i18n||(e.__i18n?{}:null),e.i18n){if(e.i18n instanceof M){if(e.__i18n)try{var t={};e.__i18n.forEach(function(e){t=s(t,JSON.parse(e))}),Object.keys(t).forEach(function(n){e.i18n.mergeLocaleMessage(n,t[n])})}catch(e){}this._i18n=e.i18n,this._i18nWatcher=this._i18n.watchI18nData(),this._i18n.subscribeDataChanging(this),this._subscribing=!0}else if(n(e.i18n)){if(this.$root&&this.$root.$i18n&&this.$root.$i18n instanceof M&&(e.i18n.root=this.$root.$i18n,e.i18n.fallbackLocale=this.$root.$i18n.fallbackLocale,e.i18n.silentTranslationWarn=this.$root.$i18n.silentTranslationWarn),e.__i18n)try{var r={};e.__i18n.forEach(function(e){r=s(r,JSON.parse(e))}),e.i18n.messages=r}catch(e){}this._i18n=new M(e.i18n),this._i18nWatcher=this._i18n.watchI18nData(),this._i18n.subscribeDataChanging(this),this._subscribing=!0,(void 0===e.i18n.sync||e.i18n.sync)&&(this._localeWatcher=this.$i18n.watchLocale())}}else this.$root&&this.$root.$i18n&&this.$root.$i18n instanceof M?(this._i18n=this.$root.$i18n,this._i18n.subscribeDataChanging(this),this._subscribing=!0):e.parent&&e.parent.$i18n&&e.parent.$i18n instanceof M&&(this._i18n=e.parent.$i18n,this._i18n.subscribeDataChanging(this),this._subscribing=!0)},beforeDestroy:function(){this._i18n&&(this._subscribing&&(this._i18n.unsubscribeDataChanging(this),delete this._subscribing),this._i18nWatcher&&(this._i18nWatcher(),delete this._i18nWatcher),this._localeWatcher&&(this._localeWatcher(),delete this._localeWatcher),this._i18n=null)}},w={name:"i18n",functional:!0,props:{tag:{type:String,default:"span"},path:{type:String,required:!0},locale:{type:String},places:{type:[Array,Object]}},render:function(t,n){var r=n.props,i=n.data,o=n.children,a=n.parent.$i18n;if(o=(o||[]).filter(function(e){return e.tag||(e.text=e.text.trim())}),!a)return o;var s=r.path,c=r.locale,u={},l=r.places||{},f=Array.isArray(l)?l.length>0:Object.keys(l).length>0,d=o.every(function(e){if(e.data&&e.data.attrs){var t=e.data.attrs.place;return void 0!==t&&""!==t}});return f&&o.length>0&&!d&&e("If places prop is set, all child elements must have place prop set."),Array.isArray(l)?l.forEach(function(e,t){u[t]=e}):Object.keys(l).forEach(function(e){u[e]=l[e]}),o.forEach(function(e,t){var n=d?""+e.data.attrs.place:""+t;u[n]=e}),t(r.tag,i,a.i(s,c,u))}},x=function(){this._caches=Object.create(null)};x.prototype.interpolate=function(e,n){var r=this._caches[e];return r||(r=function(e){for(var t=[],n=0,r="";n0)f--,l=j,h[T]();else{if(f=0,!1===(n=p(n)))return!1;h[A]()}};null!==l;)if(u++,"\\"!==(t=e[u])||!function(){var t=e[u+1];if(l===D&&"'"===t||l===E&&'"'===t)return u++,r="\\"+t,h[T](),!0}()){if(i=d(t),(o=(s=I[l])[i]||s.else||P)===P)return;if(l=o[0],(a=h[o[1]])&&(r=o[2],r=void 0===r?t:r,!1===a()))return;if(l===L)return c}}(e))&&(this._cache[e]=t),t||[]},N.prototype.getPathValue=function(e,n){if(!t(e))return null;var r=this.parsePath(n);if(i=r,Array.isArray(i)&&0===i.length)return null;for(var i,o=r.length,a=e,s=0;s-1)e.splice(n,1)}}(this._dataListeners,e)},M.prototype.watchI18nData=function(){var e=this;return this._vm.$watch("$data",function(){for(var t=e._dataListeners.length;t--;)h.nextTick(function(){e._dataListeners[t]&&e._dataListeners[t].$forceUpdate()})},{deep:!0})},M.prototype.watchLocale=function(){if(!this._sync||!this._root)return null;var e=this._vm;return this._root.vm.$watch("locale",function(t){e.$set(e,"locale",t),e.$forceUpdate()},{immediate:!0})},R.vm.get=function(){return this._vm},R.messages.get=function(){return a(this._getMessages())},R.dateTimeFormats.get=function(){return a(this._getDateTimeFormats())},R.numberFormats.get=function(){return a(this._getNumberFormats())},R.locale.get=function(){return this._vm.locale},R.locale.set=function(e){this._vm.$set(this._vm,"locale",e)},R.fallbackLocale.get=function(){return this._vm.fallbackLocale},R.fallbackLocale.set=function(e){this._vm.$set(this._vm,"fallbackLocale",e)},R.missing.get=function(){return this._missing},R.missing.set=function(e){this._missing=e},R.formatter.get=function(){return this._formatter},R.formatter.set=function(e){this._formatter=e},R.silentTranslationWarn.get=function(){return this._silentTranslationWarn},R.silentTranslationWarn.set=function(e){this._silentTranslationWarn=e},M.prototype._getMessages=function(){return this._vm.messages},M.prototype._getDateTimeFormats=function(){return this._vm.dateTimeFormats},M.prototype._getNumberFormats=function(){return this._vm.numberFormats},M.prototype._warnDefault=function(e,t,n,i){return r(n)?(this.missing&&this.missing.apply(null,[e,t,i]),t):n},M.prototype._isFallbackRoot=function(e){return!e&&!r(this._root)&&this._fallbackRoot},M.prototype._interpolate=function(e,t,i,o,a,s){if(!t)return null;var c=this._path.getPathValue(t,i);if(Array.isArray(c))return c;var u;if(r(c)){if(!n(t))return null;if("string"!=typeof(u=t[i]))return null}else{if("string"!=typeof c)return null;u=c}return u.indexOf("@:")>=0&&(u=this._link(e,t,u,o,a,s)),s?this._render(u,a,s):u},M.prototype._link=function(e,t,n,r,i,o){var a=n,s=a.match(/(@:[\w\-_|.]+)/g);for(var c in s)if(s.hasOwnProperty(c)){var u=s[c],l=u.substr(2),f=this._interpolate(e,t,l,r,"raw"===i?"string":i,"raw"===i?void 0:o);if(this._isFallbackRoot(f)){if(!this._root)throw Error("unexpected error");var d=this._root;f=d._translate(d._getMessages(),d.locale,d.fallbackLocale,l,r,i,o)}a=(f=this._warnDefault(e,l,f,r))?a.replace(u,f):a}return a},M.prototype._render=function(e,t,n){var r=this._formatter.interpolate(e,n);return"string"===t?r.join(""):r},M.prototype._translate=function(e,t,n,i,o,a,s){var c=this._interpolate(t,e[t],i,o,a,s);return r(c)?r(c=this._interpolate(n,e[n],i,o,a,s))?null:c:c},M.prototype._t=function(e,t,n,r){for(var o=[],a=arguments.length-4;a-- >0;)o[a]=arguments[a+4];if(!e)return"";var s=i.apply(void 0,o),c=s.locale||t,u=this._translate(n,c,this.fallbackLocale,e,r,"string",s.params);if(this._isFallbackRoot(u)){if(!this._root)throw Error("unexpected error");return(l=this._root).t.apply(l,[e].concat(o))}return this._warnDefault(c,e,u,r);var l},M.prototype.t=function(e){for(var t=[],n=arguments.length-1;n-- >0;)t[n]=arguments[n+1];return(r=this)._t.apply(r,[e,this.locale,this._getMessages(),null].concat(t));var r},M.prototype._i=function(e,t,n,r,i){var o=this._translate(n,t,this.fallbackLocale,e,r,"raw",i);if(this._isFallbackRoot(o)){if(!this._root)throw Error("unexpected error");return this._root.i(e,t,i)}return this._warnDefault(t,e,o,r)},M.prototype.i=function(e,t,n){return e?("string"!=typeof t&&(t=this.locale),this._i(e,t,this._getMessages(),null,n)):""},M.prototype._tc=function(e,t,n,r,i){for(var a=[],s=arguments.length-5;s-- >0;)a[s]=arguments[s+5];return e?(void 0===i&&(i=1),o((c=this)._t.apply(c,[e,t,n,r].concat(a)),i)):"";var c},M.prototype.tc=function(e,t){for(var n=[],r=arguments.length-2;r-- >0;)n[r]=arguments[r+2];return(i=this)._tc.apply(i,[e,this.locale,this._getMessages(),null,t].concat(n));var i},M.prototype._te=function(e,t,n){for(var r=[],o=arguments.length-3;o-- >0;)r[o]=arguments[o+3];var a=i.apply(void 0,r).locale||t;return this._exist(n[a],e)},M.prototype.te=function(e,t){return this._te(e,this.locale,this._getMessages(),t)},M.prototype.getLocaleMessage=function(e){return a(this._vm.messages[e]||{})},M.prototype.setLocaleMessage=function(e,t){this._vm.messages[e]=t},M.prototype.mergeLocaleMessage=function(e,t){this._vm.messages[e]=h.util.extend(this._vm.messages[e]||{},t)},M.prototype.getDateTimeFormat=function(e){return a(this._vm.dateTimeFormats[e]||{})},M.prototype.setDateTimeFormat=function(e,t){this._vm.dateTimeFormats[e]=t},M.prototype.mergeDateTimeFormat=function(e,t){this._vm.dateTimeFormats[e]=h.util.extend(this._vm.dateTimeFormats[e]||{},t)},M.prototype._localizeDateTime=function(e,t,n,i,o){var a=t,s=i[a];if((r(s)||r(s[o]))&&(a=n,s=i[a]),r(s)||r(s[o]))return null;var c=s[o],u=a+"__"+o,l=this._dateTimeFormatters[u];return l||(l=this._dateTimeFormatters[u]=new Intl.DateTimeFormat(a,c)),l.format(e)},M.prototype._d=function(e,t,n){if(!n)return new Intl.DateTimeFormat(t).format(e);var r=this._localizeDateTime(e,t,this.fallbackLocale,this._getDateTimeFormats(),n);if(this._isFallbackRoot(r)){if(!this._root)throw Error("unexpected error");return this._root.d(e,n,t)}return r||""},M.prototype.d=function(e){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=this.locale,o=null;return 1===n.length?"string"==typeof n[0]?o=n[0]:t(n[0])&&(n[0].locale&&(i=n[0].locale),n[0].key&&(o=n[0].key)):2===n.length&&("string"==typeof n[0]&&(o=n[0]),"string"==typeof n[1]&&(i=n[1])),this._d(e,i,o)},M.prototype.getNumberFormat=function(e){return a(this._vm.numberFormats[e]||{})},M.prototype.setNumberFormat=function(e,t){this._vm.numberFormats[e]=t},M.prototype.mergeNumberFormat=function(e,t){this._vm.numberFormats[e]=h.util.extend(this._vm.numberFormats[e]||{},t)},M.prototype._localizeNumber=function(e,t,n,i,o){var a=t,s=i[a];if((r(s)||r(s[o]))&&(a=n,s=i[a]),r(s)||r(s[o]))return null;var c=s[o],u=a+"__"+o,l=this._numberFormatters[u];return l||(l=this._numberFormatters[u]=new Intl.NumberFormat(a,c)),l.format(e)},M.prototype._n=function(e,t,n){if(!n)return new Intl.NumberFormat(t).format(e);var r=this._localizeNumber(e,t,this.fallbackLocale,this._getNumberFormats(),n);if(this._isFallbackRoot(r)){if(!this._root)throw Error("unexpected error");return this._root.n(e,n,t)}return r||""},M.prototype.n=function(e){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=this.locale,o=null;return 1===n.length?"string"==typeof n[0]?o=n[0]:t(n[0])&&(n[0].locale&&(i=n[0].locale),n[0].key&&(o=n[0].key)):2===n.length&&("string"==typeof n[0]&&(o=n[0]),"string"==typeof n[1]&&(i=n[1])),this._n(e,i,o)},Object.defineProperties(M.prototype,R),M.availabilities={dateTimeFormat:y,numberFormat:_},M.install=function e(t){(h=t).version&&Number(h.version.split(".")[0]),e.installed=!0,Object.defineProperty(h.prototype,"$i18n",{get:function(){return this._i18n}}),n=h,Object.defineProperty(n.prototype,"$t",{get:function(){var e=this;return function(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=e.$i18n;return i._t.apply(i,[t,i.locale,i._getMessages(),e].concat(n))}}}),Object.defineProperty(n.prototype,"$tc",{get:function(){var e=this;return function(t,n){for(var r=[],i=arguments.length-2;i-- >0;)r[i]=arguments[i+2];var o=e.$i18n;return o._tc.apply(o,[t,o.locale,o._getMessages(),e,n].concat(r))}}}),Object.defineProperty(n.prototype,"$te",{get:function(){var e=this;return function(t,n){var r=e.$i18n;return r._te(t,r.locale,r._getMessages(),n)}}}),Object.defineProperty(n.prototype,"$d",{get:function(){var e=this;return function(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];return(i=e.$i18n).d.apply(i,[t].concat(n));var i}}}),Object.defineProperty(n.prototype,"$n",{get:function(){var e=this;return function(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];return(i=e.$i18n).n.apply(i,[t].concat(n));var i}}}),h.mixin(b),h.directive("t",{bind:c,update:u}),h.component(w.name,w);var n,r=h.config.optionMergeStrategies;r.i18n=r.methods},M.version="7.3.3","undefined"!=typeof window&&window.Vue&&window.Vue.use(M),M});var messages={en:{title:"Stairs",systemID:"System ID",firmwareVersion:"Firmware version: ",copyright:"Copyright © 2017 Mark van Renswoude",loading:"Please wait, loading configuration...",applyButton:"Apply",applyButtonSaving:"Saving...",wifiStatus:{accesspoint:{title:"AP: ",disabled:"Disabled"},stationmode:{title:"WiFi: ",disabled:"Disabled",idle:"Idle",noSSID:"SSID not found",scanCompleted:"Scan completed",connectFailed:"Failed to connect",connectionLost:"Connection lost",disconnected:"Disconnected"}},status:{tabTitle:"Status",title:"Current status",allStepsTrue:"Set intensity for all steps",allStepsFalse:"Set intensity individually"},triggers:{tabTitle:"Triggers",timeTitle:"Time",timeInternet:"Please note that time triggers require an internet connection.",timeNoData:"No time triggers defined yet",timeEnabled:"Enable time triggers",timeTransitionTime:"Transition time in milliseconds",timeAdd:"Add",timeDelete:"Delete",timeTriggerEnabled:"Enabled",timeFixedTime:"Fixed time",timeSunrise:"Sunrise",timeSunset:"Sunset",timeTime:"Time in minutes",timeMonday:"Monday",timeTuesday:"Tuesday",timeWednesday:"Wednesday",timeThursday:"Thursday",timeFriday:"Friday",timeSaturday:"Saturday",timeSunday:"Sunday",motionTitle:"Motion",motionNoData:"No motion triggers defined yet",motionEnabled:"Enable motion triggers",motionEnabledDuringTimeTrigger:"Activate even if a time trigger is already active",motionTransitionTime:"Transition time in milliseconds",motionTriggerEnabled:"Enabled",motionAdd:"Add",motionDelete:"Delete",motionPin:"GPIO pin (active high)",motionDirection:"Sweep animation",motionDirectionNonDirectional:"None (all steps at the same time)",motionDirectionTopDown:"Top down",motionDirectionBottomUp:"Bottom up"},connection:{tabTitle:"Connection",title:"Connection parameters",accesspoint:"Enable access point",accesspointHint:"Allows for a direct connection from your device to this Stairs module for configuration purposes. The Stairs configuration is available on http://192.168.1.4/ when you are connected to it. Turn it off as soon as station mode is configured, as it is not secured in any way. You can always turn this option back on by pushing the access point button until the LED lights up.",stationmode:"Enable station mode",stationmodeHint:"Connect this Stairs module to your own WiFi router. Please enter the SSID, password and further configuration below.",ssid:"SSID",password:"Password",dhcp:"Use DHCP",dhcpHint:"Automatically assigns an IP address to this Stairs module. You probably want to keep this on unless you know what you're doing.",ipaddress:"IP address",subnetmask:"Subnet mask",gateway:"Gateway",hostname:"Hostname",hostnamePlaceholder:"Default: mac address"},system:{tabTitle:"System",ntpTitle:"Time synchronisation (NTP)",pinsTitle:"Hardware pinout",mapsTitle:"Google Maps API",firmwareTitle:"Firmware update",ntpLat:"Latitude",ntpLng:"Longitude",ntpLocation:"Get latitude / longitude from location",ntpLocationSearch:"Search",pinLEDAP:"Access Point status LED pin (+3.3v)",pinLEDSTA:"Station Mode status LED pin (+3.3v)",pinAPButton:"Enable Access Point button pin (active low)",pinPWMDriverSDA:"PCA9685 PWM driver SDA pin (data)",pinPWMDriverSCL:"PCA9685 PWM driver SCL pin (clock)",pwmAddress:"PCA9685 PWM driver I²C address",pwmFrequency:"PCA9685 PWM driver frequency",mapsAPIKey:"Google Maps API key",mapsAPIKeyhint:"Recommended if using time triggers. Used for looking up the current timezone. Will work without an API key, but Google might throttle your request. Register for a free API key at http://console.developers.google.com/ and activate it's use for the Maps API."}},nl:{title:"Trap",systemID:"Systeem ID",firmwareVersion:"Firmware versie: ",copyright:"Copyright © 2017 Mark van Renswoude",loading:"Een ogenblik geduld, bezig met laden van configuratie...",applyButton:"Toepassen",applyButtonSaving:"Bezig met opslaan...",wifiStatus:{accesspoint:{title:"AP: ",disabled:"Uitgeschakeld"},stationmode:{title:"WiFi: ",disabled:"Uitgeschakeld",idle:"Slaapstand",noSSID:"SSID niet gevonden",scanCompleted:"Scan afgerond",connectFailed:"Kan geen verbinding maken",connectionLost:"Verbinding verloren",disconnected:"Niet verbonden"}},status:{tabTitle:"Status",title:"Huidige status",allStepsTrue:"Alle treden dezelfde intensiteit",allStepsFalse:"Treden individueel instellen"},triggers:{tabTitle:"Triggers",timeTitle:"Tijd",timeInternet:"Let op dat voor tijd triggers een internetverbinding vereist is.",timeNoData:"Nog geen tijd triggers geconfigureerd",timeEnabled:"Tijd triggers inschakelen",timeTransitionTime:"Transitie tijd in milliseconden",timeAdd:"Toevoegen",timeDelete:"Verwijderen",timeTriggerEnabled:"Actief",timeFixedTime:"Vaste tijd",timeSunrise:"Zonsopkomst",timeSunset:"Zonsondergang",timeTime:"Tijd in minuten",timeMonday:"Maandag",timeTuesday:"Dinsdag",timeWednesday:"Woensdag",timeThursday:"Donderdag",timeFriday:"Vrijdag",timeSaturday:"Zaterdag",timeSunday:"Zondag",motionTitle:"Beweging",motionNoData:"Nog geen beweging triggers geconfigureerd",motionEnabled:"Beweging triggers inschakelen",motionEnabledDuringTimeTrigger:"Ook inschakelen als er al een tijd trigger actief is",motionTransitionTime:"Transitie tijd in milliseconden",motionTriggerEnabled:"Actief",motionAdd:"Toevoegen",motionDelete:"Verwijderen",motionPin:"GPIO pin (actief hoog)",motionDirection:"Animatie",motionDirectionNonDirectional:"Geen (alle treden gelijktijdig)",motionDirectionTopDown:"Boven naar beneden",motionDirectionBottomUp:"Beneden naar boven"},connection:{tabTitle:"Verbinding",title:"Verbinding configuratie",accesspoint:"Access point inschakelen",accesspointhint:"Maakt het mogelijk om een directe connectie vanaf een apparaat naar deze Trap module te maken om de module te configureren. De Trap module is te benaderen via http://192.168.1.4/ nadat je connectie hebt gemaakt. Schakel deze optie uit na het configureren, aangezien deze niet beveiligd is. Je kunt deze optie ook inschakelen door op de Access point knop te drukken totdat de LED aan gaat.",stationmode:"Verbinding met WiFi maken",stationmodehint:"Verbind deze Trap module aan je eigen WiFi router. Vul hieronder het SSID en wachtwoord in, en configureer eventuel de overige opties.",ssid:"SSID",password:"Wachtwoord",dhcp:"Gebruik DHCP",dhcphint:"Automatisch een IP adres toewijzen aan deze Trap module. Waarschijnlijk wil je deze optie aan laten, tenzij je weet waar je mee bezig bent.",ipaddress:"IP adres",subnetmask:"Subnet masker",gateway:"Gateway",hostname:"Hostnaam",hostnamePlaceholder:"Standaard: mac adres"},system:{tabTitle:"Systeem",ntpTitle:"Tijd synchronisatie (NTP)",pinsTitle:"Hardware aansluitingen",mapsTitle:"Google Maps API",firmwareTitle:"Firmware bijwerken",ntpLat:"Breedtegraad",ntpLng:"Lengtegraad",ntpLocation:"Breedtegraad / lengtegraad ophalen op basis van locatie",ntpLocationSearch:"Zoeken",pinLEDAP:"Access Point status LED pin (+3.3v)",pinLEDSTA:"WiFi status LED pin (+3.3v)",pinAPButton:"Access Point inschakelen knop pin (actief laag)",pinPWMDriverSDA:"PCA9685 PWM driver SDA pin (data)",pinPWMDriverSCL:"PCA9685 PWM driver SCL pin (klok)",pwmAddress:"PCA9685 PWM driver I²C address",pwmFrequency:"PCA9685 PWM driver frequency",mapsAPIKey:"Google Maps API key",mapsAPIKeyhint:"Aangeraden bij gebruik van de tijd triggers. Wordt gebruikt om de huidige tijdzone te bepalen. Werkt ook zonder API key, maar Google beperkt dan sterk de requests. Registreer een gratis API key op http://console.developers.google.com/ en activeer het voor gebruik met de Maps API."}}};function startApp(){var e=new VueI18n({locale:navigator.language,fallbackLocale:"en",messages:messages});new Vue({el:"#app",i18n:e,data:{loading:!0,saving:!1,savingSteps:!1,loadingIndicator:"|",uploadProgress:!1,activeTab:"status",version:{systemID:"loading...",version:"loading..."},wifiStatus:{ap:{enabled:!1,ip:"0.0.0.0"},station:{enabled:!1,status:0,ip:"0.0.0.0"}},searchingLocation:!1,triggers:{time:{enabled:!1,transitionTime:null,triggers:[]},motion:{enabled:!1,enabledDuringTimeTrigger:!1,transitionTime:null,delay:null,triggers:[]}},connection:{hostname:null,accesspoint:!0,station:!1,ssid:null,password:null,dhcp:!0,ip:null,subnetmask:null,gateway:null},system:{lat:null,lng:null,pins:{ledAP:null,ledSTA:null,apButton:null,pwmSDA:null,pwmSCL:null},pwmAddress:null,pwmFrequency:null,mapsAPIKey:""},allSteps:!0,allStepsValue:0,steps:[],location:"",fixedTimes:[],relativeTimes:[]},created:function(){var t=this;document.title=e.t("title");var n=window.location.hash.substr(1);n&&(t.activeTab=n),t.startLoadingIndicator(),t.updateWiFiStatus(),t.disableStepsChanged=!1,t.savingStepsTimer=!1;for(var r=[],i=[],o=0;o<1440;o+=15)r.push(o);for(o=-240;o<=240;o+=15)i.push(o);t.fixedTimes=r,t.relativeTimes=i,t.loadVersion().then(function(){t.loadConnection().then(function(){t.loadSystem().then(function(){t.loadTimeTriggers().then(function(){t.loadMotionTriggers().then(function(){t.loadSteps().then(function(){t.stopLoadingIndicator(),t.loading=!1})})})})})})},methods:{loadVersion:function(){var e=this;return axios.get("/api/version").then(function(t){"object"==typeof t.data&&(e.version=t.data)}).catch(function(e){console.log(e)})},loadConnection:function(){var e=this;return axios.get("/api/connection").then(function(t){"object"==typeof t.data&&(e.connection=t.data)}).catch(function(e){console.log(e)})},loadSystem:function(){var e=this;return axios.get("/api/system").then(function(t){"object"==typeof t.data&&(e.system=t.data)}).catch(function(e){console.log(e)})},loadTimeTriggers:function(){var e=this;return axios.get("/api/triggers/time").then(function(t){if("object"==typeof t.data){var n={enabled:t.data.enabled||!1,transitionTime:t.data.transitionTime||0,triggers:[]};if(Array.isArray(t.data.triggers))for(var r=0;r0?0:i.time||0,relativeTime:i.triggerType>0?i.time||0:0,monday:(1&i.daysOfWeek)>0,tuesday:(2&i.daysOfWeek)>0,wednesday:(4&i.daysOfWeek)>0,thursday:(8&i.daysOfWeek)>0,friday:(16&i.daysOfWeek)>0,saturday:(32&i.daysOfWeek)>0,sunday:(64&i.daysOfWeek)>0})}e.triggers.time=n}}).catch(function(e){console.log(e)})},loadMotionTriggers:function(){var e=this;return axios.get("/api/triggers/motion").then(function(t){"object"==typeof t.data&&(e.triggers.motion=t.data)}).catch(function(e){console.log(e)})},loadSteps:function(){var e=this;return axios.get("/api/steps").then(function(t){if(Array.isArray(t.data)){for(var n=!0,r=!1,i=0,o=[],a=0;a0){var n=t.data.results[0].geometry.location;e.system.lat=n.lat,e.system.lng=n.lng}}).catch(function(e){console.log(e)}).then(function(){e.searchingLocation=!1}))},applyTriggers:function(){var e=this;if(!e.saving){e.saving=!0;for(var t={enabled:e.triggers.time.enabled,transitionTime:e.triggers.time.transitionTime,triggers:[]},n=0;n0?r.relativeTime:r.fixedTime,daysOfWeek:(r.monday?1:0)|(r.tuesday?2:0)|(r.wednesday?4:0)|(r.thursday?8:0)|(r.friday?16:0)|(r.saturday?32:0)|(r.sunday?64:0)})}axios.post("/api/triggers/time",t).then(function(e){}).catch(function(e){console.log(e)}).then(function(){e.saving=!1})}},addTimeTrigger:function(){this.triggers.time.triggers.push({brightness:0,triggerType:0,enabled:!0,fixedTime:540,relativeTime:0,monday:!0,tuesday:!0,wednesday:!0,thursday:!0,friday:!0,saturday:!0,sunday:!0})},deleteTimeTrigger:function(e){this.triggers.time.triggers.splice(e,1)},addMotionTrigger:function(){this.triggers.motion.triggers.push({brightness:0,enabled:!0,pin:2,direction:0})},deleteMotionTrigger:function(e){this.triggers.motion.triggers.splice(e,1)},getDisplayTime:function(e,t){var n="";t&&e>=0&&(n+="+");var r=Math.floor(e/60),i=Math.abs(e)%60;return n+=r+":",i<10&&(n+="0"),n+=i}},watch:{allSteps:{handler:function(){this.stepsChanged()},sync:!0},allStepsValue:{handler:function(){this.stepsChanged()},sync:!0},steps:{handler:function(){this.stepsChanged()},deep:!0,sync:!0},activeTab:function(e){window.location.hash="#"+e}}})} \ No newline at end of file diff --git a/web/index.html b/web/index.html index 86ecb61..dd72339 100644 --- a/web/index.html +++ b/web/index.html @@ -84,94 +84,154 @@

{{ $t('triggers.timeTitle') }}

-
- {{ $t('triggers.timeInternet') }} -
+ -
-
-
- - - [ {{ $t('triggers.timeDelete') }} ] - -
-
+
+
+ {{ $t('triggers.timeInternet') }} +
-
- + + - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
+
+
+ + + [ {{ $t('triggers.timeDelete') }} ] +
-
- {{ Math.floor(trigger.brightness / 255 * 100) }}% -
- +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ {{ Math.floor(trigger.brightness / 255 * 100) }}% +
+ +
-
-
- {{ $t('triggers.timeNoData') }} -
+
+ {{ $t('triggers.timeNoData') }} +
-
- - +
+ +

{{ $t('triggers.motionTitle') }}

+ + + +
+ + + + + + +
+
+
+ + + [ {{ $t('triggers.motionDelete') }} ] + +
+
+ +
+ + + + + + +
+ {{ Math.floor(trigger.brightness / 255 * 100) }}% +
+ +
+
+
+
+
+ +
+ {{ $t('triggers.motionNoData') }} +
+ +
+ +
+
+ +
+ +
@@ -294,7 +354,7 @@

{{ $t('system.mapsTitle') }}

- + {{ $t('system.mapsAPIKeyhint') }}
diff --git a/web/lang.js b/web/lang.js index 0987fcd..8fb3cf3 100644 --- a/web/lang.js +++ b/web/lang.js @@ -40,10 +40,14 @@ var messages = { timeTitle: 'Time', timeInternet: 'Please note that time triggers require an internet connection.', timeNoData: 'No time triggers defined yet', + + timeEnabled: 'Enable time triggers', + timeTransitionTime: 'Transition time in milliseconds', + timeAdd: 'Add', timeDelete: 'Delete', - timeEnabled: 'Enabled', + timeTriggerEnabled: 'Enabled', timeFixedTime: 'Fixed time', timeSunrise: 'Sunrise', timeSunset: 'Sunset', @@ -57,7 +61,22 @@ var messages = { timeSaturday: 'Saturday', timeSunday: 'Sunday', - motionTitle: 'Motion' + motionTitle: 'Motion', + motionNoData: 'No motion triggers defined yet', + + motionEnabled: 'Enable motion triggers', + motionEnabledDuringTimeTrigger: 'Activate even if a time trigger is already active', + motionTransitionTime: 'Transition time in milliseconds', + + motionTriggerEnabled: 'Enabled', + motionAdd: 'Add', + motionDelete: 'Delete', + + motionPin: 'GPIO pin (active high)', + motionDirection: 'Sweep animation', + motionDirectionNonDirectional: 'None (all steps at the same time)', + motionDirectionTopDown: 'Top down', + motionDirectionBottomUp: 'Bottom up' }, connection: { @@ -97,7 +116,7 @@ var messages = { pinLEDAP: 'Access Point status LED pin (+3.3v)', pinLEDSTA: 'Station Mode status LED pin (+3.3v)', - pinAPButton: 'Enable Access Point button pin (pull low)', + pinAPButton: 'Enable Access Point button pin (active low)', pinPWMDriverSDA: 'PCA9685 PWM driver SDA pin (data)', pinPWMDriverSCL: 'PCA9685 PWM driver SCL pin (clock)', pwmAddress: 'PCA9685 PWM driver I²C address', @@ -149,10 +168,14 @@ var messages = { timeTitle: 'Tijd', timeInternet: 'Let op dat voor tijd triggers een internetverbinding vereist is.', timeNoData: 'Nog geen tijd triggers geconfigureerd', + + timeEnabled: 'Tijd triggers inschakelen', + timeTransitionTime: 'Transitie tijd in milliseconden', + timeAdd: 'Toevoegen', timeDelete: 'Verwijderen', - timeEnabled: 'Actief', + timeTriggerEnabled: 'Actief', timeFixedTime: 'Vaste tijd', timeSunrise: 'Zonsopkomst', timeSunset: 'Zonsondergang', @@ -166,7 +189,22 @@ var messages = { timeSaturday: 'Zaterdag', timeSunday: 'Zondag', - motionTitle: 'Beweging' + motionTitle: 'Beweging', + motionNoData: 'Nog geen beweging triggers geconfigureerd', + + motionEnabled: 'Beweging triggers inschakelen', + motionEnabledDuringTimeTrigger: 'Ook inschakelen als er al een tijd trigger actief is', + motionTransitionTime: 'Transitie tijd in milliseconden', + + motionTriggerEnabled: 'Actief', + motionAdd: 'Toevoegen', + motionDelete: 'Verwijderen', + + motionPin: 'GPIO pin (actief hoog)', + motionDirection: 'Animatie', + motionDirectionNonDirectional: 'Geen (alle treden gelijktijdig)', + motionDirectionTopDown: 'Boven naar beneden', + motionDirectionBottomUp: 'Beneden naar boven' }, connection: { diff --git a/web/site.scss b/web/site.scss index 5af8e0d..8c85f88 100644 --- a/web/site.scss +++ b/web/site.scss @@ -12,6 +12,7 @@ $containerBackgroundColor: #202020; $containerShadow: 0 0 50px #fcf6cf; $panelBorderColor: #404040; +$panelBodyBackgroundColor: #242422; $panelHeaderBackgroundColor: #302f28; $panelHeaderColor: #808080; $panelHeaderLinkColor: white; @@ -331,6 +332,7 @@ input[disabled] & .panel-body { + background-color: $panelBodyBackgroundColor; padding: 2rem; } }