123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- 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.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;
- }
- 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: "<svg\n [ngClass]=\"iconClass\"\n [attr.fill]=\"fill\"\n [attr.stroke-width]=\"strokeWidth\"\n [attr.stroke]=\"strokeColor\"\n class=\"flex size-full\">\n <use [attr.xlink:href]=\"iconPath\"></use>\n</svg>\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: "<svg\n [ngClass]=\"iconClass\"\n [attr.fill]=\"fill\"\n [attr.stroke-width]=\"strokeWidth\"\n [attr.stroke]=\"strokeColor\"\n class=\"flex size-full\">\n <use [attr.xlink:href]=\"iconPath\"></use>\n</svg>\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaXJjbGV0b25lL3NyYy9saWIvY29tcG9uZW50cy9hdG9tcy9pY29uL2ljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2lyY2xldG9uZS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvaWNvbi9pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFTbEYsTUFBTSxPQUFPLGFBQWE7SUFQMUI7UUFRVyxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1YsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLFNBQUksR0FBRyxjQUFjLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxHQUFHLENBQUM7UUFDbEIsZ0JBQVcsR0FBRyxjQUFjLENBQUM7UUFDN0IsU0FBSSxHQUFHLEdBQUcsQ0FBQztRQUNwQixhQUFRLEdBQUcsRUFBRSxDQUFDO0tBbUJmO0lBakJDLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFhO1FBQzdCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMzRixPQUFPLE9BQU8sUUFBUSxHQUFHLENBQUM7UUFDNUIsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs4R0FyQlUsYUFBYTtrR0FBYixhQUFhLHlNQ1YxQixzTkFRQSw0Q0RGWSxPQUFPOzsyRkFJTixhQUFhO2tCQVB6QixTQUFTOytCQUNFLFNBQVMsY0FDUCxJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUMsbUJBRUQsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3QtaWNvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGljb24gPSAnJztcbiAgQElucHV0KCkgaWNvbkNsYXNzID0gJyc7XG4gIEBJbnB1dCgpIGZpbGwgPSAnY3VycmVudENvbG9yJztcbiAgQElucHV0KCkgc3Ryb2tlV2lkdGggPSAxLjU7XG4gIEBJbnB1dCgpIHN0cm9rZUNvbG9yID0gJ2N1cnJlbnRDb2xvcic7XG4gIEBJbnB1dCgpIHNpemUgPSAnNic7XG4gIGljb25QYXRoID0gJyc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pY29uUGF0aCA9ICcnO1xuICAgIHRoaXMuc3Ryb2tlQ29sb3IgPSB0aGlzLmdldEZvcm1hdHRlZENvbG9yKHRoaXMuc3Ryb2tlQ29sb3IpO1xuICAgIHRoaXMuZmlsbCA9IHRoaXMuZ2V0Rm9ybWF0dGVkQ29sb3IodGhpcy5maWxsKTtcbiAgfVxuXG4gIGdldEZvcm1hdHRlZENvbG9yKGNvbG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmIChjb2xvci5zdGFydHNXaXRoKCctLScpKSB7XG4gICAgICBjb25zdCByZ2JWYWx1ZSA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKGNvbG9yKS50cmltKCk7XG4gICAgICByZXR1cm4gYHJnYigke3JnYlZhbHVlfSlgO1xuICAgIH1cbiAgICByZXR1cm4gY29sb3I7XG4gIH1cblxuICAvLyAgIGdldEljb25QYXRoKCkge1xuICAvLyAgICAgcmV0dXJuIGAuL2ljb25zLnN2ZyMke3RoaXMuaWNvbn1gO1xuICAvLyAgIH1cbn1cbiIsIjxzdmdcbiAgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgW2F0dHIuZmlsbF09XCJmaWxsXCJcbiAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cInN0cm9rZVdpZHRoXCJcbiAgW2F0dHIuc3Ryb2tlXT1cInN0cm9rZUNvbG9yXCJcbiAgY2xhc3M9XCJmbGV4IHNpemUtZnVsbFwiPlxuICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwiaWNvblBhdGhcIj48L3VzZT5cbjwvc3ZnPlxuIl19
|