{"version":3,"file":"ngartifex-perfect-scrollbar.mjs","sources":["../../../../projects/ngartifex/perfect-scrollbar/src/lib/perfect-scrollbar.directive.ts","../../../../projects/ngartifex/perfect-scrollbar/src/lib/perfect-scrollbar.module.ts","../../../../projects/ngartifex/perfect-scrollbar/src/public-api.ts","../../../../projects/ngartifex/perfect-scrollbar/src/ngartifex-perfect-scrollbar.ts"],"sourcesContent":["import { Directive, ElementRef, HostListener, OnDestroy, Input, AfterViewInit } from '@angular/core';\r\nimport PerfectScrollbar from 'perfect-scrollbar';\r\nimport { Router, NavigationEnd, NavigationError, NavigationCancel } from '@angular/router';\r\nimport { filter, delay } from 'rxjs/operators';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Directive({\r\n    selector: '[perfectScrollbar]'\r\n})\r\nexport class PerfectScrollbarDirective implements AfterViewInit, OnDestroy {\r\n\r\n    ps: PerfectScrollbar;\r\n\r\n    options: any;\r\n\r\n    allSub = new Array<Subscription>();\r\n\r\n    constructor(private _elementRef: ElementRef, readonly _router: Router) {\r\n        this.options = {};\r\n    }\r\n\r\n    @Input()\r\n    set perfectScrollOptions(value) {\r\n        this.options = value;\r\n    }\r\n\r\n    @HostListener('window:resize')\r\n    onResize() {\r\n        this.psUpdate();\r\n    }\r\n\r\n    ngAfterViewInit(): void {\r\n        this.initPerfectScroll();\r\n        const navigationEnd$ = this._router.events\r\n            .pipe(\r\n                filter((event) => event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel),\r\n                delay(100)\r\n            )\r\n            .subscribe(() => {\r\n                this.psUpdate();\r\n            });\r\n        this.allSub.push(navigationEnd$);\r\n    }\r\n\r\n    initPerfectScroll() {\r\n        // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\r\n        this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});\r\n    }\r\n\r\n    private psUpdate() {\r\n        this.ps && this.ps.update();\r\n    }\r\n\r\n    ngOnDestroy(): void {\r\n        this.ps && this.ps.destroy();\r\n        this.allSub.forEach(x => x.unsubscribe());\r\n    }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { PerfectScrollbarDirective } from './perfect-scrollbar.directive';\r\n\r\n@NgModule({\r\n    declarations: [\r\n        PerfectScrollbarDirective\r\n    ],\r\n    exports: [\r\n        PerfectScrollbarDirective\r\n    ]\r\n})\r\nexport class PerfectScrollbarModule { }\r\n","/*\r\n * Public API Surface of perfect-scrollbar\r\n */\r\n\r\nexport * from './lib/perfect-scrollbar.directive';\r\nexport * from './lib/perfect-scrollbar.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}