UNPKG

@progress/kendo-ui

Version:

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

1 lines 12.1 kB
module.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}({0:function(e,t,n){e.exports=n(1414)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1057:function(e,t){e.exports=require("jquery")},1208:function(e,t){e.exports=require("./kendo.resizable")},1414:function(e,t,n){var r,i,a;(function(s){!function(s,define){i=[n(1208)],r=s,a="function"==typeof r?r.apply(t,i):r,!(void 0!==a&&(e.exports=a))}(function(){return function(e,t){function n(e){return m.test(e)}function r(e){return k.test(e)||/^\d+$/.test(e)}function i(e){return!n(e)&&!r(e)}function a(e,t){var r=parseInt(e,10);return n(e)&&(r=Math.floor(r*t/100)),r}function o(e,n){return function(r,i){var a,s=this.element.find(r).data(T);return 1==arguments.length?s[e]:(s[e]=i,n&&(a=this.element.data("kendo"+this.options.name),a.resize(!0)),t)}}function l(e){var t=this,n=e.orientation;t.owner=e,t._element=e.element,t.orientation=n,f(t,n===C?d:p),t._resizable=new c.ui.Resizable(e.element,{orientation:n,handle:".k-splitbar-draggable-"+n+"[data-marker="+e._marker+"]",hint:g(t._createHint,t),start:g(t._start,t),max:g(t._max,t),min:g(t._min,t),invalidClass:"k-restricted-size-"+n,resizeend:g(t._stop,t)})}var p,d,c=window.kendo,u=c.ui,h=c.keys,f=e.extend,g=e.proxy,v=u.Widget,k=/^\d+(\.\d+)?px$/i,m=/^\d+(\.\d+)?%$/i,_=".kendoSplitter",x="expand",z="collapse",b="contentLoad",y="error",w="resize",P="layoutChange",C="horizontal",S="vertical",A="mouseenter",E="click",T="pane",D="mouseleave",B="k-state-focused",I="k-"+T,H="."+I,q="tabindex",M="aria-valuemin",N="aria-valuemax",R="aria-valuenow",L="aria-controls",O="aria-label",j="aria-labelledby",W="aria-orientation",U=v.extend({init:function(e,t){var n,r=this;v.fn.init.call(r,e,t),r.wrapper=r.element,r.options.orientation&&(n=r.options.orientation.toLowerCase()!=S),r.orientation=n?C:S,r._dimension=n?"width":"height",r._keys={decrease:n?h.LEFT:h.UP,increase:n?h.RIGHT:h.DOWN},r._resizeStep=10,r._marker=c.guid().substring(0,8),r._initPanes(),r.resizing=new l(r),r.element.triggerHandler("init"+_)},events:[x,z,b,y,w,P],_addOverlays:function(){this._panes().append("<div class='k-splitter-overlay k-overlay' />")},_removeOverlays:function(){this._panes().children(".k-splitter-overlay").remove()},_attachEvents:function(){var t=this,n=t.options.orientation;t.element.children(".k-splitbar-draggable-"+n).on("keydown"+_,g(t._keydown,t)).on("mousedown"+_,function(e){e.currentTarget.focus()}).on("focus"+_,function(t){e(t.currentTarget).addClass(B)}).on("blur"+_,function(n){e(n.currentTarget).removeClass(B),t.resizing&&t.resizing.end()}).on(A+_,function(){e(this).addClass("k-splitbar-"+t.orientation+"-hover")}).on(D+_,function(){e(this).removeClass("k-splitbar-"+t.orientation+"-hover")}).on("mousedown"+_,g(t._addOverlays,t)).end().children(".k-splitbar").on("dblclick"+_,g(t._togglePane,t)).children(".k-collapse-next, .k-collapse-prev").on(E+_,t._arrowClick(z)).end().children(".k-expand-next, .k-expand-prev").on(E+_,t._arrowClick(x)).end().end(),e(window).on("resize"+_+t._marker,g(t.resize,t,!1)),e(document).on("mouseup"+_+t._marker,g(t._removeOverlays,t))},_detachEvents:function(){var t=this;t.element.children(".k-splitbar-draggable-"+t.orientation).off(_).end().children(".k-splitbar").off("dblclick"+_).children(".k-collapse-next, .k-collapse-prev, .k-expand-next, .k-expand-prev").off(_),e(window).off(_+t._marker),e(document).off(_+t._marker)},options:{name:"Splitter",orientation:C,panes:[]},destroy:function(){v.fn.destroy.call(this),this._detachEvents(),this.resizing&&this.resizing.destroy(),c.destroy(this.element),this.wrapper=this.element=null},_keydown:function(t){var n,r=this,i=t.keyCode,a=r.resizing,s=e(t.currentTarget),o=r._keys,l=i===o.increase,p=i===o.decrease;l||p?(t.ctrlKey?(n=s[p?"next":"prev"](),a&&a.isResizing()&&a.end(),n[r._dimension]()?r._triggerAction(z,s[p?"prev":"next"]()):r._triggerAction(x,n)):a&&a.move((p?-1:1)*r._resizeStep,s),t.preventDefault()):i===h.HOME?(n=s.prev(),r.collapse(n),t.preventDefault()):i===h.END?(n=s.prev(),r.expand(n),t.preventDefault()):i===h.ENTER&&a&&(a.end(),t.preventDefault())},_initPanes:function(){var e=this.options.panes||[],t=this;this.element.addClass("k-widget").addClass("k-splitter").children().each(function(n,r){"script"!=r.nodeName.toLowerCase()&&t._initPane(r,e[n])}),this.resize()},_initPane:function(t,n){t=e(t).attr("role","group").addClass(I),t.data(T,n?n:{}).toggleClass("k-scrollable",!n||n.scrollable!==!1),this.ajaxRequest(t)},ajaxRequest:function(e,t,n){var r,i=this;e=i.element.find(e),r=e.data(T),t=t||r.contentUrl,t&&(e.append("<span class='k-icon k-i-loading k-pane-loading' />"),c.isLocalUrl(t)?s.ajax({url:t,data:n||{},type:"GET",dataType:"html",success:function(t){i.angular("cleanup",function(){return{elements:e.get()}}),e.html(t),i.angular("compile",function(){return{elements:e.get()}}),i.trigger(b,{pane:e[0]})},error:function(t,n){i.trigger(y,{pane:e[0],status:n,xhr:t})}}):e.removeClass("k-scrollable").html("<iframe src='"+t+"' frameborder='0' class='k-content-frame'>This page requires frames in order to show content</iframe>"))},_triggerAction:function(e,t){this.trigger(e,{pane:t[0]})||this[e](t[0])},_togglePane:function(t){var n,r=this,i=e(t.target);i.closest(".k-splitter")[0]==r.element[0]&&(n=i.children(".k-icon:not(.k-resize-handle)"),1===n.length&&(n.is(".k-collapse-prev")?r._triggerAction(z,i.prev()):n.is(".k-collapse-next")?r._triggerAction(z,i.next()):n.is(".k-expand-prev")?r._triggerAction(x,i.prev()):n.is(".k-expand-next")&&r._triggerAction(x,i.next())))},_arrowClick:function(t){var n=this;return function(r){var i,a=e(r.target);a.closest(".k-splitter")[0]==n.element[0]&&(i=a.is(".k-"+t+"-prev")?a.parent().prev():a.parent().next(),n._triggerAction(t,i))}},_updateSplitBar:function(e,t,n,r){var i=function(e,t){return t?"<div class='k-icon "+e+"'></div>":""},a=this.orientation,s=t.resizable!==!1&&n.resizable!==!1,o=t.collapsible,l=t.collapsed,p=n.collapsible,d=n.collapsed,u=r.attr("id");u||(u=c.guid(),r.attr("id",u)),e.addClass("k-splitbar k-state-default k-splitbar-"+a).attr("role","separator").attr(M,"0").attr(N,"100").attr(L,u).removeClass("k-splitbar-"+a+"-hover").toggleClass("k-splitbar-draggable-"+a,s&&!l&&!d).toggleClass("k-splitbar-static-"+a,!s&&!o&&!p).html(i("k-collapse-prev k-i-arrow-60-up",o&&!l&&!d&&a==S)+i("k-collapse-prev k-i-arrow-60-left",o&&!l&&!d&&a==C)+i("k-expand-prev k-i-arrow-60-down",o&&l&&!d&&a==S)+i("k-expand-prev k-i-arrow-60-right",o&&l&&!d&&a==C)+i("k-resize-handle k-i-hbar",s&&a==S)+i("k-resize-handle k-i-vbar",s&&a==C)+i("k-collapse-next k-i-arrow-60-down",p&&!d&&!l&&a==S)+i("k-collapse-next k-i-arrow-60-right",p&&!d&&!l&&a==C)+i("k-expand-next k-i-arrow-60-up",p&&d&&!l&&a==S)+i("k-expand-next k-i-arrow-60-left",p&&d&&!l&&a==C)),t.labelId?e.attr(j,t.labelId):t.label&&e.attr(O,t.label),a==C&&e.attr(W,S),s||o||p||e.removeAttr(q)},_updateSplitBars:function(){var t=this;this.element.children(".k-splitbar").each(function(){var n=e(this),r=n.prevAll(H).first(),i=r.data(T),a=n.nextAll(H).first().data(T);a&&t._updateSplitBar(n,i,a,r)})},_removeSplitBars:function(){this.element.children(".k-splitbar").remove()},_panes:function(){return this.element?this.element.children(H):e()},_resetAriaValueNow:function(e,t){var n,r,i,a;for(n=0;n<e.length;n++)a=t[n]+t[n+1]||1,i=Math.round(t[n]/a*100),r=e[n],r.setAttribute(R,i)},_resize:function(){var n,r,s,o,l,p,d,u,h,f,g=this,v=g.element,k=v.children(H),m=g.orientation==C,_=v.children(".k-splitbar"),x=_.length,z=m?"width":"height",b=v[z](),y=[];g.wrapper.addClass("k-splitter-resizing"),0===x?(x=k.length-1,k.slice(0,x).after("<div tabindex='0' class='k-splitbar' data-marker='"+g._marker+"' />"),g._updateSplitBars(),_=v.children(".k-splitbar")):g._updateSplitBars(),_.each(function(){b-=this[m?"offsetWidth":"offsetHeight"]}),n=0,r=0,s=e(),k.css({position:"absolute",top:0})[z](function(){var o,l=e(this),p=l.data(T)||{};if(l.removeClass("k-state-collapsed"),p.collapsed)o=p.collapsedSize?a(p.collapsedSize,b):0,l.css("overflow","hidden").addClass("k-state-collapsed");else{if(i(p.size))return s=s.add(this),y.push(!1),t;o=a(p.size,b)}return r++,n+=o,y.push(o),o}),b-=n,o=s.length,l=Math.floor(b/o),s.slice(0,o-1).css(z,l).end().eq(o-1).css(z,b-(o-1)*l),y.forEach(function(e,t){e===!1&&(y[t]=l)}),g._resetAriaValueNow(_,y),p=0,d=m?"height":"width",u=m?"left":"top",h=m?"offsetWidth":"offsetHeight",0===o&&(f=k.filter(function(){return!(e(this).data(T)||{}).collapsed}).last(),f[z](b+f[0][h])),v.children().css(d,v[d]()).each(function(e,t){"script"!=t.tagName.toLowerCase()&&(t.style[u]=Math.floor(p)+"px",p+=t[h])}),g._detachEvents(),g._attachEvents(),g.wrapper.removeClass("k-splitter-resizing"),c.resize(k),g.trigger(P)},toggle:function(e,n){var r,i=this;e=i.element.find(e),r=e.data(T),(n||r.collapsible)&&(1==arguments.length&&(n=r.collapsed!==t&&r.collapsed),r.collapsed=!n,r.collapsed?e.css("overflow","hidden"):e.css("overflow",""),i.resize(!0))},collapse:function(e){this.toggle(e,!1)},expand:function(e){this.toggle(e,!0)},_addPane:function(e,t,n){var r=this;return n.length&&(r.options.panes.splice(t,0,e),r._initPane(n,e),r._removeSplitBars(),r.resize(!0)),n},append:function(t){t=t||{};var n=this,r=e("<div />").appendTo(n.element);return n._addPane(t,n.options.panes.length,r)},insertBefore:function(t,n){n=e(n),t=t||{};var r=this,i=r.wrapper.children(".k-pane").index(n),a=e("<div />").insertBefore(e(n));return r._addPane(t,i,a)},insertAfter:function(t,n){n=e(n),t=t||{};var r=this,i=r.wrapper.children(".k-pane").index(n),a=e("<div />").insertAfter(e(n));return r._addPane(t,i+1,a)},remove:function(t){var n=this;return t=n.wrapper.find(t),t.length&&(c.destroy(t),t.each(function(t,r){n.options.panes.splice(n.wrapper.children(".k-pane").index(r),1),e(r).remove()}),n._removeSplitBars(),n.options.panes.length&&n.resize(!0)),n},size:o("size",!0),min:o("min"),max:o("max")});u.plugin(U),p={sizingProperty:"height",sizingDomProperty:"offsetHeight",alternateSizingProperty:"width",positioningProperty:"top",mousePositioningProperty:"pageY"},d={sizingProperty:"width",sizingDomProperty:"offsetWidth",alternateSizingProperty:"height",positioningProperty:"left",mousePositioningProperty:"pageX"},l.prototype={press:function(e){this._resizable.press(e)},move:function(e,t){this.pressed||(this.press(t),this.pressed=!0),this._resizable.target||this._resizable.press(t),this._resizable.move(e)},end:function(){this._resizable.end(),this.pressed=!1},destroy:function(){this._resizable.destroy(),this._resizable=this._element=this.owner=null},isResizing:function(){return this._resizable.resizing},_createHint:function(t){var n=this;return e("<div class='k-ghost-splitbar k-ghost-splitbar-"+n.orientation+" k-state-default' />").css(n.alternateSizingProperty,t[n.alternateSizingProperty]())},_start:function(t){var n=this,i=e(t.currentTarget),a=i.prev(),s=i.next(),o=a.data(T),l=s.data(T),p=parseInt(a[0].style[n.positioningProperty],10),d=parseInt(s[0].style[n.positioningProperty],10)+s[0][n.sizingDomProperty]-i[0][n.sizingDomProperty],c=parseInt(n._element.css(n.sizingProperty),10),u=function(e){var t=parseInt(e,10);return(r(e)?t:c*t/100)||0},h=u(o.min),f=u(o.max)||d-p,g=u(l.min),v=u(l.max)||d-p;n.previousPane=a,n.nextPane=s,n._maxPosition=Math.min(d-g,p+f),n._minPosition=Math.max(p+h,d-v)},_max:function(){return this._maxPosition},_min:function(){return this._minPosition},_stop:function(t){var n,r,a,s,o,l,p,d,u=this,h=e(t.currentTarget),f=u.owner;return f._panes().children(".k-splitter-overlay").remove(),t.keyCode!==c.keys.ESC&&(n=t.position,r=h.prev(),a=h.next(),s=r.data(T),o=a.data(T),l=n-parseInt(r[0].style[u.positioningProperty],10),p=parseInt(a[0].style[u.positioningProperty],10)+a[0][u.sizingDomProperty]-n-h[0][u.sizingDomProperty],d=u._element.children(H).filter(function(){return i(e(this).data(T).size)}).length,(!i(s.size)||d>1)&&(i(s.size)&&d--,s.size=l+"px"),(!i(o.size)||d>1)&&(o.size=p+"px"),f.resize(!0)),!1}}}(window.kendo.jQuery),window.kendo},n(3))}).call(t,n(1057))}});