{"version":3,"file":"kendo.expansionpanel.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendoexpansionpanel","js","this","$","undefined$1","kendo","window","Widget","ui","keys","extend","encode","htmlEncode","NS","EXPAND","COLLAPSE","COLLAPSE_ICON_SELECTOR","COMPLETE","STATEDISABLED","ARIA_DISABLED","ARIA_EXPANDED","ARIA_HIDDEN","EXPANDED","D_NONE","FOCUSED","headerTemplate","ref","title","subTitle","iconClass","useBareTemplate","ns","elementId","includes","icon","ExpansionPanel","init","element","options","that","headerAttribute","attr","fn","call","_wrapper","_animations","expanded","addClass","wrapper","on","_click","bind","_focus","_blur","_keydown","toggle","notify","events","name","disabled","animation","expand","effects","duration","collapse","height","toggleable","expandIconClass","collapseIconClass","headerClass","wrapperClass","header","DOMElement","guid","wrap","parent","template","prepend","_indicator","find","INDICATOR","style","cssText","width","contentWrapper","toggleClass","className","css","hide","e","is","stopPropagation","trigger","item","preventDefault","animate","animationSettings","hasCollapseAnimation","reverse","complete","_completeHandler","removeClass","kendoStop","kendoAnimate","key","keyCode","ENTER","SPACEBAR","target","destroy","off","enable","enabled","plugin","jQuery"],"sources":["kendo.expansionpanel.js"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.core.js'), require('kendo.icons.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.core', 'kendo.icons'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendoexpansionpanel = global.kendoexpansionpanel || {}, global.kendoexpansionpanel.js = factory()));\n})(this, (function () {\n var __meta__ = {\n id: \"expansionpanel\",\n name: \"ExpansionPanel\",\n category: \"web\",\n description: \"The ExpansionPanel provides an expandable details-summary view\",\n depends: [\"core\", \"icons\"]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n Widget = kendo.ui.Widget,\n ui = kendo.ui,\n keys = kendo.keys,\n extend = $.extend,\n encode = kendo.htmlEncode,\n NS = \".kendoExpansionPanel\",\n EXPAND = \"expand\",\n COLLAPSE = \"collapse\",\n COLLAPSE_ICON_SELECTOR = \"[class*='-i-chevron-up']\",\n COMPLETE = \"complete\",\n STATEDISABLED = \"k-disabled\",\n ARIA_DISABLED = \"aria-disabled\",\n ARIA_EXPANDED = \"aria-expanded\",\n ARIA_HIDDEN = \"aria-hidden\",\n EXPANDED = \"k-expanded\",\n EXPANDER_CONTENT = \"k-expander-content\",\n EXPANDER_CONTENT_WRAPPER = \"k-expander-content-wrapper\",\n D_NONE = \"k-d-none\",\n INDICATOR = \".k-expander-indicator\",\n FOCUSED = \"k-focus\",\n CLICK = \"click\",\n KEYDOWN = \"keydown\",\n HEIGHT = \"height\",\n\n headerTemplate = function (ref) {\n var title = ref.title;\n var subTitle = ref.subTitle;\n var iconClass = ref.iconClass;\n var useBareTemplate = ref.useBareTemplate;\n var ns = ref.ns;\n var elementId = ref.elementId;\n\n return \"
\" +\n (!useBareTemplate ? (\"
\" + (encode(title)) + \"
\") : title) +\n '' +\n (!useBareTemplate ? (\"
\" + (encode(subTitle)) + \"
\") : '') +\n \"\" +\n (iconClass && iconClass.includes(\"k-icon\") ? (\"\") : kendo.ui.icon({ icon: iconClass })) +\n \"\" +\n '
';\n };\n\n var ExpansionPanel = Widget.extend({\n init: function(element, options) {\n var that = this;\n var headerAttribute = kendo.attr(\"expander-header\");\n\n Widget.fn.init.call(that, element, options);\n options = $.extend(true, {}, options);\n\n that._wrapper();\n that._animations(options);\n\n that.element.attr(ARIA_HIDDEN, !options.expanded);\n\n if (!that.options.useBareTemplate) {\n that.element.addClass(EXPANDER_CONTENT);\n }\n\n that.wrapper\n .on(CLICK + NS, '[' + headerAttribute + ']', that._click.bind(that))\n .on(\"focusin\" + NS, that._focus.bind(that))\n .on(\"focusout\" + NS, that._blur.bind(that))\n .on(KEYDOWN + NS, that._keydown.bind(that));\n\n that.toggle(that.options.expanded, false);\n\n kendo.notify(that);\n },\n\n events: [\n EXPAND,\n COLLAPSE,\n COMPLETE\n ],\n\n options: {\n name: 'ExpansionPanel',\n disabled: false,\n expanded: false,\n animation: {\n expand: {\n effects: \"expand:vertical\",\n duration: 200\n },\n collapse: { // if collapse animation effects are defined, they will be used instead of expand.reverse\n duration: 200\n }\n },\n height: null,\n toggleable: true,\n expandIconClass: \"chevron-down\",\n collapseIconClass: \"chevron-up\",\n title: '',\n subTitle: '',\n headerClass: null,\n wrapperClass: null,\n useBareTemplate: false\n },\n\n _wrapper: function() {\n var that = this;\n var element = that.element;\n var DOMElement = element[0];\n var wrapper;\n var header;\n var elementId = element.attr(\"id\");\n\n if (!elementId) {\n elementId = kendo.guid();\n element.attr(\"id\", elementId);\n }\n\n wrapper = element.wrap(\"
\").parent();\n header = kendo.template(headerTemplate)({\n title: that.options.title,\n subTitle: that.options.subTitle,\n iconClass: that.options.expanded ? that.options.expandIconClass : that.options.collapseIconClass,\n useBareTemplate: that.options.useBareTemplate,\n ns: kendo.ns,\n elementId: elementId + \"_wrapper\"\n });\n that.header = $(header);\n wrapper.prepend(that.header);\n that._indicator = wrapper.find(INDICATOR + \" span\");\n wrapper[0].style.cssText = DOMElement.style.cssText;\n DOMElement.style.width = \"100%\";\n\n that.wrapper = wrapper.addClass(that.options.disabled ? STATEDISABLED : '');\n that.contentWrapper = that.element\n .wrap('
')\n .parent()\n .addClass(EXPANDER_CONTENT_WRAPPER)\n .toggleClass(D_NONE, !that.options.expanded);\n\n that.header.attr(ARIA_DISABLED, that.options.disabled)\n .attr(ARIA_EXPANDED, that.options.expanded);\n\n if (!that.options.useBareTemplate) {\n wrapper.addClass(DOMElement.className);\n }\n\n if (that.options.height) {\n that.wrapper.css(HEIGHT, that.options.height);\n }\n\n if (that.options.headerClass) {\n that.header.addClass(that.options.headerClass);\n }\n\n if (that.options.wrapperClass) {\n that.header.addClass(that.options.wrapperClass);\n }\n },\n\n _animations: function(options) {\n if (options && (\"animation\" in options) && !options.animation) {\n options.animation = { expand: { effects: {} }, collapse: { hide: true, effects: {} } };\n }\n },\n\n _click: function(e) {\n var that = this;\n var expanded = that._indicator.is(COLLAPSE_ICON_SELECTOR);\n var element = that.element;\n\n e.stopPropagation();\n\n if (!that.options.toggleable) {\n e.preventDefault();\n return;\n }\n\n if (!that.trigger( expanded ? COLLAPSE : EXPAND, { item: element[0] })) {\n that.toggle();\n }\n },\n\n toggle: function(expand, animate) {\n var that = this,\n animationSettings = that.options.animation,\n animation = animationSettings.expand,\n hasCollapseAnimation = animationSettings.collapse && \"effects\" in animationSettings.collapse,\n collapse = extend({}, animationSettings.expand, animationSettings.collapse),\n element = that.element,\n wrapper = that.wrapper;\n\n if (expand !== undefined$1) {\n if (animate === false) {\n collapse = null;\n }\n } else {\n expand = !that._indicator.is(COLLAPSE_ICON_SELECTOR);\n }\n\n if (!hasCollapseAnimation) {\n collapse = extend(collapse, { reverse: true });\n }\n\n if (!expand) {\n animation = extend(collapse, { hide: true });\n\n animation.complete = that._completeHandler.bind(that);\n } else {\n animation = extend( { complete: that._completeHandler.bind(that) }, animation );\n }\n\n if (expand) {\n if (that.options.collapseIconClass.includes(\"k-icon\")) {\n that._indicator.removeClass(this.options.expandIconClass);\n that._indicator.addClass(this.options.collapseIconClass);\n } else {\n kendo.ui.icon(that._indicator, { icon: this.options.collapseIconClass });\n }\n wrapper.addClass(EXPANDED);\n } else {\n if (that.options.expandIconClass.includes(\"k-icon\")) {\n that._indicator.removeClass(this.options.collapseIconClass);\n that._indicator.addClass(this.options.expandIconClass);\n } else {\n kendo.ui.icon(that._indicator, { icon: this.options.expandIconClass });\n }\n wrapper.removeClass(EXPANDED);\n }\n\n that.contentWrapper.toggleClass(D_NONE, !expand);\n element.attr(ARIA_HIDDEN, !expand);\n that.header.attr(ARIA_EXPANDED, expand);\n\n that.contentWrapper\n .kendoStop(true, true)\n .kendoAnimate(animation);\n },\n\n _completeHandler: function() {\n this.trigger(COMPLETE);\n },\n\n _keydown: function(e) {\n var that = this,\n key = e.keyCode;\n\n if ((key == keys.ENTER || key == keys.SPACEBAR) && $(e.target).is(\"[data-expander-header]\")) {\n that._click(e);\n e.preventDefault();\n }\n },\n\n destroy: function() {\n var that = this;\n\n that.wrapper.off(NS);\n Widget.fn.destroy.call(that);\n },\n\n enable: function(enabled) {\n this.wrapper.toggleClass(STATEDISABLED, !enabled);\n this.header.attr(ARIA_DISABLED, !enabled);\n },\n\n _blur: function() {\n var that = this;\n\n if (that.header) {\n that.wrapper.removeClass(FOCUSED);\n }\n },\n\n _focus: function() {\n var that = this;\n\n if (that.wrapper) {\n that.wrapper.addClass(FOCUSED);\n }\n }\n });\n ui.plugin(ExpansionPanel);\n })(window.kendo.jQuery);\n var kendo$1 = kendo;\n\n return kendo$1;\n\n}));\n"]}