primeng
Version:
PrimeNG is an open source UI library for Angular featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeB
1 lines • 11.3 kB
Source Map (JSON)
{"version":3,"file":"primeng-tag.mjs","sources":["../../src/tag/style/tagstyle.ts","../../src/tag/tag.ts","../../src/tag/primeng-tag.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-tag {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n background: ${dt('tag.primary.background')};\n color: ${dt('tag.primary.color')};\n font-size: ${dt('tag.font.size')};\n font-weight: ${dt('tag.font.weight')};\n padding: ${dt('tag.padding')};\n border-radius: ${dt('tag.border.radius')};\n gap: ${dt('tag.gap')};\n}\n\n.p-tag-icon {\n font-size: ${dt('tag.icon.size')};\n width: ${dt('tag.icon.size')};\n height:${dt('tag.icon.size')};\n}\n\n.p-tag-rounded {\n border-radius: ${dt('tag.rounded.border.radius')};\n}\n\n.p-tag-success {\n background: ${dt('tag.success.background')};\n color: ${dt('tag.success.color')};\n}\n\n.p-tag-info {\n background: ${dt('tag.info.background')};\n color: ${dt('tag.info.color')};\n}\n\n.p-tag-warn {\n background: ${dt('tag.warn.background')};\n color: ${dt('tag.warn.color')};\n}\n\n.p-tag-danger {\n background: ${dt('tag.danger.background')};\n color: ${dt('tag.danger.color')};\n}\n\n.p-tag-secondary {\n background: ${dt('tag.secondary.background')};\n color: ${dt('tag.secondary.color')};\n}\n\n.p-tag-contrast {\n background: ${dt('tag.contrast.background')};\n color: ${dt('tag.contrast.color')};\n}\n`;\n\nconst classes = {\n root: ({ props }) => [\n 'p-tag p-component',\n {\n 'p-tag-info': props.severity === 'info',\n 'p-tag-success': props.severity === 'success',\n 'p-tag-warn': props.severity === 'warn',\n 'p-tag-danger': props.severity === 'danger',\n 'p-tag-secondary': props.severity === 'secondary',\n 'p-tag-contrast': props.severity === 'contrast',\n 'p-tag-rounded': props.rounded\n }\n ],\n icon: 'p-tag-icon',\n label: 'p-tag-label'\n};\n\n@Injectable()\nexport class TagStyle extends BaseStyle {\n name = 'tag';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Tag component is used to categorize content.\n *\n * [Live Demo](https://www.primeng.org/tag)\n *\n * @module tagstyle\n *\n */\nexport enum TagClasses {\n /**\n * Class name of the root element\n */\n root = 'p-tag',\n /**\n * Class name of the icon element\n */\n icon = 'p-tag-icon',\n /**\n * Class name of the label element\n */\n label = 'p-tag-label'\n}\n\nexport interface TagStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { AfterContentInit, booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, inject, Input, NgModule, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { TagStyle } from './style/tagstyle';\n\n/**\n * Tag component is used to categorize content.\n * @group Components\n */\n@Component({\n selector: 'p-tag',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: `\n <ng-content></ng-content>\n <ng-container *ngIf=\"!iconTemplate && !_iconTemplate\">\n <span class=\"p-tag-icon\" [ngClass]=\"icon\" *ngIf=\"icon\"></span>\n </ng-container>\n <span class=\"p-tag-icon\" *ngIf=\"iconTemplate || _iconTemplate\">\n <ng-template *ngTemplateOutlet=\"iconTemplate || _iconTemplate\"></ng-template>\n </span>\n <span class=\"p-tag-label\">{{ value }}</span>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [TagStyle],\n host: {\n '[class]': 'containerClass()',\n '[style]': 'style'\n }\n})\nexport class Tag extends BaseComponent implements AfterContentInit {\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() get style(): { [klass: string]: any } | null | undefined {\n return this._style;\n }\n set style(value: { [klass: string]: any } | null | undefined) {\n this._style = value;\n this.cd.markForCheck();\n }\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Severity type of the tag.\n * @group Props\n */\n @Input() severity: 'success' | 'secondary' | 'info' | 'warn' | 'danger' | 'contrast' | undefined;\n /**\n * Value to display inside the tag.\n * @group Props\n */\n @Input() value: string | undefined;\n /**\n * Icon of the tag to display next to the value.\n * @group Props\n */\n @Input() icon: string | undefined;\n /**\n * Whether the corners of the tag are rounded.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) rounded: boolean | undefined;\n\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any>;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n _style: { [klass: string]: any } | null | undefined;\n\n _componentStyle = inject(TagStyle);\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'icon':\n this._iconTemplate = item.template;\n break;\n }\n });\n }\n\n containerClass() {\n let classes = 'p-tag p-component';\n\n if (this.severity) {\n classes += ` p-tag-${this.severity}`;\n }\n\n if (this.rounded) {\n classes += ' p-tag-rounded';\n }\n\n if (this.styleClass) {\n classes += ` ${this.styleClass}`;\n }\n\n return classes;\n }\n}\n\n@NgModule({\n imports: [Tag, SharedModule],\n exports: [Tag, SharedModule]\n})\nexport class TagModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;AAGA,MAAM,KAAK,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK;;;;;kBAKR,EAAE,CAAC,wBAAwB,CAAC,CAAA;aACjC,EAAE,CAAC,mBAAmB,CAAC,CAAA;iBACnB,EAAE,CAAC,eAAe,CAAC,CAAA;mBACjB,EAAE,CAAC,iBAAiB,CAAC,CAAA;eACzB,EAAE,CAAC,aAAa,CAAC,CAAA;qBACX,EAAE,CAAC,mBAAmB,CAAC,CAAA;WACjC,EAAE,CAAC,SAAS,CAAC,CAAA;;;;iBAIP,EAAE,CAAC,eAAe,CAAC,CAAA;aACvB,EAAE,CAAC,eAAe,CAAC,CAAA;aACnB,EAAE,CAAC,eAAe,CAAC,CAAA;;;;qBAIX,EAAE,CAAC,2BAA2B,CAAC,CAAA;;;;kBAIlC,EAAE,CAAC,wBAAwB,CAAC,CAAA;aACjC,EAAE,CAAC,mBAAmB,CAAC,CAAA;;;;kBAIlB,EAAE,CAAC,qBAAqB,CAAC,CAAA;aAC9B,EAAE,CAAC,gBAAgB,CAAC,CAAA;;;;kBAIf,EAAE,CAAC,qBAAqB,CAAC,CAAA;aAC9B,EAAE,CAAC,gBAAgB,CAAC,CAAA;;;;kBAIf,EAAE,CAAC,uBAAuB,CAAC,CAAA;aAChC,EAAE,CAAC,kBAAkB,CAAC,CAAA;;;;kBAIjB,EAAE,CAAC,0BAA0B,CAAC,CAAA;aACnC,EAAE,CAAC,qBAAqB,CAAC,CAAA;;;;kBAIpB,EAAE,CAAC,yBAAyB,CAAC,CAAA;aAClC,EAAE,CAAC,oBAAoB,CAAC,CAAA;;CAEpC;AAED,MAAM,OAAO,GAAG;AACZ,IAAA,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK;QACjB,mBAAmB;AACnB,QAAA;AACI,YAAA,YAAY,EAAE,KAAK,CAAC,QAAQ,KAAK,MAAM;AACvC,YAAA,eAAe,EAAE,KAAK,CAAC,QAAQ,KAAK,SAAS;AAC7C,YAAA,YAAY,EAAE,KAAK,CAAC,QAAQ,KAAK,MAAM;AACvC,YAAA,cAAc,EAAE,KAAK,CAAC,QAAQ,KAAK,QAAQ;AAC3C,YAAA,iBAAiB,EAAE,KAAK,CAAC,QAAQ,KAAK,WAAW;AACjD,YAAA,gBAAgB,EAAE,KAAK,CAAC,QAAQ,KAAK,UAAU;YAC/C,eAAe,EAAE,KAAK,CAAC;AAC1B;AACJ,KAAA;AACD,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,KAAK,EAAE;CACV;AAGK,MAAO,QAAS,SAAQ,SAAS,CAAA;IACnC,IAAI,GAAG,KAAK;IAEZ,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,QAAQ,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAR,QAAQ,EAAA,CAAA;;2FAAR,QAAQ,EAAA,UAAA,EAAA,CAAA;kBADpB;;AASD;;;;;;;;AAQG;IACS;AAAZ,CAAA,UAAY,UAAU,EAAA;AAClB;;AAEG;AACH,IAAA,UAAA,CAAA,MAAA,CAAA,GAAA,OAAc;AACd;;AAEG;AACH,IAAA,UAAA,CAAA,MAAA,CAAA,GAAA,YAAmB;AACnB;;AAEG;AACH,IAAA,UAAA,CAAA,OAAA,CAAA,GAAA,aAAqB;AACzB,CAAC,EAbW,UAAU,KAAV,UAAU,GAarB,EAAA,CAAA,CAAA;;ACpGD;;;AAGG;AAuBG,MAAO,GAAI,SAAQ,aAAa,CAAA;AAClC;;;AAGG;AACH,IAAA,IAAa,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,MAAM;;IAEtB,IAAI,KAAK,CAAC,KAAkD,EAAA;AACxD,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE;;AAE1B;;;AAGG;AACM,IAAA,UAAU;AACnB;;;AAGG;AACM,IAAA,QAAQ;AACjB;;;AAGG;AACM,IAAA,KAAK;AACd;;;AAGG;AACM,IAAA,IAAI;AACb;;;AAGG;AACqC,IAAA,OAAO;AAED,IAAA,YAAY;AAE1B,IAAA,SAAS;AAEzC,IAAA,aAAa;AAEb,IAAA,MAAM;AAEN,IAAA,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC;IAElC,kBAAkB,GAAA;QACd,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,KAAI;AAC7B,YAAA,QAAQ,IAAI,CAAC,OAAO,EAAE;AAClB,gBAAA,KAAK,MAAM;AACP,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ;oBAClC;;AAEZ,SAAC,CAAC;;IAGN,cAAc,GAAA;QACV,IAAI,OAAO,GAAG,mBAAmB;AAEjC,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,YAAA,OAAO,IAAI,CAAU,OAAA,EAAA,IAAI,CAAC,QAAQ,EAAE;;AAGxC,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,OAAO,IAAI,gBAAgB;;AAG/B,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,OAAO,IAAI,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,EAAE;;AAGpC,QAAA,OAAO,OAAO;;uGAzET,GAAG,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAH,GAAG,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,OAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAoCQ,gBAAgB,CA1CzB,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,OAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,QAAQ,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EA8CJ,aAAa,EA1DpB,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;KAST,EAVS,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,uYAAE,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAmB3B,GAAG,EAAA,UAAA,EAAA,CAAA;kBAtBf,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,OAAO;AACjB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;AACrC,oBAAA,QAAQ,EAAE;;;;;;;;;AAST,IAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE,CAAC,QAAQ,CAAC;AACrB,oBAAA,IAAI,EAAE;AACF,wBAAA,SAAS,EAAE,kBAAkB;AAC7B,wBAAA,SAAS,EAAE;AACd;AACJ,iBAAA;8BAMgB,KAAK,EAAA,CAAA;sBAAjB;gBAWQ,UAAU,EAAA,CAAA;sBAAlB;gBAKQ,QAAQ,EAAA,CAAA;sBAAhB;gBAKQ,KAAK,EAAA,CAAA;sBAAb;gBAKQ,IAAI,EAAA,CAAA;sBAAZ;gBAKuC,OAAO,EAAA,CAAA;sBAA9C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAEQ,YAAY,EAAA,CAAA;sBAAzD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAEZ,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa;;MAyCrB,SAAS,CAAA;uGAAT,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAT,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAS,YAjFT,GAAG,EA8EG,YAAY,CA9ElB,EAAA,OAAA,EAAA,CAAA,GAAG,EA+EG,YAAY,CAAA,EAAA,CAAA;AAElB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,SAAS,EAHR,OAAA,EAAA,CAAA,GAAG,EAAE,YAAY,EACZ,YAAY,CAAA,EAAA,CAAA;;2FAElB,SAAS,EAAA,UAAA,EAAA,CAAA;kBAJrB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY,CAAC;AAC5B,oBAAA,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY;AAC9B,iBAAA;;;AChHD;;AAEG;;;;"}