UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

3 lines (2 loc) 8.98 kB
!function(e){"function"==typeof define&&define.amd?define(["kendo.mobile.pane.min","kendo.router.min"],e):e()}((function(){!function(e,i){var t=window.kendo,n=t.mobile,o=t.support,a=n.ui.Widget,s=t.htmlEncode,r=n.ui.Pane,l=o.mobileOS,p="blackberry"==l.device&&l.flatVersion>=600&&l.flatVersion<1e3&&l.appMode,c="chrome"===l.browser,d=l.ios&&l.flatVersion>=700&&l.flatVersion<800&&(l.appMode||c),h=Math.abs(window.orientation)/90==1,m={ios7:{ios:!0,browser:"default",device:"iphone",flatVersion:"700",majorVersion:"7",minorVersion:"0.0",name:"ios",tablet:!1},ios:{ios:!0,browser:"default",device:"iphone",flatVersion:"612",majorVersion:"6",minorVersion:"1.2",name:"ios",tablet:!1},android:{android:!0,browser:"default",device:"android",flatVersion:"442",majorVersion:"4",minorVersion:"4.2",name:"android",tablet:!1},blackberry:{blackberry:!0,browser:"default",device:"blackberry",flatVersion:"710",majorVersion:"7",minorVersion:"1.0",name:"blackberry",tablet:!1},meego:{meego:!0,browser:"default",device:"meego",flatVersion:"850",majorVersion:"8",minorVersion:"5.0",name:"meego",tablet:!1},wp:{wp:!0,browser:"default",device:"wp",flatVersion:"800",majorVersion:"8",minorVersion:"0.0",name:"wp",tablet:!1}},u=t.template((function(e){return'<meta content="initial-scale='+s(e.scale)+", maximum-scale="+s(e.scale)+", user-scalable=no"+e.height+'" name="viewport" />'}),{usedWithBlock:!1}),f=t.template((function(e){return'<meta name="apple-mobile-web-app-capable" content="'+(!1===e.webAppCapable?"no":"yes")+'" /> <meta name="apple-mobile-web-app-status-bar-style" content="'+e.statusBarStyle+'" /> <meta name="msapplication-tap-highlight" content="no" /> '}),{usedWithBlock:!1}),v=t.template((function(e){return"<style>.km-view { clip: rect(0 "+e.width+"px "+e.height+"px 0); }</style>"}),{usedWithBlock:!1}),g=l.android&&"chrome"!=l.browser||l.blackberry,w=t.template((function(e){return'<link rel="apple-touch-icon'+(l.android?"-precomposed":"")+'" '+(e.size?'sizes="'+e.size+'"':"")+' href="'+e.icon+'" />'}),{usedWithBlock:!1}),k=("iphone"==l.device||"ipod"==l.device)&&l.majorVersion<7,b=("iphone"==l.device||"ipod"==l.device)&&l.majorVersion>=7?"none":null,y="mobilesafari"==l.browser?60:0,V=e(window),B=window.screen,C=e("head"),x="init";function S(e){return l.wp?"-kendo-landscape"==e.css("animation-name"):Math.abs(window.orientation)/90==1}function H(e){return S(e)?"km-horizontal":"km-vertical"}function _(e){e.parent().addBack().css("min-height",window.innerHeight)}function P(){e("meta[name=viewport]").remove(),C.append(u({height:", width=device-width"+(S()?", height="+window.innerHeight+"px":o.mobileOS.flatVersion>=600&&o.mobileOS.flatVersion<700?", height="+window.innerWidth+"px":", height=device-height")}))}var T=a.extend({init:function(i,t){n.application=this,e(this.bootstrap.bind(this,i,t))},bootstrap:function(i,n){(i=e(i))[0]||(i=e(document.body)),a.fn.init.call(this,i,n),this.element.removeAttr("data-"+t.ns+"role"),this._setupPlatform(),this._attachMeta(),this._setupElementClass(),this._attachHideBarHandlers();var o=e.extend({},this.options);delete o.name;var s=this,l=function(){s.pane=new r(s.element,o),s.pane.navigateToInitial(),s.options.updateDocumentTitle&&s._setupDocumentTitle(),s._startHistory(),s.trigger(x)};this.options.$angular?setTimeout(l):l()},options:{name:"Application",hideAddressBar:!0,browserHistory:!0,historyTransition:b,modelScope:window,statusBarStyle:"black",transition:"",retina:!1,platform:null,skin:null,updateDocumentTitle:!0,useNativeScrolling:!1},events:[x],navigate:function(e,i){this.pane.navigate(e,i)},replace:function(e,i){this.pane.replace(e,i)},scroller:function(){return this.view().scroller},hideLoading:function(){if(!this.pane)throw new Error("The mobile application instance is not fully instantiated. Please consider activating loading in the application init event handler.");this.pane.hideLoading()},showLoading:function(){if(!this.pane)throw new Error("The mobile application instance is not fully instantiated. Please consider activating loading in the application init event handler.");this.pane.showLoading()},changeLoadingMessage:function(e){if(!this.pane)throw new Error("The mobile application instance is not fully instantiated. Please consider changing the message in the application init event handler.");this.pane.changeLoadingMessage(e)},view:function(){return this.pane.view()},skin:function(e){var i=this;return arguments.length?(i.options.skin=e||"",i.element[0].className="km-pane",i._setupPlatform(),i._setupElementClass(),i.options.skin):i.options.skin},destroy:function(){a.fn.destroy.call(this),this.pane.destroy(),this.options.browserHistory&&this.router.destroy()},_setupPlatform:function(){var i=this,t=i.options.platform,n=i.options.skin,o=[],a=l||m.ios7;t&&(a.setDefaultPlatform=!0,"string"==typeof t?(o=t.split("-"),a=e.extend({variant:o[1]},a,m[o[0]])):a=t),n&&(o=n.split("-"),l||(a.setDefaultPlatform=!1),a=e.extend({},a,{skin:o[0],variant:o[1]})),a.variant||(a.noVariantSet=!0,a.variant="dark"),i.os=a,i.osCssClass=function(e,i){var t=[];return l&&t.push("km-on-"+l.name),e.skin?t.push("km-"+e.skin):"ios"==e.name&&e.majorVersion>6?t.push("km-ios7"):t.push("km-"+e.name),("ios"==e.name&&e.majorVersion<7||"ios"!=e.name)&&t.push("km-"+e.name+e.majorVersion),t.push("km-"+e.majorVersion),t.push("km-m"+(e.minorVersion?e.minorVersion[0]:0)),e.variant&&(e.skin&&e.skin===e.name||!e.skin||!1===e.setDefaultPlatform)&&t.push("km-"+(e.skin?e.skin:e.name)+"-"+e.variant),e.cordova&&t.push("km-cordova"),e.appMode?t.push("km-app"):t.push("km-web"),i&&i.statusBarStyle&&t.push("km-"+i.statusBarStyle+"-status-bar"),t.join(" ")}(i.os,i.options),"wp"==a.name&&(i.refreshBackgroundColorProxy||(i.refreshBackgroundColorProxy=function(){(i.os.variant&&i.os.skin&&i.os.skin===i.os.name||!i.os.skin)&&i.element.removeClass("km-wp-dark km-wp-light km-wp-dark-force km-wp-light-force").addClass(function(i){return"km-wp-"+(i.noVariantSet?0===parseInt(e("<div style='background: Background' />").css("background-color").split(",")[1],10)?"dark":"light":i.variant+" km-wp-"+i.variant+"-force")}(i.os))}.bind(i)),e(document).off("visibilitychange",i.refreshBackgroundColorProxy),e(document).off("resume",i.refreshBackgroundColorProxy),a.skin||(i.element.parent().css("overflow","hidden"),e(document).on("visibilitychange",i.refreshBackgroundColorProxy),e(document).on("resume",i.refreshBackgroundColorProxy),i.refreshBackgroundColorProxy()))},_startHistory:function(){this.options.browserHistory?(this.router=new t.Router({pushState:this.options.pushState,root:this.options.root,hashBang:this.options.hashBang}),this.pane.bindToRouter(this.router),this.router.start()):this.options.initial||this.pane.navigate("")},_resizeToScreenHeight:function(){var i,t=e("meta[name=apple-mobile-web-app-status-bar-style]").attr("content").match(/black-translucent|hidden/),n=this.element;i=c?window.innerHeight:S(n)?t?h?B.availWidth+20:B.availWidth:h?B.availWidth:B.availWidth-20:t?h?B.availHeight:B.availHeight+20:h?B.availHeight-20:B.availHeight,n.height(i)},_setupElementClass:function(){var i,n=this,a=n.element;a.parent().addClass("km-root km-"+(n.os.tablet?"tablet":"phone")),a.addClass(n.osCssClass+" "+H(a)),this.options.useNativeScrolling&&a.parent().addClass("km-native-scrolling"),c&&a.addClass("km-ios-chrome"),o.wpDevicePixelRatio&&a.parent().css("font-size",o.wpDevicePixelRatio+"em"),this.options.retina&&(a.parent().addClass("km-retina"),a.parent().css("font-size",.93*o.devicePixelRatio+"em")),p&&P(),n.options.useNativeScrolling?a.parent().addClass("km-native-scrolling"):g&&(i=(screen.availWidth>screen.availHeight?screen.availWidth:screen.availHeight)+200,e(v({width:i,height:i})).appendTo(C)),d&&n._resizeToScreenHeight(),t.onResize((function(){a.removeClass("km-horizontal km-vertical").addClass(H(a)),n.options.useNativeScrolling&&_(a),d&&n._resizeToScreenHeight(),p&&P(),t.resize(a)}))},_clearExistingMeta:function(){C.find("meta").filter("[name|='apple-mobile-web-app'],[name|='msapplication-tap'],[name='viewport']").remove()},_attachMeta:function(){var e,i=this.options,t=i.icon;if(this._clearExistingMeta(),p||C.prepend(u({height:"",scale:this.options.retina?1/o.devicePixelRatio:"1.0"})),C.prepend(f(i)),t)for(e in"string"==typeof t&&(t={"":t}),t)C.prepend(w({icon:t[e],size:e}));i.useNativeScrolling&&_(this.element)},_attachHideBarHandlers:function(){var e=this,i=e._hideBar.bind(e);!o.mobileOS.appMode&&e.options.hideAddressBar&&k&&!e.options.useNativeScrolling&&(e._initialHeight={},V.on("load",i),t.onResize((function(){setTimeout(window.scrollTo,0,0,1)})))},_setupDocumentTitle:function(){var e=document.title;this.pane.bind("viewShow",(function(i){var t=i.view.title;document.title=undefined!==t?t:e}))},_hideBar:function(){this.element.height(t.support.transforms.css+"calc(100% + "+y+"px)"),e(window).trigger(t.support.resize)}});t.mobile.Application=T,t.ui.plugin(T,t.mobile,"Mobile")}(window.kendo.jQuery)})); //# sourceMappingURL=kendo.mobile.application.min.js.map