UNPKG

ngx-fluent-ui-icons

Version:
33 lines 5.5 kB
import { Component, Input, Inject } from '@angular/core'; import { Icons } from "./fluent-ui-icons.provider"; import * as i0 from "@angular/core"; import * as i1 from "./fluent-ui-icons.provider"; export class FluentUiIconsComponent { constructor(element, changeDetector, icons) { this.element = element; this.changeDetector = changeDetector; this.icons = icons; } ngOnChanges(changes) { // icons are provided as an array of objects because of "multi: true" const icons = Object.assign({}, ...this.icons); const svg = icons[changes.name.currentValue] || ''; if (!svg) { console.warn(`Icon not found: ${changes.name.currentValue}\n`); } this.element.nativeElement.innerHTML = svg; this.changeDetector.markForCheck(); } } FluentUiIconsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FluentUiIconsComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: Icons }], target: i0.ɵɵFactoryTarget.Component }); FluentUiIconsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FluentUiIconsComponent, selector: "fluent-ui-icon, fui", inputs: { name: "name" }, usesOnChanges: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:inline-block;width:24px;height:24px;fill:none;stroke-linecap:round;stroke-linejoin:round;svg {width: 100% !important; height: 100% !important;}}\n"] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FluentUiIconsComponent, decorators: [{ type: Component, args: [{ selector: 'fluent-ui-icon, fui', template: `<ng-content></ng-content>`, styles: [":host{display:inline-block;width:24px;height:24px;fill:none;stroke-linecap:round;stroke-linejoin:round;svg {width: 100% !important; height: 100% !important;}}\n"] }] }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.Icons, decorators: [{ type: Inject, args: [Icons] }] }]; }, propDecorators: { name: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1ZW50LXVpLWljb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2ZsdWVudC11aS1pY29ucy9zcmMvbGliL2ZsdWVudC11aS1pY29ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsTUFBTSxFQUErQyxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQXFCbkQsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUNVLE9BQW1CLEVBQ25CLGNBQWlDLEVBQ2xCLEtBQVk7UUFGM0IsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBTztJQUNsQyxDQUFDO0lBRUosV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLHFFQUFxRTtRQUNyRSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxHQUFJLElBQUksQ0FBQyxLQUF5QixDQUFDLENBQUM7UUFDcEUsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRW5ELElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUM7U0FDaEU7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO1FBQzNDLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQzs7bUhBcEJVLHNCQUFzQiw2RUFNdkIsS0FBSzt1R0FOSixzQkFBc0IsMEdBakJ2QiwyQkFBMkI7MkZBaUIxQixzQkFBc0I7a0JBbkJsQyxTQUFTOytCQUNFLHFCQUFxQixZQUNyQiwyQkFBMkI7OzBCQXVCbEMsTUFBTTsyQkFBQyxLQUFLOzRDQUxOLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIEluamVjdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJY29ucyB9IGZyb20gXCIuL2ZsdWVudC11aS1pY29ucy5wcm92aWRlclwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdmbHVlbnQtdWktaWNvbiwgZnVpJyxcclxuICB0ZW1wbGF0ZTogYDxuZy1jb250ZW50PjwvbmctY29udGVudD5gLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYDpob3N0IHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogMjRweDtcclxuICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICBmaWxsOiBub25lO1xyXG4gICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcblxyXG4gICAgICBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1gXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmx1ZW50VWlJY29uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyAge1xyXG4gIEBJbnB1dCgpIG5hbWUhOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KEljb25zKSBwcml2YXRlIGljb25zOiBJY29uc1xyXG4gICkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgLy8gaWNvbnMgYXJlIHByb3ZpZGVkIGFzIGFuIGFycmF5IG9mIG9iamVjdHMgYmVjYXVzZSBvZiBcIm11bHRpOiB0cnVlXCJcclxuICAgIGNvbnN0IGljb25zID0gT2JqZWN0LmFzc2lnbih7fSwgLi4uKHRoaXMuaWNvbnMgYXMgYW55IGFzIG9iamVjdFtdKSk7XHJcbiAgICBjb25zdCBzdmcgPSBpY29uc1tjaGFuZ2VzLm5hbWUuY3VycmVudFZhbHVlXSB8fCAnJztcclxuXHJcbiAgICBpZiAoIXN2Zykge1xyXG4gICAgICBjb25zb2xlLndhcm4oYEljb24gbm90IGZvdW5kOiAke2NoYW5nZXMubmFtZS5jdXJyZW50VmFsdWV9XFxuYCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gc3ZnO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcbn1cclxuIl19