{"version":3,"file":"primeng-badge.umd.js","sources":["../../src/app/components/badge/badge.ts","../../src/app/components/badge/primeng-badge.ts"],"sourcesContent":["import { NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, QueryList, ContentChildren, TemplateRef, Directive, OnDestroy, AfterViewInit, ElementRef } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SharedModule } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { UniqueComponentId } from 'primeng/utils';\n\n@Directive({\n    selector: '[pBadge]'\n})\nexport class BadgeDirective implements AfterViewInit, OnDestroy {\n\n    @Input() iconPos: 'left' | 'right' | 'top' | 'bottom' = 'left';\n            \n    public _value: string;\n            \n    public initialized: boolean;\n\n    private id: string;\n    \n    constructor(public el: ElementRef) {}\n    \n    ngAfterViewInit() {\n        this.id = UniqueComponentId() + '_badge';\n        let el = this.el.nativeElement.nodeName.indexOf(\"-\") != -1 ? this.el.nativeElement.firstChild : this.el.nativeElement; \n\n        let badge = document.createElement('span');\n        badge.id = this.id ;\n        badge.className = 'p-badge p-component';\n\n        if (this.severity) {\n            DomHandler.addClass(badge, 'p-badge-' + this.severity);\n        }\n        \n        if (this.value != null) {\n            badge.appendChild(document.createTextNode(this.value));\n            \n            if (String(this.value).length === 1) {\n                DomHandler.addClass(badge, 'p-badge-no-gutter');\n            }\n        }\n        else {\n            DomHandler.addClass(badge, 'p-badge-dot');\n        }\n\n        DomHandler.addClass(el, 'p-overlay-badge');\n        el.appendChild(badge);\n\n        this.initialized = true;\n    }\n\n    @Input() get value(): string {\n        return this._value;\n    }\n\n    set value(val: string) {\n        if (val !== this._value) {\n            this._value = val;\n\n            if (this.initialized) {\n                let badge = document.getElementById(this.id);\n\n                if (this._value) {\n                    if (DomHandler.hasClass(badge, 'p-badge-dot'))\n                        DomHandler.removeClass(badge, 'p-badge-dot');\n\n                    if (String(this._value).length === 1) {\n                        DomHandler.addClass(badge, 'p-badge-no-gutter');\n                    }\n                    else {\n                        DomHandler.removeClass(badge, 'p-badge-no-gutter');\n                    }\n                }\n                else if (!this._value && !DomHandler.hasClass(badge, 'p-badge-dot')) {\n                    DomHandler.addClass(badge, 'p-badge-dot');\n                }\n\n                badge.innerHTML = '';\n                badge.appendChild(document.createTextNode(this._value));\n            }\n        }\n    }\n\n    @Input() severity: string;\n        \n    ngOnDestroy() {\n        this.initialized = false;\n    }\n}\n\n@Component({\n    selector: 'p-badge',\n    template: `\n        <span [ngClass]=\"containerClass()\" [class]=\"styleClass\" [ngStyle]=\"style\">\n                {{value}}\n        </span>\n    `,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    styleUrls: ['./badge.css']\n})\nexport class Badge {\n\n    @Input() styleClass: string;\n\n    @Input() style: any;\n\n    @Input() size: string;\n    \n    @Input() severity: string;\n    \n    @Input() value: string;\n    \n    containerClass() {\n        return {\n            'p-badge p-component': true,\n            'p-badge-no-gutter': this.value && String(this.value).length === 1,\n            'p-badge-lg': this.size === 'large',\n            'p-badge-xl': this.size === 'xlarge',\n            'p-badge-info': this.severity === 'info',\n            'p-badge-success': this.severity === 'success',\n            'p-badge-warning': this.severity === 'warning',\n            'p-badge-danger': this.severity === 'danger'\n        };\n    }\n}\n\n@NgModule({\n    imports: [CommonModule],\n    exports: [Badge, BadgeDirective, SharedModule],\n    declarations: [Badge, BadgeDirective]\n})\nexport class BadgeModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["UniqueComponentId","DomHandler","Directive","Input","Component","ChangeDetectionStrategy","ViewEncapsulation","CommonModule","SharedModule","NgModule"],"mappings":"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"}