From c869e092a864a39bf82dd14e9637d780e023726a Mon Sep 17 00:00:00 2001 From: Vladimir Kharlampidi Date: Tue, 3 Jul 2018 21:32:18 +0300 Subject: [PATCH] 3.0.0-beta.19 release --- CHANGELOG.md | 6 ++++++ packages/core/components/view/view.js | 3 +++ packages/core/css/framework7.css | 2 +- packages/core/css/framework7.ios.css | 2 +- packages/core/css/framework7.ios.min.css | 2 +- packages/core/css/framework7.md.css | 2 +- packages/core/css/framework7.md.min.css | 2 +- packages/core/css/framework7.min.css | 2 +- packages/core/css/framework7.rtl.css | 2 +- packages/core/css/framework7.rtl.ios.css | 2 +- packages/core/css/framework7.rtl.ios.min.css | 2 +- packages/core/css/framework7.rtl.md.css | 2 +- packages/core/css/framework7.rtl.md.min.css | 2 +- packages/core/css/framework7.rtl.min.css | 2 +- packages/core/framework7.esm.bundle.js | 2 +- packages/core/framework7.esm.js | 2 +- packages/core/framework7.less | 2 +- packages/core/js/framework7.js | 13 ++++++++----- packages/core/js/framework7.min.js | 4 ++-- packages/core/js/framework7.min.js.map | 2 +- packages/core/modules/router/process-route-queue.js | 8 ++++---- packages/core/package.json | 2 +- packages/react/framework7-react.esm.js | 2 +- packages/react/framework7-react.js | 4 ++-- packages/react/framework7-react.min.js | 2 +- packages/react/framework7-react.min.js.map | 2 +- packages/react/package.json | 2 +- packages/vue/framework7-vue.esm.bundle.js | 2 +- packages/vue/framework7-vue.esm.js | 2 +- packages/vue/framework7-vue.js | 4 ++-- packages/vue/framework7-vue.min.js | 2 +- packages/vue/framework7-vue.min.js.map | 2 +- packages/vue/package.json | 2 +- 33 files changed, 53 insertions(+), 41 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9cabae25bd..8a478ca1a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ # Change Log +# [v3.0.0-beta.19](https://github.com/framework7io/framework7/compare/v3.0.0-beta.18...v3.0.0-beta.19) - July 3, 2018 + * Core + * Router + * View/Router parameter `beforeLeave` renamed to `routesBeforeLeave` + * View/Router parameter `beforeEnter` renamed to `routesBeforeEnter` + # [v3.0.0-beta.18](https://github.com/framework7io/framework7/compare/v3.0.0-beta.17...v3.0.0-beta.18) - July 3, 2018 * Core * Router diff --git a/packages/core/components/view/view.js b/packages/core/components/view/view.js index 4b785b9ecf..786e802494 100644 --- a/packages/core/components/view/view.js +++ b/packages/core/components/view/view.js @@ -85,6 +85,9 @@ export default { // Delays iosPageLoadDelay: 0, materialPageLoadDelay: 0, + // Routes hooks + routesBeforeEnter: null, + routesBeforeLeave: null, }, }, static: { diff --git a/packages/core/css/framework7.css b/packages/core/css/framework7.css index 0f998adf8f..18bf30ee76 100644 --- a/packages/core/css/framework7.css +++ b/packages/core/css/framework7.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.ios.css b/packages/core/css/framework7.ios.css index ed09788578..3c862d679d 100644 --- a/packages/core/css/framework7.ios.css +++ b/packages/core/css/framework7.ios.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.ios.min.css b/packages/core/css/framework7.ios.min.css index cc26d8322c..f707491c1c 100644 --- a/packages/core/css/framework7.ios.min.css +++ b/packages/core/css/framework7.ios.min.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.md.css b/packages/core/css/framework7.md.css index 59344ce189..c30b83ff36 100644 --- a/packages/core/css/framework7.md.css +++ b/packages/core/css/framework7.md.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.md.min.css b/packages/core/css/framework7.md.min.css index 5a9cd3fd9c..976009ab6b 100644 --- a/packages/core/css/framework7.md.min.css +++ b/packages/core/css/framework7.md.min.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.min.css b/packages/core/css/framework7.min.css index a7f317e0bc..84820482f8 100644 --- a/packages/core/css/framework7.min.css +++ b/packages/core/css/framework7.min.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.rtl.css b/packages/core/css/framework7.rtl.css index cabd8682ad..24df8b953e 100644 --- a/packages/core/css/framework7.rtl.css +++ b/packages/core/css/framework7.rtl.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.rtl.ios.css b/packages/core/css/framework7.rtl.ios.css index 06a5c5fc00..f1da7ebd83 100644 --- a/packages/core/css/framework7.rtl.ios.css +++ b/packages/core/css/framework7.rtl.ios.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.rtl.ios.min.css b/packages/core/css/framework7.rtl.ios.min.css index a9cf26bdd7..d5113eff11 100644 --- a/packages/core/css/framework7.rtl.ios.min.css +++ b/packages/core/css/framework7.rtl.ios.min.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.rtl.md.css b/packages/core/css/framework7.rtl.md.css index 282e9678e3..15af9bd63e 100644 --- a/packages/core/css/framework7.rtl.md.css +++ b/packages/core/css/framework7.rtl.md.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.rtl.md.min.css b/packages/core/css/framework7.rtl.md.min.css index e6bd5cf70f..1152da352b 100644 --- a/packages/core/css/framework7.rtl.md.min.css +++ b/packages/core/css/framework7.rtl.md.min.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/css/framework7.rtl.min.css b/packages/core/css/framework7.rtl.min.css index 4872ae6a46..45f99b2363 100644 --- a/packages/core/css/framework7.rtl.min.css +++ b/packages/core/css/framework7.rtl.min.css @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/framework7.esm.bundle.js b/packages/core/framework7.esm.bundle.js index fd16b43316..f6b0cfc961 100644 --- a/packages/core/framework7.esm.bundle.js +++ b/packages/core/framework7.esm.bundle.js @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/framework7.esm.js b/packages/core/framework7.esm.js index 979c37a556..4be2c05b6d 100644 --- a/packages/core/framework7.esm.js +++ b/packages/core/framework7.esm.js @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/framework7.less b/packages/core/framework7.less index 878211bf94..92712810d1 100644 --- a/packages/core/framework7.less +++ b/packages/core/framework7.less @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * diff --git a/packages/core/js/framework7.js b/packages/core/js/framework7.js index a6dab6ed07..9b0874be1a 100644 --- a/packages/core/js/framework7.js +++ b/packages/core/js/framework7.js @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * @@ -5841,11 +5841,11 @@ function processRouteQueue (to, from, resolve, reject) { var router = this; function enterNextRoute() { - if (to && to.route && (router.params.beforeEnter || to.route.beforeEnter)) { + if (to && to.route && (router.params.routesBeforeEnter || to.route.beforeEnter)) { router.allowPageChange = false; processQueue( router, - router.params.beforeEnter, + router.params.routesBeforeEnter, to.route.beforeEnter, to, from, @@ -5862,11 +5862,11 @@ } } function leaveCurrentRoute() { - if (from && from.route && (router.params.beforeLeave || from.route.beforeLeave)) { + if (from && from.route && (router.params.routesBeforeLeave || from.route.beforeLeave)) { router.allowPageChange = false; processQueue( router, - router.params.beforeLeave, + router.params.routesBeforeLeave, from.route.beforeLeave, to, from, @@ -9477,6 +9477,9 @@ // Delays iosPageLoadDelay: 0, materialPageLoadDelay: 0, + // Routes hooks + routesBeforeEnter: null, + routesBeforeLeave: null, }, }, static: { diff --git a/packages/core/js/framework7.min.js b/packages/core/js/framework7.min.js index 76e11bf719..e2f1bfeb11 100644 --- a/packages/core/js/framework7.min.js +++ b/packages/core/js/framework7.min.js @@ -1,5 +1,5 @@ /** - * Framework7 3.0.0-beta.18 + * Framework7 3.0.0-beta.19 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * @@ -9,5 +9,5 @@ * * Released on: July 3, 2018 */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Framework7=t()}(this,function(){"use strict";var t7ctx;t7ctx="undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0;var Template7Context=t7ctx,Template7Utils={quoteSingleRexExp:new RegExp("'","g"),quoteDoubleRexExp:new RegExp('"',"g"),isFunction:function(e){return"function"==typeof e},escape:function(e){return void 0!==Template7Context&&Template7Context.escape?Template7Context.escape(e):e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""")},helperToSlices:function(e){var t,a,n,r=Template7Utils.quoteDoubleRexExp,i=Template7Utils.quoteSingleRexExp,o=e.replace(/[{}#}]/g,"").trim().split(" "),s=[];for(a=0;a=0){t=n,s.push(l);break}t&&(a=t)}else if(l.indexOf("=")>0){var d=l.split("="),u=d[0],h=d[1];if(p||(p=0===h.indexOf('"')?r:i,c=0===h.indexOf('"')?'"':"'"),2!==h.match(p).length){for(t=0,n=a+1;n=0){t=n;break}t&&(a=t)}var f=[u,h.replace(p,"")];s.push(f)}else s.push(l)}return s},stringToBlocks:function(e){var t,a,n=[];if(!e)return[];var r=e.split(/({{[^{^}]*}})/);for(t=0;t=0)continue;if((i=i.replace(/{{([#/])*([ ])*/,"{{$1").replace(/([ ])*}}/,"}}")).indexOf("{#")<0&&i.indexOf(" ")<0&&i.indexOf("else")<0){n.push({type:"variable",contextName:i.replace(/[{}]/g,"")});continue}var o=Template7Utils.helperToSlices(i),s=o[0],l=">"===s,p=[],c={};for(a=1;a=0){var u="",h="",f=0,m=void 0,v=!1,g=!1,b=0;for(a=t+1;a=0&&(b+=1),r[a].indexOf("{{/")>=0&&(b-=1),r[a].indexOf("{{#"+s)>=0)u+=r[a],g&&(h+=r[a]),f+=1;else if(r[a].indexOf("{{/"+s)>=0){if(!(f>0)){m=a,v=!0;break}f-=1,u+=r[a],g&&(h+=r[a])}else r[a].indexOf("else")>=0&&0===b?g=!0:(g||(u+=r[a]),g&&(h+=r[a]));v&&(m&&(t=m),"raw"===s?n.push({type:"plain",content:u}):n.push({type:"helper",helperName:s,contextName:p,content:u,inverseContent:h,hash:c}))}else i.indexOf(" ")>0&&(l&&(s="_partial",p[0]&&(0===p[0].indexOf("[")?p[0]=p[0].replace(/[[\]]/g,""):p[0]='"'+p[0].replace(/"|'/g,"")+'"')),n.push({type:"helper",helperName:s,contextName:p,hash:c}))}}return n},parseJsVariable:function(e,t,a){return e.split(/([+ -*/^])/g).map(function(e){if(e.indexOf(t)<0)return e;if(!a)return JSON.stringify("");var n=a;return e.indexOf(t+".")>=0&&e.split(t+".")[1].split(".").forEach(function(e){n=e in n?n[e]:void 0}),"string"==typeof n&&(n=JSON.stringify(n)),void 0===n&&(n="undefined"),n}).join("")},parseJsParents:function(e,t){return e.split(/([+ -*^])/g).map(function(e){if(e.indexOf("../")<0)return e;if(!t||0===t.length)return JSON.stringify("");var a=e.split("../").length-1,n=a>t.length?t[t.length-1]:t[a-1];return e.replace(/..\//g,"").split(".").forEach(function(e){n=n[e]?n[e]:"undefined"}),JSON.stringify(n)}).join("")},getCompileVar:function(e,t,a){void 0===a&&(a="data_1");var n,r,i=t,o=0;0===e.indexOf("../")?(o=e.split("../").length-1,i="ctx_"+((r=i.split("_")[1]-o)>=1?r:1),n=e.split("../")[o].split(".")):0===e.indexOf("@global")?(i="Template7.global",n=e.split("@global.")[1].split(".")):0===e.indexOf("@root")?(i="root",n=e.split("@root.")[1].split(".")):n=e.split(".");for(var s=0;s0&&(p=r),s>0?i+="[(data_"+p+" && data_"+p+"."+l.replace("@","")+")]":i="(data_"+p+" && data_"+p+"."+l.replace("@","")+")"}else(Number.isFinite?Number.isFinite(l):Template7Context.isFinite(l))?i+="["+l+"]":"this"===l||l.indexOf("this.")>=0||l.indexOf("this[")>=0||l.indexOf("this(")>=0?i=l.replace("this",t):i+="."+l}return i},getCompiledArguments:function(e,t,a){for(var n=[],r=0;r0?n:t.inverse(this)},with:function(e,t){var a=e;return Template7Utils.isFunction(a)&&(a=e.call(this)),t.fn(a)},join:function(e,t){var a=e;return Template7Utils.isFunction(a)&&(a=a.call(this)),a.join(t.hash.delimiter||t.hash.delimeter)},js:function js(expression,options){var data=options.data,func,execute=expression;return"index first last key".split(" ").forEach(function(e){if(void 0!==data[e]){var t=new RegExp("this.@"+e,"g"),a=new RegExp("@"+e,"g");execute=execute.replace(t,JSON.stringify(data[e])).replace(a,JSON.stringify(data[e]))}}),options.root&&execute.indexOf("@root")>=0&&(execute=Template7Utils.parseJsVariable(execute,"@root",options.root)),execute.indexOf("@global")>=0&&(execute=Template7Utils.parseJsVariable(execute,"@global",Template7Context.Template7.global)),execute.indexOf("../")>=0&&(execute=Template7Utils.parseJsParents(execute,options.parents)),func=execute.indexOf("return")>=0?"(function(){"+execute+"})":"(function(){return ("+execute+")})",eval(func).call(this)},js_if:function js_if(expression,options){var data=options.data,func,execute=expression;"index first last key".split(" ").forEach(function(e){if(void 0!==data[e]){var t=new RegExp("this.@"+e,"g"),a=new RegExp("@"+e,"g");execute=execute.replace(t,JSON.stringify(data[e])).replace(a,JSON.stringify(data[e]))}}),options.root&&execute.indexOf("@root")>=0&&(execute=Template7Utils.parseJsVariable(execute,"@root",options.root)),execute.indexOf("@global")>=0&&(execute=Template7Utils.parseJsVariable(execute,"@global",Template7Context.Template7.global)),execute.indexOf("../")>=0&&(execute=Template7Utils.parseJsParents(execute,options.parents)),func=execute.indexOf("return")>=0?"(function(){"+execute+"})":"(function(){return ("+execute+")})";var condition=eval(func).call(this);return condition?options.fn(this,options.data):options.inverse(this,options.data)}};Template7Helpers.js_compare=Template7Helpers.js_if;var Template7Options={},Template7Partials={},script=Template7Context.document.createElement("script");Template7Context.document.head.appendChild(script);var Template7Class=function(e){this.template=e},staticAccessors={options:{configurable:!0},partials:{configurable:!0},helpers:{configurable:!0}},d;function Template7(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var a=e[0],n=e[1];if(2===e.length){var r=new Template7Class(a),i=r.compile()(n);return r=null,i}return new Template7Class(a)}Template7Class.prototype.compile=function compile(template,depth){void 0===template&&(template=this.template),void 0===depth&&(depth=1);var t=this;if(t.compiled)return t.compiled;if("string"!=typeof template)throw new Error("Template7: Template must be a string");var stringToBlocks=Template7Utils.stringToBlocks,getCompileVar=Template7Utils.getCompileVar,getCompiledArguments=Template7Utils.getCompiledArguments,blocks=stringToBlocks(template),ctx="ctx_"+depth,data="data_"+depth;if(0===blocks.length)return function(){return""};function getCompileFn(e,a){return e.content?t.compile(e.content,a):function(){return""}}function getCompileInverse(e,a){return e.inverseContent?t.compile(e.inverseContent,a):function(){return""}}var resultString="",i;for(resultString+=1===depth?"(function ("+ctx+", "+data+", root) {\n":"(function ("+ctx+", "+data+") {\n",1===depth&&(resultString+="function isArray(arr){return Array.isArray(arr);}\n",resultString+="function isFunction(func){return (typeof func === 'function');}\n",resultString+='function c(val, ctx) {if (typeof val !== "undefined" && val !== null) {if (isFunction(val)) {return val.call(ctx);} else return val;} else return "";}\n',resultString+="root = root || ctx_1 || {};\n"),resultString+="var r = '';\n",i=0;i=1;j-=1)parentsString+=", ctx_"+j;parents="["+parentsString+"]"}else parents="["+ctx+"]";var dynamicHelper=void 0;if(0===block.helperName.indexOf("[")&&(block.helperName=getCompileVar(block.helperName.replace(/[[\]]/g,""),ctx,data),dynamicHelper=!0),dynamicHelper||block.helperName in Template7Helpers)compiledArguments=getCompiledArguments(block.contextName,ctx,data),resultString+="r += (Template7Helpers"+(dynamicHelper?"["+block.helperName+"]":"."+block.helperName)+").call("+ctx+", "+(compiledArguments&&compiledArguments+", ")+"{hash:"+JSON.stringify(block.hash)+", data: "+data+" || {}, fn: "+getCompileFn(block,depth+1)+", inverse: "+getCompileInverse(block,depth+1)+", root: root, parents: "+parents+"});";else{if(block.contextName.length>0)throw new Error('Template7: Missing helper: "'+block.helperName+'"');variable=getCompileVar(block.helperName,ctx,data),resultString+="if ("+variable+") {",resultString+="if (isArray("+variable+")) {",resultString+="r += (Template7Helpers.each).call("+ctx+", "+variable+", {hash:"+JSON.stringify(block.hash)+", data: "+data+" || {}, fn: "+getCompileFn(block,depth+1)+", inverse: "+getCompileInverse(block,depth+1)+", root: root, parents: "+parents+"});",resultString+="}else {",resultString+="r += (Template7Helpers.with).call("+ctx+", "+variable+", {hash:"+JSON.stringify(block.hash)+", data: "+data+" || {}, fn: "+getCompileFn(block,depth+1)+", inverse: "+getCompileInverse(block,depth+1)+", root: root, parents: "+parents+"});",resultString+="}}"}}}else resultString+="r +='"+block.content.replace(/\r/g,"\\r").replace(/\n/g,"\\n").replace(/'/g,"\\'")+"';"}return resultString+="\nreturn r;})",1===depth?(t.compiled=eval(resultString),t.compiled):resultString},staticAccessors.options.get=function(){return Template7Options},staticAccessors.partials.get=function(){return Template7Partials},staticAccessors.helpers.get=function(){return Template7Helpers},Object.defineProperties(Template7Class,staticAccessors),Template7.registerHelper=function(e,t){Template7Class.helpers[e]=t},Template7.unregisterHelper=function(e){Template7Class.helpers[e]=void 0,delete Template7Class.helpers[e]},Template7.registerPartial=function(e,t){Template7Class.partials[e]={template:t}},Template7.unregisterPartial=function(e){Template7Class.partials[e]&&(Template7Class.partials[e]=void 0,delete Template7Class.partials[e])},Template7.compile=function(e,t){return new Template7Class(e,t).compile()},Template7.options=Template7Class.options,Template7.helpers=Template7Class.helpers,Template7.partials=Template7Class.partials,d="undefined"==typeof document?{body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},location:{hash:""}}:document;var doc=d,w;w="undefined"==typeof window?{document:doc,navigator:{userAgent:""},location:{},history:{},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){}}:window;var win=w,Dom7=function(e){for(var t=0;t=0&&o.indexOf(">")>=0){var s="div";for(0===o.indexOf(":~]/)?(t||doc).querySelectorAll(e.trim()):[doc.getElementById(e.trim().split("#")[1])],n=0;n0&&e[0].nodeType)for(n=0;n=0&&(t[toCamelCase(r.name.split("data-")[1])]=r.value)}for(var i in t)"false"===t[i]?t[i]=!1:"true"===t[i]?t[i]=!0:parseFloat(t[i])===1*t[i]&&(t[i]*=1);return t}}function val(e){var t=this;if(void 0!==e){for(var a=0;a=0;else n.value=e}return t}if(t[0]){if(t[0].multiple&&"select"===t[0].nodeName.toLowerCase()){for(var i=[],o=0;o=0;h-=1){var f=u[h];i&&f.listener===i?(d.removeEventListener(p,f.proxyListener,o),u.splice(h,1)):i||(d.removeEventListener(p,f.proxyListener,o),u.splice(h,1))}}return this}function once(){for(var e,t=[],a=arguments.length;a--;)t[a]=arguments[a];var n=this,r=t[0],i=t[1],o=t[2],s=t[3];return"function"==typeof t[1]&&(r=(e=t)[0],o=e[1],s=e[2],i=void 0),n.on(r,i,function e(){for(var t=[],a=arguments.length;a--;)t[a]=arguments[a];o.apply(this,t),n.off(r,i,e,s)},s)}function trigger(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];for(var a=e[0].split(" "),n=e[1],r=0;r0}),s.dispatchEvent(l),s.dom7EventData=[],delete s.dom7EventData}return this}function transitionEnd(e){var t,a=["webkitTransitionEnd","transitionend"],n=this;function r(i){if(i.target===this)for(e.call(this,i),t=0;t0?parseFloat(this.css("width")):null}function outerWidth(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null}function height(){return this[0]===win?win.innerHeight:this.length>0?parseFloat(this.css("height")):null}function outerHeight(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null}function offset(){if(this.length>0){var e=this[0],t=e.getBoundingClientRect(),a=doc.body,n=e.clientTop||a.clientTop||0,r=e.clientLeft||a.clientLeft||0,i=e===win?win.scrollY:e.scrollTop,o=e===win?win.scrollX:e.scrollLeft;return{top:t.top+i-n,left:t.left+o-r}}return null}function hide(){for(var e=0;ea-1?[]:e<0?(t=a+e)<0?[]:[this[t]]:[this[e]])}function append(){for(var e,t=[],a=arguments.length;a--;)t[a]=arguments[a];for(var n=0;n=0;a-=1)n[t].insertBefore(r.childNodes[a],n[t].childNodes[0])}else if(e instanceof Dom7)for(a=0;a1)for(var n=0;n1)for(var n=0;n0?e?this[0].nextElementSibling&&$$1(this[0].nextElementSibling).is(e)?new Dom7([this[0].nextElementSibling]):new Dom7([]):this[0].nextElementSibling?new Dom7([this[0].nextElementSibling]):new Dom7([]):new Dom7([])}function nextAll(e){var t=[],a=this[0];if(!a)return new Dom7([]);for(;a.nextElementSibling;){var n=a.nextElementSibling;e?$$1(n).is(e)&&t.push(n):t.push(n),a=n}return new Dom7(t)}function prev(e){if(this.length>0){var t=this[0];return e?t.previousElementSibling&&$$1(t.previousElementSibling).is(e)?new Dom7([t.previousElementSibling]):new Dom7([]):t.previousElementSibling?new Dom7([t.previousElementSibling]):new Dom7([])}return new Dom7([])}function prevAll(e){var t=[],a=this[0];if(!a)return new Dom7([]);for(;a.previousElementSibling;){var n=a.previousElementSibling;e?$$1(n).is(e)&&t.push(n):t.push(n),a=n}return new Dom7(t)}function siblings(e){return this.nextAll(e).add(this.prevAll(e))}function parent(e){for(var t=[],a=0;a0||0===r,m=n>0||0===n;if(void 0===o&&(o="swing"),f&&(e=h.scrollTop,i||(h.scrollTop=r)),m&&(t=h.scrollLeft,i||(h.scrollLeft=n)),i){f&&(a=h.scrollHeight-h.offsetHeight,p=Math.max(Math.min(r,a),0)),m&&(l=h.scrollWidth-h.offsetWidth,c=Math.max(Math.min(n,l),0));var v=null;f&&p===e&&(f=!1),m&&c===t&&(m=!1),requestAnimationFrame(function a(n){void 0===n&&(n=(new Date).getTime()),null===v&&(v=n);var r,l=Math.max(Math.min((n-v)/i,1),0),g="linear"===o?l:.5-Math.cos(l*Math.PI)/2;f&&(d=e+g*(p-e)),m&&(u=t+g*(c-t)),f&&p>e&&d>=p&&(h.scrollTop=p,r=!0),f&&pt&&u>=c&&(h.scrollLeft=c,r=!0),m&&c0?this[0].scrollTop:null:this.scrollTo(void 0,n,r,i,o)}function scrollLeft(){for(var e,t=[],a=arguments.length;a--;)t[a]=arguments[a];var n=t[0],r=t[1],i=t[2],o=t[3];3===t.length&&"function"==typeof i&&(n=(e=t)[0],r=e[1],o=e[2],i=e[3]);return void 0===n?this.length>0?this[0].scrollLeft:null:this.scrollTo(n,void 0,r,i,o)}var Scroll=Object.freeze({scrollTo:scrollTo,scrollTop:scrollTop,scrollLeft:scrollLeft});function animate(e,t){var a,n=this,r={props:Object.assign({},e),params:Object.assign({duration:300,easing:"swing"},t),elements:n,animating:!1,que:[],easingProgress:function(e,t){return"swing"===e?.5-Math.cos(t*Math.PI)/2:"function"==typeof e?e(t):t},stop:function(){r.frameId&&cancelAnimationFrame(r.frameId),r.animating=!1,r.elements.each(function(e,t){delete t.dom7AnimateInstance}),r.que=[]},done:function(e){if(r.animating=!1,r.elements.each(function(e,t){delete t.dom7AnimateInstance}),e&&e(n),r.que.length>0){var t=r.que.shift();r.animate(t[0],t[1])}},animate:function(e,t){if(r.animating)return r.que.push([e,t]),r;var a=[];r.elements.each(function(t,n){var i,o,s,l,p;n.dom7AnimateInstance||(r.elements[t].dom7AnimateInstance=r),a[t]={container:n},Object.keys(e).forEach(function(r){i=win.getComputedStyle(n,null).getPropertyValue(r).replace(",","."),o=parseFloat(i),s=i.replace(o,""),l=parseFloat(e[r]),p=e[r]+s,a[t][r]={initialFullValue:i,initialValue:o,unit:s,finalValue:l,finalFullValue:p,currentValue:o}})});var i,o,s=null,l=0,p=0,c=!1;return r.animating=!0,r.frameId=requestAnimationFrame(function d(){var u,h;i=(new Date).getTime(),c||(c=!0,t.begin&&t.begin(n)),null===s&&(s=i),t.progress&&t.progress(n,Math.max(Math.min((i-s)/t.duration,1),0),s+t.duration-i<0?0:s+t.duration-i,s),a.forEach(function(n){var c=n;o||c.done||Object.keys(e).forEach(function(n){if(!o&&!c.done){u=Math.max(Math.min((i-s)/t.duration,1),0),h=r.easingProgress(t.easing,u);var d=c[n],f=d.initialValue,m=d.finalValue,v=d.unit;c[n].currentValue=f+h*(m-f);var g=c[n].currentValue;(m>f&&g>=m||m0;)a[n]=arguments[n+1];if(void 0===a[0]){for(var r=0;r0?a=o:t=o}while(Math.abs(i)>SUBDIVISION_PRECISION&&++s=NEWTON_MIN_SLOPE?newtonRaphsonIterate(t,s,e,a):0===l?s:binarySubdivide(t,n,n+kSampleStepSize,e,a)}(i),t,n)}}for(var defaultDiacriticsRemovalap=[{base:"A",letters:"AⒶAÀÁÂẦẤẪẨÃĀĂẰẮẴẲȦǠÄǞẢÅǺǍȀȂẠẬẶḀĄȺⱯ"},{base:"AA",letters:"Ꜳ"},{base:"AE",letters:"ÆǼǢ"},{base:"AO",letters:"Ꜵ"},{base:"AU",letters:"Ꜷ"},{base:"AV",letters:"ꜸꜺ"},{base:"AY",letters:"Ꜽ"},{base:"B",letters:"BⒷBḂḄḆɃƂƁ"},{base:"C",letters:"CⒸCĆĈĊČÇḈƇȻꜾ"},{base:"D",letters:"DⒹDḊĎḌḐḒḎĐƋƊƉꝹ"},{base:"DZ",letters:"DZDŽ"},{base:"Dz",letters:"DzDž"},{base:"E",letters:"EⒺEÈÉÊỀẾỄỂẼĒḔḖĔĖËẺĚȄȆẸỆȨḜĘḘḚƐƎ"},{base:"F",letters:"FⒻFḞƑꝻ"},{base:"G",letters:"GⒼGǴĜḠĞĠǦĢǤƓꞠꝽꝾ"},{base:"H",letters:"HⒽHĤḢḦȞḤḨḪĦⱧⱵꞍ"},{base:"I",letters:"IⒾIÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗ"},{base:"J",letters:"JⒿJĴɈ"},{base:"K",letters:"KⓀKḰǨḲĶḴƘⱩꝀꝂꝄꞢ"},{base:"L",letters:"LⓁLĿĹĽḶḸĻḼḺŁȽⱢⱠꝈꝆꞀ"},{base:"LJ",letters:"LJ"},{base:"Lj",letters:"Lj"},{base:"M",letters:"MⓂMḾṀṂⱮƜ"},{base:"N",letters:"NⓃNǸŃÑṄŇṆŅṊṈȠƝꞐꞤ"},{base:"NJ",letters:"NJ"},{base:"Nj",letters:"Nj"},{base:"O",letters:"OⓄOÒÓÔỒỐỖỔÕṌȬṎŌṐṒŎȮȰÖȪỎŐǑȌȎƠỜỚỠỞỢỌỘǪǬØǾƆƟꝊꝌ"},{base:"OI",letters:"Ƣ"},{base:"OO",letters:"Ꝏ"},{base:"OU",letters:"Ȣ"},{base:"OE",letters:"ŒŒ"},{base:"oe",letters:"œœ"},{base:"P",letters:"PⓅPṔṖƤⱣꝐꝒꝔ"},{base:"Q",letters:"QⓆQꝖꝘɊ"},{base:"R",letters:"RⓇRŔṘŘȐȒṚṜŖṞɌⱤꝚꞦꞂ"},{base:"S",letters:"SⓈSẞŚṤŜṠŠṦṢṨȘŞⱾꞨꞄ"},{base:"T",letters:"TⓉTṪŤṬȚŢṰṮŦƬƮȾꞆ"},{base:"TZ",letters:"Ꜩ"},{base:"U",letters:"UⓊUÙÚÛŨṸŪṺŬÜǛǗǕǙỦŮŰǓȔȖƯỪỨỮỬỰỤṲŲṶṴɄ"},{base:"V",letters:"VⓋVṼṾƲꝞɅ"},{base:"VY",letters:"Ꝡ"},{base:"W",letters:"WⓌWẀẂŴẆẄẈⱲ"},{base:"X",letters:"XⓍXẊẌ"},{base:"Y",letters:"YⓎYỲÝŶỸȲẎŸỶỴƳɎỾ"},{base:"Z",letters:"ZⓏZŹẐŻŽẒẔƵȤⱿⱫꝢ"},{base:"a",letters:"aⓐaẚàáâầấẫẩãāăằắẵẳȧǡäǟảåǻǎȁȃạậặḁąⱥɐ"},{base:"aa",letters:"ꜳ"},{base:"ae",letters:"æǽǣ"},{base:"ao",letters:"ꜵ"},{base:"au",letters:"ꜷ"},{base:"av",letters:"ꜹꜻ"},{base:"ay",letters:"ꜽ"},{base:"b",letters:"bⓑbḃḅḇƀƃɓ"},{base:"c",letters:"cⓒcćĉċčçḉƈȼꜿↄ"},{base:"d",letters:"dⓓdḋďḍḑḓḏđƌɖɗꝺ"},{base:"dz",letters:"dzdž"},{base:"e",letters:"eⓔeèéêềếễểẽēḕḗĕėëẻěȅȇẹệȩḝęḙḛɇɛǝ"},{base:"f",letters:"fⓕfḟƒꝼ"},{base:"g",letters:"gⓖgǵĝḡğġǧģǥɠꞡᵹꝿ"},{base:"h",letters:"hⓗhĥḣḧȟḥḩḫẖħⱨⱶɥ"},{base:"hv",letters:"ƕ"},{base:"i",letters:"iⓘiìíîĩīĭïḯỉǐȉȋịįḭɨı"},{base:"j",letters:"jⓙjĵǰɉ"},{base:"k",letters:"kⓚkḱǩḳķḵƙⱪꝁꝃꝅꞣ"},{base:"l",letters:"lⓛlŀĺľḷḹļḽḻſłƚɫⱡꝉꞁꝇ"},{base:"lj",letters:"lj"},{base:"m",letters:"mⓜmḿṁṃɱɯ"},{base:"n",letters:"nⓝnǹńñṅňṇņṋṉƞɲʼnꞑꞥ"},{base:"nj",letters:"nj"},{base:"o",letters:"oⓞoòóôồốỗổõṍȭṏōṑṓŏȯȱöȫỏőǒȍȏơờớỡởợọộǫǭøǿɔꝋꝍɵ"},{base:"oi",letters:"ƣ"},{base:"ou",letters:"ȣ"},{base:"oo",letters:"ꝏ"},{base:"p",letters:"pⓟpṕṗƥᵽꝑꝓꝕ"},{base:"q",letters:"qⓠqɋꝗꝙ"},{base:"r",letters:"rⓡrŕṙřȑȓṛṝŗṟɍɽꝛꞧꞃ"},{base:"s",letters:"sⓢsßśṥŝṡšṧṣṩșşȿꞩꞅẛ"},{base:"t",letters:"tⓣtṫẗťṭțţṱṯŧƭʈⱦꞇ"},{base:"tz",letters:"ꜩ"},{base:"u",letters:"uⓤuùúûũṹūṻŭüǜǘǖǚủůűǔȕȗưừứữửựụṳųṷṵʉ"},{base:"v",letters:"vⓥvṽṿʋꝟʌ"},{base:"vy",letters:"ꝡ"},{base:"w",letters:"wⓦwẁẃŵẇẅẘẉⱳ"},{base:"x",letters:"xⓧxẋẍ"},{base:"y",letters:"yⓨyỳýŷỹȳẏÿỷẙỵƴɏỿ"},{base:"z",letters:"zⓩzźẑżžẓẕƶȥɀⱬꝣ"}],diacriticsMap={},i=0;i\n \n \n \n \n \n \n \n \n '.trim(),eventNameToColonCase:function(e){var t;return e.split("").map(function(e,a){return e.match(/[A-Z]/)&&0!==a&&!t?(t=!0,":"+e.toLowerCase()):e.toLowerCase()}).join("")},deleteProps:function(e){var t=e;Object.keys(t).forEach(function(e){try{t[e]=null}catch(e){}try{delete t[e]}catch(e){}})},bezier:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return bezier.apply(void 0,e)},nextTick:function(e,t){return void 0===t&&(t=0),setTimeout(e,t)},nextFrame:function(e){return Utils.requestAnimationFrame(e)},now:function(){return Date.now()},promise:function(e){return win.Promise?new Promise(e):createPromise(e)},requestAnimationFrame:function(e){return win.requestAnimationFrame?win.requestAnimationFrame(e):win.webkitRequestAnimationFrame?win.webkitRequestAnimationFrame(e):win.setTimeout(e,1e3/60)},cancelAnimationFrame:function(e){return win.cancelAnimationFrame?win.cancelAnimationFrame(e):win.webkitCancelAnimationFrame?win.webkitCancelAnimationFrame(e):win.clearTimeout(e)},removeDiacritics:function(e){return e.replace(/[^\u0000-\u007E]/g,function(e){return diacriticsMap[e]||e})},parseUrlQuery:function(e){var t,a,n,r,i={},o=e||win.location.href;if("string"==typeof o&&o.length)for(r=(a=(o=o.indexOf("?")>-1?o.replace(/\S*\?/,""):"").split("&").filter(function(e){return""!==e})).length,t=0;t6&&(n=n.split(", ").map(function(e){return e.replace(",",".")}).join(", ")),r=new win.WebKitCSSMatrix("none"===n?"":n)):a=(r=i.MozTransform||i.OTransform||i.MsTransform||i.msTransform||i.transform||i.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===t&&(n=win.WebKitCSSMatrix?r.m41:16===a.length?parseFloat(a[12]):parseFloat(a[4])),"y"===t&&(n=win.WebKitCSSMatrix?r.m42:16===a.length?parseFloat(a[13]):parseFloat(a[5])),n||0},serializeObject:function(e,t){if(void 0===t&&(t=[]),"string"==typeof e)return e;var a,n=[];function r(e){if(t.length>0){for(var a="",n=0;n=0||t.indexOf("Trident/")>=0,c=t.indexOf("Edge/")>=0,d="MacIntel"===e,u="Win32"===e;if(a.ie=p,a.edge=c,n&&(a.os="windows",a.osVersion=u[2],a.windowsPhone=!0),r&&!u&&(a.os="android",a.osVersion=r[2],a.android=!0,a.androidChrome=t.toLowerCase().indexOf("chrome")>=0),(i||s||o)&&(a.os="ios",a.ios=!0),s&&!o&&(a.osVersion=s[2].replace(/_/g,"."),a.iphone=!0,a.iphoneX=l),i&&(a.osVersion=i[2].replace(/_/g,"."),a.ipad=!0),o&&(a.osVersion=o[3]?o[3].replace(/_/g,"."):null,a.iphone=!0),a.ios&&a.osVersion&&t.indexOf("Version/")>=0&&"10"===a.osVersion.split(".")[0]&&(a.osVersion=t.toLowerCase().split("version/")[1].split(" ")[0]),a.webView=(s||i||o)&&(t.match(/.*AppleWebKit(?!.*Safari)/i)||win.navigator.standalone),a.webview=a.webView,a.desktop=!(a.os||a.android||a.webView),a.desktop&&(a.macos=d,a.windows=u),a.os&&"ios"===a.os){var h=a.osVersion.split("."),f=doc.querySelector('meta[name="viewport"]');a.minimalUi=!a.webView&&(o||s)&&(1*h[0]==7?1*h[1]>=1:1*h[0]>7)&&f&&f.getAttribute("content").indexOf("minimal-ui")>=0}return a.needsStatusbarOverlay=function(){return!(!(a.webView||a.android&&a.cordova)||win.innerWidth*win.innerHeight!=win.screen.width*win.screen.height)&&(!a.iphoneX||90!==win.orientation&&-90!==win.orientation)},a.statusbar=a.needsStatusbarOverlay(),a.pixelRatio=win.devicePixelRatio||1,a}(),Framework7Class=function(e,t){void 0===e&&(e={}),void 0===t&&(t=[]);var a=this;a.params=e,a.eventsParents=t,a.eventsListeners={},a.params&&a.params.on&&Object.keys(a.params.on).forEach(function(e){a.on(e,a.params.on[e])})},staticAccessors$1={components:{configurable:!0}};Framework7Class.prototype.on=function(e,t,a){var n=this;if("function"!=typeof t)return n;var r=a?"unshift":"push";return e.split(" ").forEach(function(e){n.eventsListeners[e]||(n.eventsListeners[e]=[]),n.eventsListeners[e][r](t)}),n},Framework7Class.prototype.once=function(e,t,a){var n=this;if("function"!=typeof t)return n;return n.on(e,function a(){for(var r=[],i=arguments.length;i--;)r[i]=arguments[i];t.apply(n,r),n.off(e,a)},a)},Framework7Class.prototype.off=function(e,t){var a=this;return a.eventsListeners?(e.split(" ").forEach(function(e){void 0===t?a.eventsListeners[e]=[]:a.eventsListeners[e].forEach(function(n,r){n===t&&a.eventsListeners[e].splice(r,1)})}),a):a},Framework7Class.prototype.emit=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var a,n,r,i,o=this;if(!o.eventsListeners)return o;"string"==typeof e[0]||Array.isArray(e[0])?(a=e[0],n=e.slice(1,e.length),r=o,i=o.eventsParents):(a=e[0].events,n=e[0].data,r=e[0].context||o,i=e[0].local?[]:e[0].parents||o.eventsParents);var s=Array.isArray(a)?a:a.split(" "),l=s.map(function(e){return e.replace("local::","")}),p=s.filter(function(e){return e.indexOf("local::")<0});return l.forEach(function(e){if(o.eventsListeners&&o.eventsListeners[e]){var t=[];o.eventsListeners[e].forEach(function(e){t.push(e)}),t.forEach(function(e){e.apply(r,n)})}}),i&&i.length>0&&i.forEach(function(e){e.emit.apply(e,[p].concat(n))}),o},Framework7Class.prototype.useModulesParams=function(e){var t=this;t.modules&&Object.keys(t.modules).forEach(function(a){var n=t.modules[a];n.params&&Utils.extend(e,n.params)})},Framework7Class.prototype.useModules=function(e){void 0===e&&(e={});var t=this;t.modules&&Object.keys(t.modules).forEach(function(a){var n=t.modules[a],r=e[a]||{};n.instance&&Object.keys(n.instance).forEach(function(e){var a=n.instance[e];t[e]="function"==typeof a?a.bind(t):a}),n.on&&t.on&&Object.keys(n.on).forEach(function(e){t.on(e,n.on[e])}),n.create&&n.create.bind(t)(r)})},staticAccessors$1.components.set=function(e){this.use&&this.use(e)},Framework7Class.installModule=function(e){for(var t=[],a=arguments.length-1;a-- >0;)t[a]=arguments[a+1];var n=this;n.prototype.modules||(n.prototype.modules={});var r=e.name||Object.keys(n.prototype.modules).length+"_"+Utils.now();return n.prototype.modules[r]=e,e.proto&&Object.keys(e.proto).forEach(function(t){n.prototype[t]=e.proto[t]}),e.static&&Object.keys(e.static).forEach(function(t){n[t]=e.static[t]}),e.install&&e.install.apply(n,t),n},Framework7Class.use=function(e){for(var t=[],a=arguments.length-1;a-- >0;)t[a]=arguments[a+1];var n=this;return Array.isArray(e)?(e.forEach(function(e){return n.installModule(e)}),n):n.installModule.apply(n,[e].concat(t))},Object.defineProperties(Framework7Class,staticAccessors$1);var Framework7=function(e){function t(t){e.call(this,t);var a=Utils.extend({},t),n=this,r={version:"1.0.0",id:"io.framework7.testapp",root:"body",theme:"auto",language:win.navigator.language,routes:[],name:"Framework7",initOnDeviceReady:!0,init:!0};n.useModulesParams(r),n.params=Utils.extend(r,t);var i=$$1(n.params.root);return Utils.extend(n,{id:n.params.id,name:n.params.name,version:n.params.version,routes:n.params.routes,language:n.params.language,root:i,rtl:"rtl"===i.css("direction"),theme:"auto"===n.params.theme?Device.ios?"ios":"md":n.params.theme,passedParams:a}),n.root&&n.root[0]&&(n.root[0].f7=n),n.useModules(),n.params.init&&(Device.cordova&&n.params.initOnDeviceReady?$$1(doc).on("deviceready",function(){n.init()}):n.init()),n}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var a={$:{configurable:!0},t7:{configurable:!0}},n={Dom7:{configurable:!0},$:{configurable:!0},Template7:{configurable:!0},Class:{configurable:!0}};return t.prototype.init=function(){var e=this;return e.initialized?e:(e.root.addClass("framework7-initializing"),e.rtl&&$$1("html").attr("dir","rtl"),e.root.addClass("framework7-root"),$$1("html").removeClass("ios md").addClass(e.theme),e.data={},e.params.data&&"function"==typeof e.params.data?Utils.extend(e.data,e.params.data.bind(e)()):e.params.data&&Utils.extend(e.data,e.params.data),e.methods={},e.params.methods&&Object.keys(e.params.methods).forEach(function(t){"function"==typeof e.params.methods[t]?e.methods[t]=e.params.methods[t].bind(e):e.methods[t]=e.params.methods[t]}),Utils.nextFrame(function(){e.root.removeClass("framework7-initializing")}),e.initialized=!0,e.emit("init"),e)},a.$.get=function(){return $$1},a.t7.get=function(){return Template7},n.Dom7.get=function(){return $$1},n.$.get=function(){return $$1},n.Template7.get=function(){return Template7},n.Class.get=function(){return e},Object.defineProperties(t.prototype,a),Object.defineProperties(t,n),t}(Framework7Class),DeviceModule={name:"device",proto:{device:Device},static:{device:Device},on:{init:function(){var e=[],t=doc.querySelector("html");if(t){if(e.push("device-pixel-ratio-"+Math.floor(Device.pixelRatio)),Device.pixelRatio>=2&&e.push("device-retina"),Device.os){if(e.push("device-"+Device.os,"device-"+Device.os+"-"+Device.osVersion.split(".")[0],"device-"+Device.os+"-"+Device.osVersion.replace(/\./g,"-")),"ios"===Device.os){for(var a=parseInt(Device.osVersion.split(".")[0],10)-1;a>=6;a-=1)e.push("device-ios-gt-"+a);Device.iphoneX&&e.push("device-iphone-x")}}else Device.desktop&&e.push("device-desktop");(Device.cordova||Device.phonegap)&&e.push("device-cordova"),e.forEach(function(e){t.classList.add(e)})}}}},Support=(bp=!1,cp=doc.createElement("div"),"sticky -webkit-sticky -moz-sticky".split(" ").forEach(function(e){bp||(cp.style.position=e,cp.style.position===e&&(bp=!0))}),$o=bp,_o=doc.createElement("div"),{positionSticky:$o,touch:!!("ontouchstart"in win||win.DocumentTouch&&doc instanceof win.DocumentTouch),pointerEvents:!(!win.navigator.pointerEnabled&&!win.PointerEvent),prefixedPointerEvents:!!win.navigator.msPointerEnabled,transition:(gp=_o.style,"transition"in gp||"webkitTransition"in gp||"MozTransition"in gp),transforms3d:win.Modernizr&&!0===win.Modernizr.csstransforms3d||(ip=_o.style,"webkitPerspective"in ip||"MozPerspective"in ip||"OPerspective"in ip||"MsPerspective"in ip||"perspective"in ip),flexbox:function(){for(var e=doc.createElement("div").style,t="alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient".split(" "),a=0;a0;)r[i]=arguments[i+1];return globals[e]&&(t=globals[e].apply(globals,r)),n[e]&&(a=n[e].apply(n,r)),"boolean"!=typeof t&&(t=!0),"boolean"!=typeof a&&(a=!0),t&&a}if(!1!==r("beforeCreate",n)){n.type&&(n.method=n.type);var i,o=n.url.indexOf("?")>=0?"&":"?",s=n.method.toUpperCase();if(("GET"===s||"HEAD"===s||"OPTIONS"===s||"DELETE"===s)&&n.data)(i="string"==typeof n.data?n.data.indexOf("?")>=0?n.data.split("?")[1]:n.data:Utils.serializeObject(n.data)).length&&(n.url+=o+i,"?"===o&&(o="&"));if("json"===n.dataType&&n.url.indexOf("callback=")>=0){var l,p="f7jsonp_"+(Date.now()+(jsonpRequests+=1)),c=n.url.split("callback="),d=c[0]+"callback="+p;if(c[1].indexOf("&")>=0){var u=c[1].split("&").filter(function(e){return e.indexOf("=")>0}).join("&");u.length>0&&(d+="&"+u)}var h=doc.createElement("script");return h.type="text/javascript",h.onerror=function(){clearTimeout(l),r("error",null,"scripterror"),r("complete",null,"scripterror")},h.src=d,win[p]=function(e){clearTimeout(l),r("success",e),h.parentNode.removeChild(h),h=null,delete win[p]},doc.querySelector("head").appendChild(h),void(n.timeout>0&&(l=setTimeout(function(){h.parentNode.removeChild(h),h=null,r("error",null,"timeout")},n.timeout)))}"GET"!==s&&"HEAD"!==s&&"OPTIONS"!==s&&"DELETE"!==s||!1===n.cache&&(n.url+=o+"_nocache"+Date.now());var f=new XMLHttpRequest;if(f.requestUrl=n.url,f.requestParameters=n,!1===r("beforeOpen",f,n))return f;f.open(s,n.url,n.async,n.user,n.password);var m,v=null;if(("POST"===s||"PUT"===s||"PATCH"===s)&&n.data)if(n.processData)if([ArrayBuffer,Blob,Document,FormData].indexOf(n.data.constructor)>=0)v=n.data;else{var g="---------------------------"+Date.now().toString(16);"multipart/form-data"===n.contentType?f.setRequestHeader("Content-Type","multipart/form-data; boundary="+g):f.setRequestHeader("Content-Type",n.contentType),v="";var b=Utils.serializeObject(n.data);if("multipart/form-data"===n.contentType){b=b.split("&");for(var y=[],w=0;w=200&&f.status<300||0===f.status)if("json"===n.dataType){var t;try{e=JSON.parse(f.responseText)}catch(e){t=!0}t?r("error",f,"parseerror"):r("success",e,f.status,f)}else r("success",e="text"===f.responseType||""===f.responseType?f.responseText:f.response,f.status,f);else r("error",f,f.status);n.statusCode&&(globals.statusCode&&globals.statusCode[f.status]&&globals.statusCode[f.status](f),n.statusCode[f.status]&&n.statusCode[f.status](f)),r("complete",f,f.status)},f.onerror=function(){m&&clearTimeout(m),r("error",f,f.status),r("complete",f,"error")},n.timeout>0&&(f.onabort=function(){m&&clearTimeout(m)},m=setTimeout(function(){f.abort(),r("error",f,"timeout"),r("complete",f,"timeout")},n.timeout)),!1===r("beforeSend",f,n)?f:(f.send(v),f)}}function RequestShortcut(e){for(var t,a,n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];var i=[],o=i[0],s=i[1],l=i[2],p=i[3],c=i[4];"function"==typeof n[1]?(o=(t=n)[0],l=t[1],p=t[2],c=t[3]):(o=(a=n)[0],s=a[1],l=a[2],p=a[3],c=a[4]),[l,p].forEach(function(e){"string"==typeof e&&(c=e,e===l?l=void 0:p=void 0)}),c=c||("json"===e||"postJSON"===e?"json":void 0);var d={url:o,method:"post"===e||"postJSON"===e?"POST":"GET",data:s,success:l,error:p,dataType:c};return"postJSON"===e&&Utils.extend(d,{contentType:"application/json",processData:!1,crossDomain:!0,data:"string"==typeof s?s:JSON.stringify(s)}),Request(d)}Request.get=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return RequestShortcut.apply(void 0,["get"].concat(e))},Request.post=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return RequestShortcut.apply(void 0,["post"].concat(e))},Request.json=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return RequestShortcut.apply(void 0,["json"].concat(e))},Request.getJSON=Request.json,Request.postJSON=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return RequestShortcut.apply(void 0,["postJSON"].concat(e))},Request.setup=function(e){e.type&&!e.method&&Utils.extend(e,{method:e.type}),Utils.extend(globals,e)};var RequestModule={name:"request",proto:{request:Request},static:{request:Request}};function initTouch(){var e,t,a,n,r,i,o,s,l,p,c,d,u,h,f,m,v,g,b=this,y=b.params.touch,w="md"===b.theme&&y.materialRipple;function $(e){var t,a=$$1(e),n=a.parents(y.activeStateElements);return a.is(y.activeStateElements)&&(t=a),n.length>0&&(t=t?t.add(n):n),t||a}function C(e){var t=e.parents(".page-content, .panel");return 0!==t.length&&("yes"!==t.prop("scrollHandlerSet")&&(t.on("scroll",function(){clearTimeout(u),clearTimeout(g)}),t.prop("scrollHandlerSet","yes")),!0)}function x(){d&&d.addClass("active-state")}function E(){d&&(d.removeClass("active-state"),d=null)}function k(e,t,a){e&&(m=b.touchRipple.create(e,t,a))}function S(){m&&(m.remove(),m=void 0,v=void 0)}function T(a){(v=function(e){var t=y.materialRippleElements,a=$$1(e);if(a.is(t))return!a.hasClass("no-ripple")&&a;if(a.parents(t).length>0){var n=a.parents(t).eq(0);return!n.hasClass("no-ripple")&&n}return!1}(a))&&0!==v.length?C(v)?g=setTimeout(function(){k(v,e,t)},80):k(v,e,t):v=void 0}function M(){clearTimeout(g),S()}function P(){m?S():v&&!l?(clearTimeout(g),k(v,e,t),setTimeout(S,0)):S()}function O(e,t){b.emit({events:e,data:[t]})}function D(e){O("touchstart touchstart:active",e)}function I(e){O("touchmove touchmove:active",e)}function L(e){O("touchend touchend:active",e)}function z(e){O("touchstart:passive",e)}function B(e){O("touchmove:passive",e)}function A(e){O("touchend:passive",e)}Device.ios&&Device.webView&&win.addEventListener("touchstart",function(){});var R=!!Support.passiveListener&&{passive:!0},U=!!Support.passiveListener&&{passive:!1};doc.addEventListener("click",function(e){O("click",e)},!0),Support.passiveListener?(doc.addEventListener(b.touchEvents.start,D,U),doc.addEventListener(b.touchEvents.move,I,U),doc.addEventListener(b.touchEvents.end,L,U),doc.addEventListener(b.touchEvents.start,z,R),doc.addEventListener(b.touchEvents.move,B,R),doc.addEventListener(b.touchEvents.end,A,R)):(doc.addEventListener(b.touchEvents.start,function(e){D(e),z(e)},!1),doc.addEventListener(b.touchEvents.move,function(e){I(e),B(e)},!1),doc.addEventListener(b.touchEvents.end,function(e){L(e),A(e)},!1)),Support.touch?(b.on("click",function(e){var t,a,i,o,s=!1;return r?(n=null,r=!1,!0):"submit"===e.target.type&&0===e.detail||"file"===e.target.type||(n||(t=e.target,a="input select textarea label".split(" "),t.nodeName&&a.indexOf(t.nodeName.toLowerCase())>=0||(s=!0)),h||(s=!0),doc.activeElement===n&&(s=!0),e.forwardedTouchEvent&&(s=!0),e.cancelable||(s=!0),y.tapHold&&y.tapHoldPreventClicks&&p&&(s=!1),s||(e.stopImmediatePropagation(),e.stopPropagation(),n?(i=$$1(n),o=!0,(i.is("label")||i.parents("label").length>0)&&(o=!Device.android&&!(!Device.ios||!i.is("input"))),(o||l)&&e.preventDefault()):e.preventDefault(),n=null),f=setTimeout(function(){h=!1},Device.ios||Device.androidChrome?100:400),y.tapHold&&(c=setTimeout(function(){p=!1},Device.ios||Device.androidChrome?100:400)),s)}),b.on("touchstart",function(m){var v,g,b,k,S=this;if(l=!1,p=!1,m.targetTouches.length>1)return d&&E(),!0;if(m.touches.length>1&&d&&E(),y.tapHold&&(c&&clearTimeout(c),c=setTimeout(function(){m&&m.touches&&m.touches.length>1||(p=!0,m.preventDefault(),$$1(m.target).trigger("taphold"))},y.tapHoldDelay)),f&&clearTimeout(f),v=m.target,g=$$1(v),!(h=!("input"===v.nodeName.toLowerCase()&&("file"===v.type||"range"===v.type)||"select"===v.nodeName.toLowerCase()&&Device.android||g.hasClass("no-fastclick")||g.parents(".no-fastclick").length>0||y.fastClicksExclude&&g.is(y.fastClicksExclude))))return r=!1,!0;if(Device.ios||Device.android&&"getSelection"in win){var M=win.getSelection();if(M.rangeCount&&M.focusNode!==doc.body&&(!M.isCollapsed||doc.activeElement===M.focusNode))return i=!0,!0;i=!1}return Device.android&&(b=m.target,k="button input textarea select".split(" "),!doc.activeElement||b===doc.activeElement||doc.activeElement===doc.body||k.indexOf(b.nodeName.toLowerCase())>=0||doc.activeElement.blur()),r=!0,n=m.target,a=(new Date).getTime(),e=m.targetTouches[0].pageX,t=m.targetTouches[0].pageY,Device.ios&&(o=void 0,$$1(n).parents().each(function(){var e=S;e.scrollHeight>e.offsetHeight&&!o&&((o=e).f7ScrollTop=o.scrollTop)})),a-si||Math.abs(s-t)>i)&&(l=!0)}else l=!0;l&&(r=!1,n=null,l=!0,y.tapHold&&clearTimeout(c),y.activeState&&(clearTimeout(u),E()),w&&M())}}),b.on("touchend",function(e){clearTimeout(u),clearTimeout(c);var t,a,l,d,f=(new Date).getTime();if(!r)return!i&&h&&(Device.android&&!e.cancelable||!e.cancelable||e.preventDefault()),!0;if(doc.activeElement===e.target)return y.activeState&&E(),w&&P(),!0;if(i||e.preventDefault(),f-s-1&&(h=o[y],o=o.slice(0,y))}o&&(n.push(o),o="",p=!1);var w=""!==h&&void 0!==f&&f!==h,$="+"===b||"*"===b,C="?"===b||"*"===b,x=h||s,E=v||g;n.push({name:m||r++,prefix:h,delimiter:x,optional:C,repeat:$,partial:w,pattern:E?escapeGroup(E):"[^"+escapeString(x)+"]+?"})}}return(o||i-1;else{var u=escapeString(d.prefix),h=d.repeat?"(?:"+d.pattern+")(?:"+u+"(?:"+d.pattern+"))*":d.pattern;t&&t.push(d),d.optional?d.partial?l+=u+"("+h+")?":l+="(?:"+u+"("+h+"))?":l+=u+"("+h+")"}}return r?(n||(l+="(?:"+i+")?"),l+="$"===s?"$":"(?="+s+")"):(n||(l+="(?:"+i+"(?="+s+"))?"),p||(l+="(?="+i+"|"+s+")")),new RegExp("^"+l,flags(a))}function pathToRegexp(e,t,a){return e instanceof RegExp?regexpToRegexp(e,t):Array.isArray(e)?arrayToRegexp(e,t,a):stringToRegexp(e,t,a)}pathToRegexp_1.parse=parse_1,pathToRegexp_1.compile=compile_1,pathToRegexp_1.tokensToFunction=tokensToFunction_1,pathToRegexp_1.tokensToRegExp=tokensToRegExp_1;var tempDom=doc.createElement("div"),Framework7Component=function(e,t){void 0===t&&(t={});var a=Utils.extend({},e),n=Utils.merge(this,t,{$options:a});"beforeCreate created beforeMount mounted beforeDestroy destroyed".split(" ").forEach(function(e){a[e]&&(a[e]=a[e].bind(n))}),a.data&&(a.data=a.data.bind(n),Utils.extend(n,a.data())),a.render&&(a.render=a.render.bind(n)),a.methods&&Object.keys(a.methods).forEach(function(e){n[e]=a.methods[e].bind(n)}),a.on&&Object.keys(a.on).forEach(function(e){a.on[e]=a.on[e].bind(n)}),a.once&&Object.keys(a.once).forEach(function(e){a.once[e]=a.once[e].bind(n)}),a.beforeCreate&&a.beforeCreate(),a.watch&&Object.keys(a.watch).forEach(function(e){var t=n[e];Object.defineProperty(n,e,{enumerable:!0,configurable:!0,set:function(r){var i=t;t=r,i!==r&&a.watch[e].call(n,r,i)},get:function(){return t}})});var r=function(){var e="";if(a.render)e=a.render();else if(a.template)if("string"==typeof a.template)try{e=Template7.compile(a.template)(n)}catch(e){throw e}else e=a.template(n);return e}();r&&"string"==typeof r?(r=r.trim(),tempDom.innerHTML=r):r&&(tempDom.innerHTML="",tempDom.appendChild(r));var i=tempDom.children[0],o=$$1(i);n.$el=o,n.el=i,n.el=i;var s,l=[];$$1(tempDom).find("*").each(function(e,t){for(var a=[],r=0;r=0&&a.split(".").forEach(function(e,t){0===t?r=e:("stop"===e&&(i=!0),"prevent"===e&&(o=!0),"once"===e&&(s=!0))});var p=e.value.toString();l.push({el:t,name:r,once:s,handler:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var a,r,s=e[0];i&&s.stopPropagation(),o&&s.preventDefault();var l=[];if(p.indexOf("(")<0?(l=e,a=p):(a=p.split("(")[0],p.split("(")[1].split(")")[0].split(",").forEach(function(e){var t=e.trim();if(isNaN(t))if("true"===t)t=!0;else if("false"===t)t=!1;else if("null"===t)t=null;else if("undefined"===t)t=void 0;else if('"'===t[0])t=t.replace(/"/g,"");else if("'"===t[0])t=t.replace(/'/g,"");else if(t.indexOf(".")>0){var a;t.split(".").forEach(function(e){a||(a=n),a=a[e]}),t=a}else t=n[t];else t=parseFloat(t);l.push(t)})),a.indexOf(".")>=0)a.split(".").forEach(function(e,t){if(r||(r=n),!r[e])throw new Error("Component doesn't have method \""+a.split(".").slice(0,t+1).join(".")+'"');r=r[e]});else{if(!n[a])throw new Error("Component doesn't have method \""+a+'"');r=n[a]}r.apply(void 0,l)}})})}),a.style&&((s=doc.createElement("style")).innerHTML=a.style),a.styleScopeId&&i.setAttribute("data-scope",a.styleScopeId),a.on&&Object.keys(a.on).forEach(function(e){o.on(Utils.eventNameToColonCase(e),a.on[e])}),a.once&&Object.keys(a.once).forEach(function(e){o.once(Utils.eventNameToColonCase(e),a.once[e])}),l.forEach(function(e){$$1(e.el)[e.once?"once":"on"](e.name,e.handler)}),a.created&&a.created(),n.$mount=function(e){a.beforeMount&&a.beforeMount(),s&&$$1("head").append(s),e&&e(i),a.mounted&&a.mounted()},n.$destroy=function(){a.beforeDestroy&&a.beforeDestroy(),s&&$$1(s).remove(),a.on&&Object.keys(a.on).forEach(function(e){o.off(Utils.eventNameToColonCase(e),a.on[e])}),a.once&&Object.keys(a.once).forEach(function(e){o.off(Utils.eventNameToColonCase(e),a.once[e])}),l.forEach(function(e){$$1(e.el).off(e.name,e.handler)}),a.destroyed&&a.destroyed(),i&&i.f7Component&&(i.f7Component=null,delete i.f7Component),Utils.deleteProps(n),n=null};for(var p=0;p")>=0&&(t=e.split("