import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
import { NgClass } from '@angular/common';
import * as i0 from "@angular/core";
export class IconComponent {
    constructor() {
        /**
         * Variable to choose the sprite of the icons.
         */
        this.svgType = 'sprite';
        /**
         * Variable to define if icon have opacity or not.
         */
        this.withOpacity = true;
        /**
         * Pre-defined - see THIS components CSS for the allow types.
         */
        this.color = 'default';
        /**
         * Pre-defined - see Lightning System CSS for the allow measurements.
         */
        this.size = 'medium';
    }
    /**
     * Variable to set the icon name.
     */
    set setIcon(icon) {
        this._icon = icon;
    }
    iconPath() {
        return `assets/icons/uno-sprite/svg/${this.svgType}.svg#${this._icon}`;
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: IconComponent, isStandalone: true, selector: "uno-icon", inputs: { svgType: "svgType", setIcon: ["icon", "setIcon"], withOpacity: "withOpacity", color: "color", size: "size", customColor: "customColor" }, ngImport: i0, template: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewbox=\"0 0 100 100\" version=\"1.1\"\r\n     [ngClass]=\"['slds-icon-text-' + color, 'icon--' + size]\"\r\n     [style.fill]=\"customColor\"\r\n     [class.slds-icon-with-opacity]=\"withOpacity\"\r\n     aria-hidden=\"true\">\r\n\r\n    <use [attr.xlink:href]=\"iconPath()\"></use>\r\n</svg>", styles: [".slds-icon-with-opacity{opacity:.6}.slds-icon-with-opacity:hover{opacity:1;cursor:pointer}.slds-icon_medium,.slds-icon--medium{width:2rem;height:2rem}.slds-icon_xx_large .slds-icon--xx-large{width:7rem;height:7rem}.slds-icon-text-default{fill:var(--light-primary)}.slds-icon-text-white{fill:var(--light-gray-14)}.slds-icon-text-black{fill:var(--light-gray-1)}.slds-icon-text-grey{fill:var(--light-gray-12)}.slds-icon-text-green-menu{fill:var(--special-green-4)}.slds-icon-text-tomato-red{fill:var(--special-red-2)}.slds-icon-text-sapphire{fill:var(--light-primary)}.slds-icon-text-light-grey-blue{fill:var(--light-gray-9)}.icon--x-small{width:16px;height:16px;line-height:1}.icon--small{width:24px;height:24px;line-height:1}.icon--medium{width:32px;height:32px}.icon--large{width:44px;height:44px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IconComponent, decorators: [{
            type: Component,
            args: [{ selector: 'uno-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass], template: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewbox=\"0 0 100 100\" version=\"1.1\"\r\n     [ngClass]=\"['slds-icon-text-' + color, 'icon--' + size]\"\r\n     [style.fill]=\"customColor\"\r\n     [class.slds-icon-with-opacity]=\"withOpacity\"\r\n     aria-hidden=\"true\">\r\n\r\n    <use [attr.xlink:href]=\"iconPath()\"></use>\r\n</svg>", styles: [".slds-icon-with-opacity{opacity:.6}.slds-icon-with-opacity:hover{opacity:1;cursor:pointer}.slds-icon_medium,.slds-icon--medium{width:2rem;height:2rem}.slds-icon_xx_large .slds-icon--xx-large{width:7rem;height:7rem}.slds-icon-text-default{fill:var(--light-primary)}.slds-icon-text-white{fill:var(--light-gray-14)}.slds-icon-text-black{fill:var(--light-gray-1)}.slds-icon-text-grey{fill:var(--light-gray-12)}.slds-icon-text-green-menu{fill:var(--special-green-4)}.slds-icon-text-tomato-red{fill:var(--special-red-2)}.slds-icon-text-sapphire{fill:var(--light-primary)}.slds-icon-text-light-grey-blue{fill:var(--light-gray-9)}.icon--x-small{width:16px;height:16px;line-height:1}.icon--small{width:24px;height:24px;line-height:1}.icon--medium{width:32px;height:32px}.icon--large{width:44px;height:44px}\n"] }]
        }], propDecorators: { svgType: [{
                type: Input
            }], setIcon: [{
                type: Input,
                args: ['icon']
            }], withOpacity: [{
                type: Input
            }], color: [{
                type: Input
            }], size: [{
                type: Input
            }], customColor: [{
                type: Input
            }] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bm8tdWktbGliL3NyYy9saWIvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Vuby11aS1saWIvc3JjL2xpYi9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVUxQyxNQUFNLE9BQU8sYUFBYTtJQVIxQjtRQVVJOztXQUVHO1FBQ00sWUFBTyxHQUE4QixRQUFRLENBQUM7UUFjdkQ7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUU1Qjs7V0FFRztRQUNNLFVBQUssR0FBMEQsU0FBUyxDQUFDO1FBRWxGOztXQUVHO1FBQ00sU0FBSSxHQUE2QyxRQUFRLENBQUM7S0FPdEU7SUEzQkc7O09BRUc7SUFDSCxJQUFtQixPQUFPLENBQUMsSUFBWTtRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBbUJELFFBQVE7UUFDSixPQUFPLCtCQUErQixJQUFJLENBQUMsT0FBTyxRQUFRLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzRSxDQUFDOytHQXRDUSxhQUFhO21HQUFiLGFBQWEsd05DWDFCLGtWQU9NLHkxQkRFUSxPQUFPOzs0RkFFUixhQUFhO2tCQVJ6QixTQUFTOytCQUNJLFVBQVUsbUJBR0gsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUM7OEJBT1QsT0FBTztzQkFBZixLQUFLO2dCQVVhLE9BQU87c0JBQXpCLEtBQUs7dUJBQUMsTUFBTTtnQkFPSixXQUFXO3NCQUFuQixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndW5vLWljb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pY29uLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdDbGFzc11cbn0pXHJcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFZhcmlhYmxlIHRvIGNob29zZSB0aGUgc3ByaXRlIG9mIHRoZSBpY29ucy5cclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgc3ZnVHlwZTogJ3Nwcml0ZScgfCAnc3ByaXRlLWNvbG9yJyA9ICdzcHJpdGUnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRG8gZXZlbnR1YWx5IE9ic2VydmFibGUgJ2ljb24nIChwYXRoKSBieSBBbmd1bGFyIE9uQ2hhbmdlcywgdG8gaGF2ZSBhIGJldHRlciBjb250cm9sLiwgYW5kIG5vdCBkaXJlY3RseSBAIEhUTUw6XHJcbiAgICAgKi9cclxuICAgIF9pY29uOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWYXJpYWJsZSB0byBzZXQgdGhlIGljb24gbmFtZS5cclxuICAgICAqL1xyXG4gICAgQElucHV0KCdpY29uJykgc2V0IHNldEljb24oaWNvbjogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5faWNvbiA9IGljb247XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWYXJpYWJsZSB0byBkZWZpbmUgaWYgaWNvbiBoYXZlIG9wYWNpdHkgb3Igbm90LlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSB3aXRoT3BhY2l0eSA9IHRydWU7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQcmUtZGVmaW5lZCAtIHNlZSBUSElTIGNvbXBvbmVudHMgQ1NTIGZvciB0aGUgYWxsb3cgdHlwZXMuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIGNvbG9yOiAnZGVmYXVsdCcgfCAnd2hpdGUnIHwgJ2JsYWNrJyB8ICdncmV5JyB8ICdncmVlbi1tZW51JyA9ICdkZWZhdWx0JztcclxuXHJcbiAgICAvKipcclxuICAgICAqIFByZS1kZWZpbmVkIC0gc2VlIExpZ2h0bmluZyBTeXN0ZW0gQ1NTIGZvciB0aGUgYWxsb3cgbWVhc3VyZW1lbnRzLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBzaXplOiAnbGFyZ2UnIHwgJ21lZGl1bScgfCAnc21hbGwnIHwgJ3gtc21hbGwnID0gJ21lZGl1bSc7XHJcblxyXG4gICAgQElucHV0KCkgY3VzdG9tQ29sb3I7XHJcblxyXG4gICAgaWNvblBhdGgoKSB7XHJcbiAgICAgICAgcmV0dXJuIGBhc3NldHMvaWNvbnMvdW5vLXNwcml0ZS9zdmcvJHt0aGlzLnN2Z1R5cGV9LnN2ZyMke3RoaXMuX2ljb259YDtcclxuICAgIH1cclxufVxyXG4iLCI8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Ym94PVwiMCAwIDEwMCAxMDBcIiB2ZXJzaW9uPVwiMS4xXCJcclxuICAgICBbbmdDbGFzc109XCJbJ3NsZHMtaWNvbi10ZXh0LScgKyBjb2xvciwgJ2ljb24tLScgKyBzaXplXVwiXHJcbiAgICAgW3N0eWxlLmZpbGxdPVwiY3VzdG9tQ29sb3JcIlxyXG4gICAgIFtjbGFzcy5zbGRzLWljb24td2l0aC1vcGFjaXR5XT1cIndpdGhPcGFjaXR5XCJcclxuICAgICBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuXHJcbiAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwiaWNvblBhdGgoKVwiPjwvdXNlPlxyXG48L3N2Zz4iXX0=