import { NgClass } from '@angular/common';
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
import * as i0 from "@angular/core";
export class IconComponent {
constructor() {
this.icon = '';
this.iconClass = '';
this.fill = 'currentColor';
this.strokeWidth = 1.5;
this.strokeColor = 'currentColor';
this.size = '6';
this.iconPath = '';
}
ngOnInit() {
this.iconPath = this.getIconPath();
this.strokeColor = this.getFormattedColor(this.strokeColor);
this.fill = this.getFormattedColor(this.fill);
}
getFormattedColor(color) {
if (color.startsWith('--')) {
const rgbValue = getComputedStyle(document.documentElement).getPropertyValue(color).trim();
return `rgb(${rgbValue})`;
}
return color;
}
getIconPath() {
return `./icons.svg#${this.icon}`;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: IconComponent, isStandalone: true, selector: "ct-icon", inputs: { icon: "icon", iconClass: "iconClass", fill: "fill", strokeWidth: "strokeWidth", strokeColor: "strokeColor", size: "size" }, ngImport: i0, template: "\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: IconComponent, decorators: [{
type: Component,
args: [{ selector: 'ct-icon', standalone: true, imports: [NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "\n" }]
}], propDecorators: { icon: [{
type: Input
}], iconClass: [{
type: Input
}], fill: [{
type: Input
}], strokeWidth: [{
type: Input
}], strokeColor: [{
type: Input
}], size: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaXJjbGV0b25lL3NyYy9saWIvY29tcG9uZW50cy9hdG9tcy9pY29uL2ljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2lyY2xldG9uZS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvaWNvbi9pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFTbEYsTUFBTSxPQUFPLGFBQWE7SUFQMUI7UUFRVyxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1YsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLFNBQUksR0FBRyxjQUFjLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxHQUFHLENBQUM7UUFDbEIsZ0JBQVcsR0FBRyxjQUFjLENBQUM7UUFDN0IsU0FBSSxHQUFHLEdBQUcsQ0FBQztRQUNwQixhQUFRLEdBQUcsRUFBRSxDQUFDO0tBbUJmO0lBakJDLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFhO1FBQzdCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMzRixPQUFPLE9BQU8sUUFBUSxHQUFHLENBQUM7UUFDNUIsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLGVBQWUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7OEdBekJVLGFBQWE7a0dBQWIsYUFBYSx5TUNWMUIsc05BUUEsNENERlksT0FBTzs7MkZBSU4sYUFBYTtrQkFQekIsU0FBUzsrQkFDRSxTQUFTLGNBQ1AsSUFBSSxXQUNQLENBQUMsT0FBTyxDQUFDLG1CQUVELHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N0LWljb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdDbGFzc10sXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEljb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBpY29uID0gJyc7XG4gIEBJbnB1dCgpIGljb25DbGFzcyA9ICcnO1xuICBASW5wdXQoKSBmaWxsID0gJ2N1cnJlbnRDb2xvcic7XG4gIEBJbnB1dCgpIHN0cm9rZVdpZHRoID0gMS41O1xuICBASW5wdXQoKSBzdHJva2VDb2xvciA9ICdjdXJyZW50Q29sb3InO1xuICBASW5wdXQoKSBzaXplID0gJzYnO1xuICBpY29uUGF0aCA9ICcnO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaWNvblBhdGggPSB0aGlzLmdldEljb25QYXRoKCk7XG4gICAgdGhpcy5zdHJva2VDb2xvciA9IHRoaXMuZ2V0Rm9ybWF0dGVkQ29sb3IodGhpcy5zdHJva2VDb2xvcik7XG4gICAgdGhpcy5maWxsID0gdGhpcy5nZXRGb3JtYXR0ZWRDb2xvcih0aGlzLmZpbGwpO1xuICB9XG5cbiAgZ2V0Rm9ybWF0dGVkQ29sb3IoY29sb3I6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoJy0tJykpIHtcbiAgICAgIGNvbnN0IHJnYlZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoY29sb3IpLnRyaW0oKTtcbiAgICAgIHJldHVybiBgcmdiKCR7cmdiVmFsdWV9KWA7XG4gICAgfVxuICAgIHJldHVybiBjb2xvcjtcbiAgfVxuXG4gIGdldEljb25QYXRoKCkge1xuICAgIHJldHVybiBgLi9pY29ucy5zdmcjJHt0aGlzLmljb259YDtcbiAgfVxufVxuIiwiPHN2Z1xuICBbbmdDbGFzc109XCJpY29uQ2xhc3NcIlxuICBbYXR0ci5maWxsXT1cImZpbGxcIlxuICBbYXR0ci5zdHJva2Utd2lkdGhdPVwic3Ryb2tlV2lkdGhcIlxuICBbYXR0ci5zdHJva2VdPVwic3Ryb2tlQ29sb3JcIlxuICBjbGFzcz1cImZsZXggc2l6ZS1mdWxsXCI+XG4gIDx1c2UgW2F0dHIueGxpbms6aHJlZl09XCJpY29uUGF0aFwiPjwvdXNlPlxuPC9zdmc+XG4iXX0=