UNPKG

@engie-group/fluid-design-system-angular

Version:

Fluid Design System Angular

38 lines 6.57 kB
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core'; import { IconBaseComponent } from '../icon-base/icon-base.component'; import * as i0 from "@angular/core"; export class IconComponent extends IconBaseComponent { constructor() { super(...arguments); this.ICON_MATERIAL_CLASS = 'nj-icon-material'; /** * Icon size */ this.size = 'md'; } getClassName() { const sizeClass = this.size ? `${this.ICON_MATERIAL_CLASS}--${this.classModifier(this.size, 'size-inherit')}` : ''; const variantClass = this.variant ? `${this.ICON_MATERIAL_CLASS}--${this.classModifier(this.variant, 'color-inherit')}` : ''; const className = this.className ? this.className : ''; return `${this.ICON_MATERIAL_CLASS} ${sizeClass} ${variantClass} ${className}`; } classModifier(variant, inheritClass) { switch (variant) { case 'inherit': return inheritClass; default: return variant; } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IconComponent, isStandalone: true, selector: "nj-icon", inputs: { size: "size", variant: "variant" }, usesInheritance: true, ngImport: i0, template: "<nj-icon-base\n [name]=\"name\"\n [isEngieIcon]=\"false\"\n [ariaLabel]=\"ariaLabel\"\n [className]=\"getClassName()\"\n>\n</nj-icon-base>\n", styles: [":host,nj-icon{display:inline-flex}\n"], dependencies: [{ kind: "component", type: IconBaseComponent, selector: "nj-icon-base", inputs: ["isEngieIcon", "name", "ariaLabel", "className"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, decorators: [{ type: Component, args: [{ selector: 'nj-icon', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [IconBaseComponent], template: "<nj-icon-base\n [name]=\"name\"\n [isEngieIcon]=\"false\"\n [ariaLabel]=\"ariaLabel\"\n [className]=\"getClassName()\"\n>\n</nj-icon-base>\n", styles: [":host,nj-icon{display:inline-flex}\n"] }] }], propDecorators: { size: [{ type: Input }], variant: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQVluRSxNQUFNLE9BQU8sYUFBYyxTQUFRLGlCQUFpQjtJQVRwRDs7UUFXVSx3QkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztRQUVqRDs7V0FFRztRQUNNLFNBQUksR0FBYSxJQUFJLENBQUM7S0F5QmhDO0lBbEJXLFlBQVk7UUFDcEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEtBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNuSCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdILE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN2RCxPQUFPLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixJQUFJLFNBQVMsSUFBSSxZQUFZLElBQUksU0FBUyxFQUFFLENBQUM7SUFDakYsQ0FBQztJQUVPLGFBQWEsQ0FDbkIsT0FBVSxFQUNWLFlBQWU7UUFFZixRQUFRLE9BQU8sRUFBRTtZQUNmLEtBQUssU0FBUztnQkFDWixPQUFPLFlBQVksQ0FBQztZQUN0QjtnQkFDRSxPQUFPLE9BQWdDLENBQUM7U0FDM0M7SUFDSCxDQUFDOytHQS9CVSxhQUFhO21HQUFiLGFBQWEsd0lDYjFCLGtKQU9BLDhGRElZLGlCQUFpQjs7NEZBRWhCLGFBQWE7a0JBVHpCLFNBQVM7K0JBQ0UsU0FBUyxtQkFHRix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLGNBQ3pCLElBQUksV0FDUCxDQUFDLGlCQUFpQixDQUFDOzhCQVNuQixJQUFJO3NCQUFaLEtBQUs7Z0JBS0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJY29uQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vaWNvbi1iYXNlL2ljb24tYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHtJY29uQ29sb3IsIEljb25TaXplfSBmcm9tICcuL2ljb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduai1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbSWNvbkJhc2VDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEljb25Db21wb25lbnQgZXh0ZW5kcyBJY29uQmFzZUNvbXBvbmVudCB7XG5cbiAgcHJpdmF0ZSBJQ09OX01BVEVSSUFMX0NMQVNTID0gJ25qLWljb24tbWF0ZXJpYWwnO1xuXG4gIC8qKlxuICAgKiBJY29uIHNpemVcbiAgICovXG4gIEBJbnB1dCgpIHNpemU6IEljb25TaXplID0gJ21kJztcblxuICAvKipcbiAgICogSWNvbiB2YXJpYW50IHRoZW1lXG4gICAqL1xuICBASW5wdXQoKSB2YXJpYW50OiBJY29uQ29sb3I7XG5cbiAgcHJvdGVjdGVkIGdldENsYXNzTmFtZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHNpemVDbGFzcyA9IHRoaXMuc2l6ZSA/IGAke3RoaXMuSUNPTl9NQVRFUklBTF9DTEFTU30tLSR7dGhpcy5jbGFzc01vZGlmaWVyKHRoaXMuc2l6ZSwgJ3NpemUtaW5oZXJpdCcpfWAgOiAnJztcbiAgICBjb25zdCB2YXJpYW50Q2xhc3MgPSB0aGlzLnZhcmlhbnQgPyBgJHt0aGlzLklDT05fTUFURVJJQUxfQ0xBU1N9LS0ke3RoaXMuY2xhc3NNb2RpZmllcih0aGlzLnZhcmlhbnQsICdjb2xvci1pbmhlcml0Jyl9YCA6ICcnO1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lID8gdGhpcy5jbGFzc05hbWUgOiAnJztcbiAgICByZXR1cm4gYCR7dGhpcy5JQ09OX01BVEVSSUFMX0NMQVNTfSAke3NpemVDbGFzc30gJHt2YXJpYW50Q2xhc3N9ICR7Y2xhc3NOYW1lfWA7XG4gIH1cblxuICBwcml2YXRlIGNsYXNzTW9kaWZpZXI8VCBleHRlbmRzIHN0cmluZywgVT4oXG4gICAgdmFyaWFudDogVCxcbiAgICBpbmhlcml0Q2xhc3M6IFVcbiAgKTogRXhjbHVkZTxULCAnaW5oZXJpdCc+IHwgVSB7XG4gICAgc3dpdGNoICh2YXJpYW50KSB7XG4gICAgICBjYXNlICdpbmhlcml0JzpcbiAgICAgICAgcmV0dXJuIGluaGVyaXRDbGFzcztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB2YXJpYW50IGFzIEV4Y2x1ZGU8VCwgJ2luaGVyaXQnPjtcbiAgICB9XG4gIH1cbn1cbiIsIjxuai1pY29uLWJhc2VcbiAgW25hbWVdPVwibmFtZVwiXG4gIFtpc0VuZ2llSWNvbl09XCJmYWxzZVwiXG4gIFthcmlhTGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgW2NsYXNzTmFtZV09XCJnZXRDbGFzc05hbWUoKVwiXG4+XG48L25qLWljb24tYmFzZT5cbiJdfQ==