ngx-scrollbar-v8
Version:
Custom overlay-scrollbars with native scrolling mechanism.
43 lines • 3.62 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Directive, Optional } from '@angular/core';
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { SmoothScroll } from '../smooth-scroll/smooth-scroll';
export class NgScrollbarView {
/**
* @param {?} virtualScrollViewport
* @param {?} smoothScroll
*/
constructor(virtualScrollViewport, smoothScroll) {
this.virtualScrollViewport = virtualScrollViewport;
this.smoothScroll = smoothScroll;
if (!virtualScrollViewport) {
throw new Error('NgScrollBar: add [NgScrollbarView] directive on CdkVirtualScrollViewport component only');
}
if (!smoothScroll) {
throw new Error('NgScrollBar: add [smoothScroll] directive is required with [NgScrollbarView]');
}
}
}
NgScrollbarView.decorators = [
{ type: Directive, args: [{
selector: '[ngScrollbarView]',
host: {
'[class.ng-custom-scroll-view]': 'true'
}
},] }
];
/** @nocollapse */
NgScrollbarView.ctorParameters = () => [
{ type: CdkVirtualScrollViewport, decorators: [{ type: Optional }] },
{ type: SmoothScroll, decorators: [{ type: Optional }] }
];
if (false) {
/** @type {?} */
NgScrollbarView.prototype.virtualScrollViewport;
/** @type {?} */
NgScrollbarView.prototype.smoothScroll;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctc2Nyb2xsYmFyLXZpZXcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtc2Nyb2xsYmFyLyIsInNvdXJjZXMiOlsic2Nyb2xsYmFyL25nLXNjcm9sbGJhci12aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFRNUQsTUFBTSxPQUFPLGVBQWU7Ozs7O0lBRTFCLFlBQStCLHFCQUErQyxFQUMvQyxZQUEwQjtRQUQxQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQTBCO1FBQy9DLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ3ZELElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHlGQUF5RixDQUFDLENBQUM7U0FDNUc7UUFDRCxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsOEVBQThFLENBQUMsQ0FBQztTQUNqRztJQUNILENBQUM7OztZQWhCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsSUFBSSxFQUFFO29CQUNKLCtCQUErQixFQUFFLE1BQU07aUJBQ3hDO2FBQ0Y7Ozs7WUFSTyx3QkFBd0IsdUJBV2pCLFFBQVE7WUFWZixZQUFZLHVCQVdMLFFBQVE7Ozs7SUFEVCxnREFBa0U7O0lBQ2xFLHVDQUE2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Nka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQge1Ntb290aFNjcm9sbH0gZnJvbSAnLi4vc21vb3RoLXNjcm9sbC9zbW9vdGgtc2Nyb2xsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW25nU2Nyb2xsYmFyVmlld10nLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5uZy1jdXN0b20tc2Nyb2xsLXZpZXddJzogJ3RydWUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTmdTY3JvbGxiYXJWaWV3IHtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgdmlydHVhbFNjcm9sbFZpZXdwb3J0OiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIHB1YmxpYyBzbW9vdGhTY3JvbGw6IFNtb290aFNjcm9sbCkge1xuICAgIGlmICghdmlydHVhbFNjcm9sbFZpZXdwb3J0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05nU2Nyb2xsQmFyOiBhZGQgW05nU2Nyb2xsYmFyVmlld10gZGlyZWN0aXZlIG9uIENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCBjb21wb25lbnQgb25seScpO1xuICAgIH1cbiAgICBpZiAoIXNtb290aFNjcm9sbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOZ1Njcm9sbEJhcjogYWRkIFtzbW9vdGhTY3JvbGxdIGRpcmVjdGl2ZSBpcyByZXF1aXJlZCB3aXRoIFtOZ1Njcm9sbGJhclZpZXddJyk7XG4gICAgfVxuICB9XG59XG4iXX0=