@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
1 lines • 30.8 kB
JavaScript
module.exports=function(t){function i(n){if(e[n])return e[n].exports;var o=e[n]={exports:{},id:n,loaded:!1};return t[n].call(o.exports,o,o.exports,i),o.loaded=!0,o.exports}var e={};return i.m=t,i.c=e,i.p="",i(0)}({0:function(t,i,e){t.exports=e(1526)},3:function(t,i){t.exports=function(){throw Error("define cannot be used indirect")}},1049:function(t,i){t.exports=require("./kendo.popup")},1128:function(t,i){t.exports=require("./kendo.draganddrop")},1526:function(t,i,e){var n,o,r;!function(s,define){o=[e(1128),e(1049)],n=s,r="function"==typeof n?n.apply(i,o):n,!(void 0!==r&&(t.exports=r))}(function(){return function(t,i){function e(t){return i!==t}function n(t,i){return parseInt(t.css(i),10)||0}function o(t,i,e){var n;return n=t&&isNaN(t)&&(""+t).indexOf("px")<0?t:Math.max(Math.min(parseInt(t,10),e===1/0?e:parseInt(e,10)),i===-(1/0)?i:parseInt(i,10))}function r(){return!this.type||this.type.toLowerCase().indexOf("script")>=0}function s(i){for(var e,n,o={top:i.offsetTop,left:i.offsetLeft},r=i.offsetParent;r;)o.top+=r.offsetTop,o.left+=r.offsetLeft,e=t(r).css("overflowX"),n=t(r).css("overflowY"),"auto"!==n&&"scroll"!==n||(o.top-=r.scrollTop),"auto"!==e&&"scroll"!==e||(o.left-=r.scrollLeft),r=r.offsetParent;return o}function a(t){var i=this;i.owner=t,i._preventDragging=!1,i._draggable=new h(t.wrapper,{filter:">"+P,group:t.wrapper.id+"-resizing",dragstart:w(i.dragstart,i),drag:w(i.drag,i),dragend:w(i.dragend,i)}),i._draggable.userEvents.bind("press",w(i.addOverlay,i)),i._draggable.userEvents.bind("release",w(i.removeOverlay,i))}function l(t,i){var e=this;e.owner=t,e._preventDragging=!1,e._draggable=new h(t.wrapper,{filter:i,group:t.wrapper.id+"-moving",dragstart:w(e.dragstart,e),drag:w(e.drag,e),dragend:w(e.dragend,e),dragcancel:w(e.dragcancel,e)}),e._draggable.userEvents.stopPropagation=!1}var d=window.kendo,p=d.ui.Widget,c=d.ui.Popup.TabKeyTrap,h=d.ui.Draggable,f=t.isPlainObject,m=d._activeElement,g=d._outerWidth,u=d._outerHeight,w=t.proxy,_=t.extend,v=t.each,x=d.template,b="body",k=".kendoWindow",z=".kendoWindowModal",T=".k-window",y=".k-window-title",L=y+"bar",W=".k-window-content",O=".k-dialog-content",P=".k-resize-handle",H=".k-overlay",M="k-content-frame",S="k-i-loading",C="k-state-hover",I="k-state-focused",D="k-window-maximized",E="k-display-inline-flex",F=":visible",R="hidden",j="cursor",N="open",A="activate",K="deactivate",B="close",q="refresh",U="minimize",G="maximize",J="resizeStart",V="resize",Q="resizeEnd",X="dragstart",Y="dragend",$="restore",Z="kendoKeydown",tt="error",it="overflow",et="original-overflow-rule",nt="zIndex",ot=".k-window-actions .k-i-window-minimize,.k-window-actions .k-i-window-maximize",rt=".k-i-pin",st=".k-i-unpin",at=rt+","+st,lt=".k-window-titlebar .k-window-action",dt=".k-window-titlebar .k-i-refresh",pt="WindowEventsHandled",ct=/^0[a-z]*$/i,ht=d.isLocalUrl,ft={small:"k-window-sm",medium:"k-window-md",large:"k-window-lg"},mt=p.extend({init:function(n,o){var s,a,l,h,m,g,u,_,v,x=this,b={},z=!1,P=o&&o.actions&&!o.actions.length;p.fn.init.call(x,n,o),o=x.options,h=o.position,n=x.element,m=o.content,_=t(window),P&&(o.actions=[]),x.appendTo=t(o.appendTo),x.containment=o.draggable.containment?t(o.draggable.containment).first():null,m&&!f(m)&&(m=o.content={url:m}),n.find("script").filter(r).remove(),n.parent().is(x.appendTo)||x.containment||h.top!==i&&h.left!==i||(n.is(F)?(b=n.offset(),z=!0):(a=n.css("visibility"),l=n.css("display"),n.css({visibility:R,display:""}),b=document.body.contains(n[0])?n.offset():{top:0,left:0},n.css({visibility:a,display:l})),h.top===i&&(h.top=b.top),h.left===i&&(h.left=b.left)),e(o.visible)&&null!==o.visible||(o.visible=n.is(F)),s=x.wrapper=n.closest(T),n.is(".k-window-content")&&s[0]||(n.addClass("k-window-content"),x._createWindow(n,o),s=x.wrapper=n.closest(T),x.title(x.options.title),x._dimensions()),x.minTop=x.minLeft=-(1/0),x.maxTop=x.maxLeft=1/0,x._position(),m&&x.refresh(m),o.visible&&x.toFront(null,!o.modal),g=s.children(W),o.visible&&o.modal&&x._overlay(s.is(F)).css({opacity:.5}),s.on("mouseenter"+k,lt,w(x._buttonEnter,x)).on("mouseleave"+k,lt,w(x._buttonLeave,x)).on("click"+k,"> "+lt,w(x._windowActionHandler,x)).on("keydown"+k,x,w(x._keydown,x)).on("focus"+k,w(x._focus,x)).on("blur"+k,w(x._blur,x)),g.on("keydown"+k,x,w(x._keydownContent,x)),u=g.find("."+M)[0],u&&!_.data(pt)&&(_.on("blur"+k,function(){var i,e=t(document.activeElement).parent(W);e.length&&(i=d.widgetInstance(e),i._focus())}),_.on("focus"+k,function(){t(W).not(O).each(function(i,e){d.widgetInstance(t(e))._blur()})}),_.data(pt,!0)),this._resizable(),this._draggable(),o.pinned&&this.wrapper.is(":visible")&&x.pin(),v=n.attr("id"),v&&(v+="_wnd_title",s.children(L).children(y).attr("id",v),g.attr({role:"dialog","aria-labelledby":v})),s.add(s.children(".k-resize-handle,"+L)).on(d.support.mousedown+k,w(x.toFront,x)),x.touchScroller=d.touchScroller(n),x._resizeHandler=w(x._onDocumentResize,x),x._marker=d.guid().substring(0,8),t(window).on("resize"+k+x._marker,x._resizeHandler),o.visible&&(x.trigger(N),x.trigger(A)),d.notify(x),this.options.modal&&(this._tabKeyTrap=new c(s),this._tabKeyTrap.trap(),this._tabKeyTrap.shouldTrap=function(){return s.data("isFront")})},_buttonEnter:function(i){t(i.currentTarget).addClass(C)},_buttonLeave:function(i){t(i.currentTarget).removeClass(C)},_focus:function(){this.wrapper.addClass(I)},_blur:function(){this.wrapper.removeClass(I)},_dimensions:function(){var t,i,e=this.wrapper,r=this.options,s=r.width,a=r.height,l=r.maxHeight,d=r.size,p=["minWidth","minHeight","maxWidth","maxHeight"],c="content-box"==e.css("box-sizing"),h=c?n(e,"border-left-width")+n(e,"border-right-width"):0,f=c?n(e,"border-top-width")+n(e,"border-bottom-width"):0,m=c?n(e,"padding-top"):0;for(this.containment&&!this._isPinned&&(this._updateBoundaries(),r.maxHeight=Math.min(this.containment.height-(f+m),l),r.maxWidth=Math.min(this.containment.width-h,r.maxWidth)),t=0;t<p.length;t++)i=r[p[t]]||"",i!=1/0&&e.css(p[t],i);l!=1/0&&this.element.css("maxHeight",l),e.outerWidth(s?o(s,r.minWidth,r.maxWidth):""),e.outerHeight(a?o(a,r.minHeight,r.maxHeight):""),r.visible||e.removeClass(E).hide(),d&&ft[d]&&e.addClass(ft[d])},_position:function(){var t,i,e=this.wrapper,n=this.options.position;this._updateBoundaries(),this.containment&&(n.top=n.top||0,n.left=n.left||0,t=(""+n.top).indexOf("%")>0?parseInt(this.containment.height*(parseFloat(n.top)/100),10):n.top,i=(""+n.left).indexOf("%")>0?parseInt(this.containment.width*(parseFloat(n.left)/100),10):n.left,n.top=o(t,this.minTop,this.maxTop),n.left=o(i,this.minLeft,this.maxLeft)),0===n.top&&(n.top=""+n.top),0===n.left&&(n.left=""+n.left),e.css({top:n.top||"",left:n.left||""})},_updateBoundaries:function(){var t=this.containment;return t?(t.width=t.innerWidth(),t.height=t.innerHeight(),parseInt(t.width,10)>t[0].clientWidth&&(t.width-=d.support.scrollbar()),parseInt(t.height,10)>t[0].clientHeight&&(t.height-=d.support.scrollbar()),t.position=s(t[0]),this._isPinned?(this.minTop=this.minLeft=-(1/0),this.maxTop=this.maxLeft=1/0):(this.minTop=t.scrollTop(),this.minLeft=t.scrollLeft(),this.maxLeft=this.minLeft+t.width-g(this.wrapper,!0),this.maxTop=this.minTop+t.height-u(this.wrapper,!0)),i):null},_animationOptions:function(t){var i=this.options.animation,e={open:{effects:{}},close:{hide:!0,effects:{}}};return i&&i[t]||e[t]},_resize:function(){d.resize(this.element.children())},_resizable:function(){var i=this.options.resizable,e=this.wrapper;this.resizing&&(e.off("dblclick"+k).children(P).remove(),this.resizing.destroy(),this.resizing=null),i&&(e.on("dblclick"+k,L,w(function(i){t(i.target).closest(".k-window-action").length||this.toggleMaximization()},this)),v("n e s w se sw ne nw".split(" "),function(t,i){e.append(gt.resizeHandle(i))}),this.resizing=new a(this)),e=null},_draggable:function(){var t=this.options.draggable;this.dragging&&(this.dragging.destroy(),this.dragging=null),t&&(this.dragging=new l(this,t.dragHandle||L))},_actions:function(){var i=this.options,e=i.actions,n=i.pinned,o=this.wrapper.children(L),r=o.find(".k-window-actions"),s=["maximize","minimize"];e=t.map(e,function(t){return t=n&&"pin"===t.toLowerCase()?"unpin":t,{name:s.indexOf(t.toLowerCase())>-1?"window-"+t:t}}),r.html(d.render(gt.action,e))},setOptions:function(e){var n,o,r=this,s=r.options.size,a=this.containment&&!r._isPinned?this.containment:t(document),l=JSON.parse(JSON.stringify(e));_(e.position,r.options.position),_(e.position,l.position),r._containerScrollTop=a.scrollTop(),r._containerScrollLeft=a.scrollLeft(),p.fn.setOptions.call(r,e),n=r.options.scrollable!==!1,r.restore(),i!==e.title&&r.title(e.title),r.wrapper.removeClass(ft[s]),r._dimensions(),r._position(),r._resizable(),r._draggable(),r._actions(),i!==e.modal&&(o=r.options.visible!==!1,r._enableDocumentScrolling(),r._overlay(e.modal&&o)),r.element.css(it,n?"":"hidden")},events:[N,A,K,B,U,G,q,$,J,V,Q,X,Y,Z,tt],options:{name:"Window",animation:{open:{effects:{zoom:{direction:"in"},fade:{direction:"in"}},duration:350},close:{effects:{zoom:{direction:"out",properties:{scale:.7}},fade:{direction:"out"}},duration:350,hide:!0}},title:"",actions:["Close"],autoFocus:!0,modal:!1,size:"auto",resizable:!0,draggable:!0,minWidth:90,minHeight:50,maxWidth:1/0,maxHeight:1/0,pinned:!1,scrollable:!0,position:{},content:null,visible:null,height:null,width:null,appendTo:"body",isMaximized:!1,isMinimized:!1},_closable:function(){return t.inArray("close",t.map(this.options.actions,function(t){return t.toLowerCase()}))>-1},_keydownContent:function(t){var i=this,e=d.keys,n=t.keyCode;n==e.ESC&&i._closable()&&(t.stopPropagation(),i._close(!1))},_keydown:function(t){var i,e,r,s,a,l,p=this,c=p.options,h=d.keys,f=t.keyCode,m=p.wrapper,g=10,u=c.isMaximized,w=c.isMinimized;f==h.ESC&&p._closable()&&(t.stopPropagation(),p._close(!1)),t.target!=t.currentTarget||p._closing||(t.altKey&&82==f&&p.refresh(),t.altKey&&80==f&&(p.options.pinned?p.unpin():p.pin()),t.altKey&&f==h.UP?w?(p.restore(),p.wrapper.trigger("focus")):u||(p.maximize(),p.wrapper.trigger("focus")):t.altKey&&f==h.DOWN&&(w||u?u&&p.restore():(p.minimize(),p.wrapper.trigger("focus"))),i=d.getOffset(m),p.containment&&!p._isPinned&&(i=p.options.position),!c.draggable||t.ctrlKey||t.altKey||u||(p._updateBoundaries(),f==h.UP?(i.top=o(i.top-g,p.minTop,p.maxTop),e=m.css("top",i.top)):f==h.DOWN?(i.top=o(i.top+g,p.minTop,p.maxTop),e=m.css("top",i.top)):f==h.LEFT?(i.left=o(i.left-g,p.minLeft,p.maxLeft),e=m.css("left",i.left)):f==h.RIGHT&&(i.left=o(i.left+g,p.minLeft,p.maxLeft),e=m.css("left",i.left))),c.resizable&&t.ctrlKey&&!u&&!w&&(f==h.UP?(e=!0,s=m.outerHeight()-g):f==h.DOWN&&(e=!0,s=p.containment&&!p._isPinned?Math.min(m.outerHeight()+g,p.containment.height-i.top-n(m,"padding-top")-n(m,"borderBottomWidth")-n(m,"borderTopWidth")):m.outerHeight()+g),f==h.LEFT?(e=!0,r=m.outerWidth()-g):f==h.RIGHT&&(e=!0,r=p.containment&&!p._isPinned?Math.min(m.outerWidth()+g,p.containment.width-i.left-n(m,"borderLeftWidth")-n(m,"borderRightWidth")):m.outerWidth()+g),e&&(a=o(r,c.minWidth,c.maxWidth),l=o(s,c.minHeight,c.maxHeight),isNaN(a)||(m.outerWidth(a),p.options.width=a+"px"),isNaN(l)||(m.outerHeight(l),p.options.height=l+"px"),p.resize())),e&&t.preventDefault())},_overlay:function(i){var e=this.containment?this.containment.children(H):this.appendTo.children(H),n=this.wrapper,o=i?"block":"none",r=parseInt(n.css(nt),10)-1;return e.length||(e=t("<div class='k-overlay' />")),e.insertBefore(n[0]).css({zIndex:r,display:o}),this.options.modal.preventScroll&&!this.containment&&this._stopDocumentScrolling(),e},_actionForIcon:function(t){var i=/\bk-i(-\w+)+\b/.exec(t[0].className)[0];return{"k-i-close":"_close","k-i-window-maximize":"maximize","k-i-window-minimize":"minimize","k-i-window-restore":"restore","k-i-refresh":"refresh","k-i-pin":"pin","k-i-unpin":"unpin"}[i]},_windowActionHandler:function(e){var n,o;if(!this._closing)return n=t(e.target).closest(".k-window-action").find(".k-icon"),o=this._actionForIcon(n),o?(e.preventDefault(),this[o](),!1):i},_modals:function(){var i,e,n=this,o=t(T+F),r=[];for(e=0;e<o.length;e+=1)i=n._object(t(o[e])),i&&i.options&&i.options.modal&&i.options.visible&&i.options.appendTo===n.options.appendTo&&!i.containment&&r.push(i.wrapper[0]);return r.sort(function(t,i){return t.style.zIndex-i.style.zIndex}),n=null,t(r)},_object:function(t){var e=t.children(W),n=d.widgetInstance(e);return n?n:i},center:function(){var i,e,o=this,r=o.options.position,s=o.wrapper,a=t(window),l=0,d=0;return o.options.isMaximized?o:(o.options.pinned&&!o._isPinned&&o.pin(),o.options.pinned||(l=a.scrollTop(),d=a.scrollLeft()),this.containment&&!o.options.pinned?(i=this.minTop+(this.maxTop-this.minTop)/2,e=this.minLeft+(this.maxLeft-this.minLeft)/2):(o._scrollIsAppended=!0,e=d+Math.max(0,(a.width()-s.outerWidth())/2),i=l+Math.max(0,(a.height()-s.outerHeight()-n(s,"paddingTop"))/2)),s.css({left:e,top:i}),r.top=i,r.left=e,o)},title:function(e){var n,o=this,r=!0,s=o.wrapper,a=s.children(L),l=a.children(y);return arguments.length?(t.isPlainObject(e)?(n=i!==e.text?e.text:"",r=e.encoded!==!1):n=e,n===!1?(s.addClass("k-window-titleless"),s.css("padding-top",0),a.remove()):a.length?l.html(r?d.htmlEncode(n):n):(s.prepend(gt.titlebar({title:r?d.htmlEncode(n):n})),o._actions(),a=s.children(L)),o.options.title=n,o):l.html()},content:function(t,i){var n=this.wrapper.children(W),o=n.children(".km-scroll-container");return n=o[0]?o:n,e(t)?(this.angular("cleanup",function(){return{elements:n.children()}}),d.destroy(this.element.children()),n.empty().html(t),this.angular("compile",function(){var t,e=[];for(t=n.length;--t>=0;)e.push({dataItem:i});return{elements:n.children(),data:e}}),this):n.html()},open:function(){var i,e,n,o=this,r=o.wrapper,s=o.options,a=this._animationOptions("open"),l=r.children(W),p=this.containment&&!o._isPinned,c=p?this.containment:t(document);return o.trigger(N)||(o._closing&&r.kendoStop(!0,!0),o._closing=!1,o.toFront(),s.autoFocus&&o.wrapper.trigger("focus"),s.visible=!0,s.modal&&(e=!!o._modals().length,i=o._overlay(e),i.kendoStop(!0,!0),a.duration&&d.effects.Fade&&!e?(n=d.fx(i).fadeIn(),n.duration(a.duration||0),n.endValue(.5),n.play()):i.css("opacity",.5),i.show(),t(window).on("focus"+z,function(){r.data("isFront")&&!t(document.activeElement).closest(r).length&&o.wrapper.trigger("focus")})),r.is(F)||(l.css(it,R),o.wrapper.find(lt).addClass("k-flat"),r.addClass(E).kendoStop().kendoAnimate({effects:a.effects,duration:a.duration,complete:w(this._activate,this)}))),s.isMaximized&&(o._containerScrollTop=c.scrollTop(),o._containerScrollLeft=c.scrollLeft(),o._stopDocumentScrolling()),this.options.pinned&&!this._isPinned&&this.pin(),o},_activate:function(){var t=this.options.scrollable!==!1;this.options.autoFocus&&this.wrapper.trigger("focus"),this.element.css(it,t?"":"hidden"),d.resize(this.element.children()),this.trigger(A)},_removeOverlay:function(e){var n,o=this._modals(),r=this.options,s=r.modal&&!o.length,a=this._animationOptions("close");s?(!e&&a.duration&&d.effects.Fade?(n=d.fx(r.modal?this._overlay(!0):t(i)).fadeOut(),n.duration(a.duration||0),n.startValue(.5),n.play()):this._overlay(!1).remove(),r.modal.preventScroll&&this._enableDocumentScrolling()):o.length&&(this._object(o.last())._overlay(!0),r.modal.preventScroll&&this._stopDocumentScrolling())},_close:function(i){var e,n=this,o=n.wrapper,r=n.options,s=this._animationOptions("open"),a=this._animationOptions("close"),l=this.containment&&!n._isPinned,d=l?this.containment:t(document);n._closing||(e=n.trigger(B,{userTriggered:!i}),n._closing=!e,o.is(F)&&!e&&(r.visible=!1,t(T).each(function(i,e){var n=t(e).children(W);e!=o&&n.find("> ."+M).length>0&&n.children(H).remove()}),this._removeOverlay(),n.wrapper.find(lt).removeClass("k-flat"),o.kendoStop().kendoAnimate({effects:a.effects||s.effects,reverse:a.reverse===!0,duration:a.duration,complete:w(this._deactivate,this)}),t(window).off(z)),n.options.isMaximized&&(n._enableDocumentScrolling(),n._containerScrollTop&&n._containerScrollTop>0&&d.scrollTop(n._containerScrollTop),n._containerScrollLeft&&n._containerScrollLeft>0&&d.scrollLeft(n._containerScrollLeft)),n.options.iframe&&n.wrapper.trigger("blur"))},_deactivate:function(){var t,i=this;i.wrapper.removeClass(E).hide().css("opacity",""),i.trigger(K),i.options.modal&&(t=i._object(i._modals().last()),t&&t.toFront())},close:function(){return this._close(!0),this},_actionable:function(i){return t(i).is(lt+","+lt+" .k-icon, :input, a, .k-input, .k-icon, [role='gridcell']")},_shouldFocus:function(i){var e=m(),n=this.wrapper;return this.options.autoFocus&&!t(e).is(n)&&!this._actionable(i)&&(!n.find(e).length||!n.find(i).length)},toFront:function(i,e){var n,o,r=this,s=r.wrapper,a=s[0],l=r.containment&&!r._isPinned,d=this._animationOptions("open"),p=+s.css(nt),c=p,h=i&&i.target||null;return t(T).each(function(i,e){var n=t(e),o=n.css(nt),r=n.children(W);isNaN(o)||(p=Math.max(+o,p)),s.data("isFront",e==a),e!=a&&r.find("."+M).length&&!r.find(H).length&&r.append(gt.overlay)}),(!s[0].style.zIndex||c<p)&&s.css(nt,p+2),r.element.find("> .k-overlay").remove(),r._shouldFocus(h)&&(e||setTimeout(function(){r.wrapper.focus()},d?d.duration:0),n=l?r.containment.scrollTop():t(window).scrollTop(),o=parseInt(s.position().top,10),!r.options.pinned&&o>0&&o<n&&(n>0?t(window).scrollTop(o):s.css("top",n))),s=null,r},toggleMaximization:function(){return this._closing?this:this[this.options.isMaximized?"restore":"maximize"]()},restore:function(){var i,e=this,n=e.options,r=n.minHeight,s=e.restoreOptions,a=e.containment&&!e._isPinned?e.containment:t(document);return n.isMaximized||n.isMinimized?(r&&r!=1/0&&e.wrapper.css("min-height",r),s&&!n.isMaximized&&(s.height=o(s.height,e.options.minHeight,e.options.maxHeight),i=n.position.top+parseInt(s.height,10)>e.maxTop,i&&(n.position.top=o(n.position.top,e.minTop,e.maxTop-parseInt(s.height,10)),_(s,{left:n.position.left,top:n.position.top}))),e.wrapper.css({position:n.pinned?"fixed":"absolute",left:s.left,top:s.top,width:s.width,height:s.height}).removeClass(D).find(".k-window-content,.k-resize-handle").show().end().find(".k-window-titlebar .k-i-window-restore").parent().remove().end().end().find(ot).parent().show().end().end().find(at).parent().show(),n.isMaximized?e.wrapper.find(".k-i-window-maximize").parent().trigger("focus"):n.isMinimized&&e.wrapper.find(".k-i-window-minimize").parent().trigger("focus"),e.options.width=s.width,e.options.height=s.height,e.options.modal.preventScroll||e._enableDocumentScrolling(),e._containerScrollTop&&e._containerScrollTop>0&&a.scrollTop(e._containerScrollTop),e._containerScrollLeft&&e._containerScrollLeft>0&&a.scrollLeft(e._containerScrollLeft),n.isMaximized=n.isMinimized=!1,e.wrapper.removeAttr("aria-labelled-by"),e.resize(),e.trigger($),e):e},_sizingAction:function(t,i){var e=this,n=e.wrapper,o=n[0].style,r=e.options;return r.isMaximized||r.isMinimized?e:(e.restoreOptions={width:o.width,height:o.height},n.children(P).hide().end().children(L).find(ot).parent().hide().eq(0).before(gt.action({name:"window-restore"})),i.call(e),e.wrapper.children(L).find(at).parent().toggle("maximize"!==t),e.trigger(t),n.find(".k-i-window-restore").parent().trigger("focus"),e)},maximize:function(){return this._sizingAction("maximize",function(){var i=this,e=i.wrapper,n=this.containment&&!i._isPinned,o=e.position(),r=t(document);_(i.restoreOptions,{left:o.left+(n?this.containment.scrollLeft():0),top:o.top+(n?this.containment.scrollTop():0)}),this._containerScrollTop=n?this.containment.scrollTop():r.scrollTop(),this._containerScrollLeft=n?this.containment.scrollLeft():r.scrollLeft(),i._stopDocumentScrolling(),e.css({top:n?this.containment.scrollTop():0,left:n?this.containment.scrollLeft():0,position:n?"absolute":"fixed"}).addClass(D),i.options.isMaximized=!0,i._onDocumentResize()}),this},_stopDocumentScrolling:function(){var e,n,o=this,r=o.containment;return r&&!o._isPinned?(o._storeOverflowRule(r),r.css(it,R),o.wrapper.css({maxWidth:r.innerWidth(),maxHeight:r.innerHeight()}),i):(e=t("body"),o._storeOverflowRule(e),e.css(it,R),n=t("html"),o._storeOverflowRule(n),n.css(it,R),i)},_enableDocumentScrolling:function(){var e=this,n=e.containment;return n&&!e._isPinned?(e._restoreOverflowRule(n),e.wrapper.css({maxWidth:n.width,maxHeight:n.height}),i):(e._restoreOverflowRule(t(document.body)),e._restoreOverflowRule(t("html")),i)},_storeOverflowRule:function(t){if(!this._isOverflowStored(t)){var i=t.get(0).style.overflow;"string"==typeof i&&t.data(et,i)}},_isOverflowStored:function(t){return"string"==typeof t.data(et)},_restoreOverflowRule:function(t){var e=t.data(et);null!==e&&e!==i?(t.css(it,e),t.removeData(et)):t.css(it,"")},isMaximized:function(){return this.options.isMaximized},minimize:function(){return this._sizingAction("minimize",function(){var t=this;t.wrapper.css({height:"",minHeight:""}),t.element.hide(),t.options.isMinimized=!0}),this.wrapper.attr("aria-labelled-by",this.element.attr("aria-labelled-by")),this._updateBoundaries(),this},isMinimized:function(){return this.options.isMinimized},pin:function(){var i=this,e=t(window),o=i.wrapper,r=i.options,a=r.position,l=this.containment?s(o[0]).top+n(this.containment,"borderTopWidth"):n(o,"top"),d=this.containment?s(o[0]).left+n(this.containment,"borderLeftWidth"):n(o,"left");i.options.isMaximized||(a.top=l,a.left=d,!i._scrollIsAppended||this.containment&&"fixed"===this.containment.css("position")||(a.top-=e.scrollTop(),a.left-=e.scrollLeft(),i._scrollIsAppended=!1),o.css(_(a,{position:"fixed"})),o.children(L).find(rt).addClass("k-i-unpin").removeClass("k-i-pin"),i._isPinned=!0,i.options.pinned=!0,this.containment&&(r.maxWidth=r.maxHeight=1/0,o.css({maxWidth:"",maxHeight:""})))},unpin:function(){var i=this,e=t(window),r=i.wrapper,s=i.options,a=i.options.position,l=i.containment,d=parseInt(r.css("top"),10)+e.scrollTop(),p=parseInt(r.css("left"),10)+e.scrollLeft();i.options.isMaximized||(i._isPinned=!1,i._scrollIsAppended=!0,i.options.pinned=!1,l&&(i._updateBoundaries(),s.maxWidth=Math.min(l.width,s.maxWidth),s.maxHeight=Math.min(l.height-n(r,"padding-top"),s.maxHeight),r.css({maxWidth:s.maxWidth,maxHeight:s.maxHeight}),d=d<l.position.top?i.minTop:d>l.position.top+l.height?i.maxTop:d+l.scrollTop()-(l.position.top+n(l,"border-top-width")),p=p<l.position.left?i.minLeft:p>l.position.left+l.width?i.maxLeft:p+l.scrollLeft()-(l.position.left+n(l,"border-left-width"))),a.top=o(d,i.minTop,i.maxTop),a.left=o(p,i.minLeft,i.maxLeft),r.css(_(a,{position:""})),r.children(L).find(st).addClass("k-i-pin").removeClass("k-i-unpin"))},_onDocumentResize:function(){var i,e,o,r,s,a=this,l=a.wrapper,p=t(window),c=d.support.zoomLevel(),h="content-box"==l.css("box-sizing");a.options.isMaximized&&(o=h?n(l,"border-left-width")+n(l,"border-right-width"):0,r=h?n(l,"border-top-width")+n(l,"border-bottom-width"):0,s=h?n(l,"padding-top"):0,a.containment&&!a._isPinned?(i=a.containment.innerWidth()-o,e=a.containment.innerHeight()-(r+s)):(i=p.width()/c-o,e=p.height()/c-(r+s)),l.css({width:i,height:e}),a.options.width=i,a.options.height=e,a.resize())},refresh:function(i){var n,o,r,s=this,a=s.options,l=t(s.element);return f(i)||(i={url:i}),i=_(a.content,i),o=e(a.iframe)?a.iframe:i.iframe,r=i.url,r?(e(o)||(o=!ht(r)),o?(n=l.find("."+M)[0],n?n.src=r||n.src:l.html(gt.contentFrame(_({},a,{content:i}))),l.find("."+M).off("load"+k).on("load"+k,w(this._triggerRefresh,this))):s._ajaxRequest(i)):(i.template&&s.content(x(i.template)({})),s.trigger(q)),l.toggleClass("k-window-iframecontent",!!o),s},_triggerRefresh:function(){this.trigger(q)},_ajaxComplete:function(){clearTimeout(this._loadingIconTimeout),this.wrapper.find(dt).removeClass(S)},_ajaxError:function(t,i){this.trigger(tt,{status:i,xhr:t})},_ajaxSuccess:function(t){return function(i){var e=i;t&&(e=x(t)(i||{})),this.content(e,i),this.element.prop("scrollTop",0),this.trigger(q)}},_showLoading:function(){this.wrapper.find(dt).addClass(S)},_ajaxRequest:function(i){this._loadingIconTimeout=setTimeout(w(this._showLoading,this),100),t.ajax(_({type:"GET",dataType:"html",cache:!1,error:w(this._ajaxError,this),complete:w(this._ajaxComplete,this),success:w(this._ajaxSuccess(i.template),this)},i))},_destroy:function(){this.resizing&&this.resizing.destroy(),this.dragging&&this.dragging.destroy(),this.wrapper.off(k).children(W).off(k).end().find(".k-resize-handle,.k-window-titlebar").off(k),t(window).off("resize"+k+this._marker),t(window).off(z),t(window).off(k),clearTimeout(this._loadingIconTimeout),p.fn.destroy.call(this),this.unbind(i),d.destroy(this.wrapper)},destroy:function(){this._destroy(),this.options.modal&&this._removeOverlay(!0),this.wrapper.empty().remove(),this.wrapper=this.appendTo=this.element=t()},_createWindow:function(){var i,e,n=this.element,o=this.options,r=d.support.isRtl(n);o.scrollable===!1&&n.css("overflow","hidden"),e=t(gt.wrapper(o)),i=n.find("iframe:not(.k-content-frame)").map(function(){var t=this.getAttribute("src");return this.src="",t}),e.toggleClass("k-rtl",r).attr("tabindex",0).append(n).find("iframe:not(.k-content-frame)").each(function(t){this.src=i[t]}),this.containment?this.containment.prepend(e):this.appendTo&&e.appendTo(this.appendTo),e.find(".k-window-title").css(r?"left":"right",g(e.find(".k-window-actions"))+10),n.css("visibility","").show(),n.find("[data-role=editor]").each(function(){var i=t(this).data("kendoEditor");i&&i.refresh()}),e=n=null}}),gt={wrapper:x("<div class='k-widget k-window'></div>"),action:x("<a role='button' href='\\#' class='k-button k-flat k-button-icon k-window-action' aria-label='#= name #'><span class='k-icon k-i-#= name.toLowerCase() #'></span></a>"),titlebar:x("<div class='k-window-titlebar k-hstack'><span class='k-window-title'>#= title #</span><div class='k-window-actions k-hstack'></div></div>"),overlay:"<div class='k-overlay'></div>",contentFrame:x("<iframe frameborder='0' title='#= title #' class='"+M+"' src='#= content.url #'>This page requires frames in order to show content</iframe>"),resizeHandle:x("<div class='k-resize-handle k-resize-#= data #'></div>")};a.prototype={addOverlay:function(){this.owner.wrapper.append(gt.overlay)},removeOverlay:function(){this.owner.wrapper.find(H).remove()},dragstart:function(i){var e,n,o,r,a,l,p,c=this,h=c.owner,f=h.wrapper;c._preventDragging=h.trigger(J),c._preventDragging||(c.elementPadding=parseInt(f.css("padding-top"),10),c.initialPosition=d.getOffset(f,"position"),c.resizeDirection=i.currentTarget.prop("className").replace("k-resize-handle k-resize-",""),c.initialSize={width:f.outerWidth(),height:f.outerHeight()},h._updateBoundaries(),c.containerOffset=h.containment?h.containment.position:d.getOffset(h.appendTo),e=f.offsetParent(),e.is("html")?c.containerOffset.top=c.containerOffset.left=0:(n=e.css("margin-top"),o=e.css("margin-left"),r=!ct.test(n)||!ct.test(o),r&&(a=s(f[0]),l=a.left-c.containerOffset.left-c.initialPosition.left,p=a.top-c.containerOffset.top-c.initialPosition.top,c._relativeElMarginLeft=l>1?l:0,c._relativeElMarginTop=p>1?p:0,c.initialPosition.left+=c._relativeElMarginLeft,c.initialPosition.top+=c._relativeElMarginTop)),f.children(P).not(i.currentTarget).hide(),t(b).css(j,i.currentTarget.css(j)))},drag:function(i){var e,n,r,s,a,l,p,c,h,f,m,g,u,w,_,v,x,b,k,z;this._preventDragging||(e=this,n=e.owner,r=n.wrapper,s=n.options,a=s.position,l=e.resizeDirection,p=e.containerOffset,c=e.initialPosition,h=e.initialSize,f=n.containment&&!n._isPinned,m=d.support.isRtl(n.containment),g=f&&m&&n.containment.innerWidth()>n.containment.width?d.support.scrollbar():0,u=f?{top:n.containment.scrollTop(),left:n.containment.scrollLeft()}:{top:0,left:0},b=Math.max(i.x.location,0),k=Math.max(i.y.location,0),l.indexOf("e")>=0?(w=n.containment&&b-h.width>=n.maxLeft-u.left+p.left+g?n.maxLeft+g-c.left+h.width-u.left:b-c.left-p.left,r.outerWidth(o(w,s.minWidth,s.maxWidth))):l.indexOf("w")>=0&&(x=c.left+h.width+p.left,w=o(x-b,s.minWidth,s.maxWidth),a.left=x-w-p.left-g-(e._relativeElMarginLeft||0)+u.left,n.containment&&a.left<=n.minLeft&&(a.left=n.minLeft,w=o(x-g-a.left-p.left+u.left,s.minWidth,s.maxWidth)),r.css({left:a.left,width:w})),z=k,n.options.pinned&&(z-=t(window).scrollTop()),l.indexOf("s")>=0?(_=z-c.top-e.elementPadding-p.top,z-h.height-e.elementPadding>=n.maxTop+p.top-u.top&&(_=n.maxTop-c.top+h.height-u.top),r.outerHeight(o(_,s.minHeight,s.maxHeight))):l.indexOf("n")>=0&&(v=c.top+h.height+p.top,_=o(v-z,s.minHeight,s.maxHeight),a.top=v-_-p.top-(e._relativeElMarginTop||0)+u.top,a.top<=n.minTop&&n.containment&&(a.top=n.minTop,_=o(v-a.top-p.top+u.top,s.minHeight,s.maxHeight)),r.css({top:a.top,height:_})),w&&(n.options.width=w+"px"),_&&(n.options.height=_+"px"),n.resize())},dragend:function(i){if(!this._preventDragging){var e=this,n=e.owner,o=n.wrapper;return o.children(P).not(i.currentTarget).show(),t(b).css(j,""),n.touchScroller&&n.touchScroller.reset(),27==i.keyCode&&o.css(e.initialPosition).css(e.initialSize),n.trigger(Q),!1}},destroy:function(){this._draggable&&this._draggable.destroy(),this._draggable=this.owner=null}},l.prototype={dragstart:function(i){var e=this.owner,n=e.options.draggable,o=e.element,r=o.find(".k-window-actions"),s=d.getOffset(e.appendTo);this._preventDragging=e.trigger(X)||!n,this._preventDragging||e.isMaximized()||(e.initialWindowPosition=d.getOffset(e.wrapper,"position"),e.initialPointerPosition={left:e.options.position.left,top:e.options.position.top},e.startPosition={left:i.x.client-e.initialWindowPosition.left,top:i.y.client-e.initialWindowPosition.top},e._updateBoundaries(),e.containment||(e.minLeft=r.length>0?g(r)+parseInt(r.css("right"),10)-g(o):20-g(o),e.minLeft-=s.left,e.minTop=-s.top),t(gt.overlay).appendTo(e.wrapper).css({opacity:0}),e.wrapper.children(P).hide(),t(b).css(j,i.currentTarget.css(j)))},drag:function(i){var e,n,r=this.owner,s=r.options.position,a=r.options.draggable.axis;this._preventDragging||r.isMaximized()||(a&&"x"!==a.toLowerCase()||(e=i.x.client-r.startPosition.left,r.containment&&!r._isPinned&&(e+=r.containment.scrollLeft()),s.left=o(e,r.minLeft,r.maxLeft)),a&&"y"!==a.toLowerCase()||(n=i.y.client-r.startPosition.top,r.containment&&!r._isPinned&&(n+=r.containment.scrollTop()),s.top=o(n,r.minTop,r.maxTop)),d.support.transforms?t(r.wrapper).css("transform","translate("+(s.left-r.initialPointerPosition.left)+"px, "+(s.top-r.initialPointerPosition.top)+"px)"):t(r.wrapper).css(s))},_finishDrag:function(){var i=this.owner;i.wrapper.children(P).toggle(!i.options.isMinimized).end().find(H).remove(),t(b).css(j,"")},dragcancel:function(t){this._preventDragging||(this._finishDrag(),t.currentTarget.closest(T).css(this.owner.initialWindowPosition))},dragend:function(){var i=this.owner;if(!this._preventDragging&&!i.isMaximized())return t(i.wrapper).css(i.options.position).css("transform",""),this._finishDrag(),i.trigger(Y),!1},destroy:function(){this._draggable&&this._draggable.destroy(),this._draggable=this.owner=null}},d.ui.plugin(mt)}(window.kendo.jQuery),window.kendo},e(3))}});