{"version":3,"file":"kendo.html.button.min.js","sources":["kendo.html.button.js"],"sourcesContent":["(function(f, define) {\n define('kendo.html.button',[\n \"kendo.html.base\"\n ], f);\n})(function() {\n\nvar __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) {\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 || $.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\nreturn window.kendo;\n\n}, typeof define == 'function' && define.amd ? define : function(a1, a2, a3) { (a3 || a2)(); });\n\n"],"names":["define","__meta__","id","name","category","description","depends","features","$","window","kendo","jQuery","undefined","HTMLBase","html","KBUTTON","KBUTTONICON","KBUTTONTEXT","renderButton","element","options","arguments","isPlainObject","HTMLButton","extend","init","that","this","fn","call","wrapper","addClass","attr","type","_addClasses","iconElement","_textElement","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","cssProperties","registerPrefix","registerValues","prop","values","fillModeValues","concat","roundedValues","amd","a1","a2","a3"],"mappings":"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"}