暫無描述

angular-onsenui.min.js 50KB

1234
  1. console.warn('From Onsen UI 2.11.0, the AngularJS binding will no longer be part of the core package. You will need to install the new angularjs-onsenui package. See https://onsen.io/v2/guide/angular1/#migrating-to-angularjs-onsenui-package for more details.');
  2. /* angularjs-onsenui v1.0.1 - 2019-04-01 */
  3. !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t():"function"==typeof define&&define.amd?define(t):t()}(0,function(){"use strict";!function(){var r=/xyz/.test(function(){})?/\b_super\b/:/.*/;function s(){}s.extend=function(e){var i=this.prototype,t=Object.create(i);for(var n in e)t[n]="function"==typeof e[n]&&"function"==typeof i[n]&&r.test(e[n])?function(n,o){return function(){var e=this._super;this._super=i[n];var t=o.apply(this,arguments);return this._super=e,t}}(n,e[n]):e[n];var o="function"==typeof t.init?t.hasOwnProperty("init")?t.init:function(){i.init.apply(this,arguments)}:function(){};return((o.prototype=t).constructor=o).extend=s.extend,o},window.Class=s}();var r,n,e,s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e};r=window.ons=window.ons||{},e=angular.module("onsen",[]),angular.module("onsen.directives",["onsen"]),function(){r._onsenService=null,r.componentBase=window,r.bootstrap=function(e,t){angular.isArray(e)&&(t=e,e=void 0),e||(e="myOnsenApp"),t=["onsen"].concat(angular.isArray(t)?t:[]);var n=angular.module(e,t),o=window.document;if("loading"==o.readyState||"uninitialized"==o.readyState||"interactive"==o.readyState)o.addEventListener("DOMContentLoaded",function(){angular.bootstrap(o.documentElement,[e])},!1);else{if(!o.documentElement)throw new Error("Invalid state");angular.bootstrap(o.documentElement,[e])}return n},r.findParentComponentUntil=function(e,t){var n;return t instanceof HTMLElement?n=angular.element(t):t instanceof angular.element?n=t:t.target&&(n=angular.element(t.target)),n.inheritedData(e)},r.findComponent=function(e,t){var n=(t||document).querySelector(e);return n&&angular.element(n).data(n.nodeName.toLowerCase())||null},r.compile=function(e){if(!r.$compile)throw new Error("ons.$compile() is not ready. Wait for initialization with ons.ready().");if(!(e instanceof HTMLElement))throw new Error("First argument must be an instance of HTMLElement.");var t=angular.element(e).scope();if(!t)throw new Error("AngularJS Scope is null. Argument DOM element must be attached in DOM document.");r.$compile(e)(t)},r._getOnsenService=function(){if(!this._onsenService)throw new Error("$onsen is not loaded, wait for ons.ready().");return this._onsenService},r._waitDiretiveInit=function(o,i){return function(t,n){angular.element(t).data(o)?i(t,n):t.addEventListener(o+":init",function e(){i(t,n),t.removeEventListener(o+":init",e,!1)},!1)}};var i=r.createElement;r.createElement=function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=function(e){return angular.element(e).data(e.tagName.toLowerCase())||e},o=i(e,s({append:!!t.parentScope,link:function(e){t.parentScope?(r.$compile(angular.element(e))(t.parentScope.$new()),t.parentScope.$evalAsync()):r.compile(e)}},t));return o instanceof Promise?o.then(n):n(o)},r.resolveLoadingPlaceHolder,r.resolveLoadingPlaceholder=function(e){return resolveLoadingPlaceholderOriginal(e,function(e,t){r.compile(e),angular.element(e).scope().$evalAsync(function(){return setImmediate(t)})})},r._setupLoadingPlaceHolders=function(){}}(),n=r._readyLock.lock(),e.run(["$compile","$rootScope",function(e,t){if("loading"===document.readyState||"uninitialized"==document.readyState)window.addEventListener("DOMContentLoaded",function(){document.body.appendChild(document.createElement("ons-dummy-for-init"))});else{if(!document.body)throw new Error("Invalid initialization state.");document.body.appendChild(document.createElement("ons-dummy-for-init"))}t.$on("$ons-ready",n)}]),e.value("$onsGlobal",r),e.run(["$compile","$rootScope","$onsen","$q",function(e,t,n,o){r._onsenService=n,r._qService=o,t.ons=window.ons,t.console=window.console,t.alert=window.alert,r.$compile=e}]),e.run(["$templateCache",function(n){var o=r._internal.getTemplateHTMLAsync;r._internal.getTemplateHTMLAsync=function(e){var t=n.get(e);return t?Promise.resolve(t):o(e)}}]),angular.module("onsen").factory("ActionSheetView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._scope=e,this._element=t,this._attrs=n,this._clearDerivingMethods=o.deriveMethods(this,this._element[0],["show","hide","toggle"]),this._clearDerivingEvents=o.deriveEvents(this,this._element[0],["preshow","postshow","prehide","posthide","cancel"],function(e){return e.actionSheet&&(e.actionSheet=this),e}.bind(this)),this._scope.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._element.remove(),this._clearDerivingMethods(),this._clearDerivingEvents(),this._scope=this._attrs=this._element=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["disabled","cancelable","visible","onDeviceBackButton"]),e}]),angular.module("onsen").factory("AlertDialogView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._scope=e,this._element=t,this._attrs=n,this._clearDerivingMethods=o.deriveMethods(this,this._element[0],["show","hide"]),this._clearDerivingEvents=o.deriveEvents(this,this._element[0],["preshow","postshow","prehide","posthide","cancel"],function(e){return e.alertDialog&&(e.alertDialog=this),e}.bind(this)),this._scope.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._element.remove(),this._clearDerivingMethods(),this._clearDerivingEvents(),this._scope=this._attrs=this._element=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["disabled","cancelable","visible","onDeviceBackButton"]),e}]),angular.module("onsen").factory("CarouselView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._element=t,this._scope=e,this._attrs=n,this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingMethods=o.deriveMethods(this,t[0],["setActiveIndex","getActiveIndex","next","prev","refresh","first","last"]),this._clearDerivingEvents=o.deriveEvents(this,t[0],["refresh","postchange","overscroll"],function(e){return e.carousel&&(e.carousel=this),e}.bind(this))},_destroy:function(){this.emit("destroy"),this._clearDerivingEvents(),this._clearDerivingMethods(),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["centered","overscrollable","disabled","autoScroll","swipeable","autoScrollRatio","itemCount","onSwipe"]),e}]),angular.module("onsen").factory("DialogView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._scope=e,this._element=t,this._attrs=n,this._clearDerivingMethods=o.deriveMethods(this,this._element[0],["show","hide"]),this._clearDerivingEvents=o.deriveEvents(this,this._element[0],["preshow","postshow","prehide","posthide","cancel"],function(e){return e.dialog&&(e.dialog=this),e}.bind(this)),this._scope.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._element.remove(),this._clearDerivingMethods(),this._clearDerivingEvents(),this._scope=this._attrs=this._element=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["disabled","cancelable","visible","onDeviceBackButton"]),e}]),angular.module("onsen").factory("FabView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._element=t,this._scope=e,this._attrs=n,this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingMethods=o.deriveMethods(this,t[0],["show","hide","toggle"])},_destroy:function(){this.emit("destroy"),this._clearDerivingMethods(),this._element=this._scope=this._attrs=null}});return o.derivePropertiesFromElement(e,["disabled","visible"]),MicroEvent.mixin(e),e}]),angular.module("onsen").factory("GenericView",["$onsen",function(s){var a=Class.extend({init:function(e,t,n,o){var i=this;if(o={},this._element=t,this._scope=e,this._attrs=n,o.directiveOnly){if(!o.modifierTemplate)throw new Error("options.modifierTemplate is undefined.");s.addModifierMethods(this,o.modifierTemplate,t)}else s.addModifierMethodsForCustomElements(this,t);s.cleaner.onDestroy(e,function(){i._events=void 0,s.removeModifierMethods(i),o.onDestroy&&o.onDestroy(i),s.clearComponent({scope:e,attrs:n,element:t}),i=t=i._element=i._scope=e=i._attrs=n=o=null})}});return a.register=function(e,t,n,o){var i=new a(e,t,n,o);if(!o.viewKey)throw new Error("options.viewKey is required.");s.declareVarAttribute(n,i),t.data(o.viewKey,i);var r=o.onDestroy||angular.noop;return o.onDestroy=function(e){r(e),t.data(o.viewKey,null)},i},MicroEvent.mixin(a),a}]);var t,u,o,i,a,c,l,d,p,f,h,v=function(){function o(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e}}(),m=function e(t,n,o){null===t&&(t=Function.prototype);var i=Object.getOwnPropertyDescriptor(t,n);if(void 0===i){var r=Object.getPrototypeOf(t);return null===r?void 0:e(r,n,o)}if("value"in i)return i.value;var s=i.get;return void 0!==s?s.call(o):void 0};angular.module("onsen").factory("AngularLazyRepeatDelegate",["$compile",function(s){var r=["ons-lazy-repeat","ons:lazy:repeat","ons_lazy_repeat","data-ons-lazy-repeat","x-ons-lazy-repeat"];return function(e){function i(e,t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,i);var o=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(i.__proto__||Object.getPrototypeOf(i)).call(this,e,t));return o._parentScope=n,r.forEach(function(e){return t.removeAttribute(e)}),o._linker=s(t?t.cloneNode(!0):null),o}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(i,ons._internal.LazyRepeatDelegate),v(i,[{key:"configureItemScope",value:function(e,t){this._userDelegate.configureItemScope instanceof Function&&this._userDelegate.configureItemScope(e,t)}},{key:"destroyItemScope",value:function(e,t){this._userDelegate.destroyItemScope instanceof Function&&this._userDelegate.destroyItemScope(e,t)}},{key:"_usingBinding",value:function(){if(this._userDelegate.configureItemScope)return!0;if(this._userDelegate.createItemContent)return!1;throw new Error("`lazy-repeat` delegate object is vague.")}},{key:"loadItemElement",value:function(e,o){this._prepareItemElement(e,function(e){var t=e.element,n=e.scope;o({element:t,scope:n})})}},{key:"_prepareItemElement",value:function(n,o){var i=this,r=this._parentScope.$new();this._addSpecialProperties(n,r),this._usingBinding()&&this.configureItemScope(n,r),this._linker(r,function(e){var t=e[0];i._usingBinding()||(t=i._userDelegate.createItemContent(n,t),s(t)(r)),o({element:t,scope:r})})}},{key:"_addSpecialProperties",value:function(e,t){var n=this.countItems()-1;angular.extend(t,{$index:e,$first:0===e,$last:e===n,$middle:0!==e&&e!==n,$even:e%2==0,$odd:e%2==1})}},{key:"updateItem",value:function(e,t){var n=this;this._usingBinding()?t.scope.$evalAsync(function(){return n.configureItemScope(e,t.scope)}):m(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"updateItem",this).call(this,e,t)}},{key:"destroyItem",value:function(e,t){this._usingBinding()?this.destroyItemScope(e,t.scope):m(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"destroyItem",this).call(this,e,t.element),t.scope.$destroy()}},{key:"destroy",value:function(){m(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"destroy",this).call(this),this._scope=null}}]),i}()}]),angular.module("onsen").factory("LazyRepeatView",["AngularLazyRepeatDelegate",function(a){return Class.extend({init:function(e,t,n,o){var i=this;this._element=t,this._scope=e,this._attrs=n,this._linker=o;var r=this._scope.$eval(this._attrs.onsLazyRepeat),s=new a(r,t[0],e||t.scope());this._provider=new ons._internal.LazyRepeatProvider(t[0].parentNode,s),r.refresh=this._provider.refresh.bind(this._provider),t.remove(),this._scope.$watch(s.countItems.bind(s),this._provider._onChange.bind(this._provider)),this._scope.$on("$destroy",function(){i._element=i._scope=i._attrs=i._linker=null})}})}]),angular.module("onsen").factory("ModalView",["$onsen","$parse",function(o,e){var t=Class.extend({_element:void 0,_scope:void 0,init:function(e,t,n){this._scope=e,this._element=t,this._attrs=n,this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingMethods=o.deriveMethods(this,this._element[0],["show","hide","toggle"]),this._clearDerivingEvents=o.deriveEvents(this,this._element[0],["preshow","postshow","prehide","posthide"],function(e){return e.modal&&(e.modal=this),e}.bind(this))},_destroy:function(){this.emit("destroy",{page:this}),this._element.remove(),this._clearDerivingMethods(),this._clearDerivingEvents(),this._events=this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(t),o.derivePropertiesFromElement(t,["onDeviceBackButton","visible"]),t}]),angular.module("onsen").factory("NavigatorView",["$compile","$onsen",function(e,o){var t=Class.extend({_element:void 0,_attrs:void 0,_scope:void 0,init:function(e,t,n){this._element=t||angular.element(window.document.body),this._scope=e||this._element.scope(),this._attrs=n,this._previousPageScope=null,this._boundOnPrepop=this._onPrepop.bind(this),this._element.on("prepop",this._boundOnPrepop),this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingEvents=o.deriveEvents(this,t[0],["prepush","postpush","prepop","postpop","init","show","hide","destroy"],function(e){return e.navigator&&(e.navigator=this),e}.bind(this)),this._clearDerivingMethods=o.deriveMethods(this,t[0],["insertPage","removePage","pushPage","bringPageTop","popPage","replacePage","resetToPage","canPopPage"])},_onPrepop:function(e){var t=e.detail.navigator.pages;angular.element(t[t.length-2]).data("_scope").$evalAsync()},_destroy:function(){this.emit("destroy"),this._clearDerivingEvents(),this._clearDerivingMethods(),this._element.off("prepop",this._boundOnPrepop),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(t),o.derivePropertiesFromElement(t,["pages","topPage","onSwipe","options","onDeviceBackButton","pageLoader"]),t}]),angular.module("onsen").factory("PageView",["$onsen","$parse",function(i,r){var e=Class.extend({init:function(e,t,n){var o=this;this._scope=e,this._element=t,this._attrs=n,this._clearListener=e.$on("$destroy",this._destroy.bind(this)),this._clearDerivingEvents=i.deriveEvents(this,t[0],["init","show","hide","destroy"]),Object.defineProperty(this,"onDeviceBackButton",{get:function(){return o._element[0].onDeviceBackButton},set:function(e){o._userBackButtonHandler||o._enableBackButtonHandler(),o._userBackButtonHandler=e}}),(this._attrs.ngDeviceBackButton||this._attrs.onDeviceBackButton)&&this._enableBackButtonHandler(),this._attrs.ngInfiniteScroll&&(this._element[0].onInfiniteScroll=function(e){r(o._attrs.ngInfiniteScroll)(o._scope)(e)})},_enableBackButtonHandler:function(){this._userBackButtonHandler=angular.noop,this._element[0].onDeviceBackButton=this._onDeviceBackButton.bind(this)},_onDeviceBackButton:function(e){if(this._userBackButtonHandler(e),this._attrs.ngDeviceBackButton&&r(this._attrs.ngDeviceBackButton)(this._scope,{$event:e}),this._attrs.onDeviceBackButton){var t=window.$event;window.$event=e,new Function(this._attrs.onDeviceBackButton)(),window.$event=t}},_destroy:function(){this._clearDerivingEvents(),this._element=null,this._scope=null,this._clearListener()}});return MicroEvent.mixin(e),e}]),angular.module("onsen").factory("PopoverView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._element=t,this._scope=e,this._attrs=n,this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingMethods=o.deriveMethods(this,this._element[0],["show","hide"]),this._clearDerivingEvents=o.deriveEvents(this,this._element[0],["preshow","postshow","prehide","posthide"],function(e){return e.popover&&(e.popover=this),e}.bind(this))},_destroy:function(){this.emit("destroy"),this._clearDerivingMethods(),this._clearDerivingEvents(),this._element.remove(),this._element=this._scope=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["cancelable","disabled","onDeviceBackButton","visible"]),e}]),angular.module("onsen").factory("PullHookView",["$onsen","$parse",function(i,e){var t=Class.extend({init:function(e,t,n){var o=this;this._element=t,this._scope=e,this._attrs=n,this._clearDerivingEvents=i.deriveEvents(this,this._element[0],["changestate"],function(e){return e.pullHook&&(e.pullHook=o),e}),this.on("changestate",function(){return o._scope.$evalAsync()}),this._element[0].onAction=function(e){o._attrs.ngAction?o._scope.$eval(o._attrs.ngAction,{$done:e}):o.onAction?o.onAction(e):e()},this._scope.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._clearDerivingEvents(),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(t),i.derivePropertiesFromElement(t,["state","onPull","pullDistance","height","thresholdHeight","disabled"]),t}]),angular.module("onsen").factory("SpeedDialView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._element=t,this._scope=e,this._attrs=n,this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingMethods=o.deriveMethods(this,t[0],["show","hide","showItems","hideItems","isOpen","toggle","toggleItems"]),this._clearDerivingEvents=o.deriveEvents(this,t[0],["open","close"]).bind(this)},_destroy:function(){this.emit("destroy"),this._clearDerivingEvents(),this._clearDerivingMethods(),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["disabled","visible","inline"]),e}]),angular.module("onsen").factory("SplitterContent",["$onsen","$compile",function(e,t){var n=Class.extend({init:function(e,t,n){this._element=t,this._scope=e,this._attrs=n,this.load=this._element[0].load.bind(this._element[0]),e.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._element=this._scope=this._attrs=this.load=this._pageScope=null}});return MicroEvent.mixin(n),e.derivePropertiesFromElement(n,["page"]),n}]),angular.module("onsen").factory("SplitterSide",["$onsen","$compile",function(i,e){var t=Class.extend({init:function(e,t,n){var o=this;this._element=t,this._scope=e,this._attrs=n,this._clearDerivingMethods=i.deriveMethods(this,this._element[0],["open","close","toggle","load"]),this._clearDerivingEvents=i.deriveEvents(this,t[0],["modechange","preopen","preclose","postopen","postclose"],function(e){return e.side?angular.extend(e,{side:o}):e}),e.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._clearDerivingMethods(),this._clearDerivingEvents(),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(t),i.derivePropertiesFromElement(t,["page","mode","isOpen","onSwipe","pageLoader"]),t}]),angular.module("onsen").factory("Splitter",["$onsen",function(e){var o=Class.extend({init:function(e,t,n){this._element=t,this._scope=e,this._attrs=n,e.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(o),e.derivePropertiesFromElement(o,["onDeviceBackButton"]),["left","right","side","content","mask"].forEach(function(t,n){Object.defineProperty(o.prototype,t,{get:function(){var e="ons-splitter-"+(n<3?"side":t);return angular.element(this._element[0][t]).data(e)}})}),o}]),angular.module("onsen").factory("SwitchView",["$parse","$onsen",function(r,e){var t=Class.extend({init:function(e,t,n){var o=this;this._element=e,this._checkbox=angular.element(e[0].querySelector("input[type=checkbox]")),this._scope=t,this._prepareNgModel(e,t,n),this._scope.$on("$destroy",function(){o.emit("destroy"),o._element=o._checkbox=o._scope=null})},_prepareNgModel:function(e,t,n){var o=this;if(n.ngModel){var i=r(n.ngModel).assign;t.$parent.$watch(n.ngModel,function(e){o.checked=!!e}),this._element.on("change",function(e){i(t.$parent,o.checked),n.ngChange&&t.$eval(n.ngChange),t.$parent.$evalAsync()})}}});return MicroEvent.mixin(t),e.derivePropertiesFromElement(t,["disabled","checked","checkbox","value"]),t}]),angular.module("onsen").factory("TabbarView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){if("ons-tabbar"!==t[0].nodeName.toLowerCase())throw new Error('"element" parameter must be a "ons-tabbar" element.');this._scope=e,this._element=t,this._attrs=n,this._scope.$on("$destroy",this._destroy.bind(this)),this._clearDerivingEvents=o.deriveEvents(this,t[0],["reactive","postchange","prechange","init","show","hide","destroy"]),this._clearDerivingMethods=o.deriveMethods(this,t[0],["setActiveTab","show","hide","setTabbarVisibility","getActiveTabIndex"])},_destroy:function(){this.emit("destroy"),this._clearDerivingEvents(),this._clearDerivingMethods(),this._element=this._scope=this._attrs=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["visible","swipeable","onSwipe"]),e}]),angular.module("onsen").factory("ToastView",["$onsen",function(o){var e=Class.extend({init:function(e,t,n){this._scope=e,this._element=t,this._attrs=n,this._clearDerivingMethods=o.deriveMethods(this,this._element[0],["show","hide","toggle"]),this._clearDerivingEvents=o.deriveEvents(this,this._element[0],["preshow","postshow","prehide","posthide"],function(e){return e.toast&&(e.toast=this),e}.bind(this)),this._scope.$on("$destroy",this._destroy.bind(this))},_destroy:function(){this.emit("destroy"),this._element.remove(),this._clearDerivingMethods(),this._clearDerivingEvents(),this._scope=this._attrs=this._element=null}});return MicroEvent.mixin(e),o.derivePropertiesFromElement(e,["visible","onDeviceBackButton"]),e}]),angular.module("onsen").directive("onsActionSheetButton",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-action-sheet-button"}),o.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsActionSheet",["$onsen","ActionSheetView",function(i,r){return{restrict:"E",replace:!1,scope:!0,transclude:!1,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.declareVarAttribute(n,o),i.registerEventHandlers(o,"preshow prehide postshow posthide destroy"),i.addModifierMethodsForCustomElements(o,t),t.data("ons-action-sheet",o),e.$on("$destroy",function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-action-sheet",void 0),t=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsAlertDialog",["$onsen","AlertDialogView",function(i,r){return{restrict:"E",replace:!1,scope:!0,transclude:!1,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.declareVarAttribute(n,o),i.registerEventHandlers(o,"preshow prehide postshow posthide destroy"),i.addModifierMethodsForCustomElements(o,t),t.data("ons-alert-dialog",o),t.data("_scope",e),e.$on("$destroy",function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-alert-dialog",void 0),t=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsBackButton",["$onsen","$compile","GenericView","ComponentCleaner",function(s,e,a,c){return{restrict:"E",replace:!1,compile:function(e,t){return{pre:function(e,t,n,o,i){var r=a.register(e,t,n,{viewKey:"ons-back-button"});n.ngClick&&(t[0].onClick=angular.noop),e.$on("$destroy",function(){r._events=void 0,s.removeModifierMethods(r),t=null}),c.onDestroy(e,function(){c.destroyScope(e),c.destroyAttributes(n),t=e=n=null})},post:function(e,t){s.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsBottomToolbar",["$onsen","GenericView",function(o,i){return{restrict:"E",link:{pre:function(e,t,n){i.register(e,t,n,{viewKey:"ons-bottomToolbar"})},post:function(e,t,n){o.fireComponentEvent(t[0],"init")}}}}]),angular.module("onsen").directive("onsButton",["$onsen","GenericView",function(i,r){return{restrict:"E",link:function(e,t,n){var o=r.register(e,t,n,{viewKey:"ons-button"});Object.defineProperty(o,"disabled",{get:function(){return this._element[0].disabled},set:function(e){return this._element[0].disabled=e}}),i.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsCard",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-card"}),o.fireComponentEvent(t[0],"init")}}}]),(t=angular.module("onsen")).directive("onsCarousel",["$onsen","CarouselView",function(i,r){return{restrict:"E",replace:!1,scope:!1,transclude:!1,compile:function(e,t){return function(e,t,n){var o=new r(e,t,n);t.data("ons-carousel",o),i.registerEventHandlers(o,"postchange refresh overscroll destroy"),i.declareVarAttribute(n,o),e.$on("$destroy",function(){o._events=void 0,t.data("ons-carousel",void 0),t=null}),i.fireComponentEvent(t[0],"init")}}}}]),t.directive("onsCarouselItem",["$onsen",function(i){return{restrict:"E",compile:function(e,t){return function(e,t,n){if(e.$last){var o=i.util.findParent(t[0],"ons-carousel");o._swiper.init({swipeable:o.hasAttribute("swipeable"),autoRefresh:o.hasAttribute("auto-refresh")})}}}}}]),angular.module("onsen").directive("onsCheckbox",["$parse",function(r){return{restrict:"E",replace:!1,scope:!1,link:function(e,t,n){var o=t[0],i=function(){r(n.ngModel).assign(e,o.checked),n.ngChange&&e.$eval(n.ngChange),e.$parent.$evalAsync()};n.ngModel&&(e.$watch(n.ngModel,function(e){return o.checked=e}),t.on("change",i)),e.$on("$destroy",function(){t.off("change",i),e=t=n=o=null})}}}]),angular.module("onsen").directive("onsDialog",["$onsen","DialogView",function(i,r){return{restrict:"E",scope:!0,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.declareVarAttribute(n,o),i.registerEventHandlers(o,"preshow prehide postshow posthide destroy"),i.addModifierMethodsForCustomElements(o,t),t.data("ons-dialog",o),e.$on("$destroy",function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-dialog",void 0),t=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsDummyForInit",["$rootScope",function(n){var o=!1;return{restrict:"E",replace:!1,link:{post:function(e,t){o||(o=!0,n.$broadcast("$ons-ready")),t.remove()}}}}]),angular.module("onsen").directive("onsFab",["$onsen","FabView",function(i,r){return{restrict:"E",replace:!1,scope:!1,transclude:!1,compile:function(e,t){return function(e,t,n){var o=new r(e,t,n);t.data("ons-fab",o),i.declareVarAttribute(n,o),e.$on("$destroy",function(){t.data("ons-fab",void 0),t=null}),i.fireComponentEvent(t[0],"init")}}}}]),u="drag dragleft dragright dragup dragdown hold release swipe swipeleft swiperight swipeup swipedown tap doubletap touch transform pinch pinchin pinchout rotate".split(/ +/),angular.module("onsen").directive("onsGestureDetector",["$onsen",function(a){var c=u.reduce(function(e,t){return e["ng"+l(t)]="&",e},{});function l(e){return e.charAt(0).toUpperCase()+e.slice(1)}return{restrict:"E",scope:c,replace:!1,transclude:!0,compile:function(e,t){return function(n,t,e,o,i){i(n.$parent,function(e){t.append(e)});var r,s=function(e){var t="ng"+l(e.type);t in c&&n[t]({$event:e})};setImmediate(function(){(r=t[0]._gestureDetector).on(u.join(" "),s)}),a.cleaner.onDestroy(n,function(){r.off(u.join(" "),s),a.clearComponent({scope:n,element:t,attrs:e}),r.element=n=t=e=null}),a.fireComponentEvent(t[0],"init")}}}}]),angular.module("onsen").directive("onsIcon",["$onsen","GenericView",function(e,o){return{restrict:"E",compile:function(e,t){return-1!==t.icon.indexOf("{{")&&t.$observe("icon",function(){setImmediate(function(){return e[0]._update()})}),function(e,t,n){o.register(e,t,n,{viewKey:"ons-icon"})}}}}]),angular.module("onsen").directive("onsIfOrientation",["$onsen","$onsGlobal",function(i,r){return{restrict:"A",replace:!1,transclude:!1,scope:!1,compile:function(e){return e.css("display","none"),function(e,n,o){function t(){var e=(""+o.onsIfOrientation).toLowerCase(),t=r.orientation.isPortrait()?"portrait":"landscape";"portrait"!==e&&"landscape"!==e||(e===t?n.css("display",""):n.css("display","none"))}o.$observe("onsIfOrientation",t),r.orientation.on("change",t),t(),i.cleaner.onDestroy(e,function(){r.orientation.off("change",t),i.clearComponent({element:n,scope:e,attrs:o}),n=e=o=null})}}}}]),angular.module("onsen").directive("onsIfPlatform",["$onsen",function(r){return{restrict:"A",replace:!1,transclude:!1,scope:!1,compile:function(e){e.css("display","none");var i=function(){if(navigator.userAgent.match(/Android/i))return"android";if(navigator.userAgent.match(/BlackBerry/i)||navigator.userAgent.match(/RIM Tablet OS/i)||navigator.userAgent.match(/BB10/i))return"blackberry";if(navigator.userAgent.match(/iPhone|iPad|iPod/i))return"ios";if(navigator.userAgent.match(/Windows Phone|IEMobile|WPDesktop/i))return"wp";var e=!!window.opera||0<=navigator.userAgent.indexOf(" OPR/");if(e)return"opera";if("undefined"!=typeof InstallTrigger)return"firefox";if(0<Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor"))return"safari";var t=0<=navigator.userAgent.indexOf(" Edge/");return t?"edge":!window.chrome||e||t?document.documentMode?"ie":"unknown":"chrome"}();return function(e,t,n){function o(){0<=n.onsIfPlatform.toLowerCase().trim().split(/\s+/).indexOf(i.toLowerCase())?t.css("display","block"):t.css("display","none")}n.$observe("onsIfPlatform",function(e){e&&o()}),o(),r.cleaner.onDestroy(e,function(){r.clearComponent({element:t,scope:e,attrs:n}),t=e=n=null})}}}}]),angular.module("onsen").directive("onsInput",["$parse",function(r){return{restrict:"E",replace:!1,scope:!1,link:function(e,t,n){var o=t[0],i=function(){r(n.ngModel).assign(e,"number"===o.type?Number(o.value):o.value),n.ngChange&&e.$eval(n.ngChange),e.$parent.$evalAsync()};n.ngModel&&(e.$watch(n.ngModel,function(e){void 0!==e&&e!==o.value&&(o.value=e)}),t.on("input",i)),e.$on("$destroy",function(){t.off("input",i),e=t=n=o=null})}}}]),o=angular.module("onsen"),i=function(c,l){return function(e){return function(e,t,n){var o=c?"block":"none",i=c?"none":"block",r=function(){t.css("display",o)},s=function(){t.css("display",i)},a=function(e){e.visible?r():s()};ons.softwareKeyboard.on("show",r),ons.softwareKeyboard.on("hide",s),ons.softwareKeyboard.on("init",a),ons.softwareKeyboard._visible?r():s(),l.cleaner.onDestroy(e,function(){ons.softwareKeyboard.off("show",r),ons.softwareKeyboard.off("hide",s),ons.softwareKeyboard.off("init",a),l.clearComponent({element:t,scope:e,attrs:n}),t=e=n=null})}}},o.directive("onsKeyboardActive",["$onsen",function(e){return{restrict:"A",replace:!1,transclude:!1,scope:!1,compile:i(!0,e)}}]),o.directive("onsKeyboardInactive",["$onsen",function(e){return{restrict:"A",replace:!1,transclude:!1,scope:!1,compile:i(!1,e)}}]),angular.module("onsen").directive("onsLazyRepeat",["$onsen","LazyRepeatView",function(e,o){return{restrict:"A",replace:!1,priority:1e3,terminal:!0,compile:function(e,t){return function(e,t,n){new o(e,t,n),e.$on("$destroy",function(){e=t=n=null})}}}}]),angular.module("onsen").directive("onsListHeader",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-list-header"}),o.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsListItem",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-list-item"}),o.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsList",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-list"}),o.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsListTitle",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-list-title"}),o.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsLoadingPlaceholder",function(){return{restrict:"A",link:function(n,e,t){t.onsLoadingPlaceholder&&ons._resolveLoadingPlaceholder(e[0],t.onsLoadingPlaceholder,function(e,t){ons.compile(e),n.$evalAsync(function(){setImmediate(t)})})}}}),angular.module("onsen").directive("onsModal",["$onsen","ModalView",function(i,r){return{restrict:"E",replace:!1,scope:!1,transclude:!1,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.addModifierMethodsForCustomElements(o,t),i.declareVarAttribute(n,o),i.registerEventHandlers(o,"preshow prehide postshow posthide destroy"),t.data("ons-modal",o),e.$on("$destroy",function(){i.removeModifierMethods(o),t.data("ons-modal",void 0),o=t=e=n=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),a=window.ons.elements.Navigator.rewritables.ready,window.ons.elements.Navigator.rewritables.ready=ons._waitDiretiveInit("ons-navigator",a),angular.module("onsen").directive("onsNavigator",["NavigatorView","$onsen",function(r,s){return{restrict:"E",transclude:!1,scope:!0,compile:function(e){return{pre:function(e,t,n,o){var i=new r(e,t,n);s.declareVarAttribute(n,i),s.registerEventHandlers(i,"prepush prepop postpush postpop init show hide destroy"),t.data("ons-navigator",i),t[0].pageLoader=s.createPageLoader(i),e.$on("$destroy",function(){i._events=void 0,t.data("ons-navigator",void 0),e=t=null})},post:function(e,t,n){s.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsPage",["$onsen","PageView",function(r,i){function o(o){var i=0;!function e(){if(!(i++<15))throw new Error('Fail to fire "pageinit" event. Attach "ons-page" element to the document after initialization.');var t,n;!function e(t){return document.documentElement===t||!!t.parentNode&&e(t.parentNode)}(o)?10<i?setTimeout(e,1e3/60):setImmediate(e):(r.fireComponentEvent(o,"init"),t=o,(n=document.createEvent("HTMLEvents")).initEvent("pageinit",!0,!0),t.dispatchEvent(n))}()}return{restrict:"E",transclude:!1,scope:!0,compile:function(e,t){return{pre:function(e,t,n){var o=new i(e,t,n);r.declareVarAttribute(n,o),r.registerEventHandlers(o,"init show hide destroy"),t.data("ons-page",o),r.addModifierMethodsForCustomElements(o,t),t.data("_scope",e),r.cleaner.onDestroy(e,function(){o._events=void 0,r.removeModifierMethods(o),t.data("ons-page",void 0),t.data("_scope",void 0),r.clearComponent({element:t,scope:e,attrs:n}),e=t=n=null})},post:function(e,t,n){o(t[0])}}}}}]),angular.module("onsen").directive("onsPopover",["$onsen","PopoverView",function(i,r){return{restrict:"E",replace:!1,scope:!0,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.declareVarAttribute(n,o),i.registerEventHandlers(o,"preshow prehide postshow posthide destroy"),i.addModifierMethodsForCustomElements(o,t),t.data("ons-popover",o),e.$on("$destroy",function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-popover",void 0),t=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsPullHook",["$onsen","PullHookView",function(i,r){return{restrict:"E",replace:!1,scope:!0,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.declareVarAttribute(n,o),i.registerEventHandlers(o,"changestate destroy"),t.data("ons-pull-hook",o),e.$on("$destroy",function(){o._events=void 0,t.data("ons-pull-hook",void 0),e=t=n=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsRadio",["$parse",function(r){return{restrict:"E",replace:!1,scope:!1,link:function(e,t,n){var o=t[0],i=function(){r(n.ngModel).assign(e,o.value),n.ngChange&&e.$eval(n.ngChange),e.$parent.$evalAsync()};n.ngModel&&(e.$watch(n.ngModel,function(e){return o.checked=e===o.value}),t.on("change",i)),e.$on("$destroy",function(){t.off("change",i),e=t=n=o=null})}}}]),angular.module("onsen").directive("onsRange",["$parse",function(i){return{restrict:"E",replace:!1,scope:!1,link:function(e,t,n){var o=function(){(0,i(n.ngModel).assign)(e,t[0].value),n.ngChange&&e.$eval(n.ngChange),e.$parent.$evalAsync()};n.ngModel&&(e.$watch(n.ngModel,function(e){t[0].value=e}),t.on("input",o)),e.$on("$destroy",function(){t.off("input",o),e=t=n=null})}}}]),angular.module("onsen").directive("onsRipple",["$onsen","GenericView",function(o,i){return{restrict:"E",link:function(e,t,n){i.register(e,t,n,{viewKey:"ons-ripple"}),o.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsScope",["$onsen",function(e){return{restrict:"A",replace:!1,transclude:!1,scope:!1,link:function(e,t){t.data("_scope",e),e.$on("$destroy",function(){t.data("_scope",void 0)})}}}]),angular.module("onsen").directive("onsSearchInput",["$parse",function(r){return{restrict:"E",replace:!1,scope:!1,link:function(e,t,n){var o=t[0],i=function(){r(n.ngModel).assign(e,"number"===o.type?Number(o.value):o.value),n.ngChange&&e.$eval(n.ngChange),e.$parent.$evalAsync()};n.ngModel&&(e.$watch(n.ngModel,function(e){void 0!==e&&e!==o.value&&(o.value=e)}),t.on("input",i)),e.$on("$destroy",function(){t.off("input",i),e=t=n=o=null})}}}]),angular.module("onsen").directive("onsSegment",["$onsen","GenericView",function(i,r){return{restrict:"E",link:function(e,t,n){var o=r.register(e,t,n,{viewKey:"ons-segment"});i.fireComponentEvent(t[0],"init"),i.registerEventHandlers(o,"postchange")}}}]),angular.module("onsen").directive("onsSelect",["$parse","$onsen","GenericView",function(i,r,s){return{restrict:"E",replace:!1,scope:!1,link:function(e,t,n){var o=function(){(0,i(n.ngModel).assign)(e,t[0].value),n.ngChange&&e.$eval(n.ngChange),e.$parent.$evalAsync()};n.ngModel&&(e.$watch(n.ngModel,function(e){t[0].value=e}),t.on("input",o)),e.$on("$destroy",function(){t.off("input",o),e=t=n=null}),s.register(e,t,n,{viewKey:"ons-select"}),r.fireComponentEvent(t[0],"init")}}}]),angular.module("onsen").directive("onsSpeedDial",["$onsen","SpeedDialView",function(i,r){return{restrict:"E",replace:!1,scope:!1,transclude:!1,compile:function(e,t){return function(e,t,n){var o=new r(e,t,n);t.data("ons-speed-dial",o),i.registerEventHandlers(o,"open close"),i.declareVarAttribute(n,o),e.$on("$destroy",function(){o._events=void 0,t.data("ons-speed-dial",void 0),t=null}),i.fireComponentEvent(t[0],"init")}}}}]),c=window.ons.elements.SplitterContent.rewritables.ready,window.ons.elements.SplitterContent.rewritables.ready=ons._waitDiretiveInit("ons-splitter-content",c),angular.module("onsen").directive("onsSplitterContent",["$compile","SplitterContent","$onsen",function(e,i,r){return{restrict:"E",compile:function(e,t){return function(e,t,n){var o=new i(e,t,n);r.declareVarAttribute(n,o),r.registerEventHandlers(o,"destroy"),t.data("ons-splitter-content",o),t[0].pageLoader=r.createPageLoader(o),e.$on("$destroy",function(){o._events=void 0,t.data("ons-splitter-content",void 0)}),r.fireComponentEvent(t[0],"init")}}}}]),l=window.ons.elements.SplitterSide.rewritables.ready,window.ons.elements.SplitterSide.rewritables.ready=ons._waitDiretiveInit("ons-splitter-side",l),angular.module("onsen").directive("onsSplitterSide",["$compile","SplitterSide","$onsen",function(e,i,r){return{restrict:"E",compile:function(e,t){return function(e,t,n){var o=new i(e,t,n);r.declareVarAttribute(n,o),r.registerEventHandlers(o,"destroy preopen preclose postopen postclose modechange"),t.data("ons-splitter-side",o),t[0].pageLoader=r.createPageLoader(o),e.$on("$destroy",function(){o._events=void 0,t.data("ons-splitter-side",void 0)}),r.fireComponentEvent(t[0],"init")}}}}]),angular.module("onsen").directive("onsSplitter",["$compile","Splitter","$onsen",function(e,i,r){return{restrict:"E",scope:!0,compile:function(e,t){return function(e,t,n){var o=new i(e,t,n);r.declareVarAttribute(n,o),r.registerEventHandlers(o,"destroy"),t.data("ons-splitter",o),e.$on("$destroy",function(){o._events=void 0,t.data("ons-splitter",void 0)}),r.fireComponentEvent(t[0],"init")}}}}]),angular.module("onsen").directive("onsSwitch",["$onsen","SwitchView",function(i,r){return{restrict:"E",replace:!1,scope:!0,link:function(e,t,n){if(n.ngController)throw new Error("This element can't accept ng-controller directive.");var o=new r(t,e,n);i.addModifierMethodsForCustomElements(o,t),i.declareVarAttribute(n,o),t.data("ons-switch",o),i.cleaner.onDestroy(e,function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-switch",void 0),i.clearComponent({element:t,scope:e,attrs:n}),t=n=e=null}),i.fireComponentEvent(t[0],"init")}}}]),d=window.ons.elements.Tabbar.rewritables.ready,window.ons.elements.Tabbar.rewritables.ready=ons._waitDiretiveInit("ons-tabbar",d),angular.module("onsen").directive("onsTabbar",["$onsen","$compile","$parse","TabbarView",function(r,e,t,s){return{restrict:"E",replace:!1,scope:!0,link:function(e,t,n,o){var i=new s(e,t,n);r.addModifierMethodsForCustomElements(i,t),r.registerEventHandlers(i,"reactive prechange postchange init show hide destroy"),t.data("ons-tabbar",i),r.declareVarAttribute(n,i),e.$on("$destroy",function(){i._events=void 0,r.removeModifierMethods(i),t.data("ons-tabbar",void 0)}),r.fireComponentEvent(t[0],"init")}}}]),function(){function e(i,r){return{restrict:"E",link:function(e,t,n){var o=r.register(e,t,n,{viewKey:"ons-tab"});t[0].pageLoader=i.createPageLoader(o),i.fireComponentEvent(t[0],"init")}}}e.$inject=["$onsen","GenericView"],angular.module("onsen").directive("onsTab",e).directive("onsTabbarItem",e)}(),angular.module("onsen").directive("onsTemplate",["$templateCache",function(n){return{restrict:"E",terminal:!0,compile:function(e){var t=e[0].template||e.html();n.put(e.attr("id"),t)}}}]),angular.module("onsen").directive("onsToast",["$onsen","ToastView",function(i,r){return{restrict:"E",replace:!1,scope:!0,transclude:!1,compile:function(e,t){return{pre:function(e,t,n){var o=new r(e,t,n);i.declareVarAttribute(n,o),i.registerEventHandlers(o,"preshow prehide postshow posthide destroy"),i.addModifierMethodsForCustomElements(o,t),t.data("ons-toast",o),t.data("_scope",e),e.$on("$destroy",function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-toast",void 0),t=null})},post:function(e,t){i.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").directive("onsToolbarButton",["$onsen","GenericView",function(i,r){return{restrict:"E",scope:!1,link:{pre:function(e,t,n){var o=new r(e,t,n);t.data("ons-toolbar-button",o),i.declareVarAttribute(n,o),i.addModifierMethodsForCustomElements(o,t),i.cleaner.onDestroy(e,function(){o._events=void 0,i.removeModifierMethods(o),t.data("ons-toolbar-button",void 0),t=null,i.clearComponent({scope:e,attrs:n,element:t}),e=t=n=null})},post:function(e,t,n){i.fireComponentEvent(t[0],"init")}}}}]),angular.module("onsen").directive("onsToolbar",["$onsen","GenericView",function(o,i){return{restrict:"E",scope:!1,transclude:!1,compile:function(e){return{pre:function(e,t,n){"ons-toolbar"===t[0].nodeName&&i.register(e,t,n,{viewKey:"ons-toolbar"})},post:function(e,t,n){o.fireComponentEvent(t[0],"init")}}}}}]),angular.module("onsen").factory("$onsen",["$rootScope","$window","$cacheFactory","$document","$templateCache","$http","$q","$compile","$onsGlobal","ComponentCleaner",function(s,e,t,n,i,r,a,c,l,o){var u,d,p,f={DIRECTIVE_TEMPLATE_URL:"templates",cleaner:o,util:l._util,DeviceBackButtonHandler:l._internal.dbbDispatcher,_defaultDeviceBackButtonHandler:l._defaultDeviceBackButtonHandler,getDefaultDeviceBackButtonHandler:function(){return this._defaultDeviceBackButtonHandler},deriveMethods:function(t,n,e){return e.forEach(function(e){t[e]=function(){return n[e].apply(n,arguments)}}),function(){e.forEach(function(e){t[e]=null}),t=n=null}},derivePropertiesFromElement:function(e,t){t.forEach(function(t){Object.defineProperty(e.prototype,t,{get:function(){return this._element[0][t]},set:function(e){return this._element[0][t]=e}})})},deriveEvents:function(n,o,e,i){i=i||function(e){return e},e=[].concat(e);var r=[];return e.forEach(function(t){var e=function(e){i(e.detail||{}),n.emit(t,e)};r.push(e),o.addEventListener(t,e,!1)}),function(){e.forEach(function(e,t){o.removeEventListener(e,r[t],!1)}),n=o=r=i=null}},isEnabledAutoStatusBarFill:function(){return!!l._config.autoStatusBarFill},shouldFillStatusBar:l.shouldFillStatusBar,autoStatusBarFill:l.autoStatusBarFill,compileAndLink:function(e,t,n){var o=c(t),i=e._scope.$new();angular.element(t).data("_scope",i),i.$evalAsync(function(){n(t),o(i)})},createPageLoader:function(i){var r=this;return new l.PageLoader(function(e,t){var n=e.page,o=e.parent;l._internal.getPageHTMLAsync(n).then(function(e){r.compileAndLink(i,l._util.createElement(e),function(e){return t(o.appendChild(e))})})},function(e){e._destroy(),angular.element(e).data("_scope")&&angular.element(e).data("_scope").$destroy()})},clearComponent:function(e){e.scope&&o.destroyScope(e.scope),e.attrs&&o.destroyAttributes(e.attrs),e.element&&o.destroyElement(e.element),e.elements&&e.elements.forEach(function(e){o.destroyElement(e)})},findElementeObject:function(e,t){return e.inheritedData(t)},getPageHTMLAsync:function(e){var t=i.get(e);if(t){var n=a.defer(),o="string"==typeof t?t:t[1];return n.resolve(this.normalizePageHTML(o)),n.promise}return r({url:e,method:"GET"}).then(function(e){var t=e.data;return this.normalizePageHTML(t)}.bind(this))},normalizePageHTML:function(e){return(e=(""+e).trim()).match(/^<ons-page/)||(e="<ons-page _muted>"+e+"</ons-page>"),e},generateModifierTemplater:function(e,n){var t=e&&"string"==typeof e.modifier?e.modifier.trim().split(/ +/):[];return n=angular.isArray(n)?t.concat(n):t,function(t){return n.map(function(e){return t.replace("*",e)}).join(" ")}},addModifierMethodsForCustomElements:function(e,n){var t={hasModifier:function(e){var t=h.split(n.attr("modifier"));return e="string"==typeof e?e.trim():"",h.split(e).some(function(e){return-1!=t.indexOf(e)})},removeModifier:function(t){t="string"==typeof t?t.trim():"";var e=h.split(n.attr("modifier")).filter(function(e){return e!==t}).join(" ");n.attr("modifier",e)},addModifier:function(e){n.attr("modifier",n.attr("modifier")+" "+e)},setModifier:function(e){n.attr("modifier",e)},toggleModifier:function(e){this.hasModifier(e)?this.removeModifier(e):this.addModifier(e)}};for(var o in t)t.hasOwnProperty(o)&&(e[o]=t[o])},addModifierMethods:function(e,r,s){var a=function(e){return r.replace("*",e)},t={hasModifier:function(e){return s.hasClass(a(e))},removeModifier:function(e){s.removeClass(a(e))},addModifier:function(e){s.addClass(a(e))},setModifier:function(e){for(var t=s.attr("class").split(/\s+/),n=r.replace("*","."),o=0;o<t.length;o++){var i=t[o];i.match(n)&&s.removeClass(i)}s.addClass(a(e))},toggleModifier:function(e){var t=a(e);s.hasClass(t)?s.removeClass(t):s.addClass(t)}},n=function(e,t){return void 0!==e?function(){return e.apply(null,arguments)||t.apply(null,arguments)}:t};e.hasModifier=n(e.hasModifier,t.hasModifier),e.removeModifier=n(e.removeModifier,t.removeModifier),e.addModifier=n(e.addModifier,t.addModifier),e.setModifier=n(e.setModifier,t.setModifier),e.toggleModifier=n(e.toggleModifier,t.toggleModifier)},removeModifierMethods:function(e){e.hasModifier=e.removeModifier=e.addModifier=e.setModifier=e.toggleModifier=void 0},declareVarAttribute:function(e,t){if("string"==typeof e.var){var n=e.var;this._defineVar(n,t)}},_registerEventHandler:function(n,o){var i=o.charAt(0).toUpperCase()+o.slice(1);n.on(o,function(e){f.fireComponentEvent(n._element[0],o,e&&e.detail);var t=n._attrs["ons"+i];t&&(n._scope.$eval(t,{$event:e}),n._scope.$evalAsync())})},registerEventHandlers:function(e,t){t=t.trim().split(/\s+/);for(var n=0,o=t.length;n<o;n++){var i=t[n];this._registerEventHandler(e,i)}},isAndroid:function(){return!!e.navigator.userAgent.match(/android/i)},isIOS:function(){return!!e.navigator.userAgent.match(/(ipad|iphone|ipod touch)/i)},isWebView:function(){return l.isWebView()},isIOS7above:(u=e.navigator.userAgent,d=u.match(/(iPad|iPhone|iPod touch);.*CPU.*OS (\d+)_(\d+)/i),p=!!d&&7<=parseFloat(d[2]+"."+d[3]),function(){return p}),fireComponentEvent:function(e,t,n){n=n||{};var o=document.createEvent("HTMLEvents");for(var i in n)n.hasOwnProperty(i)&&(o[i]=n[i]);o.component=e&&angular.element(e).data(e.nodeName.toLowerCase())||null,o.initEvent(e.nodeName.toLowerCase()+":"+t,!0,!0),e.dispatchEvent(o)},_defineVar:function(e,t){var n=e.split(/\./);function o(e,t,n){for(var o,i=0;i<t.length-1;i++)o=t[i],void 0!==e[o]&&null!==e[o]||(e[o]={}),e=e[o];if(e[t[t.length-1]]=n,e[t[t.length-1]]!==n)throw new Error('Cannot set var="'+n._attrs.var+'" because it will overwrite a read-only variable.')}ons.componentBase&&o(ons.componentBase,n,t);var i=function(e){return angular.element(e).data("_scope")},r=t._element[0];if(r.hasAttribute("ons-scope"))return o(i(r)||t._scope,n,t),void(r=null);for(;r.parentElement;)if((r=r.parentElement).hasAttribute("ons-scope"))return o(i(r),n,t),void(r=null);r=null,o(s,n,t)}},h=l._internal.ModifierUtil;return f}]),f=angular.module("onsen"),h={decomposeNode:function(e){for(var t=e.remove().children(),n=0;n<t.length;n++)h.decomposeNode(angular.element(t[n]))},destroyAttributes:function(e){e.$$element=null,e.$$observers=null},destroyElement:function(e){e.remove()},destroyScope:function(e){e.$$listeners={},e.$$watchers=null,e=null},onDestroy:function(e,t){var n=e.$on("$destroy",function(){n(),t.apply(null,arguments)})}},f.factory("ComponentCleaner",function(){return h}),p={},"click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" ").forEach(function(r){var o=("ng-"+r).replace(/-([a-z])/g,function(e){return e[1].toUpperCase()});p[o]=["$parse",function(n){return{compile:function(e,t){var i=n(t[o]);return function(t,e,n){var o=function(e){t.$apply(function(){i(t,{$event:e})})};e.on(r,o),h.onDestroy(t,function(){e.off(r,o),e=null,h.destroyScope(t),t=null,h.destroyAttributes(n),n=null})}}}}]}),f.config(["$provide",function(t){var n=function(e){return e.shift(),e};Object.keys(p).forEach(function(e){t.decorator(e+"Directive",["$delegate",n])})}]),Object.keys(p).forEach(function(e){f.directive(e,p[e])}),window.jQuery&&angular.element===window.jQuery&&console.warn("Onsen UI require jqLite. Load jQuery after loading AngularJS to fix this error. jQuery may break Onsen UI behavior."),Object.keys(ons.notification).filter(function(e){return!/^_/.test(e)}).forEach(function(e){var i=ons.notification[e];ons.notification[e]=function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};"string"==typeof e?t.message=e:t=e;var n=t.compile,o=void 0;return t.compile=function(e){return o=angular.element(n?n(e):e),ons.$compile(o)(o.injector().get("$rootScope"))},t.destroy=function(){o.data("_scope").$destroy(),o=null},i(t)}}),angular.module("onsen").run(["$templateCache",function(e){for(var t=window.document.querySelectorAll('script[type="text/ons-template"]'),n=0;n<t.length;n++){var o=angular.element(t[n]),i=o.attr("id");"string"==typeof i&&e.put(i,o.text())}}])});