UNPKG

angular-line-awesome

Version:

Angular Line Awesome is an Angular component to manage Line Awesome icons.

28 lines 3.46 kB
import { Injectable } from '@angular/core'; import * as i0 from "@angular/core"; export class LaIconLibrary { constructor() { this.registry = new Map(); } addIcons(icons) { icons.forEach((icon) => { this.registry.set(icon.name, icon.data); }); } getIcon(icon) { const iconName = `${icon.prefix}-${icon.iconName}`; if (!this.registry.has(iconName)) { throw new Error(`Could not find icon with prefix=${icon.prefix} and iconName=${icon.iconName} in the icon library.`); } return this.registry.get(iconName); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: LaIconLibrary, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: LaIconLibrary, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: LaIconLibrary, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGEtaWNvbi1saWJyYXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWxpbmUtYXdlc29tZS9zcmMvbGliL3NlcnZpY2VzL2xhLWljb24tbGlicmFyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTNDLE1BQU0sT0FBTyxhQUFhO0lBSDFCO1FBSVUsYUFBUSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO0tBa0I5QztJQWhCUSxRQUFRLENBQUMsS0FBd0I7UUFDdEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQXFCLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxPQUFPLENBQUMsSUFBVTtRQUN2QixNQUFNLFFBQVEsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRW5ELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNoQyxNQUFNLElBQUksS0FBSyxDQUNiLG1DQUFtQyxJQUFJLENBQUMsTUFBTSxpQkFBaUIsSUFBSSxDQUFDLFFBQVEsdUJBQXVCLENBQ3BHLENBQUM7U0FDSDtRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckMsQ0FBQzs4R0FsQlUsYUFBYTtrSEFBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJY29uLCBMaW5lQXdlc29tZUljb24gfSBmcm9tICcuLi9saW5lLWF3ZXNvbWUuY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExhSWNvbkxpYnJhcnkge1xuICBwcml2YXRlIHJlZ2lzdHJ5ID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcblxuICBwdWJsaWMgYWRkSWNvbnMoaWNvbnM6IExpbmVBd2Vzb21lSWNvbltdKTogdm9pZCB7XG4gICAgaWNvbnMuZm9yRWFjaCgoaWNvbjogTGluZUF3ZXNvbWVJY29uKSA9PiB7XG4gICAgICB0aGlzLnJlZ2lzdHJ5LnNldChpY29uLm5hbWUsIGljb24uZGF0YSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0SWNvbihpY29uOiBJY29uKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBpY29uTmFtZSA9IGAke2ljb24ucHJlZml4fS0ke2ljb24uaWNvbk5hbWV9YDtcblxuICAgIGlmICghdGhpcy5yZWdpc3RyeS5oYXMoaWNvbk5hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBDb3VsZCBub3QgZmluZCBpY29uIHdpdGggcHJlZml4PSR7aWNvbi5wcmVmaXh9IGFuZCBpY29uTmFtZT0ke2ljb24uaWNvbk5hbWV9IGluIHRoZSBpY29uIGxpYnJhcnkuYFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucmVnaXN0cnkuZ2V0KGljb25OYW1lKTtcbiAgfVxufVxuIl19