UNPKG

design-angular-kit

Version:

Un toolkit Angular conforme alle linee guida di design per i servizi web della PA

78 lines 6.61 kB
import { ColorsEnum } from '../../../enums/colors.enums'; import { SizesEnum } from '../../../enums/sizes.enum'; import { Directive, HostBinding, Input } from '@angular/core'; import * as i0 from "@angular/core"; export class ItAvatarDirective { /** * Indica il colore dell'avatar. Può assumere i valori: * <ul> * <li> primary * <li> secondary * <li> green * <li> orange * <li> red * </ul> */ get color() { return this._color; } set color(value) { const colorsKey = value; if (ColorsEnum[colorsKey]) { this._color = ColorsEnum[colorsKey]; } else { this._color = undefined; } } /** * Indica la grandezza dell'avatar. Può assumere i valori: * <ul> * <li> xs * <li> sm * <li> lg * <li> xl * <li> xxl * </ul> */ get size() { return this._size; } set size(value) { const sizesKey = value; if (SizesEnum[sizesKey]) { this._size = SizesEnum[sizesKey]; } else { this._size = undefined; } } get hostClasses() { let cssClass = 'avatar'; if (this.size) { cssClass += ` ${this.size}`; } if (this.color) { cssClass += ` avatar-${this.color}`; } return cssClass; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItAvatarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.6", type: ItAvatarDirective, isStandalone: true, selector: "[itAvatar]", inputs: { color: "color", size: "size" }, host: { properties: { "class": "this.hostClasses" } }, exportAs: ["itAvatar"], ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItAvatarDirective, decorators: [{ type: Directive, args: [{ standalone: true, selector: '[itAvatar]', exportAs: 'itAvatar', }] }], propDecorators: { color: [{ type: Input }], size: [{ type: Input }], hostClasses: [{ type: HostBinding, args: ['class'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9hdmF0YXIvYXZhdGFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLGlCQUFpQjtJQUM1Qjs7Ozs7Ozs7O09BU0c7SUFDSCxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQXlCO1FBQ2pDLE1BQU0sU0FBUyxHQUFHLEtBQWdDLENBQUM7UUFDbkQsSUFBSSxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0QyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUF5QjtRQUNoQyxNQUFNLFFBQVEsR0FBRyxLQUErQixDQUFDO1FBQ2pELElBQUksU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUlELElBQ0ksV0FBVztRQUNiLElBQUksUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUV4QixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLFFBQVEsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixRQUFRLElBQUksV0FBVyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEMsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7OEdBOURVLGlCQUFpQjtrR0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUw3QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsWUFBWTtvQkFDdEIsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCOzhCQWFLLEtBQUs7c0JBRFIsS0FBSztnQkF3QkYsSUFBSTtzQkFEUCxLQUFLO2dCQWdCRixXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yc0VudW0gfSBmcm9tICcuLi8uLi8uLi9lbnVtcy9jb2xvcnMuZW51bXMnO1xuaW1wb3J0IHsgU2l6ZXNFbnVtIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMvc2l6ZXMuZW51bSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbaXRBdmF0YXJdJyxcbiAgZXhwb3J0QXM6ICdpdEF2YXRhcicsXG59KVxuZXhwb3J0IGNsYXNzIEl0QXZhdGFyRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIEluZGljYSBpbCBjb2xvcmUgZGVsbCdhdmF0YXIuIFB1w7IgYXNzdW1lcmUgaSB2YWxvcmk6XG4gICAqIDx1bD5cbiAgICogPGxpPiBwcmltYXJ5XG4gICAqIDxsaT4gc2Vjb25kYXJ5XG4gICAqIDxsaT4gZ3JlZW5cbiAgICogPGxpPiBvcmFuZ2VcbiAgICogPGxpPiByZWRcbiAgICogPC91bD5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBjb2xvcigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jb2xvcjtcbiAgfVxuICBzZXQgY29sb3IodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IGNvbG9yc0tleSA9IHZhbHVlIGFzIGtleW9mIHR5cGVvZiBDb2xvcnNFbnVtO1xuICAgIGlmIChDb2xvcnNFbnVtW2NvbG9yc0tleV0pIHtcbiAgICAgIHRoaXMuX2NvbG9yID0gQ29sb3JzRW51bVtjb2xvcnNLZXldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jb2xvciA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfY29sb3I/OiBDb2xvcnNFbnVtO1xuICAvKipcbiAgICogSW5kaWNhIGxhIGdyYW5kZXp6YSBkZWxsJ2F2YXRhci4gUHXDsiBhc3N1bWVyZSBpIHZhbG9yaTpcbiAgICogPHVsPlxuICAgKiA8bGk+IHhzXG4gICAqIDxsaT4gc21cbiAgICogPGxpPiBsZ1xuICAgKiA8bGk+IHhsXG4gICAqIDxsaT4geHhsXG4gICAqIDwvdWw+XG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgc2l6ZSgpOiBTaXplc0VudW0gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9zaXplO1xuICB9XG4gIHNldCBzaXplKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBzaXplc0tleSA9IHZhbHVlIGFzIGtleW9mIHR5cGVvZiBTaXplc0VudW07XG4gICAgaWYgKFNpemVzRW51bVtzaXplc0tleV0pIHtcbiAgICAgIHRoaXMuX3NpemUgPSBTaXplc0VudW1bc2l6ZXNLZXldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9zaXplID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3NpemU/OiBTaXplc0VudW07XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBzdHJpbmcge1xuICAgIGxldCBjc3NDbGFzcyA9ICdhdmF0YXInO1xuXG4gICAgaWYgKHRoaXMuc2l6ZSkge1xuICAgICAgY3NzQ2xhc3MgKz0gYCAke3RoaXMuc2l6ZX1gO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbG9yKSB7XG4gICAgICBjc3NDbGFzcyArPSBgIGF2YXRhci0ke3RoaXMuY29sb3J9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gY3NzQ2xhc3M7XG4gIH1cbn1cbiJdfQ==