{"version":3,"file":"kendo.responsivepanel.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendoresponsivepanel","js","this","$","NS","OPEN","CLOSE","ACTIVATE_EVENTS","Widget","ResponsivePanel","window","kendo","jQuery","ui","extend","init","element","options","fn","call","_guid","guid","_toggleHandler","_toggleButtonClick","bind","_closeHandler","_close","document","documentElement","on","toggleButton","_registerBreakpoint","content","destroy","children","html","addClass","orientation","_resizeHandler","resize","_mediaQuery","ref","breakpoint","_registerStyle","cssText","head","style","createElement","appendChild","styleSheet","createTextNode","name","autoClose","events","_resize","removeClass","off","e","preventDefault","type","hasClass","close","open","trigger","prevented","isDefaultPrevented","target","closest","length","plugin"],"sources":["kendo.responsivepanel.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.kendoresponsivepanel = global.kendoresponsivepanel || {}, global.kendoresponsivepanel.js = factory()));\n})(this, (function () {\n var __meta__ = {\n id: \"responsive-panel\",\n name: \"Responsive Panel\",\n category: \"web\",\n description: \"The Responsive Panel widget allows a panel of content to be hidden on mobile devices, available through a toggle button.\",\n depends: [ \"core\" ]\n };\n\n (function($, undefined$1) {\n var NS = \".kendoResponsivePanel\";\n var OPEN = \"open\";\n var CLOSE = \"close\";\n var ACTIVATE_EVENTS = \"click\" + NS + \" touchstart\" + NS + \" touchend\" + NS;\n var Widget = kendo.ui.Widget;\n var ResponsivePanel = Widget.extend({\n init: function(element, options) {\n Widget.fn.init.call(this, element, options);\n\n this._guid = \"_\" + kendo.guid();\n\n this._toggleHandler = this._toggleButtonClick.bind(this);\n this._closeHandler = this._close.bind(this);\n\n $(document.documentElement).on(ACTIVATE_EVENTS, this.options.toggleButton, this._toggleHandler);\n\n this._registerBreakpoint();\n\n if (this.options.content) {\n kendo.destroy(this.element.children());\n this.element.html(this.options.content);\n }\n\n this.element\n .addClass(\"k-rpanel k-rpanel-\" + this.options.orientation + \" \" + this._guid);\n\n this._resizeHandler = this.resize.bind(this, true);\n $(window).on(\"resize\" + NS, this._resizeHandler);\n },\n _mediaQuery: function (ref) {\n var breakpoint = ref.breakpoint;\n var guid = ref.guid;\n var toggleButton = ref.toggleButton;\n\n return \"@media (max-width: \" + (breakpoint - 1) + \"px) {\" +\n \".\" + guid + \".k-rpanel-animate.k-rpanel-left,\" +\n \".\" + guid + \".k-rpanel-animate.k-rpanel-right {\" +\n \"-webkit-transition: -webkit-transform .2s ease-out;\" +\n \"-ms-transition: -ms-transform .2s ease-out;\" +\n \"transition: transform .2s ease-out;\" +\n \"} \" +\n \".\" + guid + \".k-rpanel-top {\" +\n \"overflow: hidden;\" +\n \"}\" +\n \".\" + guid + \".k-rpanel-animate.k-rpanel-top {\" +\n \"-webkit-transition: max-height .2s linear;\" +\n \"-ms-transition: max-height .2s linear;\" +\n \"transition: max-height .2s linear;\" +\n \"}\" +\n \"} \" +\n \"@media (min-width: \" + breakpoint + \"px) {\" +\n toggleButton + \" { display: none; } \" +\n \".\" + guid + \".k-rpanel-left { float: left; } \" +\n \".\" + guid + \".k-rpanel-right { float: right; } \" +\n \".\" + guid + \".k-rpanel-left, .\" + guid + \".k-rpanel-right {\" +\n \"position: relative;\" +\n \"-webkit-transform: translateX(0);\" +\n \"-ms-transform: translateX(0);\" +\n \"transform: translateX(0);\" +\n \"-webkit-transform: translateX(0) translateZ(0);\" +\n \"-ms-transform: translateX(0) translateZ(0);\" +\n \"transform: translateX(0) translateZ(0);\" +\n \"} \" +\n \".k-ie9 .\" + guid + \".k-rpanel-left { left: 0; } \" +\n \".\" + guid + \".k-rpanel-top { max-height: none; }\" +\n \"}\";\n },\n _registerBreakpoint: function() {\n var options = this.options;\n\n this._registerStyle(this._mediaQuery({\n breakpoint: options.breakpoint,\n toggleButton: options.toggleButton,\n guid: this._guid\n }));\n },\n _registerStyle: function(cssText) {\n var head = $(\"head,body\")[0];\n var style = document.createElement('style');\n\n head.appendChild(style);\n\n if (style.styleSheet) {\n style.styleSheet.cssText = cssText;\n } else {\n style.appendChild(document.createTextNode(cssText));\n }\n },\n options: {\n name: \"ResponsivePanel\",\n content: \"\",\n orientation: \"left\",\n toggleButton: \".k-rpanel-toggle\",\n breakpoint: 640,\n autoClose: true\n },\n events: [\n OPEN,\n CLOSE\n ],\n _resize: function() {\n this.element.removeClass(\"k-rpanel-animate k-rpanel-expanded\");\n\n $(document.documentElement).off(ACTIVATE_EVENTS, this._closeHandler);\n },\n _toggleButtonClick: function(e) {\n e.preventDefault();\n\n if (e.type == \"touchend\") {\n return;\n }\n\n if (this.element.hasClass(\"k-rpanel-expanded\")) {\n this.close();\n } else {\n this.open();\n }\n },\n open: function() {\n if (!this.trigger(OPEN)) {\n this.element.addClass(\"k-rpanel-animate k-rpanel-expanded\");\n\n if (this.options.autoClose) {\n $(document.documentElement).on(ACTIVATE_EVENTS, this._closeHandler);\n }\n }\n },\n close: function() {\n if (!this.trigger(CLOSE)) {\n this.element.addClass(\"k-rpanel-animate\").removeClass(\"k-rpanel-expanded\");\n\n $(document.documentElement).off(ACTIVATE_EVENTS, this._closeHandler);\n }\n },\n _close: function(e) {\n var prevented = e.isDefaultPrevented();\n var container = $(e.target).closest(this.options.toggleButton + \",.k-rpanel\");\n\n if (!container.length && !prevented) {\n this.close();\n }\n },\n destroy: function() {\n Widget.fn.destroy.call(this);\n\n $(window).off(\"resize\" + NS, this._resizeHandler);\n $(document.documentElement).off(ACTIVATE_EVENTS, this._closeHandler);\n }\n });\n\n kendo.ui.plugin(ResponsivePanel);\n })(window.kendo.jQuery);\n var kendo$1 = kendo;\n\n return kendo$1;\n\n}));\n"]}