{"version":3,"file":"kendo.splitter.min.js","names":["factory","define","amd","$","undefined$1","kendo","window","ui","keys","extend","Widget","pxUnitsRegex","percentageUnitsRegex","NS","EXPAND","COLLAPSE","CONTENTLOAD","ERROR","LAYOUTCHANGE","HORIZONTAL","VERTICAL","CLICK","PANE","FOCUSED","KPANE","PANECLASS","isPercentageSize","size","test","isPixelSize","isFluid","calculateSize","total","output","parseInt","Math","floor","panePropertyAccessor","propertyName","triggersResize","pane","value","paneConfig","this","element","find","data","arguments","length","splitter","options","name","resize","Splitter","init","isHorizontal","that","fn","call","wrapper","orientation","toLowerCase","_dimension","_keys","decrease","LEFT","UP","increase","RIGHT","DOWN","_resizeStep","_marker","guid","substring","_initPanes","resizing","PaneResizing","triggerHandler","events","_addOverlays","_panes","append","_removeOverlays","children","remove","_attachEvents","on","_keydown","bind","e","currentTarget","focus","addClass","removeClass","end","_togglePane","_arrowClick","document","_detachEvents","off","panes","destroy","key","keyCode","target","navigationKeys","ctrlKey","isResizing","_triggerAction","move","preventDefault","HOME","prev","collapse","END","expand","ENTER","panesConfig","each","i","nodeName","_initPane","config","attr","toggleClass","scrollable","ajaxRequest","url","contentUrl","isLocalUrl","jQuery","ajax","type","dataType","success","angular","elements","get","html","trigger","error","xhr","status","shouldExecute","collapsed","collapsible","arrow","closest","is","next","arrowType","parent","_updateSplitBar","splitbar","previousPane","nextPane","previousPaneEl","catIconIf","iconType","condition","draggable","resizable","prevCollapsible","prevCollapsed","nextCollapsible","nextCollapsed","previousPaneId","labelId","label","removeAttr","_updateSplitBars","prevAll","first","nextAll","_removeSplitBars","_resetAriaValueNow","splitBars","panesSizes","valueNow","joinDimension","round","setAttribute","_resize","splitBarsCount","sizingProperty","totalSize","slice","after","sizedPanesWidth","freeSizedPanes","css","position","top","collapsedSize","add","push","freeSizePanesCount","freeSizePaneWidth","eq","forEach","sum","alternateSizingProperty","positioningProperty","sizingDomProperty","lastNonCollapsedPane","filter","last","child","tagName","style","toggle","_addPane","idx","paneElement","splice","appendTo","insertBefore","referencePane","index","insertAfter","min","max","plugin","verticalDefaults","mousePositioningProperty","horizontalDefaults","owner","_element","_resizable","Resizable","handle","hint","_createHint","start","_start","_max","_min","invalidClass","resizeend","_stop","prototype","press","delta","pressed","previousPaneConfig","nextPaneConfig","prevBoundary","nextBoundary","toPx","val","prevMinSize","prevMaxSize","nextMinSize","nextMaxSize","_maxPosition","_minPosition","ESC","ghostPosition","previousPaneNewSize","nextPaneNewSize","fluidPanesCount"],"sources":["kendo.splitter.js"],"mappings":"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","sourcesContent":["(function (factory) {\n typeof define === 'function' && define.amd ? define(['kendo.resizable'], factory) :\n factory();\n})((function () {\n var __meta__ = {\n id: \"splitter\",\n name: \"Splitter\",\n category: \"web\",\n description: \"The Splitter widget provides an easy way to create a dynamic layout of resizable and collapsible panes.\",\n depends: [ \"resizable\" ]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n ui = kendo.ui,\n keys = kendo.keys,\n extend = $.extend,\n Widget = ui.Widget,\n pxUnitsRegex = /^\\d+(\\.\\d+)?px$/i,\n percentageUnitsRegex = /^\\d+(\\.\\d+)?%$/i,\n NS = \".kendoSplitter\",\n EXPAND = \"expand\",\n COLLAPSE = \"collapse\",\n CONTENTLOAD = \"contentLoad\",\n ERROR = \"error\",\n RESIZE = \"resize\",\n LAYOUTCHANGE = \"layoutChange\",\n HORIZONTAL = \"horizontal\",\n VERTICAL = \"vertical\",\n MOUSEENTER = \"mouseenter\",\n CLICK = \"click\",\n PANE = \"pane\",\n MOUSELEAVE = \"mouseleave\",\n FOCUSED = \"k-focus\",\n KPANE = \"k-\" + PANE,\n PANECLASS = \".\" + KPANE,\n TABINDEX = \"tabindex\",\n ARIA_VALUEMIN = \"aria-valuemin\",\n ARIA_VALUEMAX = \"aria-valuemax\",\n ARIA_VALUENOW = \"aria-valuenow\",\n ARIA_CONTROLS = \"aria-controls\",\n ARIA_LABEL = \"aria-label\",\n ARIA_LABELLEDBY = \"aria-labelledby\",\n ARIA_ORIENTATION = \"aria-orientation\";\n\n function isPercentageSize(size) {\n return percentageUnitsRegex.test(size);\n }\n\n function isPixelSize(size) {\n return pxUnitsRegex.test(size) || /^\\d+$/.test(size);\n }\n\n function isFluid(size) {\n return !isPercentageSize(size) && !isPixelSize(size);\n }\n\n function calculateSize(size, total) {\n var output = parseInt(size, 10);\n\n if (isPercentageSize(size)) {\n output = Math.floor(output * total / 100);\n }\n\n return output;\n }\n\n function panePropertyAccessor(propertyName, triggersResize) {\n return function(pane, value) {\n var paneConfig = this.element.find(pane).data(PANE);\n\n if (arguments.length == 1) {\n return paneConfig[propertyName];\n }\n\n paneConfig[propertyName] = value;\n\n if (triggersResize) {\n var splitter = this.element.data(\"kendo\" + this.options.name);\n splitter.resize(true);\n }\n };\n }\n\n var Splitter = Widget.extend({\n init: function(element, options) {\n var that = this,\n isHorizontal;\n\n Widget.fn.init.call(that, element, options);\n\n that.wrapper = that.element;\n\n if (that.options.orientation) {\n isHorizontal = that.options.orientation.toLowerCase() != VERTICAL;\n }\n\n that.orientation = isHorizontal ? HORIZONTAL : VERTICAL;\n that._dimension = isHorizontal ? \"width\" : \"height\";\n that._keys = {\n decrease: isHorizontal ? keys.LEFT : keys.UP,\n increase: isHorizontal ? keys.RIGHT : keys.DOWN\n };\n\n that._resizeStep = 10;\n\n that._marker = kendo.guid().substring(0, 8);\n\n that._initPanes();\n\n that.resizing = new PaneResizing(that);\n\n that.element.triggerHandler(\"init\" + NS);\n },\n events: [\n EXPAND,\n COLLAPSE,\n CONTENTLOAD,\n ERROR,\n RESIZE,\n LAYOUTCHANGE\n ],\n\n _addOverlays: function() {\n this._panes().append(\"
\");\n },\n\n _removeOverlays: function() {\n this._panes().children(\".k-splitter-overlay\").remove();\n },\n\n _attachEvents: function() {\n var that = this,\n orientation = that.options.orientation;\n\n // do not use delegated events to increase performance of nested elements\n that.element\n .children(\".k-splitbar-draggable-\" + orientation)\n .on(\"keydown\" + NS, that._keydown.bind(that))\n .on(\"mousedown\" + NS, function(e) { e.currentTarget.focus(); })\n .on(\"focus\" + NS, function(e) { $(e.currentTarget).addClass(FOCUSED); })\n .on(\"blur\" + NS, function(e) { $(e.currentTarget).removeClass(FOCUSED);\n if (that.resizing) {\n that.resizing.end();\n }\n })\n .on(MOUSEENTER + NS, function() { $(this).addClass(\"k-splitbar-\" + that.orientation + \"-hover\"); })\n .on(MOUSELEAVE + NS, function() { $(this).removeClass(\"k-splitbar-\" + that.orientation + \"-hover\"); })\n .on(\"mousedown\" + NS, that._addOverlays.bind(that))\n .end()\n .children(\".k-splitbar\")\n .on(\"dblclick\" + NS, that._togglePane.bind(that))\n .children(\".k-collapse-next, .k-collapse-prev\").on(CLICK + NS, that._arrowClick(COLLAPSE)).end()\n .children(\".k-expand-next, .k-expand-prev\").on(CLICK + NS, that._arrowClick(EXPAND)).end()\n .end();\n\n $(window).on(\"resize\" + NS + that._marker, that.resize.bind(that, false));\n $(document).on(\"mouseup\" + NS + that._marker, that._removeOverlays.bind(that));\n },\n\n _detachEvents: function() {\n var that = this;\n\n that.element\n .children(\".k-splitbar-draggable-\" + that.orientation).off(NS).end()\n .children(\".k-splitbar\").off(\"dblclick\" + NS)\n .children(\".k-collapse-next, .k-collapse-prev, .k-expand-next, .k-expand-prev\").off(NS);\n\n $(window).off(NS + that._marker);\n $(document).off(NS + that._marker);\n },\n\n options: {\n name: \"Splitter\",\n orientation: HORIZONTAL,\n panes: []\n },\n\n destroy: function() {\n Widget.fn.destroy.call(this);\n\n this._detachEvents();\n\n if (this.resizing) {\n this.resizing.destroy();\n }\n\n kendo.destroy(this.element);\n\n this.wrapper = this.element = null;\n },\n\n _keydown: function(e) {\n var that = this,\n key = e.keyCode,\n resizing = that.resizing,\n target = $(e.currentTarget),\n navigationKeys = that._keys,\n increase = key === navigationKeys.increase,\n decrease = key === navigationKeys.decrease,\n pane;\n\n if (increase || decrease) {\n if (e.ctrlKey) {\n pane = target[decrease ? \"next\" : \"prev\"]();\n\n if (resizing && resizing.isResizing()) {\n resizing.end();\n }\n\n if (!pane[that._dimension]()) {\n that._triggerAction(EXPAND, pane);\n } else {\n that._triggerAction(COLLAPSE, target[decrease ? \"prev\" : \"next\"]());\n }\n } else if (resizing) {\n resizing.move((decrease ? -1 : 1) * that._resizeStep, target);\n }\n e.preventDefault();\n } else if (key === keys.HOME) {\n pane = target.prev();\n that.collapse(pane);\n e.preventDefault();\n } else if (key === keys.END) {\n pane = target.prev();\n that.expand(pane);\n e.preventDefault();\n } else if (key === keys.ENTER && resizing) {\n resizing.end();\n e.preventDefault();\n }\n },\n\n _initPanes: function() {\n var panesConfig = this.options.panes || [];\n var that = this;\n\n this.element\n .addClass(\"k-widget\").addClass(\"k-splitter\")\n .children()\n .each(function(i, pane) {\n if (pane.nodeName.toLowerCase() != \"script\") {\n that._initPane(pane, panesConfig[i]);\n }\n });\n\n this.resize();\n },\n\n _initPane: function(pane, config) {\n pane = $(pane)\n .attr(\"role\", \"group\")\n .addClass(KPANE);\n\n pane.data(PANE, config ? config : {})\n .toggleClass(\"k-scrollable\", config ? config.scrollable !== false : true);\n\n this.ajaxRequest(pane);\n },\n\n ajaxRequest: function(pane, url, data) {\n var that = this,\n paneConfig;\n\n pane = that.element.find(pane);\n paneConfig = pane.data(PANE);\n\n url = url || paneConfig.contentUrl;\n\n if (url) {\n pane.append(\"\");\n\n if (kendo.isLocalUrl(url)) {\n jQuery.ajax({\n url: url,\n data: data || {},\n type: \"GET\",\n dataType: \"html\",\n success: function(data) {\n that.angular(\"cleanup\", function() { return { elements: pane.get() }; });\n pane.html(data);\n that.angular(\"compile\", function() { return { elements: pane.get() }; });\n\n that.trigger(CONTENTLOAD, { pane: pane[0] });\n },\n error: function(xhr, status) {\n that.trigger(ERROR, {\n pane: pane[0],\n status: status,\n xhr: xhr\n });\n }\n });\n } else {\n pane.removeClass(\"k-scrollable\")\n .html(\"\");\n }\n }\n },\n\n _triggerAction: function(type, pane) {\n var paneConfig = pane.data(PANE);\n var shouldExecute = (paneConfig.collapsed && type == EXPAND) || (!paneConfig.collapsed && type == COLLAPSE);\n\n if (!paneConfig.collapsible) {\n return;\n }\n\n if (shouldExecute && !this.trigger(type, { pane: pane[0] })) {\n this[type](pane[0]);\n }\n },\n\n _togglePane: function(e) {\n var that = this,\n target = $(e.target),\n arrow;\n\n if (target.closest(\".k-splitter\")[0] != that.element[0]) {\n return;\n }\n\n arrow = target.children(\".k-icon:not(.k-resize-handle)\");\n\n if (arrow.length !== 1) {\n return;\n }\n\n if (arrow.is(\".k-collapse-prev\")) {\n that._triggerAction(COLLAPSE, target.prev());\n } else if (arrow.is(\".k-collapse-next\")) {\n that._triggerAction(COLLAPSE, target.next());\n } else if (arrow.is(\".k-expand-prev\")) {\n that._triggerAction(EXPAND, target.prev());\n } else if (arrow.is(\".k-expand-next\")) {\n that._triggerAction(EXPAND, target.next());\n }\n },\n _arrowClick: function(arrowType) {\n var that = this;\n\n return function(e) {\n var target = $(e.target),\n pane;\n\n if (target.closest(\".k-splitter\")[0] != that.element[0]) {\n return;\n }\n\n if (target.is(\".k-\" + arrowType + \"-prev\")) {\n pane = target.parent().prev();\n } else {\n pane = target.parent().next();\n }\n that._triggerAction(arrowType, pane);\n };\n },\n _updateSplitBar: function(splitbar, previousPane, nextPane, previousPaneEl) {\n var catIconIf = function(iconType, condition) {\n return condition ? \"\" : \"\";\n },\n orientation = this.orientation,\n draggable = (previousPane.resizable !== false) && (nextPane.resizable !== false),\n prevCollapsible = previousPane.collapsible,\n prevCollapsed = previousPane.collapsed,\n nextCollapsible = nextPane.collapsible,\n nextCollapsed = nextPane.collapsed,\n previousPaneId = previousPaneEl.attr(\"id\");\n\n if (!previousPaneId) {\n previousPaneId = kendo.guid();\n previousPaneEl.attr(\"id\", previousPaneId);\n }\n\n splitbar.addClass(\"k-splitbar k-splitbar-\" + orientation)\n .attr(\"role\", \"separator\")\n .attr(ARIA_VALUEMIN, \"0\")\n .attr(ARIA_VALUEMAX, \"100\")\n .attr(ARIA_CONTROLS, previousPaneId)\n .removeClass(\"k-splitbar-\" + orientation + \"-hover\")\n .toggleClass(\"k-splitbar-draggable-\" + orientation,\n draggable && !prevCollapsed && !nextCollapsed)\n .toggleClass(\"k-splitbar-static-\" + orientation,\n !draggable && !prevCollapsible && !nextCollapsible)\n .html(\n catIconIf(\"k-collapse-prev k-i-arrow-60-up\", prevCollapsible && !prevCollapsed && !nextCollapsed && orientation == VERTICAL) +\n catIconIf(\"k-collapse-prev k-i-arrow-60-left\", prevCollapsible && !prevCollapsed && !nextCollapsed && orientation == HORIZONTAL) +\n catIconIf(\"k-expand-prev k-i-arrow-60-down\", prevCollapsible && prevCollapsed && !nextCollapsed && orientation == VERTICAL) +\n catIconIf(\"k-expand-prev k-i-arrow-60-right\", prevCollapsible && prevCollapsed && !nextCollapsed && orientation == HORIZONTAL) +\n catIconIf(\"k-resize-handle k-i-hbar\", draggable && orientation == VERTICAL) +\n catIconIf(\"k-resize-handle k-i-vbar\", draggable && orientation == HORIZONTAL) +\n catIconIf(\"k-collapse-next k-i-arrow-60-down\", nextCollapsible && !nextCollapsed && !prevCollapsed && orientation == VERTICAL) +\n catIconIf(\"k-collapse-next k-i-arrow-60-right\", nextCollapsible && !nextCollapsed && !prevCollapsed && orientation == HORIZONTAL) +\n catIconIf(\"k-expand-next k-i-arrow-60-up\", nextCollapsible && nextCollapsed && !prevCollapsed && orientation == VERTICAL) +\n catIconIf(\"k-expand-next k-i-arrow-60-left\", nextCollapsible && nextCollapsed && !prevCollapsed && orientation == HORIZONTAL)\n );\n\n if (previousPane.labelId) {\n splitbar.attr(ARIA_LABELLEDBY, previousPane.labelId);\n } else if (previousPane.label) {\n splitbar.attr(ARIA_LABEL, previousPane.label);\n }\n\n if (orientation == HORIZONTAL) {\n splitbar.attr(ARIA_ORIENTATION, VERTICAL);\n }\n\n if (!draggable && !prevCollapsible && !nextCollapsible) {\n splitbar.removeAttr(TABINDEX);\n }\n },\n _updateSplitBars: function() {\n var that = this;\n\n this.element.children(\".k-splitbar\").each(function() {\n var splitbar = $(this),\n previousPaneEl = splitbar.prevAll(PANECLASS).first(),\n previousPane = previousPaneEl.data(PANE),\n nextPane = splitbar.nextAll(PANECLASS).first().data(PANE);\n\n if (!nextPane) {\n return;\n }\n\n that._updateSplitBar(splitbar, previousPane, nextPane, previousPaneEl);\n });\n },\n _removeSplitBars: function() {\n this.element.children(\".k-splitbar\").remove();\n },\n _panes: function() {\n if (!this.element) {\n return $();\n }\n return this.element.children(PANECLASS);\n },\n\n _resetAriaValueNow: function(splitBars, panesSizes) {\n var i, splitbar, valueNow, joinDimension;\n\n for (i = 0; i < splitBars.length; i++) {\n joinDimension = (panesSizes[i] + panesSizes[i + 1]) || 1;\n valueNow = Math.round(panesSizes[i] / joinDimension * 100);\n splitbar = splitBars[i];\n splitbar.setAttribute(ARIA_VALUENOW, valueNow);\n }\n },\n\n _resize: function() {\n var that = this,\n element = that.element,\n panes = element.children(PANECLASS),\n isHorizontal = that.orientation == HORIZONTAL,\n splitBars = element.children(\".k-splitbar\"),\n splitBarsCount = splitBars.length,\n sizingProperty = isHorizontal ? \"width\" : \"height\",\n totalSize = element[sizingProperty](),\n panesSizes = [];\n\n that.wrapper.addClass(\"k-splitter-resizing\");\n\n if (splitBarsCount === 0) {\n splitBarsCount = panes.length - 1;\n panes.slice(0, splitBarsCount)\n .after(\"\");\n\n that._updateSplitBars();\n splitBars = element.children(\".k-splitbar\");\n } else {\n that._updateSplitBars();\n }\n\n // discard splitbar sizes from total size\n splitBars.each(function() {\n totalSize -= this[isHorizontal ? \"offsetWidth\" : \"offsetHeight\"];\n });\n\n var sizedPanesWidth = 0,\n sizedPanesCount = 0,\n freeSizedPanes = $();\n\n panes.css({ position: \"absolute\", top: 0 })\n [sizingProperty](function() {\n var element = $(this),\n config = element.data(PANE) || {}, size;\n\n element.removeClass(\"k-collapsed\");\n if (config.collapsed) {\n size = config.collapsedSize ? calculateSize(config.collapsedSize, totalSize) : 0;\n element.css(\"overflow\", \"hidden\").addClass(\"k-collapsed\");\n } else if (isFluid(config.size)) {\n freeSizedPanes = freeSizedPanes.add(this);\n panesSizes.push(false);\n return;\n } else { // sized in px/%, not collapsed\n size = calculateSize(config.size, totalSize);\n }\n\n sizedPanesCount++;\n sizedPanesWidth += size;\n panesSizes.push(size);\n\n return size;\n });\n\n totalSize -= sizedPanesWidth;\n\n var freeSizePanesCount = freeSizedPanes.length,\n freeSizePaneWidth = Math.floor(totalSize / freeSizePanesCount);\n\n freeSizedPanes\n .slice(0, freeSizePanesCount - 1)\n .css(sizingProperty, freeSizePaneWidth)\n .end()\n .eq(freeSizePanesCount - 1)\n .css(sizingProperty, totalSize - (freeSizePanesCount - 1) * freeSizePaneWidth);\n\n panesSizes.forEach(function(size, i) {\n if (size === false) {\n panesSizes[i] = freeSizePaneWidth;\n }\n });\n\n that._resetAriaValueNow(splitBars, panesSizes);\n\n // arrange panes\n var sum = 0,\n alternateSizingProperty = isHorizontal ? \"height\" : \"width\",\n positioningProperty = isHorizontal ? \"left\" : \"top\",\n sizingDomProperty = isHorizontal ? \"offsetWidth\" : \"offsetHeight\";\n\n if (freeSizePanesCount === 0) {\n var lastNonCollapsedPane = panes.filter(function() {\n return !(($(this).data(PANE) || {}).collapsed);\n }).last();\n\n lastNonCollapsedPane[sizingProperty](totalSize + lastNonCollapsedPane[0][sizingDomProperty]);\n }\n\n element.children()\n .css(alternateSizingProperty, element[alternateSizingProperty]())\n .each(function(i, child) {\n if (child.tagName.toLowerCase() != \"script\") {\n child.style[positioningProperty] = Math.floor(sum) + \"px\";\n sum += child[sizingDomProperty];\n }\n });\n\n that._detachEvents();\n that._attachEvents();\n\n that.wrapper.removeClass(\"k-splitter-resizing\");\n\n kendo.resize(panes);\n that.trigger(LAYOUTCHANGE);\n },\n\n toggle: function(pane, expand) {\n var that = this,\n paneConfig;\n\n pane = that.element.find(pane);\n paneConfig = pane.data(PANE);\n\n if (!expand && !paneConfig.collapsible) {\n return;\n }\n\n if (arguments.length == 1) {\n expand = paneConfig.collapsed === undefined$1 ? false : paneConfig.collapsed;\n }\n\n paneConfig.collapsed = !expand;\n\n if (paneConfig.collapsed) {\n pane.css(\"overflow\", \"hidden\");\n } else {\n pane.css(\"overflow\", \"\");\n }\n\n that.resize(true);\n },\n\n collapse: function(pane) {\n this.toggle(pane, false);\n },\n\n expand: function(pane) {\n this.toggle(pane, true);\n },\n\n _addPane: function(config, idx, paneElement) {\n var that = this;\n\n if (paneElement.length) {\n that.options.panes.splice(idx, 0, config);\n that._initPane(paneElement, config);\n\n that._removeSplitBars();\n\n that.resize(true);\n }\n\n return paneElement;\n },\n\n append: function(config) {\n config = config || {};\n\n var that = this,\n paneElement = $(\"\").appendTo(that.element);\n\n return that._addPane(config, that.options.panes.length, paneElement);\n },\n\n insertBefore: function(config, referencePane) {\n referencePane = $(referencePane);\n config = config || {};\n\n var that = this,\n idx = that.wrapper.children(\".k-pane\").index(referencePane),\n paneElement = $(\"\").insertBefore($(referencePane));\n\n return that._addPane(config, idx, paneElement);\n },\n\n insertAfter: function(config, referencePane) {\n referencePane = $(referencePane);\n config = config || {};\n\n var that = this,\n idx = that.wrapper.children(\".k-pane\").index(referencePane),\n paneElement = $(\"\").insertAfter($(referencePane));\n\n return that._addPane(config, idx + 1, paneElement);\n },\n\n remove: function(pane) {\n var that = this;\n pane = that.wrapper.find(pane);\n\n if (pane.length) {\n kendo.destroy(pane);\n pane.each(function(idx, element) {\n that.options.panes.splice(that.wrapper.children(\".k-pane\").index(element), 1);\n $(element).remove();\n });\n\n that._removeSplitBars();\n\n if (that.options.panes.length) {\n that.resize(true);\n }\n }\n\n return that;\n },\n\n size: panePropertyAccessor(\"size\", true),\n\n min: panePropertyAccessor(\"min\"),\n\n max: panePropertyAccessor(\"max\")\n });\n\n ui.plugin(Splitter);\n\n var verticalDefaults = {\n sizingProperty: \"height\",\n sizingDomProperty: \"offsetHeight\",\n alternateSizingProperty: \"width\",\n positioningProperty: \"top\",\n mousePositioningProperty: \"pageY\"\n };\n\n var horizontalDefaults = {\n sizingProperty: \"width\",\n sizingDomProperty: \"offsetWidth\",\n alternateSizingProperty: \"height\",\n positioningProperty: \"left\",\n mousePositioningProperty: \"pageX\"\n };\n\n function PaneResizing(splitter) {\n var that = this,\n orientation = splitter.orientation;\n\n that.owner = splitter;\n that._element = splitter.element;\n that.orientation = orientation;\n\n extend(that, orientation === HORIZONTAL ? horizontalDefaults : verticalDefaults);\n\n that._resizable = new kendo.ui.Resizable(splitter.element, {\n orientation: orientation,\n handle: \".k-splitbar-draggable-\" + orientation + \"[data-marker=\" + splitter._marker + \"]\",\n hint: that._createHint.bind(that),\n start: that._start.bind(that),\n max: that._max.bind(that),\n min: that._min.bind(that),\n invalidClass: \"k-restricted-size-\" + orientation,\n resizeend: that._stop.bind(that)\n });\n }\n\n PaneResizing.prototype = {\n press: function(target) {\n this._resizable.press(target);\n },\n\n move: function(delta, target) {\n if (!this.pressed) {\n this.press(target);\n this.pressed = true;\n }\n\n if (!this._resizable.target) {\n this._resizable.press(target);\n }\n\n this._resizable.move(delta);\n },\n\n end: function() {\n this._resizable.end();\n this.pressed = false;\n },\n\n destroy: function() {\n this._resizable.destroy();\n this._resizable = this._element = this.owner = null;\n },\n\n isResizing: function() {\n return this._resizable.resizing;\n },\n\n _createHint: function(handle) {\n var that = this;\n return $(\"\")\n .css(that.alternateSizingProperty, handle[that.alternateSizingProperty]());\n },\n\n _start: function(e) {\n var that = this,\n splitbar = $(e.currentTarget),\n previousPane = splitbar.prev(),\n nextPane = splitbar.next(),\n previousPaneConfig = previousPane.data(PANE),\n nextPaneConfig = nextPane.data(PANE),\n prevBoundary = parseInt(previousPane[0].style[that.positioningProperty], 10),\n nextBoundary = parseInt(nextPane[0].style[that.positioningProperty], 10) + nextPane[0][that.sizingDomProperty] - splitbar[0][that.sizingDomProperty],\n totalSize = parseInt(that._element.css(that.sizingProperty), 10),\n toPx = function(value) {\n var val = parseInt(value, 10);\n return (isPixelSize(value) ? val : (totalSize * val) / 100) || 0;\n },\n prevMinSize = toPx(previousPaneConfig.min),\n prevMaxSize = toPx(previousPaneConfig.max) || nextBoundary - prevBoundary,\n nextMinSize = toPx(nextPaneConfig.min),\n nextMaxSize = toPx(nextPaneConfig.max) || nextBoundary - prevBoundary;\n\n that.previousPane = previousPane;\n that.nextPane = nextPane;\n that._maxPosition = Math.min(nextBoundary - nextMinSize, prevBoundary + prevMaxSize);\n that._minPosition = Math.max(prevBoundary + prevMinSize, nextBoundary - nextMaxSize);\n },\n _max: function() {\n return this._maxPosition;\n },\n _min: function() {\n return this._minPosition;\n },\n _stop: function(e) {\n var that = this,\n splitbar = $(e.currentTarget),\n owner = that.owner;\n\n owner._panes().children(\".k-splitter-overlay\").remove();\n\n if (e.keyCode !== kendo.keys.ESC) {\n var ghostPosition = e.position,\n previousPane = splitbar.prev(),\n nextPane = splitbar.next(),\n previousPaneConfig = previousPane.data(PANE),\n nextPaneConfig = nextPane.data(PANE),\n previousPaneNewSize = ghostPosition - parseInt(previousPane[0].style[that.positioningProperty], 10),\n nextPaneNewSize = parseInt(nextPane[0].style[that.positioningProperty], 10) + nextPane[0][that.sizingDomProperty] - ghostPosition - splitbar[0][that.sizingDomProperty],\n fluidPanesCount = that._element.children(PANECLASS).filter(function() { return isFluid($(this).data(PANE).size); }).length;\n\n if (!isFluid(previousPaneConfig.size) || fluidPanesCount > 1) {\n if (isFluid(previousPaneConfig.size)) {\n fluidPanesCount--;\n }\n\n previousPaneConfig.size = previousPaneNewSize + \"px\";\n }\n\n if (!isFluid(nextPaneConfig.size) || fluidPanesCount > 1) {\n nextPaneConfig.size = nextPaneNewSize + \"px\";\n }\n\n owner.resize(true);\n }\n\n return false;\n }\n };\n\n })(window.kendo.jQuery);\n\n}));\n"]}