{"version":3,"file":"ironsource-fusion-ui-components-icon-v1.mjs","sources":["../../../projects/fusion-ui/components/icon/v1/icon.component.ts","../../../projects/fusion-ui/components/icon/v1/icon.module.ts","../../../projects/fusion-ui/components/icon/v1/ironsource-fusion-ui-components-icon-v1.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, Input, ViewEncapsulation} from '@angular/core';\nimport {IconData} from '@ironsource/fusion-ui/components/icon/common/entities';\nimport {SvgComponent} from '@ironsource/fusion-ui/components/svg';\n\n@Component({\n    selector: 'fusion-icon',\n    template: '<span></span>',\n    styleUrls: ['./icon.component.scss'],\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class IconComponent extends SvgComponent {\n    @Input() set name(val: IconData) {\n        if (typeof val === 'string') {\n            this.setLibPath(val);\n            this.onNameChanged(this.iconName ?? val);\n        } else {\n            this.libVersion = val?.iconVersion;\n            this.onNameChanged(val?.iconName);\n        }\n    }\n\n    iconName: string;\n\n    public getUrlPath() {\n        if (!this.iconName) {\n            throw new Error(`Asset path-name '${this.svgPath}' not set`);\n        } else {\n            if (this.svgOptions?.assetsPath) {\n                this.svgPath =\n                    this.svgOptions.assetsPath === 'https://fusion.ironsrc.net/assets'\n                        ? `${this.libVersion}/${this.iconName}`\n                        : `/${this.iconName}`;\n            }\n        }\n        return super.getUrlPath();\n    }\n\n    private setLibPath(value: string): void {\n        this.removeCssClass();\n        if (typeof value === 'string' && value.includes('/')) {\n            const lastIndex = value.lastIndexOf('/');\n            this.libVersion = value.substring(0, lastIndex);\n            this.iconName = value.substring(lastIndex + 1);\n            // for phosphor regular icons\n            if (this.libVersion === 'ph') {\n                this.libVersion += '/regular';\n            } else if (this.libVersion === 'ph/bold') {\n                this.iconName += '-bold';\n            } else if (this.libVersion === 'ph/fill') {\n                this.iconName += '-fill';\n            }\n        }\n    }\n\n    private removeCssClass(): void {\n        if (!!this.iconName) {\n            this.renderer.removeClass(this.elementRef.nativeElement, this.iconName.replace(/[\\/,_, ]/gi, '-'));\n        }\n        this.iconName = null;\n    }\n\n    private onNameChanged(value: string): void {\n        if (!!value) {\n            this.renderer.addClass(this.elementRef.nativeElement, value.replace(/[\\/,_, ]/gi, '-'));\n        }\n        this.path = this.iconName = value;\n    }\n}\n","import {NgModule, ModuleWithProviders} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {IconComponent} from './icon.component';\nimport {IconOptions, ICON_OPTIONS_DEFUALT_VALUE} from '@ironsource/fusion-ui/components/icon/common/entities';\nimport {SvgModule, SVG_OPTIONS_TOKEN} from '@ironsource/fusion-ui/components/svg';\n\n@NgModule({\n    declarations: [IconComponent],\n    exports: [IconComponent],\n    imports: [CommonModule, SvgModule]\n})\nexport class IconModule {\n    static forRoot(options?: IconOptions): ModuleWithProviders<IconModule> {\n        return {\n            ngModule: IconModule,\n            providers: [\n                {\n                    provide: SVG_OPTIONS_TOKEN,\n                    useValue: options ? options.svgOptions : ICON_OPTIONS_DEFUALT_VALUE\n                }\n            ]\n        };\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}