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.7 kB
Source Map (JSON)
{"version":3,"file":"primeng-avatar.mjs","sources":["../../src/avatar/style/avatarstyle.ts","../../src/avatar/avatar.ts","../../src/avatar/primeng-avatar.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-avatar {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ${dt('avatar.width')};\n height: ${dt('avatar.height')};\n font-size: ${dt('avatar.font.size')};\n color: ${dt('avatar.color')};\n background: ${dt('avatar.background')};\n border-radius: ${dt('avatar.border.radius')};\n}\n\n.p-avatar-image {\n background: transparent;\n}\n\n.p-avatar-circle {\n border-radius: 50%;\n}\n\n.p-avatar-circle img {\n border-radius: 50%;\n}\n\n.p-avatar-icon {\n font-size: ${dt('avatar.icon.size')};\n width: ${dt('avatar.icon.size')};\n height: ${dt('avatar.icon.size')};\n}\n\n.p-avatar img {\n width: 100%;\n height: 100%;\n}\n\n.p-avatar-lg {\n width: ${dt('avatar.lg.width')};\n height: ${dt('avatar.lg.width')};\n font-size: ${dt('avatar.lg.font.size')};\n}\n\n.p-avatar-lg .p-avatar-icon {\n font-size: ${dt('avatar.lg.icon.size')};\n width: ${dt('avatar.lg.icon.size')};\n height: ${dt('avatar.lg.icon.size')};\n}\n\n.p-avatar-xl {\n width: ${dt('avatar.xl.width')};\n height: ${dt('avatar.xl.width')};\n font-size: ${dt('avatar.xl.font.size')};\n}\n\n.p-avatar-xl .p-avatar-icon {\n font-size: ${dt('avatar.xl.font.size')};\n width: ${dt('avatar.xl.icon.size')};\n height: ${dt('avatar.xl.icon.size')};\n}\n\n.p-avatar-group {\n display: flex;\n align-items: center;\n}\n\n.p-avatar-group .p-avatar + .p-avatar {\n margin-inline-start: ${dt('avatar.group.offset')};\n}\n\n.p-avatar-group .p-avatar {\n border: 2px solid ${dt('avatar.group.border.color')};\n}\n\n.p-avatar-group .p-avatar-lg + .p-avatar-lg {\n margin-inline-start: ${dt('avatar.lg.group.offset')};\n}\n\n.p-avatar-group .p-avatar-xl + .p-avatar-xl {\n margin-inline-start: ${dt('avatar.xl.group.offset')};\n}\n`;\n\nconst classes = {\n root: ({ props }) => [\n 'p-avatar p-component',\n {\n 'p-avatar-image': props.image != null,\n 'p-avatar-circle': props.shape === 'circle',\n 'p-avatar-lg': props.size === 'large',\n 'p-avatar-xl': props.size === 'xlarge'\n }\n ],\n label: 'p-avatar-label',\n icon: 'p-avatar-icon'\n};\n\n@Injectable()\nexport class AvatarStyle extends BaseStyle {\n name = 'avatar';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Avatar represents people using icons, labels and images.\n *\n * - [Live Demo](https://primeng.org/avatar)\n *\n * @module avatarstyle\n *\n */\nexport enum AvatarClasses {\n /**\n * Class name of the root element\n */\n root = 'p-avatar',\n /**\n * Class name of the label element\n */\n label = 'p-avatar-label',\n /**\n * Class name of the icon element\n */\n icon = 'p-avatar-icon'\n}\n\nexport interface AvatarStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, inject, Input, NgModule, Output, ViewEncapsulation } from '@angular/core';\nimport { SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { AvatarStyle } from './style/avatarstyle';\n\n/**\n * Avatar represents people using icons, labels and images.\n * @group Components\n */\n@Component({\n selector: 'p-avatar',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: `\n <ng-content></ng-content>\n <span class=\"p-avatar-text\" *ngIf=\"label; else iconTemplate\">{{ label }}</span>\n <ng-template #iconTemplate><span [class]=\"icon\" [ngClass]=\"'p-avatar-icon'\" *ngIf=\"icon; else imageTemplate\"></span></ng-template>\n <ng-template #imageTemplate> <img [src]=\"image\" *ngIf=\"image\" (error)=\"imageError($event)\" [attr.aria-label]=\"ariaLabel\" /></ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-avatar]': 'true',\n '[class.p-component]': 'true',\n '[class.p-avatar-circle]': 'shape === \"circle\"',\n '[class.p-avatar-lg]': 'size === \"large\"',\n '[class.p-avatar-xl]': 'size === \"xlarge\"',\n '[class.p-avatar-image]': 'image != null',\n '[attr.data-pc-name]': '\"avatar\"',\n '[attr.aria-label]': 'ariaLabel',\n '[attr.aria-labelledby]': 'ariaLabelledBy',\n '[style]': 'style'\n },\n providers: [AvatarStyle]\n})\nexport class Avatar extends BaseComponent {\n /**\n * Defines the text to display.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Defines the icon to display.\n * @group Props\n */\n @Input() icon: string | undefined;\n /**\n * Defines the image to display.\n * @group Props\n */\n @Input() image: string | undefined;\n /**\n * Size of the element.\n * @group Props\n */\n @Input() size: 'normal' | 'large' | 'xlarge' | undefined = 'normal';\n /**\n * Shape of the element.\n * @group Props\n */\n @Input() shape: 'square' | 'circle' | undefined = 'square';\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Establishes a string value that labels the component.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * This event is triggered if an error occurs while loading an image file.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onImageError: EventEmitter<Event> = new EventEmitter<Event>();\n\n _componentStyle = inject(AvatarStyle);\n\n imageError(event: Event) {\n this.onImageError.emit(event);\n }\n\n @HostBinding('class') get hostClass(): any {\n return this.styleClass;\n }\n}\n\n@NgModule({\n imports: [Avatar, SharedModule],\n exports: [Avatar, SharedModule]\n})\nexport class AvatarModule {}\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;;;;;aAKb,EAAE,CAAC,cAAc,CAAC,CAAA;cACjB,EAAE,CAAC,eAAe,CAAC,CAAA;iBAChB,EAAE,CAAC,kBAAkB,CAAC,CAAA;aAC1B,EAAE,CAAC,cAAc,CAAC,CAAA;kBACb,EAAE,CAAC,mBAAmB,CAAC,CAAA;qBACpB,EAAE,CAAC,sBAAsB,CAAC,CAAA;;;;;;;;;;;;;;;;iBAgB9B,EAAE,CAAC,kBAAkB,CAAC,CAAA;aAC1B,EAAE,CAAC,kBAAkB,CAAC,CAAA;cACrB,EAAE,CAAC,kBAAkB,CAAC,CAAA;;;;;;;;;aASvB,EAAE,CAAC,iBAAiB,CAAC,CAAA;cACpB,EAAE,CAAC,iBAAiB,CAAC,CAAA;iBAClB,EAAE,CAAC,qBAAqB,CAAC,CAAA;;;;iBAIzB,EAAE,CAAC,qBAAqB,CAAC,CAAA;aAC7B,EAAE,CAAC,qBAAqB,CAAC,CAAA;cACxB,EAAE,CAAC,qBAAqB,CAAC,CAAA;;;;aAI1B,EAAE,CAAC,iBAAiB,CAAC,CAAA;cACpB,EAAE,CAAC,iBAAiB,CAAC,CAAA;iBAClB,EAAE,CAAC,qBAAqB,CAAC,CAAA;;;;iBAIzB,EAAE,CAAC,qBAAqB,CAAC,CAAA;aAC7B,EAAE,CAAC,qBAAqB,CAAC,CAAA;cACxB,EAAE,CAAC,qBAAqB,CAAC,CAAA;;;;;;;;;2BASZ,EAAE,CAAC,qBAAqB,CAAC,CAAA;;;;wBAI5B,EAAE,CAAC,2BAA2B,CAAC,CAAA;;;;2BAI5B,EAAE,CAAC,wBAAwB,CAAC,CAAA;;;;2BAI5B,EAAE,CAAC,wBAAwB,CAAC,CAAA;;CAEtD;AAED,MAAM,OAAO,GAAG;AACZ,IAAA,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK;QACjB,sBAAsB;AACtB,QAAA;AACI,YAAA,gBAAgB,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI;AACrC,YAAA,iBAAiB,EAAE,KAAK,CAAC,KAAK,KAAK,QAAQ;AAC3C,YAAA,aAAa,EAAE,KAAK,CAAC,IAAI,KAAK,OAAO;AACrC,YAAA,aAAa,EAAE,KAAK,CAAC,IAAI,KAAK;AACjC;AACJ,KAAA;AACD,IAAA,KAAK,EAAE,gBAAgB;AACvB,IAAA,IAAI,EAAE;CACT;AAGK,MAAO,WAAY,SAAQ,SAAS,CAAA;IACtC,IAAI,GAAG,QAAQ;IAEf,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,WAAW,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAX,WAAW,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB;;AASD;;;;;;;;AAQG;IACS;AAAZ,CAAA,UAAY,aAAa,EAAA;AACrB;;AAEG;AACH,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,UAAiB;AACjB;;AAEG;AACH,IAAA,aAAA,CAAA,OAAA,CAAA,GAAA,gBAAwB;AACxB;;AAEG;AACH,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,eAAsB;AAC1B,CAAC,EAbW,aAAa,KAAb,aAAa,GAaxB,EAAA,CAAA,CAAA;;AC5HD;;;AAGG;AA2BG,MAAO,MAAO,SAAQ,aAAa,CAAA;AACrC;;;AAGG;AACM,IAAA,KAAK;AACd;;;AAGG;AACM,IAAA,IAAI;AACb;;;AAGG;AACM,IAAA,KAAK;AACd;;;AAGG;IACM,IAAI,GAA8C,QAAQ;AACnE;;;AAGG;IACM,KAAK,GAAoC,QAAQ;AAC1D;;;AAGG;AACM,IAAA,KAAK;AACd;;;AAGG;AACM,IAAA,UAAU;AACnB;;;AAGG;AACM,IAAA,SAAS;AAClB;;;AAGG;AACM,IAAA,cAAc;AACvB;;;;AAIG;AACO,IAAA,YAAY,GAAwB,IAAI,YAAY,EAAS;AAEvE,IAAA,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC;AAErC,IAAA,UAAU,CAAC,KAAY,EAAA;AACnB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;;AAGjC,IAAA,IAA0B,SAAS,GAAA;QAC/B,OAAO,IAAI,CAAC,UAAU;;uGA5DjB,MAAM,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAN,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAM,EAFJ,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,sBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,sBAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,WAAW,CAAC,EApBd,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;KAKT,EANS,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,gOAAE,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAuB3B,MAAM,EAAA,UAAA,EAAA,CAAA;kBA1BlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;AACrC,oBAAA,QAAQ,EAAE;;;;;AAKT,IAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE;AACF,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,qBAAqB,EAAE,MAAM;AAC7B,wBAAA,yBAAyB,EAAE,oBAAoB;AAC/C,wBAAA,qBAAqB,EAAE,kBAAkB;AACzC,wBAAA,qBAAqB,EAAE,mBAAmB;AAC1C,wBAAA,wBAAwB,EAAE,eAAe;AACzC,wBAAA,qBAAqB,EAAE,UAAU;AACjC,wBAAA,mBAAmB,EAAE,WAAW;AAChC,wBAAA,wBAAwB,EAAE,gBAAgB;AAC1C,wBAAA,SAAS,EAAE;AACd,qBAAA;oBACD,SAAS,EAAE,CAAC,WAAW;AAC1B,iBAAA;8BAMY,KAAK,EAAA,CAAA;sBAAb;gBAKQ,IAAI,EAAA,CAAA;sBAAZ;gBAKQ,KAAK,EAAA,CAAA;sBAAb;gBAKQ,IAAI,EAAA,CAAA;sBAAZ;gBAKQ,KAAK,EAAA,CAAA;sBAAb;gBAKQ,KAAK,EAAA,CAAA;sBAAb;gBAKQ,UAAU,EAAA,CAAA;sBAAlB;gBAKQ,SAAS,EAAA,CAAA;sBAAjB;gBAKQ,cAAc,EAAA,CAAA;sBAAtB;gBAMS,YAAY,EAAA,CAAA;sBAArB;gBAQyB,SAAS,EAAA,CAAA;sBAAlC,WAAW;uBAAC,OAAO;;MASX,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YApEZ,MAAM,EAiEG,YAAY,CAjErB,EAAA,OAAA,EAAA,CAAA,MAAM,EAkEG,YAAY,CAAA,EAAA,CAAA;AAErB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAHX,OAAA,EAAA,CAAA,MAAM,EAAE,YAAY,EACZ,YAAY,CAAA,EAAA,CAAA;;2FAErB,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;AAC/B,oBAAA,OAAO,EAAE,CAAC,MAAM,EAAE,YAAY;AACjC,iBAAA;;;ACvGD;;AAEG;;;;"}