{"version":3,"file":"ironsource-fusion-ui-components-loader-common-base.mjs","sources":["../../../projects/fusion-ui/components/loader/common/base/loader-token.ts","../../../projects/fusion-ui/components/loader/common/base/loader.base.component.ts","../../../projects/fusion-ui/components/loader/common/base/loader.types.ts","../../../projects/fusion-ui/components/loader/common/base/ironsource-fusion-ui-components-loader-common-base.ts"],"sourcesContent":["import {InjectionToken, Type} from '@angular/core';\n\nexport const LOADER_COMPONENT_TYPE_TOKEN = new InjectionToken<Type<any>>('Loader Component Type Token');\n","import {AfterViewInit, Directive, ElementRef, HostBinding, Inject, Input, Optional, Renderer2, ViewChild} from '@angular/core';\nimport {LOADER_COMPONENT_TYPE_TOKEN} from './loader-token';\nimport {LoaderColor, LoaderPosition, LoaderSize} from './loader.types';\nimport {IconData} from '@ironsource/fusion-ui/components/icon/v1';\n\n@Directive()\nexport abstract class LoaderBaseComponent implements AfterViewInit {\n    /** @internal */\n    @ViewChild('customLoader', {read: ElementRef}) customLoader: ElementRef;\n\n    /** @internal */\n    @Input() height: number; // has position static, with min-height\n    /** @internal */\n    @Input() status: boolean;\n    /** @internal */\n    @Input() text: string;\n    /** @internal */\n    @Input() position: LoaderPosition = 'center';\n    /** @internal */\n    @Input() size: LoaderSize = 'large';\n    /** @internal */\n    @Input() color: LoaderColor = 'grey';\n    /** @internal */\n    @HostBinding('style.top.px') top: number; // distance from top\n\n    /** @internal */\n    public get loaderPosition() {\n        return `position-${this.position}`;\n    }\n    /** @internal */\n    public loaderIconName: IconData;\n\n    constructor(\n        private elementRef: ElementRef,\n        private renderer: Renderer2,\n        /** @internal */\n        @Optional() @Inject(LOADER_COMPONENT_TYPE_TOKEN) public componentType\n    ) {\n        this.size = this.size || 'large';\n    }\n\n    ngAfterViewInit() {\n        const loaderEl = this.elementRef.nativeElement.querySelector('.is-loader');\n        if (this.height && !!loaderEl) {\n            this.renderer.setStyle(loaderEl, 'position', 'static');\n            this.renderer.setStyle(loaderEl, 'min-height', this.height + 'px');\n        }\n\n        this.addCustomLoaderSizeClass();\n    }\n\n    private addCustomLoaderSizeClass() {\n        if (this.customLoader?.nativeElement?.previousSibling) {\n            this.renderer.addClass(this.customLoader.nativeElement.previousSibling, this.size);\n        }\n    }\n}\n","/*\n * Created on 2020.4.19 By Andy Kononenko (andyk@ironsrc.com)\n */\n\nexport type LoaderPosition = 'center' | 'left' | '';\nexport type LoaderSize = 'large' | 'medium' | 'small' | 'inline';\nexport type LoaderColor = 'grey' | 'blue' | 'white';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAEa,2BAA2B,GAAG,IAAI,cAAc,CAAY,6BAA6B;;;MCIhF,mBAAmB,CAAA;;AAoBrC,IAAA,IAAW,cAAc,GAAA;AACrB,QAAA,OAAO,CAAY,SAAA,EAAA,IAAI,CAAC,QAAQ,EAAE,CAAC;KACtC;IAID,WACY,CAAA,UAAsB,EACtB,QAAmB;;IAE6B,aAAa,EAAA;QAH7D,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACtB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QAE6B,IAAa,CAAA,aAAA,GAAb,aAAa,CAAA;;QAnBhE,IAAQ,CAAA,QAAA,GAAmB,QAAQ,CAAC;;QAEpC,IAAI,CAAA,IAAA,GAAe,OAAO,CAAC;;QAE3B,IAAK,CAAA,KAAA,GAAgB,MAAM,CAAC;QAiBjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC;KACpC;IAED,eAAe,GAAA;AACX,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;AAC3E,QAAA,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,EAAE;YAC3B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACvD,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AACtE,SAAA;QAED,IAAI,CAAC,wBAAwB,EAAE,CAAC;KACnC;IAEO,wBAAwB,GAAA;AAC5B,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE;AACnD,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACtF,SAAA;KACJ;AAjDiB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,SAAA,2BAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,mBAAmB,gGA8Bb,2BAA2B,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA;oEA9BjC,mBAAmB,EAAA,SAAA,EAAA,SAAA,yBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;mCAEH,UAAU,CAAA,CAAA;;;;;;;;iFAF1B,mBAAmB,EAAA,CAAA;cADxC,SAAS;;sBA+BD,QAAQ;;sBAAI,MAAM;uBAAC,2BAA2B,CAAA;qBA5BJ,YAAY,EAAA,CAAA;kBAA1D,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA,cAAc,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,CAAA;YAGpC,MAAM,EAAA,CAAA;kBAAd,KAAK;YAEG,MAAM,EAAA,CAAA;kBAAd,KAAK;YAEG,IAAI,EAAA,CAAA;kBAAZ,KAAK;YAEG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YAEG,IAAI,EAAA,CAAA;kBAAZ,KAAK;YAEG,KAAK,EAAA,CAAA;kBAAb,KAAK;YAEuB,GAAG,EAAA,CAAA;kBAA/B,WAAW;mBAAC,cAAc,CAAA;;;ACvB/B;;AAEG;;ACFH;;AAEG;;;;"}