{"version":3,"file":"kendo.html.button.min.js","names":["factory","define","amd","$","undefined$1","kendo","HTMLBase","KBUTTONICON","HTMLButton","window","jQuery","html","extend","init","element","options","that","this","fn","call","wrapper","addClass","attr","type","_addClasses","iconElement","_textElement","name","icon","iconClass","spriteCssClass","imageUrl","size","rounded","fillMode","themeColor","stylingOptions","span","img","isEmpty","contents","filter","hasClass","each","idx","el","nodeType","trim","nodeValue","length","children","first","prependTo","newSpan","document","createElement","parentNode","insertBefore","appendChild","classList","add","renderButton","arguments","isPlainObject","cssProperties","registerPrefix","registerValues","prop","values","fillModeValues","concat","roundedValues"],"sources":["kendo.html.button.js"],"mappings":"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","sourcesContent":["(function (factory) {\n typeof define === 'function' && define.amd ? define(['kendo.html.base'], factory) :\n factory();\n})((function () {\n var __meta__ = {\n id: \"html.button\",\n name: \"Html.Button\",\n category: \"web\",\n description: \"HTML rendering utility for Kendo UI for jQuery.\",\n depends: [ \"html.base\" ],\n features: []\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n HTMLBase = kendo.html.HTMLBase,\n\n KBUTTON = \"k-button\",\n KBUTTONICON = \"k-button-icon\",\n KBUTTONTEXT = \"k-button-text\";\n\n var renderButton = function(element, options) {\n if (arguments[0] === undefined$1 || $.isPlainObject(arguments[0])) {\n options = element;\n element = $(\"\");\n }\n\n return (new HTMLButton(element, options)).html();\n };\n\n var HTMLButton = HTMLBase.extend({\n init: function(element, options) {\n var that = this;\n HTMLBase.fn.init.call(that, element, options);\n that.wrapper = that.element.addClass(KBUTTON);\n\n if (!that.element.attr(\"type\")) {\n that.element.attr(\"type\", that.options.type);\n }\n\n that._addClasses();\n that.iconElement();\n that._textElement();\n },\n options: {\n name: \"HTMLButton\",\n type: \"button\",\n icon: \"\",\n iconClass: \"\",\n spriteCssClass: \"\",\n imageUrl: \"\",\n size: \"medium\",\n rounded: \"medium\",\n fillMode: \"solid\",\n themeColor: \"base\",\n stylingOptions: [ \"size\", \"rounded\", \"fillMode\", \"themeColor\" ]\n },\n iconElement: function() {\n var that = this,\n element = that.element,\n options = that.options,\n icon = options.icon,\n iconClass = options.iconClass,\n spriteCssClass = options.spriteCssClass,\n imageUrl = options.imageUrl,\n span, img, isEmpty;\n\n if (spriteCssClass || imageUrl || icon || iconClass) {\n isEmpty = true;\n\n element.contents().filter(function() {\n return (!$(this).hasClass(\"k-sprite\") && !$(this).hasClass(\"k-icon\") && !$(this).hasClass(\"k-image\"));\n }).each(function(idx, el) {\n if (el.nodeType == 1 || el.nodeType == 3 && kendo.trim(el.nodeValue).length > 0) {\n isEmpty = false;\n }\n });\n }\n\n if (isEmpty) {\n that.element.addClass(\"k-icon-button\");\n }\n\n if (imageUrl) {\n img = element.children(\"img.k-image\").first();\n if (!img[0]) {\n img = $('\"icon\"').prependTo(element);\n }\n img.attr(\"src\", imageUrl);\n img.addClass(KBUTTONICON);\n } else if (icon || iconClass) {\n span = element.children(\"span.k-icon\").first();\n if (!span[0]) {\n span = $('').prependTo(element);\n }\n span.attr(\"class\", icon ? \"k-icon k-i-\" + icon : iconClass);\n span.addClass(KBUTTONICON);\n } else if (spriteCssClass) {\n span = element.children(\"span.k-sprite\").first();\n if (!span[0]) {\n span = $('').prependTo(element);\n }\n span.addClass(spriteCssClass + \" \" + KBUTTONICON);\n }\n },\n _textElement: function() {\n var element = this.element;\n\n element.contents().filter(function() {\n return (!$(this).hasClass(KBUTTONICON) && !$(this).hasClass(\"k-sprite\") && !$(this).hasClass(\"k-icon\") && !$(this).hasClass(\"k-image\"));\n }).each(function(idx, el) {\n if (el.nodeType == 1 || el.nodeType == 3 && kendo.trim(el.nodeValue).length > 0) {\n if (el.nodeType === 3) {\n var newSpan = document.createElement('span');\n\n el.parentNode.insertBefore(newSpan, el);\n newSpan.appendChild(el);\n el = newSpan;\n }\n\n el.classList.add(KBUTTONTEXT);\n }\n });\n }\n });\n\n $.extend(kendo.html, {\n renderButton: renderButton,\n HTMLButton: HTMLButton\n });\n\n kendo.cssProperties.registerPrefix(\"HTMLButton\", \"k-button-\");\n\n kendo.cssProperties.registerValues(\"HTMLButton\", [{\n prop: \"fillMode\",\n values: kendo.cssProperties.fillModeValues.concat([\"link\"])\n }, {\n prop: \"rounded\",\n values: kendo.cssProperties.roundedValues.concat([['full', 'full']])\n }]);\n\n })(window.kendo.jQuery);\n\n}));\n"]}