{"version":3,"sources":["kendo.badge.js"],"names":["f","define","$","undefined","kendo","window","Widget","ui","HIDDEN","iconTemplate","svgIconTemplate","Badge","extend","init","element","options","that","this","fn","call","_content","_appearance","notify","destroy","name","cutoutBorder","data","fill","icon","max","Infinity","position","align","sizes","small","medium","large","size","shape","template","text","themeColor","visible","_classNames","_text","_template","bind","html","_themeColor","_shape","_sizes","_size","_fill","_cutoutBorder","_align","_position","_visible","_updateClassNames","classNames","keepClassNames","sizeAbbr","removeClass","index","className","indexOf","push","split","length","replace","addClass","join","setOptions","arguments","iconTemplateFunction","_icon","color","hide","show","plugin","jQuery","amd","a1","a2","a3"],"mappings":"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","file":"kendo.badge.min.js","sourcesContent":["/*!\n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n                                                                                                                                                                                                       \n\n*/\n(function (f, define) {\n    define('kendo.badge', ['kendo.core'], f);\n}(function () {\n    var __meta__ = {\n        id: 'badge',\n        name: 'Badge',\n        category: 'web',\n        description: 'The Badge decorates avatars, navigation menus, or other components in the application when visual notification is needed',\n        depends: ['core']\n    };\n    (function ($, undefined) {\n        var kendo = window.kendo;\n        var Widget = kendo.ui.Widget;\n        var ui = kendo.ui;\n        var HIDDEN = 'k-hidden';\n        var iconTemplate = '<span class=\\'k-badge-icon k-icon k-i-#= icon #\\'></span>';\n        var svgIconTemplate = '<span class=\\'k-badge-icon k-svg-icon\\'>#= icon #</span>';\n        var Badge = Widget.extend({\n            init: function (element, options) {\n                var that = this;\n                Widget.fn.init.call(that, element, options);\n                that._content();\n                that._appearance();\n                kendo.notify(that);\n            },\n            destroy: function () {\n                var that = this;\n                Widget.fn.destroy.call(that);\n            },\n            options: {\n                name: 'Badge',\n                cutoutBorder: false,\n                data: {},\n                fill: 'solid',\n                icon: '',\n                max: Infinity,\n                position: 'inline',\n                align: '',\n                sizes: {\n                    'small': 'sm',\n                    'medium': 'md',\n                    'large': 'lg'\n                },\n                size: 'medium',\n                shape: 'rounded',\n                template: null,\n                text: '',\n                themeColor: 'secondary',\n                visible: true,\n                _classNames: []\n            },\n            _content: function () {\n                var that = this;\n                var text = that.options.text;\n                var template = that.options.template;\n                var data = that.options.data;\n                var icon = that.options.icon;\n                if (template !== null) {\n                    that._text = text;\n                    that._template = kendo.template(template).bind(that);\n                    that.element.html(that._template(data));\n                    return;\n                }\n                if (icon !== '') {\n                    that.icon(icon);\n                    return;\n                }\n                if (text !== '') {\n                    that.text(text);\n                    return;\n                }\n                that.text(that.element.html());\n            },\n            _appearance: function () {\n                var that = this;\n                that._themeColor = that.options.themeColor;\n                that._shape = that.options.shape;\n                that._sizes = that.options.sizes;\n                that._size = that.options.size;\n                that._fill = that.options.fill;\n                that._cutoutBorder = that.options.cutoutBorder;\n                that._align = that.options.align;\n                that._position = that.options.position;\n                that._visible = that.options.visible;\n                that._updateClassNames();\n            },\n            _updateClassNames: function () {\n                var that = this;\n                var classNames = ['k-badge'];\n                var keepClassNames = that.options._classNames;\n                var themeColor = that._themeColor;\n                var shape = that._shape;\n                var sizes = that._sizes;\n                var size = that._size;\n                var sizeAbbr = sizes[size] === undefined ? size : sizes[size];\n                var fill = that._fill;\n                var cutoutBorder = that._cutoutBorder;\n                var align = that._align;\n                var position = that._position;\n                var visible = that._visible;\n                that.element.removeClass(function (index, className) {\n                    if (className.indexOf('k-') === 0 && keepClassNames.indexOf(className) === -1) {\n                        that.element.removeClass(className);\n                    }\n                });\n                if (typeof fill === 'string' && fill !== '') {\n                    classNames.push('k-badge-' + fill);\n                }\n                if (typeof themeColor === 'string' && themeColor !== '') {\n                    classNames.push('k-badge-' + themeColor);\n                }\n                if (typeof size === 'string' && size !== '') {\n                    classNames.push('k-badge-' + sizeAbbr);\n                }\n                if (typeof shape === 'string' && shape !== '') {\n                    classNames.push('k-badge-' + shape);\n                }\n                if (typeof cutoutBorder === 'boolean' && cutoutBorder === true) {\n                    classNames.push('k-badge-border-cutout');\n                }\n                if (typeof position === 'string' && position !== '') {\n                    classNames.push('k-badge-' + position);\n                }\n                if (typeof position === 'string' && position !== '' && position !== 'inline' && typeof align === 'string' && align.split(' ').length == 2) {\n                    classNames.push('k-' + align.replace(' ', '-'));\n                }\n                if (visible === false) {\n                    classNames.push(HIDDEN);\n                }\n                that.element.addClass(classNames.join(' '));\n            },\n            setOptions: function (options) {\n                var that = this;\n                that.element.removeClass(function (index, className) {\n                    if (className.indexOf('k-') >= 0) {\n                        that.element.removeClass(className);\n                    }\n                });\n                Widget.fn.setOptions.call(that, options);\n                that._content();\n                that._appearance();\n            },\n            text: function (text) {\n                var that = this;\n                var max = that.options.max;\n                if (arguments.length === 0 || text === undefined) {\n                    return that._text;\n                }\n                that._text = text;\n                if (text === true || text === false || text === null) {\n                    that.element.html('');\n                    return;\n                }\n                if (typeof text === 'string') {\n                    that.element.html(text);\n                    return;\n                }\n                if (typeof text === 'number') {\n                    if (text > max) {\n                        that.element.html(max + '+');\n                    } else {\n                        that.element.html(text);\n                    }\n                    return;\n                }\n                if (typeof text === 'object' && 'toString' in text) {\n                    that.element.html(text.toString());\n                    return;\n                }\n            },\n            icon: function (icon) {\n                var that = this;\n                var iconTemplateFunction;\n                if (arguments.length === 0 || icon === undefined) {\n                    return that._icon;\n                }\n                that._icon = icon;\n                if (icon.indexOf('<svg') === 0) {\n                    iconTemplateFunction = kendo.template(svgIconTemplate);\n                    that.element.html(iconTemplateFunction({ icon: icon }));\n                    return;\n                }\n                iconTemplateFunction = kendo.template(iconTemplate);\n                that.element.html(iconTemplateFunction({ icon: icon }));\n            },\n            themeColor: function (color) {\n                var that = this;\n                if (arguments.length === 0 || color === undefined) {\n                    return that._themeColor;\n                }\n                that._themeColor = color;\n                that._updateClassNames();\n            },\n            shape: function (shape) {\n                var that = this;\n                if (arguments.length === 0 || shape === undefined) {\n                    return that._shape;\n                }\n                that._shape = shape;\n                that._updateClassNames();\n            },\n            hide: function () {\n                var that = this;\n                that._visible = false;\n                that._updateClassNames();\n            },\n            show: function () {\n                var that = this;\n                that._visible = true;\n                that._updateClassNames();\n            }\n        });\n        ui.plugin(Badge);\n    }(window.kendo.jQuery));\n    return window.kendo;\n}, typeof define == 'function' && define.amd ? define : function (a1, a2, a3) {\n    (a3 || a2)();\n}));"]}