UNPKG

ngx-slight-scroll

Version:

The CSS scrollbars styling module defines properties that you can use for visual styling of scrollbars. You can customize the width of the scrollbar as required.

1 lines 5.31 kB
{"version":3,"file":"ngx-slight-scroll.mjs","sources":["../../../projects/ngx-slight-scroll/src/lib/ngx-slight-scroll.service.ts","../../../projects/ngx-slight-scroll/src/lib/ngx-slight-scroll.directive.ts","../../../projects/ngx-slight-scroll/src/public-api.ts","../../../projects/ngx-slight-scroll/src/ngx-slight-scroll.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NgxSlightScrollService {\n\n constructor() { }\n}\n","import { AfterViewInit, EventEmitter, Directive, ElementRef, Input, Output } from \"@angular/core\";\n\n@Directive({\n selector: \"[ngxSlimScroll]\",\n standalone: true\n})\nexport class NgxSlightScrollDirective implements AfterViewInit {\n @Input() maxHeight: string;\n @Input() minHeight: string;\n @Input() scrollBg: string = \"#fff\";\n @Input() scrollThumbBg: string = \"#d9d9d9\";\n @Input() scrollThumbRadius: number = 0;\n @Input() scrollWidth: number = 10;\n @Input() scrollBorder: boolean = false;\n\n @Output() scrollEndEvent: EventEmitter<any> = new EventEmitter<any>();\n\n public element: HTMLElement;\n\n constructor(private el: ElementRef) {\n this.element = this.el.nativeElement as HTMLElement;\n this.element.classList.add(\"ngx-slight-scroll\");\n }\n\n ngAfterViewInit(): void {\n if (this.scrollBorder) {\n this.element.classList.add(\"ngx-slight-scroll-border\");\n }\n if (this.minHeight) {\n this.element.style.minHeight = this.minHeight;\n }\n if (this.maxHeight) {\n this.element.style.maxHeight = this.maxHeight;\n }\n document.body.style.setProperty(\n \"--ngx-slight-scroll-thumb-bg\",\n this.scrollThumbBg\n );\n document.body.style.setProperty(\n \"--ngx-slight-scroll-thumb-radius\",\n this.scrollThumbRadius.toString() + \"px\"\n );\n document.body.style.setProperty(\n \"--ngx-slight-scroll-width\",\n this.scrollWidth.toString() + \"px\"\n );\n document.body.style.setProperty(\"--ngx-slight-scroll-bg\", this.scrollBg);\n\n this.element.addEventListener(\"scroll\", () => {\n if (\n this.element.offsetHeight + this.element.scrollTop >=\n this.element.scrollHeight\n ) {\n this.scrollEndEvent.emit();\n }\n });\n }\n}\n","/*\n * Public API Surface of ngx-slight-scroll\n */\n\nexport * from './lib/ngx-slight-scroll.service';\nexport * from './lib/ngx-slight-scroll.directive';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}