@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
55 lines • 22.7 kB
JavaScript
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("kendo.core.min.js"),require("kendo.splitter.min.js"),require("kendo.tabstrip.min.js"),require("kendo.window.min.js"),require("kendo.html.button.min.js"),require("kendo.resizable.min.js"),require("kendo.draganddrop.min.js")):typeof define==`function`&&define.amd?define([`exports`,`kendo.core.min`,`kendo.splitter.min`,`kendo.tabstrip.min`,`kendo.window.min`,`kendo.html.button.min`,`kendo.resizable.min`,`kendo.draganddrop.min`],t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Dockmanager={}),e.kendo._globals.Core,e.kendo._globals.Splitter,e.kendo._globals.Tabstrip,e.kendo._globals.Window,e.kendo._globals.HtmlButton,e.kendo._globals.Resizable,e.kendo._globals.Draganddrop))})(this,function(e,t,n,r,i,a,o,s){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let c={id:`dockManager`,name:`DockManager`,category:`web`,description:`The DockManager widget represents a layout component that allows users to achieve custom layouts by docking panes.`,depends:[`core`,`splitter`,`tabstrip`,`window`,`html.button`]};(function(e,t){let n=window.kendo,r=n.ui.Widget,i=n.ui,a=e.extend,o=/^\d+(\.\d+)?%$/i,s=`k-dock-manager-toolbar`,c=`<div class="${s} k-toolbar-left k-toolbar"></div>`,l=`k-pane-static`,u=`k-pane-pinned`,d=`k-pane-unpinned`,f=`k-pane-tabbed`,p=`k-splitter`,m=`k-splitbar`,h=`horizontal`,g=`vertical`,_=`k-hidden`,v=`k-button`,y=`k-pane`,b=`k-dock-manager-pane-container`,x=`k-pane-actions`,S=`k-dock-indicator`,C=`k-dock-navigator`,w=`k-docking-preview`,T=`k-selected`,E=`k-active`,D=`k-tabstrip`,O=`split`,k=`height`,A=`width`,j=`bottom`,M=`left`,N=`right`,P=`middle`,F=`unpin`,I=`unshift`,L=`<div class="${y} k-pane-flex ${l}"></div>`,R=e=>`.${y}[${n.attr(`uid`)}="${e}"]`,z=e=>`<span class="k-button-text">${e}</span>`,B=e=>`<div class="k-pane-scrollable" tabindex="0">
<div class="k-pane-header">
<span class="k-pane-title">${e.title}</span>
<div class="${x}"></div>
</div>
<div class="k-pane-content">${e.content}</div>
</div>`,V=e=>`<li><span class="k-link"><span class="k-link-text">${e}</span></span></li>`,H=n.attr(`uid`),U=n.attr(`indicator`),W=n.attr(`action`),G=e=>`<div class="k-tooltip k-tooltip-primary">
<div class="k-tooltip-content">${e.title}</div>
</div>`,K=`<div class="${S}">
<span class="k-svg-icon k-icon-xl k-svg-i-position-top">
<svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path d="M480 448V32H32v448h448v-32zm-416 0V64h384v384H64zM96 96h320v96H96z"></path>
</svg>
</span>
</div>`,ee=`<div class="${C}">
<div class="k-dock-indicator k-dock-indicator-top" ${U}="top">
<span class="k-svg-icon k-icon-xl k-svg-i-position-top">
<svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path d="M480 448V32H32v448h448v-32zm-416 0V64h384v384H64zM96 96h320v96H96z"></path>
</svg>
</span>
</div>
<div class="k-dock-indicator k-dock-indicator-right" ${U}="right">
<span class="k-svg-icon k-icon-xl k-svg-i-position-right">
<svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path d="M64 480h416V32H32v448h32zm0-416h384v384H64V64zm256 32h96v320h-96z"></path>
</svg>
</span>
</div>
<div class="k-dock-indicator k-dock-indicator-bottom" ${U}="bottom">
<span class="k-svg-icon k-icon-xl k-svg-i-position-bottom">
<svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path d="M32 64v416h448V32H32v32zm416 0v384H64V64h384zM96 320h320v96H96z"></path>
</svg>
</span>
</div>
<div class="k-dock-indicator k-dock-indicator-left" ${U}="left">
<span class="k-svg-icon k-icon-xl k-svg-i-position-left">
<svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path d="M448 32H32v448h448V32h-32zm0 416H64V64h384v384zM96 96h96v320H96z"></path>
</svg>
</span>
</div>
<div class="k-dock-indicator k-dock-indicator-middle" ${U}="middle">
<span class="k-svg-icon k-icon-xl k-svg-i-window">
<svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path d="M96 96v320h320V96H96zm288 288H128V192h256v192z"></path>
</svg>
</span>
</div>
</div>`,q=`close`,J=`dock`,Y=`innerDock`,X=`resize`,Z=`drag`,Q=`dragStart`,$=`dragEnd`,te={pin:`Pin pane`,unpin:`Unpin pane`,close:`Close pane`,more:`More actions`};function ne(e){return e.charAt(0).toUpperCase()+e.slice(1)}function re(e){return o.test(e)}let ie=r.extend({init:function(t,i){let a=this;r.fn.init.call(a,t,i),i=e.extend(!0,{},i),a.element.addClass(`k-dock-manager`).attr({role:`application`,"aria-live":`polite`}),a.panesContainer=e(`<div class="${b}" />`).appendTo(a.element),a._processPanes(a.options.rootPane),a._refreshToolbar(),a._createPane(a.panesContainer,a.options.rootPane),a._bindEvents(),a._initNavigator(),a._initUnpinnedResizable(),n.notify(a),r.fn.endInit.call(this)},events:[q,`pin`,F,J,Y,X,Z,Q,$],options:{name:`DockManager`,rootPane:{type:O,orientation:h,panes:[]}},paneDefaults:{visible:!0,closeable:!0,collapsed:!1,size:``},actions:[{name:`pin`,icon:`unpin`,shouldAdd:e=>e.unpinnable&&e.unpinnable.unpinned},{name:`unpin`,icon:`pin`,shouldAdd:e=>e.unpinnable&&!e.unpinnable.unpinned},{name:`minimize`,icon:`minimize`,shouldAdd:e=>e.minimizable},{name:`maximize`,icon:`maximize`,shouldAdd:e=>e.maximizable},{name:`close`,icon:`x`,shouldAdd:e=>e.closeable!=0},{name:`more`,icon:`more-vertical`,shouldAdd:e=>!1}],indicators:[{name:`top`,top:0,left:`50%`,transform:`translate(-50%, 0)`,previewTop:()=>0,previewLeft:()=>0,rotate:`0deg`},{name:j,top:`100%`,left:`50%`,transform:`translate(-50%, -100%)`,previewTop:(e,t)=>e-t,previewLeft:()=>0,rotate:`180deg`},{name:M,top:`50%`,left:0,transform:`translate(0, -50%)`,previewTop:()=>0,previewLeft:()=>0,rotate:`270deg`},{name:N,top:`50%`,left:`100%`,transform:`translate(-100%, -50%)`,previewTop:()=>0,previewLeft:(e,t)=>e-t,rotate:`90deg`},{name:P,previewTop:()=>0,previewLeft:()=>0}],togglePane:function(e){let n=this,r=n._getPaneById(n.options.rootPane,`id`,e);r!=t&&n._togglePane(r)},removePane:function(e){let n=this,r=n._getPaneById(n.options.rootPane,`id`,e);r!=t&&n._removePane(r)},getOptions:function(){return this.options},setOptions:function(e){let t=this,r=t.getOptions();n.deepExtend(r,e),t.destroy(),t.element.empty(),t.init(t.element,r)},_initUnpinnedResizable:function(){let e=this;e._unpinnedResizable=new n.ui.Resizable(e.unpinnedContainer,{orientation:h,handle:`.k-splitbar-horizontal.k-splitbar-draggable-horizontal`,resize:function(t){let n=t.x.delta,r=e.unpinnedContainer.width();e.unpinnedContainer.width(r+n)}})},_bindEvents:function(){let e=this;e.element.on(`click.kendoDockManager`,`.k-dock-manager-toolbar .${v}`,e._toolbarButtonClick.bind(e)),e.element.on(`click.kendoDockManager`,`.${b}`,e._hideUnpinnedPanes.bind(e)),e.element.on(`click.kendoDockManager`,`.${v}[${W}="pin"], .${v}[${W}="unpin"]`,e._pinPaneClick.bind(e)),e.element.on(`click.kendoDockManager`,`.${v}[${W}="close"]`,e._closePane.bind(e)),e.element.on(`mouseenter.kendoDockManager`,`.${S}`,e._displayDockPreview.bind(e)),e.element.on(`mouseleave.kendoDockManager`,`.${S}`,e._hideDockPreview.bind(e))},_hideUnpinnedPanes:function(e){let t=this,n=t.unpinnedContainer.find(`.${y}`).filter(`:visible`),r=t.unpinnedContainer.is(`:visible`);if(n&&r){t._toolbar.find(`.${T}`).removeClass(T),t.unpinnedContainer.addClass(_);return}},_toolbarButtonClick:function(t){let n=this,r=e(t.currentTarget).attr(H),i=n.unpinnedContainer.find(`.${y}`).filter(`:visible`),a=n.unpinnedContainer.is(`:visible`);if(t.preventDefault(),n._toolbar.find(`.${v}`).removeClass(T),i.attr(H)===r&&a){n.unpinnedContainer.addClass(_);return}n._showUnpinnedPane(r)},_showUnpinnedPane:function(e){let t=this,n=t._toolbar.outerWidth(),r=t._findPaneByUid(e),i=r.unpinnable.unpinnedSize;t.unpinnedContainer.removeClass(_).css({left:`${n}px`}),t.unpinnedContainer.find(`.${y}`).addClass(_),t.unpinnedContainer.find(R(e)).removeClass(_),i&&t.unpinnedContainer.css({width:`${r.unpinnable.unpinnedSize}`}),t._toolbar.find(`.${v}[${H}="${e}"]`).addClass(T)},_pinPaneClick:function(t){let r=this,i=e(t.currentTarget),a=i.closest(`li.k-tabstrip-item`),o=a.length>0,s=i.attr(W),c=o?a:e(t.currentTarget).closest(`.${y}`),l=r._findPaneByUid(c.attr(H)),f=l.unpinnable.unpinned,m=r._findPaneByUid(l.parentUid);r.panesContainer.find(`.${y}[${H}="${m.uid}"], .${p}[${H}="${m.uid}"]`);let h={pane:l,paneElement:c};if(f&&(n.destroy(c),c.remove()),l.unpinnable.unpinned=s!==`pin`,r._refreshRootPane(),r.unpinnedContainer.toggleClass(_,s===`pin`),r.unpinnedContainer.find(`.${y}`).removeClass(u).addClass(d),s===`pin`){r.trigger(`pin`,h);return}r.trigger(F,h),r._showUnpinnedPane(l.uid)},_closePane:function(t){let n=this,r=e(t.currentTarget).closest(`li.k-tabstrip-item`),i=r.length>0?r:e(t.currentTarget).closest(`.${y}`),a=n._findPaneByUid(i.attr(H)),o=n._findPaneByUid(a.parentUid);n.panesContainer.find(`.${y}[${H}="${o.uid}"], .${p}[${H}="${o.uid}"]`);let s=o.panes.indexOf(a),c={pane:a,paneElement:i,event:t};n.trigger(q,c)&&t.preventDefault(),a.unpinnable&&a.unpinnable.unpinned&&n.unpinnedContainer.addClass(_),o.panes.splice(s,1),n._shouldHideParent(o)&&(o.visible=!1),n._refreshRootPane()},_shouldHideParent:function(e){let t=this._findPaneByUid(e.parentUid);return e.panes.length==0?(e.type==`tab`&&t.panes.length==1&&(t.panes.splice(0,1),t.visible=!1),!0):e.panes.length==1&&e.panes[0].type==`tab`&&!e.panes.some(e=>e.visible)},_refreshPane:function(e,t){let r=this,i=e.parent(),a=e.is(`.${f}`);n.destroy(e),a?e.empty():e.remove(),r._refreshToolbar(),r._createPane(a?e:i,t)},_processPanes:function(e){let r=this;e.uid=e.uid||n.guid(),r._extendPane(e),e.type===O&&!e.orientation&&(e.orientation=h),e.panes.forEach(i=>{i.parentUid=e.uid,i.type==`content`&&((i.unpinnable===t||i.unpinnable===!0)&&(i.unpinnable={unpinned:!1}),i.uid=i.uid||n.guid()),i.panes&&i.panes.length&&r._processPanes(i)})},_extendPane:function(e){let n=this;if(e.panes)for(var r=0;r<e.panes.length;r++)e.panes.forEach(e=>{n._extendPane(e)});a(e,{visible:e.visible===t?n.paneDefaults.visible:e.visible,closeable:e.closeable===t?n.paneDefaults.closeable:e.closeable,collapsed:e.collapsed===t?n.paneDefaults.collapsed:e.collapsed,size:e.size===t?n.paneDefaults.size:e.size,scrollable:!1})},_togglePane:function(e){let t=this;e.visible=!e.visible,t._refreshRootPane()},_removePane:function(e){let t=this,n=t._findPaneByUid(e.parentUid),r=n.panes.indexOf(e);t.panesContainer.find(`[${H}="${e.uid}"]`).parent(),n.panes.splice(r,1),t._refreshRootPane()},_refreshToolbar:function(){let t=this,r=t._unpinnedPanes(),i=e(`<div class="${_}"/>`).addClass(`k-dock-manager-unpinned-container`);if(t.unpinnedContainer||(t.unpinnedContainer=i,i.append(`<div class="k-splitbar k-splitbar-horizontal k-splitbar-draggable-horizontal" role="separator" aria-orientation="vertical" aria-keyshortcuts="ArrowLeft ArrowRight ArrowUp ArrowDown">
<div class="k-resize-handle" aria-hidden="true"></div>
</div>`),i.insertBefore(t.panesContainer)),!r.length){t._toolbar&&t._toolbar.remove(),t._toolbar=null;return}t._toolbar||=t.element.prepend(c).find(`.${s}`),t._toolbar.attr({role:`toolbar`,"aria-label":`Toolbar`}),t._toolbar.empty();for(let i=0;i<r.length;i++){let a=r[i],o=e(n.html.renderButton({fillMode:`flat`,size:`small`})).addClass(`k-toolbar-button`).append(z(t._paneHeader(a)));o.attr(H,a.uid),t._toolbar.append(o),i<r.length-1&&t._toolbar.append(`<div class="k-separator k-separator-horizontal"></div>`)}},destroy:function(){let e=this;r.fn.destroy.call(e),e.element.off(`.kendoDockManager`),e.element.empty(),n.destroy(e.wrapper)},refresh:function(){let e=this;n.destroy(e.unpinnedContainer),e.unpinnedContainer.empty(),e._refreshRootPane()},_refreshRootPane:function(){let e=this,t=e.element.find(`[${H}="${e.options.rootPane.uid}"]`);e._refreshPane(t,e.options.rootPane)},_createSplitPane:function(r,i){let a=this,o=e(`<div ref-dock-splitter/>`).attr(H,i.uid),s={orientation:i.orientation||h,panes:[]};if(!i.panes.some(e=>e.visible))return;r.append(o);let c=[];i.panes.forEach(n=>{let r={uid:n.uid,scrollable:!1},i=e(L).removeClass(l);if(n.unpinnable&&n.unpinnable.unpinned){a._createUnpinnedPane(n);return}n.size&&(r.size=n.size),n.visible!=t&&(r.visible=n.visible),n.visible&&(o.append(i),c.push(()=>a._createPane(i,n)),s.panes.push(r))}),o.addClass(`k-dock-manager-splitter`),i.splitter=new n.ui.Splitter(o,s),c.forEach(e=>e()),i.splitter.bind(X,a._updatePaneSize.bind(a)),i.splitter.bind(`resizing`,({pane:e})=>n.resize(e))},_updatePaneSize:function(e){let t=this;if(!e.leftPane&&!e.rightPane)return;let n=t._findPaneByUid(e.leftPane.uid),r=t._findPaneByUid(e.rightPane.uid);n.size=e.leftPane.size,r.size=e.rightPane.size,t.trigger(X,{ev:e,leftPane:n,rightPane:r})},_createTabPane:function(n,r){let i=this,a=e(`<div />`),o=e(`<ul/>`),s={animation:!1},c=r.selected===t||r.panes.indexOf(r.panes[r.selected])==-1||r.panes[r.selected].unpinnable.unpinned?0:r.selected;r.panes.some(e=>e.visible)&&(a.append(o),n.append(a),n.attr(H,r.uid),n.addClass(f),r.panes.forEach(t=>{let n=e(V(i._paneHeader(t))).attr(H,t.uid),r=e(`<div/>`);if(t.unpinnable&&t.unpinnable.unpinned){i._createUnpinnedPane(t);return}if(t.visible){let s=e(`<span class="k-item-actions"></span>`);n.append(s),i._addActions(s,t),o.append(n),a.append(r),i._createPane(r,t)}}),e(o.children()[c]).addClass(E),a.kendoTabStrip(s))},_createContentPane:function(t,r){let i=this,o=typeof r.content==`function`?n.template(r.content)({}):r.content,s=e(B(a({},r,{title:i._paneHeader(r),content:o}))),c=i._findPaneByUid(r.parentUid),f=r.unpinnable&&r.unpinnable.unpinned;if(c&&c.type===`tab`&&!f){t.append(o);return}t.addClass(f?d:u).removeClass(l).attr({[H]:r.uid,role:`group`}),i._addActions(s.find(`.${x}`),r),t.append(s)},_createUnpinnedPane:function(t){let n=this,r=e(L).removeClass(l);n.unpinnedContainer.find(R(t.uid)).length||(n.unpinnedContainer.prepend(r),n._createContentPane(r,t))},_addActions:function(r,i){let a=this,o=r.hasClass(x)?`xsmall`:t;a.actions.forEach(t=>{t.shouldAdd(i)&&r.append(e(n.html.renderButton(`<button aria-label="${te[t.name]||t.name}" title="${t.name}"></button>`,{fillMode:`flat`,icon:t.icon,size:o})).attr({[W]:t.name}))})},_createPane:function(e,t){let n=this;return t.id&&e.attr(`id`,t.id),n[`_create`+ne(t.type)+`Pane`](e,t)},_unpinnedPanes:function(e){let t=this,n=t.options,r=[];return e||=n.rootPane.panes,e.forEach(e=>{e.unpinnable&&e.unpinnable.unpinned&&r.push(e),e.panes&&e.panes.length&&(r=r.concat(t._unpinnedPanes(e.panes)))}),r},_paneHeader:function(e){let t=this._findPaneByUid(e.parentUid),r=t&&t.type===`tab`,i=e.header;return r&&e.tabHeader&&(i=e.tabHeader),i?n.template(i)(e):e.title||``},_findPaneByUid:function(e,t){let n=this,r;return t||=n.options.rootPane,t.uid===e?t:(t.panes.forEach(t=>{if(t.uid===e){r=t;return}if(t.panes&&t.panes.length){let i=n._findPaneByUid(e,t);if(i){r=i;return}}}),r)},_getPaneById:function(e,t,n){let r=this,i;return e[t]==n?e:(e.panes&&e.panes.forEach(e=>{let a=r._getPaneById(e,t,n);a&&(i=a)}),i)},_initNavigator:function(t){let r=this;r.navigatorDraggable=new n.ui.Draggable(r.element,{autoScroll:!0,filter:`.k-pane-header, .k-pane-tabbed .k-tabstrip-item`,hint:function(e){let t=e.is(`li.k-tabstrip-item`),n=e.closest(`.${y}`),i=r._findPaneByUid((t?e:n).attr(H)),a=t?r._getActionButtons(e):n.find(`.${x}`).html();return G({width:n.width(),height:n.height(),content:i.content,title:r._paneHeader(i),actions:a})},updateHint:function(t,n){let r={left:n.x.location+1,top:n.y.location+1};t.css(e.extend({},r,{zIndex:100010}))},dragstart:r._dragStart.bind(r),dragend:r._dragEnd.bind(r),drag:r._drag.bind(r)})},_dragStart:function(t){let n=this,r=e(t.currentTarget),i=r.closest(`.${y}`);n.draggedPane={width:i.width(),height:i.height(),pane:i,target:r},n._displayGlobalIndicators(),n.trigger(Q,{pane:n.draggedPane.pane,draggableEvent:t})},_dragEnd:function(e){let t=this,n=t.element.find(`.${S}:hover`),r={pane:t.draggedPane.pane,draggableEvent:e};n.length&&(t.navigatorDraggable.hint.hide(),t._updateLayout(n)),t.element.find(`.${S}`).remove(),t.element.find(`.${w}`).remove(),n.length||t._showHiddenPanes(),t.trigger($,r),t.hoveredPane=null,t.draggedPane=null},_drag:function(t){let n=this,r=e(t.elementUnderCursor).closest(`.${y}[${H}]`),i=n._findPaneByUid(r.attr(H)),a=e(ee),o=r.attr(H),s=n.hoveredPane&&n.hoveredPane.attr(H),c={pane:n.draggedPane.pane,draggableEvent:t},l=t.currentTarget.closest(`.${y}`).attr(H);if(n.trigger(Z,c)){t.preventDefault();return}o!==s&&(n.hoveredPane=r,n.element.find(`.${C}`).remove(),a.css({position:`absolute`,top:`50%`,left:`50%`,transform:`translate(-50%,-50%)`,"z-index":100008}),i&&i.dockable&&!i.dockable.innerDock&&a.css(`display`,`none`),o!==l&&r.append(a))},_showHiddenPanes:function(){let e=this;if(e.draggedPane.pane.is(`.${f}`))return e._showTab();e._showPane(e.draggedPane.pane)},_showTab:function(e){if(e===t)return;let n=e.closest(`.${D}`).data(`kendoTabStrip`);e.show(),n.activateTab(e)},_showPane:function(e){let t=e.siblings(`.${m}:hidden`);e.show(),t.show()},_hideDraggedPane:function(e){let t=this;if(e.is(`li.k-tabstrip-item`))return t._hideTab(e);t._hidePane(e)},_hidePane:function(e){let t=e.closest(`.${y}`),n=t.prev(),r=t.next();if(t.hide(),n.is(`.${m}`))return n.hide();r.hide()},_hideTab:function(e){let t=e.is(`.${E}`),n=e.closest(`.${D}`).data(`kendoTabStrip`);e.hide(),t&&n.activateTab(`.k-tabstrip-item:visible:first`)},_getActionButtons:function(t){let n=t.find(`button`),r=e(`<div/>`);return n.each((t,n)=>r.append(e(n).clone())),r.html()},_displayGlobalIndicators:function(){let t=this;t.indicators.forEach(n=>{let r=e(K);n.name!==`middle`&&(t.element.append(r),r.css({position:`absolute`,"z-index":`100002`,top:n.top,left:n.left,transform:`${n.transform} rotate(${n.rotate})`}),r.attr(U,n.name))})},_displayDockPreview:function(t){let r=this,i=e(t.currentTarget),a=!i.parent().is(`.${C}`),o=i.attr(U),s=i.attr(H),c=r.indicators.filter(e=>e.name===o)[0],l=e(`<div class="${w}"/>`),u=a?r.panesContainer:r.hoveredPane,d=r._toolbar?r._toolbar.outerWidth():0,f=u.outerWidth(),p=u.outerHeight(),m=s&&u.find(`.${w}[${H}="${s}"]`),h=n.guid(),g=r.draggedPane.width,_=r.draggedPane.height;if(m&&m.length)return m.show();o===P&&(g=f,_=p),(o===`top`||o===j)&&(_>p/2&&(_=p/2),g=f),(o===M||o===N)&&(g>f/2&&(g=f/2),_=p);let v={position:`absolute`,"z-index":1e5,top:c.previewTop(p,_),left:c.previewLeft(f,g)+(a?d:0),width:g,height:_};l.css(v),l.attr(U,c.name).attr(H,h),i.attr(H,h),u.append(l),r.draggedPane.preview={width:g,height:_},r.draggedPane.container={width:f,height:p}},_hideDockPreview:function(){this.element.find(`.${w}`).hide()},_updateLayout:function(e){let t=this,n=t.draggedPane.target.is(`li.k-tabstrip-item`),r=!e.parent().is(`.${C}`),i=n?t.draggedPane.target:t.draggedPane.pane,a=t._findPaneByUid(t.hoveredPane.attr(H)),o=t._findPaneByUid(i.attr(H)),s=e.attr(U),c=t._findPaneByUid(o.parentUid),l=c.panes.indexOf(o),u=t.element.find(`[${H}="${t.options.rootPane.uid}"]`);c.panes.splice(l,1),s==P?t._tabDock(a,o):t._splitDock(a,o,s,r),t._processPanes(t.options.rootPane),t._adjustSiblingSizes(o,s,r),t._refreshPane(u,t.options.rootPane),s==P?t.trigger(Y,{pane:o,paneElement:i}):t.trigger(J,{pane:o,paneElement:i})},_splitDock:function(e,t,n,r){let i=this,a=r?i.options.rootPane:i._findPaneByUid(e.parentUid),o=a.panes.indexOf(e),s=n===`top`||n===M?I:`push`,c=o+(s===I?0:1),l=n===`top`||n===j?g:h,u=n===`top`||n===j?k:A,d={type:O,orientation:l,panes:[]};if(t.size=`${i.draggedPane.preview[u]}px`,r){d.panes.push(a),n===`top`||n===M?d.panes.unshift(t):d.panes.push(t),i.options.rootPane=d;return}if((n===`top`||n===j)&&a.orientation===g||(n===M||n===N)&&a.orientation===h)return a.panes.splice(c,0,t);e&&(d.size=e.size,e.size=null),a.panes.splice(o,1),d.panes.push(e),d.panes[s](t),a.panes.splice(o,0,d)},_tabDock:function(e,t){let n=this._findPaneByUid(e.parentUid),r=n.panes.indexOf(e),i={type:`tab`,panes:[e,t]};if(e.type===`tab`){e.panes.push(t);return}n.panes.splice(r,1),n.panes.splice(r,0,i)},_adjustSiblingSizes:function(e,t,n){let r=this,i=r._getSiblings(e),a=t===`top`||t===j?k:A,o=r.draggedPane.container[a],s=o-r.draggedPane[a],c=[],l=s;if(t!==P){if(i.length===2){i[0].size=null;return}i.forEach(t=>{if(t.uid!==e.uid){if(!t.size){c.push(t);return}t.size=r._calculateNewSize(o,s,t.size),l-=t.size}}),c.forEach(e=>{e.size=l/c.length})}},_calculateNewSize:function(e,t,n){let r=t/e,i=`px`,a;return re(n)&&(i=`%`),typeof n==`string`&&(a=+n.replace(i,``)),`${a*r}${i}`},_getSiblings:function(e){return this._findPaneByUid(e.parentUid).panes.filter(t=>t.visible!==!1&&t.uid!==e.uid&&t.unpinnable&&t.unpinnable.unpinned!==!0)}});i.plugin(ie)})(window.kendo.jQuery);var l=kendo;e.__meta__=c,e.default=l});
//# sourceMappingURL=kendo.dockmanager.min.js.map