UNPKG

@noilda/ng-loader

Version:
35 lines 4.9 kB
import { Injectable, RendererFactory2 } from '@angular/core'; import * as i0 from "@angular/core"; export class LoaderService { constructor(rendererFactory) { this.renderer = rendererFactory.createRenderer(null, null); this.loaderEl = this.renderer.selectRootElement('.ld', true); this.loaderTxt = this.renderer.selectRootElement('.ld__txt', true); } /** * @param {boolean} loaderShow hide or show loader * @param {string|number} txt text or message to be displayed while showing the loader */ showLoader(loaderShow = true, txt = `Loading...`) { this.renderer.setProperty(this.loaderTxt, 'innerHTML', txt); if (loaderShow) { this.renderer.setStyle(this.loaderEl, 'display', 'init'); this.renderer.removeClass(this.loaderEl, 'ld__fade-out'); } else { this.renderer.addClass(this.loaderEl, 'ld__fade--out'); setTimeout(() => { this.renderer.setStyle(this.loaderEl, 'display', 'none'); }, 800); } } } LoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: LoaderService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); LoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: LoaderService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: LoaderService, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nL2xvYWRlci9zcmMvbGliL2xvYWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSXhFLE1BQU0sT0FBTyxhQUFhO0lBS3hCLFlBQVksZUFBaUM7UUFDM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxhQUFzQixJQUFJLEVBQUUsTUFBdUIsWUFBWTtRQUN4RSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM1RCxJQUFJLFVBQVUsRUFBRTtZQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLENBQUM7U0FDMUQ7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDdkQsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMzRCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDVDtJQUNILENBQUM7OzBHQTFCVSxhQUFhOzhHQUFiLGFBQWEsY0FGWixNQUFNOzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTG9hZGVyU2VydmljZSB7XG4gIHByaXZhdGUgcmVuZGVyZXIhOiBSZW5kZXJlcjI7XG4gIHByaXZhdGUgbG9hZGVyRWw6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIGxvYWRlclR4dDogSFRNTEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IocmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyKSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcihudWxsLCBudWxsKTtcbiAgICB0aGlzLmxvYWRlckVsID0gdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCgnLmxkJywgdHJ1ZSk7XG4gICAgdGhpcy5sb2FkZXJUeHQgPSB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KCcubGRfX3R4dCcsIHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gbG9hZGVyU2hvdyBoaWRlIG9yIHNob3cgbG9hZGVyXG4gICAqIEBwYXJhbSB7c3RyaW5nfG51bWJlcn0gdHh0ICB0ZXh0IG9yIG1lc3NhZ2UgdG8gYmUgZGlzcGxheWVkIHdoaWxlIHNob3dpbmcgdGhlIGxvYWRlclxuICAgKi9cbiAgc2hvd0xvYWRlcihsb2FkZXJTaG93OiBib29sZWFuID0gdHJ1ZSwgdHh0OiBzdHJpbmcgfCBudW1iZXIgPSBgTG9hZGluZy4uLmApIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMubG9hZGVyVHh0LCAnaW5uZXJIVE1MJywgdHh0KTtcbiAgICBpZiAobG9hZGVyU2hvdykge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmxvYWRlckVsLCAnZGlzcGxheScsICdpbml0Jyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMubG9hZGVyRWwsICdsZF9fZmFkZS1vdXQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmxvYWRlckVsLCAnbGRfX2ZhZGUtLW91dCcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5sb2FkZXJFbCwgJ2Rpc3BsYXknLCAnbm9uZScpO1xuICAgICAgfSwgODAwKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==