{"version":3,"file":"kendo.tooltip.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendotooltip","js","this","$","undefined$1","kendo","window","Widget","ui","Popup","isFunction","isPlainObject","extend","DOCUMENT","document","isLocalUrl","ARIAIDSUFFIX","DESCRIBEDBY","SHOW","HIDE","ERROR","CONTENTLOAD","REQUESTSTART","KCONTENTFRAME","TEMPLATE","ref","autoHide","callout","dir","icon","IFRAMETEMPLATE","template","content","NS","POSITIONS","bottom","origin","position","top","left","collision","right","center","REVERSE","DIRCLASSES","DIMENSIONS","horizontal","offset","size","vertical","restoreTitle","element","length","restoreTitleAttributeForElement","parent","title","data","ns","attr","removeData","saveTitleAttributeForElement","saveTitleAttributes","is","TooltipBase","init","options","axis","that","fn","call","match","dimensions","support","touch","_isShownOnMouseEnter","on","mousedown","filter","_showOn","bind","showOn","_keydown","name","showAfter","hideAfter","animation","open","effects","duration","close","hide","destroy","popup","off","clearTimeout","timeout","show","target","_saveTitle","_show","anchor","e","currentTarget","keyCode","keys","ENTER","_isShownOnClick","_isShownOnFocus","setTimeout","_positionCallout","anchorOffset","elementOffset","cssClass","flipped","offsetAmount","_offset","arrow","removeClass","addClass","css","arrowWidth","isTopLeft","isFlipped","direction","marginRule","_outerWidth","wrapper","_addDescribedBy","ariaId","id","guid","describedBy","push","join","_removeDescribedBy","arrayAttr","finalArray","finalDescribedbyAttr","tooltipId","currentDescribedBy","split","val","removeAttr","_openPopup","_hovered","plugin","Tooltip","_documentKeyDownHandler","_documentKeyDown","_mouseenter","_mouseleave","_blur","width","height","events","_appendContent","iframe","contentOptions","showIframe","url","trigger","find","src","html","empty","progress","_ajaxRequest","sender","angular","elements","jQuery","ajax","type","dataType","cache","error","xhr","status","success","_outerHeight","ESC","refresh","current","_initPopup","kendoStop","one","autosize","activate","copyAnchorStyles","_closeButtonClick","preventDefault","_closePopup"],"sources":["kendo.tooltip.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.popup.js'), require('kendo.fx.js'), require('kendo.icons.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.core', 'kendo.popup', 'kendo.fx', 'kendo.icons'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendotooltip = global.kendotooltip || {}, global.kendotooltip.js = factory()));\n})(this, (function () {\n var __meta__ = {\n id: \"tooltip\",\n name: \"Tooltip\",\n category: \"web\",\n description: \"The Tooltip widget displays a popup hint for a given html element.\",\n depends: [ \"core\", \"popup\", \"icons\" ],\n features: [ {\n id: \"tooltip-fx\",\n name: \"Animation\",\n description: \"Support for animation\",\n depends: [ \"fx\" ]\n } ]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n Widget = kendo.ui.Widget,\n Popup = kendo.ui.Popup,\n isFunction = kendo.isFunction,\n isPlainObject = $.isPlainObject,\n extend = $.extend,\n DOCUMENT = $(document),\n isLocalUrl = kendo.isLocalUrl,\n ARIAIDSUFFIX = \"_tb_active\",\n DESCRIBEDBY = \"aria-describedby\",\n SHOW = \"show\",\n HIDE = \"hide\",\n ERROR = \"error\",\n CONTENTLOAD = \"contentLoad\",\n REQUESTSTART = \"requestStart\",\n KCONTENTFRAME = \"k-content-frame\",\n TEMPLATE = function (ref) {\n var autoHide = ref.autoHide;\n var callout = ref.callout;\n var dir = ref.dir;\n\n return \"
\" +\n '
' +\n (!autoHide ? (\"
\" + (kendo.ui.icon($(''), { icon: \"x\" })) + \"
\") : '') +\n (callout ? (\"
\") : '') +\n '
';\n },\n IFRAMETEMPLATE = kendo.template(function (ref) {\n var content = ref.content;\n\n return \"\";\n }\n ),\n NS = \".kendoTooltip\",\n POSITIONS = {\n bottom: {\n origin: \"bottom center\",\n position: \"top center\"\n },\n top: {\n origin: \"top center\",\n position: \"bottom center\"\n },\n left: {\n origin: \"center left\",\n position: \"center right\",\n collision: \"fit flip\"\n },\n right: {\n origin: \"center right\",\n position: \"center left\",\n collision: \"fit flip\"\n },\n center: {\n position: \"center center\",\n origin: \"center center\"\n }\n },\n REVERSE = {\n \"top\": \"bottom\",\n \"bottom\": \"top\",\n \"left\": \"right\",\n \"right\": \"left\",\n \"center\": \"center\"\n },\n DIRCLASSES = {\n bottom: \"n\",\n top: \"s\",\n left: \"e\",\n right: \"w\",\n center: \"n\"\n },\n DIMENSIONS = {\n \"horizontal\": { offset: \"top\", size: \"outerHeight\" },\n \"vertical\": { offset: \"left\", size: \"outerWidth\" }\n },\n DEFAULTCONTENT = function(e) {\n return e.target.data(kendo.ns + \"title\");\n };\n\n function restoreTitle(element) {\n while (element.length) {\n if (restoreTitleAttributeForElement(element)) {\n break;\n }\n element = element.parent();\n }\n }\n\n function restoreTitleAttributeForElement(element) {\n var title = element.data(kendo.ns + \"title\");\n if (title) {\n element.attr(\"title\", title);\n element.removeData(kendo.ns + \"title\");\n return true;\n }\n }\n\n function saveTitleAttributeForElement(element) {\n var title = element.attr(\"title\");\n if (title) {\n element.data(kendo.ns + \"title\", title);\n element.attr(\"title\", \"\");\n return true;\n }\n }\n\n function saveTitleAttributes(element) {\n while (element.length && !element.is(\"body\")) {\n if (saveTitleAttributeForElement(element)) {\n break;\n }\n element = element.parent();\n }\n }\n\n var TooltipBase = Widget.extend({\n init: function(element, options) {\n var that = this,\n axis;\n\n Widget.fn.init.call(that, element, options);\n\n axis = that.options.position.match(/left|right/) ? \"horizontal\" : \"vertical\";\n\n that.dimensions = DIMENSIONS[axis];\n\n if (kendo.support.touch && this._isShownOnMouseEnter()) {\n that.element.on(kendo.support.mousedown + NS, that.options.filter, that._showOn.bind(that));\n }\n\n that.element.on(that.options.showOn + NS, that.options.filter, that._showOn.bind(that));\n\n if (that.options.showOn === \"click\") {\n that.element.on(\"keydown\" + NS, that.options.filter, that._keydown.bind(that));\n }\n },\n\n options: {\n name: \"TooltipBase\",\n filter: \"\",\n offset: 0,\n showAfter: 100,\n hideAfter: 100,\n callout: true,\n position: \"bottom\",\n showOn: \"mouseenter\",\n animation: {\n open: {\n effects: \"fade:in\",\n duration: 0\n },\n close: {\n duration: 40,\n hide: true\n }\n }\n },\n\n destroy: function() {\n var popup = this.popup;\n\n if (popup) {\n popup.element.off(NS);\n popup.destroy();\n }\n\n clearTimeout(this.timeout);\n\n Widget.fn.destroy.call(this);\n },\n\n hide: function() {\n if (this.popup) {\n this.popup.close();\n }\n },\n\n show: function(target) {\n target = target || this.element;\n\n this._saveTitle(target);\n this._show(target);\n },\n\n target: function() {\n if (this.popup) {\n return this.popup.options.anchor;\n }\n return null;\n },\n\n _keydown: function(e) {\n var currentTarget = $(e.currentTarget);\n\n if (e.keyCode == kendo.keys.ENTER) {\n this._show(currentTarget);\n }\n },\n\n _showOn: function(e) {\n var that = this;\n\n var currentTarget = $(e.currentTarget);\n if (that._isShownOnClick() && !that._isShownOnMouseEnter()) {\n that._show(currentTarget);\n } else if (that._isShownOnFocus()) {\n that._saveTitle(currentTarget);\n that._show(currentTarget);\n } else {\n clearTimeout(that.timeout);\n\n that.timeout = setTimeout(function() {\n that._show(currentTarget);\n }, that.options.showAfter);\n }\n },\n\n _isShownOnFocus: function() {\n return this.options.showOn && this.options.showOn.match(/focus/);\n },\n\n _isShownOnMouseEnter: function() {\n return this.options.showOn && this.options.showOn.match(/mouseenter/);\n },\n\n _isShownOnClick: function() {\n return this.options.showOn && this.options.showOn.match(/click/);\n },\n\n _positionCallout: function() {\n var that = this,\n position = that.options.position,\n dimensions = that.dimensions,\n offset = dimensions.offset,\n popup = that.popup,\n anchor = popup.options.anchor,\n anchorOffset = $(anchor).offset(),\n elementOffset = $(popup.element).offset(),\n cssClass = DIRCLASSES[popup.flipped ? REVERSE[position] : position],\n offsetAmount = anchorOffset[offset] - elementOffset[offset] + ($(anchor)[dimensions.size]() / 2);\n\n that._offset(position, that.options.offset);\n\n that.arrow\n .removeClass(\"k-callout-n k-callout-s k-callout-w k-callout-e\")\n .addClass(\"k-callout-\" + cssClass)\n .css(offset, offsetAmount);\n },\n\n _offset: function(position, offsetAmount, arrowWidth) {\n var that = this,\n isTopLeft = position == \"top\" || position == \"left\",\n isFlipped = that.popup.flipped,\n direction = (isTopLeft && isFlipped) || (!isTopLeft && !isFlipped) ? 1 : -1,\n marginRule = isTopLeft ? \"margin-\" + position : \"margin-\" + REVERSE[position],\n offset = ((arrowWidth || kendo._outerWidth(that.arrow)) / 2) + offsetAmount;\n\n that.popup.wrapper.css(marginRule, offset * direction + \"px\");\n },\n\n _addDescribedBy: function() {\n var that = this,\n anchor = that.popup.options.anchor,\n ariaId = anchor[0].id || that.element[0].id || kendo.guid(),\n describedBy = [];\n\n if (anchor.attr(DESCRIBEDBY)) {\n describedBy.push(anchor.attr(DESCRIBEDBY));\n }\n\n if (ariaId) {\n describedBy.push(ariaId + ARIAIDSUFFIX);\n anchor.attr(DESCRIBEDBY, describedBy.join(\" \"));\n that.popup.element.attr(\"id\", ariaId + ARIAIDSUFFIX);\n }\n\n },\n\n _removeDescribedBy: function(target) {\n var tooltipId = this.popup.element.attr(\"id\"),\n currentDescribedBy = target.attr(DESCRIBEDBY),\n arrayAttr, finalArray, finalDescribedbyAttr;\n\n if (!currentDescribedBy) {\n return;\n }\n\n arrayAttr = currentDescribedBy.split(\" \");\n\n if (arrayAttr && arrayAttr.length > 0) {\n finalArray = arrayAttr.filter(function(val) {\n return val !== tooltipId;\n });\n }\n\n if (finalArray && finalArray.length > 0) {\n finalDescribedbyAttr = finalArray.join(\" \");\n target.attr(DESCRIBEDBY, finalDescribedbyAttr);\n } else {\n target.removeAttr(DESCRIBEDBY);\n }\n },\n\n _openPopup: function() {\n if (!this.popup) {\n return;\n }\n\n this.popup._hovered = true;\n this.popup.open();\n }\n });\n kendo.ui.plugin(TooltipBase);\n\n var Tooltip = TooltipBase.extend({\n init: function(element, options) {\n var that = this,\n axis;\n\n TooltipBase.fn.init.call(that, element, options);\n\n axis = that.options.position.match(/left|right/) ? \"horizontal\" : \"vertical\";\n\n that.dimensions = DIMENSIONS[axis];\n\n that._documentKeyDownHandler = that._documentKeyDown.bind(that);\n\n if (this._isShownOnMouseEnter() || this._isShownOnClick()) {\n that.element.on(\"mouseenter\" + NS, that.options.filter, that._mouseenter.bind(that));\n }\n\n if (this.options.autoHide && this._isShownOnMouseEnter()) {\n that.element.on(\"mouseleave\" + NS, that.options.filter, that._mouseleave.bind(that));\n }\n\n if (this.options.autoHide && this._isShownOnFocus()) {\n that.element.on(\"blur\" + NS, that.options.filter, that._blur.bind(that));\n }\n\n if (kendo.support.touch) {\n that.element.on(kendo.support.mousedown + NS, that.options.filter, that._mouseenter.bind(that));\n }\n },\n\n options: {\n name: \"Tooltip\",\n filter: \"\",\n content: DEFAULTCONTENT,\n showAfter: 100,\n callout: true,\n offset: 0,\n position: \"bottom\",\n showOn: \"mouseenter\",\n autoHide: true,\n width: null,\n height: null,\n animation: {\n open: {\n effects: \"fade:in\",\n duration: 0\n },\n close: {\n duration: 40,\n hide: true\n }\n }\n },\n\n events: [ SHOW, HIDE, CONTENTLOAD, ERROR, REQUESTSTART ],\n\n _mouseenter: function(e) {\n saveTitleAttributes($(e.currentTarget));\n },\n\n _saveTitle: function(target) {\n saveTitleAttributes(target);\n },\n\n _appendContent: function(target) {\n var that = this,\n contentOptions = that.options.content,\n element = that.content,\n showIframe = that.options.iframe,\n iframe;\n\n if (isPlainObject(contentOptions) && contentOptions.url) {\n if (!(\"iframe\" in that.options)) {\n showIframe = !isLocalUrl(contentOptions.url);\n }\n\n that.trigger(REQUESTSTART, { options: contentOptions, target: target });\n\n if (!showIframe) {\n element.empty();\n kendo.ui.progress(element, true);\n\n // perform AJAX request\n that._ajaxRequest(contentOptions);\n } else {\n element.hide();\n\n iframe = element.find(\".\" + KCONTENTFRAME)[0];\n\n if (iframe) {\n // refresh existing iframe\n iframe.src = contentOptions.url || iframe.src;\n } else {\n element.html(IFRAMETEMPLATE({ content: contentOptions }));\n }\n\n element.find(\".\" + KCONTENTFRAME)\n .off(\"load\" + NS)\n .on(\"load\" + NS, function() {\n that.trigger(CONTENTLOAD);\n element.show();\n });\n }\n } else if (contentOptions && isFunction(contentOptions)) {\n contentOptions = contentOptions({ sender: this, target: target });\n element.html(contentOptions || \"\");\n } else {\n element.html(contentOptions);\n }\n\n that.angular(\"compile\", function() {\n return { elements: element };\n });\n },\n\n _ajaxRequest: function(options) {\n var that = this,\n successFn = function(data) {\n kendo.ui.progress(that.content, false);\n\n that.content.html(data);\n\n if (kendo._outerHeight(that.popup.element) > kendo._outerHeight(that.popup.wrapper)) {\n that.popup.wrapper.css(\"height\", kendo._outerHeight(that.popup.element) + \"px\");\n that.popup.position();\n that._positionCallout();\n }\n\n that.trigger(CONTENTLOAD);\n };\n\n jQuery.ajax(extend({\n type: \"GET\",\n dataType: \"html\",\n cache: false,\n error: function(xhr, status) {\n kendo.ui.progress(that.content, false);\n\n that.trigger(ERROR, { status: status, xhr: xhr });\n },\n success: successFn.bind(that)\n }, options));\n },\n\n _documentKeyDown: function(e) {\n if (e.keyCode === kendo.keys.ESC) {\n this.hide();\n }\n },\n\n refresh: function() {\n var that = this,\n popup = that.popup;\n\n if (popup && popup.options.anchor) {\n that._appendContent(popup.options.anchor);\n }\n },\n\n _show: function(target) {\n var that = this,\n current = that.target();\n\n if (!that.popup) {\n that._initPopup();\n }\n\n if (current && current[0] != target[0]) {\n that.popup.close(true);\n that.popup.element.kendoStop(true, true);// animation can be too long to hide the element before it is shown again\n }\n\n if (!current || current[0] != target[0]) {\n that._appendContent(target);\n that.popup.options.anchor = target;\n }\n\n that.popup.one(\"deactivate\", function() {\n restoreTitle(target);\n\n that._removeDescribedBy(target);\n\n this.element\n .removeAttr(\"id\")\n .attr(\"aria-hidden\", true);\n\n DOCUMENT.off(\"keydown\" + NS, that._documentKeyDownHandler);\n });\n\n that._openPopup();\n },\n\n _initPopup: function() {\n var that = this,\n options = that.options,\n wrapper = $(kendo.template(TEMPLATE)({\n callout: options.callout && options.position !== \"center\",\n dir: DIRCLASSES[options.position],\n autoHide: options.autoHide\n }));\n\n that.popup = new Popup(wrapper, extend({\n autosize: true,\n activate: function() {\n that._addDescribedBy();\n\n if (options.callout) {\n that._positionCallout();\n } else {\n that._offset(that.options.position, that.options.offset);\n }\n\n this.element.removeAttr(\"aria-hidden\");\n\n DOCUMENT.on(\"keydown\" + NS, that._documentKeyDownHandler);\n\n that.trigger(SHOW);\n that.popup._hovered = undefined$1;\n },\n close: function() {\n that.trigger(HIDE);\n },\n copyAnchorStyles: false,\n animation: options.animation\n }, POSITIONS[options.position]));\n\n wrapper.css({\n width: options.width,\n height: options.height\n });\n\n that.content = wrapper.find(\".k-tooltip-content\");\n that.arrow = wrapper.find(\".k-callout\");\n\n if (options.autoHide && this._isShownOnMouseEnter()) {\n wrapper.on(\"mouseleave\" + NS, that._mouseleave.bind(that));\n } else {\n wrapper.on(\"click\" + NS, \".k-tooltip-button\", that._closeButtonClick.bind(that));\n }\n },\n\n _closeButtonClick: function(e) {\n e.preventDefault();\n this.hide();\n },\n\n _mouseleave: function(e) {\n var that = this;\n\n clearTimeout(that.timeout);\n\n that.timeout = setTimeout(function() {\n that._closePopup(e.currentTarget);\n }, that.options.hideAfter);\n },\n\n _blur: function(e) {\n this._closePopup(e.currentTarget);\n },\n\n _closePopup: function(target) {\n if (this.popup && !this.popup._hovered) {\n this.popup.close();\n } else {\n restoreTitle($(target));\n }\n },\n\n destroy: function() {\n this.element.off(NS);\n\n DOCUMENT.off(\"keydown\" + NS, this._documentKeyDownHandler);\n\n TooltipBase.fn.destroy.call(this);\n }\n });\n\n kendo.ui.plugin(Tooltip);\n })(window.kendo.jQuery);\n var kendo$1 = kendo;\n\n return kendo$1;\n\n}));\n"]}