UNPKG

@addapptables/perfect-scrollbar

Version:
115 lines 8.18 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Directive, ElementRef, HostListener, Input } from '@angular/core'; import PerfectScrollbar from 'perfect-scrollbar'; import { Router, NavigationEnd, NavigationError, NavigationCancel } from '@angular/router'; import { filter, delay } from 'rxjs/operators'; var PerfectScrollbarDirective = /** @class */ (function () { function PerfectScrollbarDirective(_elementRef, _router) { this._elementRef = _elementRef; this._router = _router; this.allSub = new Array(); this.options = {}; } Object.defineProperty(PerfectScrollbarDirective.prototype, "perfectScrollOptions", { set: /** * @param {?} value * @return {?} */ function (value) { this.options = value; }, enumerable: true, configurable: true }); /** * @return {?} */ PerfectScrollbarDirective.prototype.onResize = /** * @return {?} */ function () { this.ps && this.ps.update(); }; /** * @return {?} */ PerfectScrollbarDirective.prototype.ngAfterViewInit = /** * @return {?} */ function () { var _this = this; this.initPerfectScroll(); /** @type {?} */ var navigationEnd$ = this._router.events .pipe(filter((/** * @param {?} event * @return {?} */ function (event) { return event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel; })), delay(100)) .subscribe((/** * @return {?} */ function () { _this.ps && _this.ps.update(); })); this.allSub.push(navigationEnd$); }; /** * @return {?} */ PerfectScrollbarDirective.prototype.initPerfectScroll = /** * @return {?} */ function () { this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {}); }; /** * @return {?} */ PerfectScrollbarDirective.prototype.ngOnDestroy = /** * @return {?} */ function () { this.ps && this.ps.destroy(); this.allSub.forEach((/** * @param {?} x * @return {?} */ function (x) { return x.unsubscribe(); })); }; PerfectScrollbarDirective.decorators = [ { type: Directive, args: [{ selector: '[addapptablesPerfectScrollbar]' },] } ]; /** @nocollapse */ PerfectScrollbarDirective.ctorParameters = function () { return [ { type: ElementRef }, { type: Router } ]; }; PerfectScrollbarDirective.propDecorators = { perfectScrollOptions: [{ type: Input }], onResize: [{ type: HostListener, args: ['window:resize',] }] }; return PerfectScrollbarDirective; }()); export { PerfectScrollbarDirective }; if (false) { /** @type {?} */ PerfectScrollbarDirective.prototype.ps; /** @type {?} */ PerfectScrollbarDirective.prototype.options; /** @type {?} */ PerfectScrollbarDirective.prototype.allSub; /** * @type {?} * @private */ PerfectScrollbarDirective.prototype._elementRef; /** @type {?} */ PerfectScrollbarDirective.prototype._router; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZmVjdC1zY3JvbGxiYXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFkZGFwcHRhYmxlcy9wZXJmZWN0LXNjcm9sbGJhci8iLCJzb3VyY2VzIjpbImxpYi9wZXJmZWN0LXNjcm9sbGJhci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBYSxLQUFLLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sZ0JBQWdCLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUcvQztJQVdJLG1DQUFvQixXQUF1QixFQUFXLE9BQWU7UUFBakQsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFBVyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBRnJFLFdBQU0sR0FBRyxJQUFJLEtBQUssRUFBZ0IsQ0FBQztRQUcvQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsc0JBQ0ksMkRBQW9COzs7OztRQUR4QixVQUN5QixLQUFLO1lBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUM7OztPQUFBOzs7O0lBR0QsNENBQVE7OztJQURSO1FBRUksSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLENBQUM7Ozs7SUFFRCxtREFBZTs7O0lBQWY7UUFBQSxpQkFXQztRQVZHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDOztZQUNuQixjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO2FBQ3JDLElBQUksQ0FDRCxNQUFNOzs7O1FBQUMsVUFBQyxLQUFLLElBQUssT0FBQSxLQUFLLFlBQVksYUFBYSxJQUFJLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGdCQUFnQixFQUF2RyxDQUF1RyxFQUFDLEVBQzFILEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FDYjthQUNBLFNBQVM7OztRQUFDO1lBQ1AsS0FBSSxDQUFDLEVBQUUsSUFBSSxLQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hDLENBQUMsRUFBQztRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Ozs7SUFFRCxxREFBaUI7OztJQUFqQjtRQUNJLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDOzs7O0lBRUQsK0NBQVc7OztJQUFYO1FBQ0ksSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTzs7OztRQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFmLENBQWUsRUFBQyxDQUFDO0lBQzlDLENBQUM7O2dCQTdDSixTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLGdDQUFnQztpQkFDN0M7Ozs7Z0JBUm1CLFVBQVU7Z0JBRXJCLE1BQU07Ozt1Q0FtQlYsS0FBSzsyQkFLTCxZQUFZLFNBQUMsZUFBZTs7SUEyQmpDLGdDQUFDO0NBQUEsQUEvQ0QsSUErQ0M7U0E1Q1kseUJBQXlCOzs7SUFFbEMsdUNBQXFCOztJQUVyQiw0Q0FBYTs7SUFFYiwyQ0FBbUM7Ozs7O0lBRXZCLGdEQUErQjs7SUFBRSw0Q0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBJbnB1dCwgQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgUGVyZmVjdFNjcm9sbGJhciBmcm9tICdwZXJmZWN0LXNjcm9sbGJhcic7XHJcbmltcG9ydCB7IFJvdXRlciwgTmF2aWdhdGlvbkVuZCwgTmF2aWdhdGlvbkVycm9yLCBOYXZpZ2F0aW9uQ2FuY2VsIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZmlsdGVyLCBkZWxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW2FkZGFwcHRhYmxlc1BlcmZlY3RTY3JvbGxiYXJdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVyZmVjdFNjcm9sbGJhckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gICAgcHM6IFBlcmZlY3RTY3JvbGxiYXI7XHJcblxyXG4gICAgb3B0aW9uczogYW55O1xyXG5cclxuICAgIGFsbFN1YiA9IG5ldyBBcnJheTxTdWJzY3JpcHRpb24+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVhZG9ubHkgX3JvdXRlcjogUm91dGVyKSB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25zID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHNldCBwZXJmZWN0U2Nyb2xsT3B0aW9ucyh2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMub3B0aW9ucyA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxyXG4gICAgb25SZXNpemUoKSB7XHJcbiAgICAgICAgdGhpcy5wcyAmJiB0aGlzLnBzLnVwZGF0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmluaXRQZXJmZWN0U2Nyb2xsKCk7XHJcbiAgICAgICAgY29uc3QgbmF2aWdhdGlvbkVuZCQgPSB0aGlzLl9yb3V0ZXIuZXZlbnRzXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kIHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yIHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkNhbmNlbCksXHJcbiAgICAgICAgICAgICAgICBkZWxheSgxMDApXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBzICYmIHRoaXMucHMudXBkYXRlKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuYWxsU3ViLnB1c2gobmF2aWdhdGlvbkVuZCQpO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRQZXJmZWN0U2Nyb2xsKCkge1xyXG4gICAgICAgIHRoaXMucHMgPSBuZXcgUGVyZmVjdFNjcm9sbGJhcih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnBzICYmIHRoaXMucHMuZGVzdHJveSgpO1xyXG4gICAgICAgIHRoaXMuYWxsU3ViLmZvckVhY2goeCA9PiB4LnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=