UNPKG

@kushki/ng-suka

Version:

<p align="center"> <h1 align="center">Suka Components Angular</h1> <p align="center"> An Angular implementation of the Suka Design System </p> </p>

89 lines 5.87 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { HostBinding, Component, Input } from '@angular/core'; export class Avatar { constructor() { /** * Sets the avatar color. */ this.color = 'gray'; /** * Sets the avatar class */ this.class = ''; /** * Sets the avatar size. */ this.size = 'md'; } /** * @return {?} */ get attrClass() { return `avatar avatar--${this.color} avatar--${this.size} ${this.class}`; } /** * Sets the avatar initials according to the name input. * @return {?} */ getInitials() { if (this.name === '' || !this.name) { return ''; } /** @type {?} */ const names = this.name.split(' '); /** @type {?} */ let initials = names[0].substring(0, 1).toUpperCase(); if (names.length > 1) { initials += names[names.length - 1].substring(0, 1).toUpperCase(); } return initials; } } Avatar.decorators = [ { type: Component, args: [{ selector: `suka-avatar`, template: ` <ng-container *ngIf="!imgSrc">{{getInitials()}}</ng-container> <img *ngIf="imgSrc" [src]="imgSrc" /> ` }] } ]; Avatar.propDecorators = { imgSrc: [{ type: Input }], name: [{ type: Input }], color: [{ type: Input }], class: [{ type: Input }], size: [{ type: Input }], attrClass: [{ type: HostBinding, args: ['attr.class',] }] }; if (false) { /** * Sets an image url for the avatar. If it is set, it displays instead of the name initials. * @type {?} */ Avatar.prototype.imgSrc; /** * Avatar name. Used to display its initials (Max 2). * @type {?} */ Avatar.prototype.name; /** * Sets the avatar color. * @type {?} */ Avatar.prototype.color; /** * Sets the avatar class * @type {?} */ Avatar.prototype.class; /** * Sets the avatar size. * @type {?} */ Avatar.prototype.size; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BrdXNoa2kvbmctc3VrYS8iLCJzb3VyY2VzIjpbImxpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBVTNFLE1BQU0sT0FBTyxNQUFNO0lBUG5COzs7O1FBcUJXLFVBQUssR0FDeUQsTUFBTSxDQUFDOzs7O1FBS3JFLFVBQUssR0FBRyxFQUFFLENBQUM7Ozs7UUFLWCxTQUFJLEdBQXNDLElBQUksQ0FBQztJQXNCMUQsQ0FBQzs7OztJQXBCQyxJQUErQixTQUFTO1FBQ3RDLE9BQU8sa0JBQWtCLElBQUksQ0FBQyxLQUFLLFlBQVksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDM0UsQ0FBQzs7Ozs7SUFLRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDbEMsT0FBTyxFQUFFLENBQUM7U0FDWDs7Y0FFSyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDOztZQUM5QixRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFO1FBRXJELElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDcEIsUUFBUSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDbkU7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzs7WUFyREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2dCQUN2QixRQUFRLEVBQUU7OztHQUdUO2FBQ0Y7OztxQkFLRSxLQUFLO21CQUtMLEtBQUs7b0JBS0wsS0FBSztvQkFNTCxLQUFLO21CQUtMLEtBQUs7d0JBRUwsV0FBVyxTQUFDLFlBQVk7Ozs7Ozs7SUF2QnpCLHdCQUF3Qjs7Ozs7SUFLeEIsc0JBQXNCOzs7OztJQUt0Qix1QkFDOEU7Ozs7O0lBSzlFLHVCQUFvQjs7Ozs7SUFLcEIsc0JBQXdEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSG9zdEJpbmRpbmcsIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IGBzdWthLWF2YXRhcmAsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpbWdTcmNcIj57e2dldEluaXRpYWxzKCl9fTwvbmctY29udGFpbmVyPlxuICAgIDxpbWcgKm5nSWY9XCJpbWdTcmNcIiBbc3JjXT1cImltZ1NyY1wiIC8+XG4gIGBcbn0pXG5leHBvcnQgY2xhc3MgQXZhdGFyIHtcbiAgLyoqXG4gICAqIFNldHMgYW4gaW1hZ2UgdXJsIGZvciB0aGUgYXZhdGFyLiBJZiBpdCBpcyBzZXQsIGl0IGRpc3BsYXlzIGluc3RlYWQgb2YgdGhlIG5hbWUgaW5pdGlhbHMuXG4gICAqL1xuICBASW5wdXQoKSBpbWdTcmM6IHN0cmluZztcblxuICAvKipcbiAgICogQXZhdGFyIG5hbWUuIFVzZWQgdG8gZGlzcGxheSBpdHMgaW5pdGlhbHMgKE1heCAyKS5cbiAgICovXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogU2V0cyB0aGUgYXZhdGFyIGNvbG9yLlxuICAgKi9cbiAgQElucHV0KCkgY29sb3I6ICdibHVlJyB8ICdhenVyZScgfCAnaW5kaWdvJyB8ICdwdXJwbGUnIHwgJ3BpbmsnIHwgJ3JlZCcgfCAnb3JhbmdlJyB8XG4gICd5ZWxsb3cnIHwgJ2xpbWUnIHwgJ2dyZWVuJyB8ICd0ZWFsJyB8ICdjeWFuJyB8ICdncmF5JyB8ICdncmF5LWRhcmsnID0gJ2dyYXknO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhdmF0YXIgY2xhc3NcbiAgICovXG4gIEBJbnB1dCgpIGNsYXNzID0gJyc7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGF2YXRhciBzaXplLlxuICAgKi9cbiAgQElucHV0KCkgc2l6ZTogJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJyB8ICcyeGwnID0gJ21kJztcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuY2xhc3MnKSBnZXQgYXR0ckNsYXNzKCkge1xuICAgIHJldHVybiBgYXZhdGFyIGF2YXRhci0tJHt0aGlzLmNvbG9yfSBhdmF0YXItLSR7dGhpcy5zaXplfSAke3RoaXMuY2xhc3N9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhdmF0YXIgaW5pdGlhbHMgYWNjb3JkaW5nIHRvIHRoZSBuYW1lIGlucHV0LlxuICAgKi9cbiAgZ2V0SW5pdGlhbHMoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5uYW1lID09PSAnJyB8fCAhdGhpcy5uYW1lKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3QgbmFtZXMgPSB0aGlzLm5hbWUuc3BsaXQoJyAnKTtcbiAgICBsZXQgaW5pdGlhbHMgPSBuYW1lc1swXS5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKTtcblxuICAgIGlmIChuYW1lcy5sZW5ndGggPiAxKSB7XG4gICAgICBpbml0aWFscyArPSBuYW1lc1tuYW1lcy5sZW5ndGggLSAxXS5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKTtcbiAgICB9XG4gICAgcmV0dXJuIGluaXRpYWxzO1xuICB9XG59XG4iXX0=