{"version":3,"file":"kendo.popup.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendopopup","js","this","$","undefined$1","kendo","window","ui","Widget","Class","support","getOffset","outerWidth","_outerWidth","outerHeight","_outerHeight","OPEN","CLOSE","DEACTIVATE","ACTIVATE","CENTER","LEFT","RIGHT","TOP","BOTTOM","ABSOLUTE","HIDDEN","BODY","LOCATION","POSITION","VISIBLE","EFFECTS","ACTIVE","ACTIVECHILDREN","DOCUMENT_ELEMENT","document","documentElement","WINDOW","SCROLL","TRANSFORM","transitions","css","extend","NS","styles","contains","container","target","Popup","init","element","options","parentPopup","that","isRtl","origin","position","fn","call","collisions","collision","split","downEvent","applyEventMap","guid","length","push","anchor","closest","filter","appendTo","body","hide","addClass","toggleClass","attr","on","_hovered","e","list","find","scrollArea","parent","is","scrollTop","originalEvent","deltaY","prop","preventDefault","wrapper","animation","open","effects","close","complete","_activated","_trigger","_animationClose","_mousedownProxy","_mousedown","mobileOS","android","_resizeProxy","setTimeout","_resize","toggleTarget","toggleEvent","toggle","bind","events","name","viewport","copyAnchorStyles","autosize","autowidth","modal","adjustSize","width","height","transition","duration","omitOriginOffsets","location","data","_hideActiveClass","_closing","destroy","off","_toggleResize","children","removeData","remove","x","y","fixed","isFixed","isNaN","parseInt","shouldCorrectWidth","_shouldCorrectWidth","mobile","hasClass","listbox","visible","shift","getComputedStyles","wrap","_resizeOnWrap","overflow","display","flipped","_position","_openAnimation","_addActiveClass","show","kendoStop","kendoAnimate","_location","offset","left","top","parseEffects","removeClass","skipEffects","openEffects","closeEffects","each","popup","size","reverse","ev","trigger","type","resize","indexOf","clearTimeout","_resizeTimeout","method","eventNames","ios","browser","safari","scrollableParents","_scrollableParents","eventTarget","_fit","viewPortSize","output","_flip","anchorSize","boxSize","parentsUntil","index","isScrollable","siblingContainer","parents","parentZIndex","viewportOffset","viewportWidth","viewportHeight","zoomLevel","isWindow","innerWidth","origins","toLowerCase","positions","zIndex","idx","docEl","pageYOffset","pageXOffset","scrollLeft","innerHeight","scrollHeight","clientHeight","scrollbar","siblings","Math","max","Number","_align","pos","offsetParent","offsets","flipPos","elementHeight","wrapperHeight","appendToOffset","verticalOrigin","horizontalOrigin","verticalPosition","horizontalPosition","anchorOffset","first","anchorWidth","anchorHeight","round","plugin","stableSort","tabKeyTrapNS","TabKeyTrap","autoApplyNS","trap","_keepInTrap","removeTrap","kendoDestroy","shouldTrap","which","isDefaultPrevented","elements","_focusableElements","sortedElements","_sortFocusableElements","next","_nextFocusable","_focus","i","item","tabIndex","sort","prev","attrName","setAttribute","getAttribute","removeAttr","count","current","get","shiftKey","nodeName","focus","setSelectionRange","_haveSelectionRange","value","contentWindow","elementType","jQuery"],"sources":["kendo.popup.js"],"mappings":"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","sourcesContent":["(function (global, factory) {\n    typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.core.js')) :\n    typeof define === 'function' && define.amd ? define(['kendo.core'], factory) :\n    (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendopopup = global.kendopopup || {}, global.kendopopup.js = factory()));\n})(this, (function () {\n    var __meta__ = {\n        id: \"popup\",\n        name: \"Pop-up\",\n        category: \"framework\",\n        depends: [ \"core\" ],\n        advanced: true\n    };\n\n    (function($, undefined$1) {\n        var kendo = window.kendo,\n            ui = kendo.ui,\n            Widget = ui.Widget,\n            Class = kendo.Class,\n            support = kendo.support,\n            getOffset = kendo.getOffset,\n            outerWidth = kendo._outerWidth,\n            outerHeight = kendo._outerHeight,\n            OPEN = \"open\",\n            CLOSE = \"close\",\n            DEACTIVATE = \"deactivate\",\n            ACTIVATE = \"activate\",\n            CENTER = \"center\",\n            LEFT = \"left\",\n            RIGHT = \"right\",\n            TOP = \"top\",\n            BOTTOM = \"bottom\",\n            ABSOLUTE = \"absolute\",\n            HIDDEN = \"hidden\",\n            BODY = \"body\",\n            LOCATION = \"location\",\n            POSITION = \"position\",\n            VISIBLE = \"visible\",\n            EFFECTS = \"effects\",\n            ACTIVE = \"k-active\",\n            ACTIVECHILDREN = \".k-picker-wrap, .k-dropdown-wrap, .k-link\",\n            MOUSEDOWN = \"down\",\n            DOCUMENT_ELEMENT = $(document.documentElement),\n            WINDOW = $(window),\n            SCROLL = \"scroll\",\n            cssPrefix = support.transitions.css,\n            TRANSFORM = cssPrefix + \"transform\",\n            extend = $.extend,\n            NS = \".kendoPopup\",\n            styles = [\"font-size\",\n                      \"font-family\",\n                      \"font-stretch\",\n                      \"font-style\",\n                      \"font-weight\",\n                      \"line-height\"];\n\n        function contains(container, target) {\n            if (!container || !target) {\n                return false;\n            }\n            return container === target || $.contains(container, target);\n        }\n\n        var Popup = Widget.extend({\n            init: function(element, options) {\n                var that = this, parentPopup;\n\n                options = options || {};\n\n                if (options.isRtl) {\n                    options.origin = options.origin || BOTTOM + \" \" + RIGHT;\n                    options.position = options.position || TOP + \" \" + RIGHT;\n                }\n\n                Widget.fn.init.call(that, element, options);\n\n                element = that.element;\n                options = that.options;\n\n                that.collisions = options.collision ? options.collision.split(\" \") : [];\n                that.downEvent = kendo.applyEventMap(MOUSEDOWN, kendo.guid());\n\n                if (that.collisions.length === 1) {\n                    that.collisions.push(that.collisions[0]);\n                }\n\n                parentPopup = $(that.options.anchor).closest(\".k-popup,.k-group\").filter(\":not([class^=km-])\"); // When popup is in another popup, make it relative.\n\n                options.appendTo = $($(options.appendTo)[0] || parentPopup[0] || document.body);\n\n                that.element.hide()\n                    .addClass(\"k-popup\")\n                    .toggleClass(\"k-rtl\", !!options.isRtl)\n                    .appendTo(options.appendTo)\n                    .attr(\"aria-hidden\", true)\n                    .on(\"mouseenter\" + NS, function() {\n                        that._hovered = true;\n                    })\n                    .on(\"wheel\" + NS, function(e) {\n                        var list = $(e.target).find(\".k-list\");\n                        var scrollArea = list.parent();\n                        if (list.length && list.is(\":visible\") && ((scrollArea.scrollTop() === 0 && e.originalEvent.deltaY < 0) ||\n                            (scrollArea.scrollTop() === scrollArea.prop('scrollHeight') - scrollArea.prop('offsetHeight') && e.originalEvent.deltaY > 0))) {\n                               e.preventDefault();\n                        }\n                    })\n                    .on(\"mouseleave\" + NS, function() {\n                        that._hovered = false;\n                    });\n\n                that.wrapper = $();\n\n                if (options.animation === false) {\n                    options.animation = { open: { effects: {} }, close: { hide: true, effects: {} } };\n                }\n\n                extend(options.animation.open, {\n                    complete: function() {\n                        that.wrapper.addClass(\"k-animation-container-shown\"); // Forcing refresh causes flickering in mobile.\n                        that.wrapper.css(\"overflow\",\"\");\n                        that._activated = true;\n                        that._trigger(ACTIVATE);\n                    }\n                });\n\n                extend(options.animation.close, {\n                    complete: function() {\n                        that._animationClose();\n                    }\n                });\n\n                that._mousedownProxy = function(e) {\n                    that._mousedown(e);\n                };\n\n                if (support.mobileOS.android) {\n                    that._resizeProxy = function(e) {\n                        setTimeout(function() {\n                            that._resize(e);\n                        }, 600); //Logic from kendo.onResize\n                    };\n                } else {\n                    that._resizeProxy = function(e) {\n                        that._resize(e);\n                    };\n                }\n\n                if (options.toggleTarget) {\n                    $(options.toggleTarget).on(options.toggleEvent + NS, that.toggle.bind(that));\n                }\n            },\n\n            events: [\n                OPEN,\n                ACTIVATE,\n                CLOSE,\n                DEACTIVATE\n            ],\n\n            options: {\n                name: \"Popup\",\n                toggleEvent: \"click\",\n                origin: BOTTOM + \" \" + LEFT,\n                position: TOP + \" \" + LEFT,\n                anchor: BODY,\n                appendTo: null,\n                collision: \"flip fit\",\n                viewport: window,\n                copyAnchorStyles: true,\n                autosize: false,\n                autowidth: false,\n                modal: false,\n                adjustSize: {\n                    width: 0,\n                    height: 0\n                },\n                animation: {\n                    open: {\n                        effects: \"slideIn:down\",\n                        transition: true,\n                        duration: 200\n                    },\n                    close: { // if close animation effects are defined, they will be used instead of open.reverse\n                        duration: 100,\n                        hide: true\n                    }\n                },\n                omitOriginOffsets: false\n            },\n\n            _animationClose: function() {\n                var that = this;\n                var location = that.wrapper.data(LOCATION);\n\n                that.wrapper.hide();\n\n                if (location) {\n                    that.wrapper.css(location);\n                }\n\n                if (that.options.anchor != BODY) {\n                    that._hideActiveClass();\n                }\n\n                that._closing = false;\n                that._trigger(DEACTIVATE);\n            },\n\n            destroy: function() {\n                var that = this,\n                    options = that.options,\n                    element = that.element.off(NS),\n                    parent;\n\n                Widget.fn.destroy.call(that);\n\n                if (options.toggleTarget) {\n                    $(options.toggleTarget).off(NS);\n                }\n\n                if (!options.modal) {\n                    DOCUMENT_ELEMENT.off(that.downEvent, that._mousedownProxy);\n                    that._toggleResize(false);\n                }\n\n                kendo.destroy(that.element.children());\n                element.removeData();\n\n                if (options.appendTo[0] === document.body) {\n                    parent = element.closest(\".k-animation-container\");\n\n                    if (parent[0]) {\n                        parent.remove();\n                    } else {\n                        element.remove();\n                    }\n                }\n            },\n\n            open: function(x, y) {\n                var that = this,\n                    fixed = { isFixed: !isNaN(parseInt(y,10)), x: x, y: y },\n                    shouldCorrectWidth = that._shouldCorrectWidth,\n                    element = that.element,\n                    options = that.options,\n                    animation, wrapper,\n                    anchor = $(options.anchor),\n                    mobile = element[0] && element.hasClass(\"km-widget\"),\n                    listbox = element.find(\"[role='listbox']\"),\n                    parent;\n\n                if (!that.visible()) {\n                    if (options.copyAnchorStyles) {\n                        if (mobile && styles[0] == \"font-size\") {\n                            styles.shift();\n                        }\n                        element.css(kendo.getComputedStyles(anchor[0], styles));\n                    }\n\n                    if (that.element.parent().data(\"animating\") || that._trigger(OPEN)) {\n                        return;\n                    }\n\n                    that._activated = false;\n\n                    if (!options.modal) {\n                        DOCUMENT_ELEMENT.off(that.downEvent, that._mousedownProxy)\n                                    .on(that.downEvent, that._mousedownProxy);\n\n                        // this binding hangs iOS in editor\n                        // all elements in IE7/8 fire resize event, causing mayhem\n                        that._toggleResize(false);\n                        that._toggleResize(true);\n                    }\n\n                    that.wrapper = wrapper = kendo.wrap(element, options.autosize, options._resizeOnWrap, shouldCorrectWidth, options.autowidth)\n                        .css({\n                            overflow: HIDDEN,\n                            display: \"block\",\n                            position: ABSOLUTE\n                        })\n                        .attr(\"aria-hidden\", false);\n\n                    parent = element.parent();\n\n                    if (listbox.attr(\"aria-label\")) {\n                        wrapper.attr(\"aria-label\", listbox.attr(\"aria-label\"));\n                    } else if (listbox.attr(\"aria-labelledby\")) {\n                        wrapper.attr(\"aria-labelledby\", listbox.attr(\"aria-labelledby\"));\n                    }\n\n                    if (support.mobileOS.android) {\n                        parent.css(TRANSFORM, \"translatez(0)\"); // Android is VERY slow otherwise. Should be tested in other droids as well since it may cause blur.\n                    }\n\n                    wrapper.css(POSITION);\n\n                    if ($(options.appendTo)[0] == document.body) {\n                        wrapper.css(TOP, \"-10000px\");\n                    }\n\n                    that.flipped = that._position(fixed);\n                    animation = that._openAnimation();\n\n                    if (options.anchor != BODY && !that.element.hasClass(\"k-tooltip\")) {\n                        that._addActiveClass();\n                    }\n\n                    parent.hide();\n                    element.show();\n                    that.wrapper.show();\n\n                    parent.data(EFFECTS, animation.effects)\n                           .kendoStop(true)\n                           .kendoAnimate(animation);\n\n\n                    element.attr(\"aria-hidden\", false);\n                }\n            },\n\n            _location: function(isFixed) {\n                var that = this,\n                    element = that.element,\n                    options = that.options,\n                    wrapper,\n                    anchor = $(options.anchor),\n                    mobile = element[0] && element.hasClass(\"km-widget\");\n\n                if (options.copyAnchorStyles) {\n                    if (mobile && styles[0] == \"font-size\") {\n                        styles.shift();\n                    }\n                    element.css(kendo.getComputedStyles(anchor[0], styles));\n                }\n\n                that.wrapper = wrapper = kendo.wrap(element, options.autosize)\n                                        .css({\n                                            overflow: HIDDEN,\n                                            display: \"block\",\n                                            position: ABSOLUTE\n                                        });\n\n                if (support.mobileOS.android) {\n                    wrapper.css(TRANSFORM, \"translatez(0)\"); // Android is VERY slow otherwise. Should be tested in other droids as well since it may cause blur.\n                }\n\n                wrapper.css(POSITION);\n\n                if ($(options.appendTo)[0] == document.body) {\n                    wrapper.css(TOP, \"-10000px\");\n                }\n\n                that._position(isFixed || {});\n\n                var offset = wrapper.offset();\n                return {\n                    width: kendo._outerWidth(wrapper),\n                    height: kendo._outerHeight(wrapper),\n                    left: offset.left,\n                    top: offset.top\n                };\n            },\n\n            _openAnimation: function() {\n                var animation = extend(true, {}, this.options.animation.open);\n                animation.effects = kendo.parseEffects(animation.effects, this.flipped);\n\n                return animation;\n            },\n\n            _hideActiveClass: function() {\n                var anchor = $(this.options.anchor);\n                anchor\n                    .children(ACTIVECHILDREN)\n                    .removeClass(ACTIVE);\n\n            },\n\n            _addActiveClass: function() {\n                $(this.options.anchor)\n                    .children(ACTIVECHILDREN)\n                    .addClass(ACTIVE);\n            },\n\n            position: function() {\n                if (this.visible()) {\n                    this.flipped = this._position();\n                }\n            },\n\n            toggle: function() {\n                var that = this;\n\n                that[that.visible() ? CLOSE : OPEN]();\n            },\n\n            visible: function() {\n                return this.wrapper.is(\":\" + VISIBLE) && this.element.is(\":\" + VISIBLE);\n            },\n\n            close: function(skipEffects) {\n                var that = this,\n                    parent = that.element.parent(),\n                    options = that.options, wrap,\n                    animation, openEffects, closeEffects;\n\n                if (that.visible()) {\n                    wrap = (that.wrapper[0] ? that.wrapper : kendo.wrap(that.element).hide());\n\n                    that._toggleResize(false);\n\n                    if (that._closing || that._trigger(CLOSE)) {\n                        that._toggleResize(true);\n                        return;\n                    }\n\n                    that.wrapper.removeClass(\"k-animation-container-shown\");\n\n                    // Close all inclusive popups.\n                    that.element.find(\".k-popup\").each(function() {\n                        var that = $(this),\n                            popup = that.data(\"kendoPopup\");\n\n                        if (popup) {\n                            popup.close(skipEffects);\n                        }\n                    });\n\n                    DOCUMENT_ELEMENT.off(that.downEvent, that._mousedownProxy);\n\n                    if (skipEffects) {\n                        animation = { hide: true, effects: {} };\n                    } else {\n                        animation = extend(true, {}, options.animation.close);\n                        openEffects = parent.data(EFFECTS);\n                        closeEffects = animation.effects;\n\n                        if (!closeEffects && !kendo.size(closeEffects) && openEffects && kendo.size(openEffects)) {\n                            animation.effects = openEffects;\n                            animation.reverse = true;\n                        }\n\n                        that._closing = true;\n                    }\n\n                    parent.kendoStop(true);\n                    that.element.attr(\"aria-hidden\", true);\n                    wrap\n                        .css({ overflow: HIDDEN }) // stop callback will remove hidden overflow\n                        .attr(\"aria-hidden\", true);\n                    parent.kendoAnimate(animation);\n\n                    if (skipEffects) {\n                        that._animationClose();\n                    }\n                }\n            },\n\n            _trigger: function(ev) {\n                return this.trigger(ev, { type: ev });\n            },\n\n            _resize: function(e) {\n                var that = this;\n\n                if (support.resize.indexOf(e.type) !== -1) {\n                    clearTimeout(that._resizeTimeout);\n                    that._resizeTimeout = setTimeout(function() {\n                        that._position();\n                        that._resizeTimeout = null;\n                    }, 50);\n                } else {\n                    if (!that._hovered || (that._activated && that.element.find(\".k-list\").length > 0)) {\n                        that.close();\n                    }\n                }\n            },\n\n            _toggleResize: function(toggle) {\n                var method = toggle ? \"on\" : \"off\";\n                var eventNames = support.resize;\n\n                if (!(support.mobileOS.ios || support.mobileOS.android || support.browser.safari)) {\n                    eventNames += \" \" + SCROLL;\n                }\n\n                if (toggle && !this.scrollableParents) {\n                    this.scrollableParents = this._scrollableParents();\n                }\n\n                if (this.scrollableParents && this.scrollableParents.length) {\n                    this.scrollableParents[method](SCROLL, this._resizeProxy);\n                }\n\n                WINDOW[method](eventNames, this._resizeProxy);\n            },\n\n            _mousedown: function(e) {\n                var that = this,\n                    container = that.element[0],\n                    options = that.options,\n                    anchor = $(options.anchor)[0],\n                    toggleTarget = options.toggleTarget,\n                    target = kendo.eventTarget(e),\n                    popup = $(target).closest(\".k-popup\"),\n                    mobile = popup.parent().parent(\".km-shim\").length;\n\n                popup = popup[0];\n                if (!mobile && popup && popup !== that.element[0]) {\n                    return;\n                }\n\n                // This MAY result in popup not closing in certain cases.\n                if ($(e.target).closest(\"a\").data(\"rel\") === \"popover\") {\n                    return;\n                }\n\n                if (!contains(container, target) && !contains(anchor, target) && !(toggleTarget && contains($(toggleTarget)[0], target))) {\n                    that.close();\n                }\n            },\n\n            _fit: function(position, size, viewPortSize) {\n                var output = 0;\n\n                if (position + size > viewPortSize) {\n                    output = viewPortSize - (position + size);\n                }\n\n                if (position < 0) {\n                    output = -position;\n                }\n\n                return output;\n            },\n\n            _flip: function(offset, size, anchorSize, viewPortSize, origin, position, boxSize) {\n                var output = 0;\n                    boxSize = boxSize || size;\n\n                if (position !== origin && position !== CENTER && origin !== CENTER) {\n                    if (offset + boxSize > viewPortSize) {\n                        output += -(anchorSize + size);\n                    }\n\n                    if (offset + output < 0) {\n                        output += anchorSize + size;\n                    }\n                }\n                return output;\n            },\n\n            _scrollableParents: function() {\n                return $(this.options.anchor)\n                           .parentsUntil(\"body\")\n                           .filter(function(index, element) {\n                               return kendo.isScrollable(element);\n                           });\n            },\n\n            _position: function(fixed) {\n                var that = this,\n                    //element = that.element.css(POSITION, \"\"), /* fixes telerik/kendo-ui-core#790, comes from telerik/kendo#615 */\n                    element = that.element,\n                    wrapper = that.wrapper,\n                    options = that.options,\n                    viewport = $(options.viewport),\n                    zoomLevel = support.zoomLevel(),\n                    isWindow = !!((viewport[0] == window) && window.innerWidth && (zoomLevel <= 1.02)),\n                    anchor = $(options.anchor),\n                    origins = options.origin.toLowerCase().split(\" \"),\n                    positions = options.position.toLowerCase().split(\" \"),\n                    collisions = that.collisions,\n                    siblingContainer, parents,\n                    parentZIndex, zIndex = 10002,\n                    idx = 0,\n                    docEl = document.documentElement,\n                    length, viewportOffset, viewportWidth, viewportHeight;\n\n                if (options.viewport === window) {\n                    viewportOffset = {\n                        top: (window.pageYOffset || document.documentElement.scrollTop || 0),\n                        left: (window.pageXOffset || document.documentElement.scrollLeft || 0)\n                    };\n                } else {\n                    viewportOffset = viewport.offset();\n                }\n\n                if (isWindow) {\n                    viewportWidth = window.innerWidth;\n                    viewportHeight = window.innerHeight;\n                } else {\n                    viewportWidth = viewport.width();\n                    viewportHeight = viewport.height();\n                }\n\n                if (isWindow && docEl.scrollHeight - docEl.clientHeight > 0) {\n                     var sign = options.isRtl ? -1 : 1;\n\n                     viewportWidth -= sign * kendo.support.scrollbar();\n                }\n\n                siblingContainer = anchor.parents().filter(wrapper.siblings());\n\n                if (siblingContainer[0]) {\n                    parentZIndex = Math.max(Number(siblingContainer.css(\"zIndex\")), 0);\n\n                    // set z-index to be more than that of the container/sibling\n                    // compensate with more units for window z-stack\n                    if (parentZIndex) {\n                        zIndex = parentZIndex + 10;\n                    } else {\n                        parents = anchor.parentsUntil(siblingContainer);\n                        for (length = parents.length; idx < length; idx++) {\n                            parentZIndex = Number($(parents[idx]).css(\"zIndex\"));\n                            if (parentZIndex && zIndex < parentZIndex) {\n                                zIndex = parentZIndex + 10;\n                            }\n                        }\n                    }\n                }\n\n                wrapper.css(\"zIndex\", zIndex);\n\n                if (fixed && fixed.isFixed) {\n                    wrapper.css({ left: fixed.x, top: fixed.y });\n                } else {\n                    wrapper.css(that._align(origins, positions));\n                }\n\n                var pos = getOffset(wrapper, POSITION, anchor[0] === wrapper.offsetParent()[0]),\n                    offset = getOffset(wrapper),\n                    anchorParent = anchor.offsetParent().parent(\".k-animation-container,.k-popup,.k-group\"); // If the parent is positioned, get the current positions\n\n                if (anchorParent.length) {\n                    pos = getOffset(wrapper, POSITION, true);\n                    offset = getOffset(wrapper);\n                }\n\n                offset.top -= viewportOffset.top;\n                offset.left -= viewportOffset.left;\n\n                if (!that.wrapper.data(LOCATION)) { // Needed to reset the popup location after every closure - fixes the resize bugs.\n                    wrapper.data(LOCATION, extend({}, pos));\n                }\n\n                var offsets = extend({}, offset),\n                    location = extend({}, pos),\n                    adjustSize = options.adjustSize;\n\n                if (collisions[0] === \"fit\") {\n                    location.top += that._fit(offsets.top, outerHeight(wrapper) + adjustSize.height, viewportHeight / zoomLevel);\n                }\n\n                if (collisions[1] === \"fit\") {\n                    location.left += that._fit(offsets.left, outerWidth(wrapper) + adjustSize.width, viewportWidth / zoomLevel);\n                }\n\n                var flipPos = extend({}, location);\n                var elementHeight = outerHeight(element);\n                var wrapperHeight = outerHeight(wrapper);\n\n                if (!wrapper.height() && elementHeight) {\n                    wrapperHeight = wrapperHeight + elementHeight;\n                }\n\n                if (collisions[0] === \"flip\") {\n                    location.top += that._flip(offsets.top, elementHeight, outerHeight(anchor), viewportHeight / zoomLevel, origins[0], positions[0], wrapperHeight);\n                }\n\n                if (collisions[1] === \"flip\") {\n                    location.left += that._flip(offsets.left, outerWidth(element), outerWidth(anchor), viewportWidth / zoomLevel, origins[1], positions[1], outerWidth(wrapper));\n                }\n\n                wrapper.css(location);\n\n                return (location.left != flipPos.left || location.top != flipPos.top);\n            },\n\n            _align: function(origin, position) {\n                var that = this,\n                    element = that.wrapper,\n                    anchor = $(that.options.anchor),\n                    verticalOrigin = origin[0],\n                    horizontalOrigin = origin[1],\n                    verticalPosition = position[0],\n                    horizontalPosition = position[1],\n                    anchorOffset = getOffset(anchor),\n                    appendTo = $(that.options.appendTo),\n                    appendToOffset,\n                    width = outerWidth(element),\n                    height = outerHeight(element) || outerHeight(element.find(\".k-child-animation-container\").children().first()),\n                    anchorWidth = outerWidth(anchor),\n                    anchorHeight = outerHeight(anchor),\n                    top = that.options.omitOriginOffsets ? 0 : anchorOffset.top,\n                    left = that.options.omitOriginOffsets ? 0 : anchorOffset.left,\n                    round = Math.round;\n\n                if (appendTo[0] != document.body) {\n                    appendToOffset = getOffset(appendTo);\n                    top -= appendToOffset.top;\n                    left -= appendToOffset.left;\n                }\n\n\n                if (verticalOrigin === BOTTOM) {\n                    top += anchorHeight;\n                }\n\n                if (verticalOrigin === CENTER) {\n                    top += round(anchorHeight / 2);\n                }\n\n                if (verticalPosition === BOTTOM) {\n                    top -= height;\n                }\n\n                if (verticalPosition === CENTER) {\n                    top -= round(height / 2);\n                }\n\n                if (horizontalOrigin === RIGHT) {\n                    left += anchorWidth;\n                }\n\n                if (horizontalOrigin === CENTER) {\n                    left += round(anchorWidth / 2);\n                }\n\n                if (horizontalPosition === RIGHT) {\n                    left -= width;\n                }\n\n                if (horizontalPosition === CENTER) {\n                    left -= round(width / 2);\n                }\n\n                return {\n                    top: top,\n                    left: left\n                };\n            }\n        });\n\n        ui.plugin(Popup);\n\n        var stableSort = kendo.support.stableSort;\n        var tabKeyTrapNS = \"kendoTabKeyTrap\";\n        var focusableNodesSelector = \"a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex], *[contenteditable]\";\n        var TabKeyTrap = Class.extend({\n            init: function(element, options) {\n                this.element = $(element);\n                this.element.autoApplyNS(tabKeyTrapNS);\n            },\n\n            trap: function() {\n                this.element.on(\"keydown\", this._keepInTrap.bind(this));\n            },\n\n            removeTrap: function() {\n                this.element.kendoDestroy(tabKeyTrapNS);\n            },\n\n            destroy: function() {\n                this.element.kendoDestroy(tabKeyTrapNS);\n                this.element = undefined$1;\n            },\n\n            shouldTrap: function() {\n                return true;\n            },\n\n            _keepInTrap: function(e) {\n                if (e.which !== 9 || !this.shouldTrap() || e.isDefaultPrevented()) {\n                    return;\n                }\n\n                var elements = this._focusableElements();\n                var sortedElements = this._sortFocusableElements(elements);\n                var next = this._nextFocusable(e, sortedElements);\n\n                if (next) {\n                    this._focus(next);\n                }\n\n                e.preventDefault();\n            },\n            _focusableElements: function() {\n                var elements = this.element.find(focusableNodesSelector).filter(function(i, item) {\n                    return item.tabIndex >= 0 && $(item).is(':visible') && !$(item).is('[disabled]');\n                });\n\n                if (this.element.is(\"[tabindex]\")) {\n                    elements.push(this.element[0]);\n                }\n\n                return elements;\n            },\n            _sortFocusableElements: function(elements) {\n                var sortedElements;\n\n                if (stableSort) {\n                    sortedElements = elements.sort(function(prev, next) {\n                        return prev.tabIndex - next.tabIndex;\n                    });\n                } else {\n                    var attrName = \"__k_index\";\n                    elements.each(function(i, item) {\n                        item.setAttribute(attrName, i);\n                    });\n\n                    sortedElements = elements.sort(function(prev, next) {\n                        return prev.tabIndex === next.tabIndex ?\n                            parseInt(prev.getAttribute(attrName), 10) - parseInt(next.getAttribute(attrName), 10) :\n                            prev.tabIndex - next.tabIndex;\n                    });\n\n                    elements.removeAttr(attrName);\n                }\n\n                return sortedElements;\n            },\n            _nextFocusable: function(e, elements) {\n                var count = elements.length;\n                var current = elements.index(e.target);\n\n                return elements.get((current + (e.shiftKey ? -1 : 1)) % count);\n            },\n            _focus: function(element) {\n                if (element.nodeName == \"IFRAME\") {\n                    element.contentWindow.document.body.focus();\n                    return;\n                }\n\n                element.focus();\n\n                if (element.nodeName == \"INPUT\" && element.setSelectionRange && this._haveSelectionRange(element)) {\n                    element.setSelectionRange(0, element.value.length);\n                }\n            },\n            _haveSelectionRange: function(element) {\n                var elementType = element.type.toLowerCase();\n\n                return elementType === \"text\" || elementType === \"search\" ||\n                elementType === \"url\" || elementType === \"tel\" ||\n                elementType === \"password\";\n            }\n        });\n        ui.Popup.TabKeyTrap = TabKeyTrap;\n    })(window.kendo.jQuery);\n    var kendo$1 = kendo;\n\n    return kendo$1;\n\n}));\n"]}