@craftsjs/perfect-scrollbar 1.0.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/craftsjs-perfect-scrollbar.d.ts +1 -0
- package/{esm2015/craftsjs-perfect-scrollbar.js → esm2020/craftsjs-perfect-scrollbar.mjs} +0 -0
- package/esm2020/lib/perfect-scrollbar.directive.mjs +54 -0
- package/esm2020/lib/perfect-scrollbar.module.mjs +20 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/fesm2015/craftsjs-perfect-scrollbar.mjs +82 -0
- package/fesm2015/craftsjs-perfect-scrollbar.mjs.map +1 -0
- package/fesm2020/craftsjs-perfect-scrollbar.mjs +82 -0
- package/fesm2020/craftsjs-perfect-scrollbar.mjs.map +1 -0
- package/lib/perfect-scrollbar.directive.d.ts +3 -0
- package/lib/perfect-scrollbar.module.d.ts +5 -0
- package/package.json +21 -9
- package/bundles/craftsjs-perfect-scrollbar.umd.js +0 -92
- package/bundles/craftsjs-perfect-scrollbar.umd.js.map +0 -1
- package/bundles/craftsjs-perfect-scrollbar.umd.min.js +0 -2
- package/bundles/craftsjs-perfect-scrollbar.umd.min.js.map +0 -1
- package/craftsjs-perfect-scrollbar.metadata.json +0 -1
- package/esm2015/lib/perfect-scrollbar.directive.js +0 -51
- package/esm2015/lib/perfect-scrollbar.module.js +0 -15
- package/fesm2015/craftsjs-perfect-scrollbar.js +0 -75
- package/fesm2015/craftsjs-perfect-scrollbar.js.map +0 -1
package/README.md
CHANGED
|
@@ -8,6 +8,9 @@ Choose the version corresponding to your Angular version:
|
|
|
8
8
|
|
|
9
9
|
Angular | @craftsjs/perfect-scrollbar
|
|
10
10
|
----------- | -------------------
|
|
11
|
+
13 | 4.x
|
|
12
|
+
12 | 3.x
|
|
13
|
+
11 | 2.x
|
|
11
14
|
10 | 1.x
|
|
12
15
|
|
|
13
16
|
```
|
|
@@ -59,4 +62,4 @@ export interface Options {
|
|
|
59
62
|
<div perfectScrollbar [perfectScrollOptions]="{ wheelPropagation: true }" class="menu-scroll-container">
|
|
60
63
|
...large content
|
|
61
64
|
</div>
|
|
62
|
-
```
|
|
65
|
+
```
|
|
File without changes
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
+
import PerfectScrollbar from 'perfect-scrollbar';
|
|
3
|
+
import { NavigationEnd, NavigationError, NavigationCancel } from '@angular/router';
|
|
4
|
+
import { filter, delay } from 'rxjs/operators';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/router";
|
|
7
|
+
export class PerfectScrollbarDirective {
|
|
8
|
+
constructor(_elementRef, _router) {
|
|
9
|
+
this._elementRef = _elementRef;
|
|
10
|
+
this._router = _router;
|
|
11
|
+
this.allSub = new Array();
|
|
12
|
+
this.options = {};
|
|
13
|
+
}
|
|
14
|
+
set perfectScrollOptions(value) {
|
|
15
|
+
this.options = value;
|
|
16
|
+
}
|
|
17
|
+
onResize() {
|
|
18
|
+
this.psUpdate();
|
|
19
|
+
}
|
|
20
|
+
ngAfterViewInit() {
|
|
21
|
+
this.initPerfectScroll();
|
|
22
|
+
const navigationEnd$ = this._router.events
|
|
23
|
+
.pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel), delay(100))
|
|
24
|
+
.subscribe(() => {
|
|
25
|
+
this.psUpdate();
|
|
26
|
+
});
|
|
27
|
+
this.allSub.push(navigationEnd$);
|
|
28
|
+
}
|
|
29
|
+
initPerfectScroll() {
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
31
|
+
this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});
|
|
32
|
+
}
|
|
33
|
+
psUpdate() {
|
|
34
|
+
this.ps && this.ps.update();
|
|
35
|
+
}
|
|
36
|
+
ngOnDestroy() {
|
|
37
|
+
this.ps && this.ps.destroy();
|
|
38
|
+
this.allSub.forEach(x => x.unsubscribe());
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
PerfectScrollbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarDirective, deps: [{ token: i0.ElementRef }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
+
PerfectScrollbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.7", type: PerfectScrollbarDirective, selector: "[perfectScrollbar]", inputs: { perfectScrollOptions: "perfectScrollOptions" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0 });
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarDirective, decorators: [{
|
|
44
|
+
type: Directive,
|
|
45
|
+
args: [{
|
|
46
|
+
selector: '[perfectScrollbar]'
|
|
47
|
+
}]
|
|
48
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Router }]; }, propDecorators: { perfectScrollOptions: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], onResize: [{
|
|
51
|
+
type: HostListener,
|
|
52
|
+
args: ['window:resize']
|
|
53
|
+
}] } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZmVjdC1zY3JvbGxiYXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JhZnRzanMvcGVyZmVjdC1zY3JvbGxiYXIvc3JjL2xpYi9wZXJmZWN0LXNjcm9sbGJhci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQWEsS0FBSyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLGdCQUFnQixNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBVSxhQUFhLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBTS9DLE1BQU0sT0FBTyx5QkFBeUI7SUFRbEMsWUFBb0IsV0FBdUIsRUFBVyxPQUFlO1FBQWpELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQVcsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUZyRSxXQUFNLEdBQUcsSUFBSSxLQUFLLEVBQWdCLENBQUM7UUFHL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQ0ksb0JBQW9CLENBQUMsS0FBSztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBR0QsUUFBUTtRQUNKLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTthQUNyQyxJQUFJLENBQ0QsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxJQUFJLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGdCQUFnQixDQUFDLEVBQzFILEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FDYjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7UUFDUCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsaUVBQWlFO1FBQ2pFLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU8sUUFBUTtRQUNaLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7O3NIQS9DUSx5QkFBeUI7MEdBQXpCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7aUJBQ2pDO3NIQWNPLG9CQUFvQjtzQkFEdkIsS0FBSztnQkFNTixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIElucHV0LCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBQZXJmZWN0U2Nyb2xsYmFyIGZyb20gJ3BlcmZlY3Qtc2Nyb2xsYmFyJztcclxuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uRXJyb3IsIE5hdmlnYXRpb25DYW5jZWwgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIGRlbGF5IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbcGVyZmVjdFNjcm9sbGJhcl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXJmZWN0U2Nyb2xsYmFyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBwczogUGVyZmVjdFNjcm9sbGJhcjtcclxuXHJcbiAgICBvcHRpb25zOiBhbnk7XHJcblxyXG4gICAgYWxsU3ViID0gbmV3IEFycmF5PFN1YnNjcmlwdGlvbj4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLCByZWFkb25seSBfcm91dGVyOiBSb3V0ZXIpIHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMgPSB7fTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IHBlcmZlY3RTY3JvbGxPcHRpb25zKHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25zID0gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXHJcbiAgICBvblJlc2l6ZSgpIHtcclxuICAgICAgICB0aGlzLnBzVXBkYXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW5pdFBlcmZlY3RTY3JvbGwoKTtcclxuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uRW5kJCA9IHRoaXMuX3JvdXRlci5ldmVudHNcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHwgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IgfHwgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsKSxcclxuICAgICAgICAgICAgICAgIGRlbGF5KDEwMClcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMucHNVcGRhdGUoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5hbGxTdWIucHVzaChuYXZpZ2F0aW9uRW5kJCk7XHJcbiAgICB9XHJcblxyXG4gICAgaW5pdFBlcmZlY3RTY3JvbGwoKSB7XHJcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtYXJndW1lbnRcclxuICAgICAgICB0aGlzLnBzID0gbmV3IFBlcmZlY3RTY3JvbGxiYXIodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB7fSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBwc1VwZGF0ZSgpIHtcclxuICAgICAgICB0aGlzLnBzICYmIHRoaXMucHMudXBkYXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5wcyAmJiB0aGlzLnBzLmRlc3Ryb3koKTtcclxuICAgICAgICB0aGlzLmFsbFN1Yi5mb3JFYWNoKHggPT4geC51bnN1YnNjcmliZSgpKTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { PerfectScrollbarDirective } from './perfect-scrollbar.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class PerfectScrollbarModule {
|
|
5
|
+
}
|
|
6
|
+
PerfectScrollbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
PerfectScrollbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, declarations: [PerfectScrollbarDirective], exports: [PerfectScrollbarDirective] });
|
|
8
|
+
PerfectScrollbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
declarations: [
|
|
13
|
+
PerfectScrollbarDirective
|
|
14
|
+
],
|
|
15
|
+
exports: [
|
|
16
|
+
PerfectScrollbarDirective
|
|
17
|
+
]
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZmVjdC1zY3JvbGxiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JhZnRzanMvcGVyZmVjdC1zY3JvbGxiYXIvc3JjL2xpYi9wZXJmZWN0LXNjcm9sbGJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFVMUUsTUFBTSxPQUFPLHNCQUFzQjs7bUhBQXRCLHNCQUFzQjtvSEFBdEIsc0JBQXNCLGlCQU4zQix5QkFBeUIsYUFHekIseUJBQXlCO29IQUdwQixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFSbEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YseUJBQXlCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wseUJBQXlCO3FCQUM1QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFBlcmZlY3RTY3JvbGxiYXJEaXJlY3RpdmUgfSBmcm9tICcuL3BlcmZlY3Qtc2Nyb2xsYmFyLmRpcmVjdGl2ZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgUGVyZmVjdFNjcm9sbGJhckRpcmVjdGl2ZVxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBQZXJmZWN0U2Nyb2xsYmFyRGlyZWN0aXZlXHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXJmZWN0U2Nyb2xsYmFyTW9kdWxlIHsgfVxyXG4iXX0=
|
|
File without changes
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Directive, Input, HostListener, NgModule } from '@angular/core';
|
|
3
|
+
import PerfectScrollbar from 'perfect-scrollbar';
|
|
4
|
+
import * as i1 from '@angular/router';
|
|
5
|
+
import { NavigationEnd, NavigationError, NavigationCancel } from '@angular/router';
|
|
6
|
+
import { filter, delay } from 'rxjs/operators';
|
|
7
|
+
|
|
8
|
+
class PerfectScrollbarDirective {
|
|
9
|
+
constructor(_elementRef, _router) {
|
|
10
|
+
this._elementRef = _elementRef;
|
|
11
|
+
this._router = _router;
|
|
12
|
+
this.allSub = new Array();
|
|
13
|
+
this.options = {};
|
|
14
|
+
}
|
|
15
|
+
set perfectScrollOptions(value) {
|
|
16
|
+
this.options = value;
|
|
17
|
+
}
|
|
18
|
+
onResize() {
|
|
19
|
+
this.psUpdate();
|
|
20
|
+
}
|
|
21
|
+
ngAfterViewInit() {
|
|
22
|
+
this.initPerfectScroll();
|
|
23
|
+
const navigationEnd$ = this._router.events
|
|
24
|
+
.pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel), delay(100))
|
|
25
|
+
.subscribe(() => {
|
|
26
|
+
this.psUpdate();
|
|
27
|
+
});
|
|
28
|
+
this.allSub.push(navigationEnd$);
|
|
29
|
+
}
|
|
30
|
+
initPerfectScroll() {
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
32
|
+
this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});
|
|
33
|
+
}
|
|
34
|
+
psUpdate() {
|
|
35
|
+
this.ps && this.ps.update();
|
|
36
|
+
}
|
|
37
|
+
ngOnDestroy() {
|
|
38
|
+
this.ps && this.ps.destroy();
|
|
39
|
+
this.allSub.forEach(x => x.unsubscribe());
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
PerfectScrollbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarDirective, deps: [{ token: i0.ElementRef }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Directive });
|
|
43
|
+
PerfectScrollbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.7", type: PerfectScrollbarDirective, selector: "[perfectScrollbar]", inputs: { perfectScrollOptions: "perfectScrollOptions" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0 });
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarDirective, decorators: [{
|
|
45
|
+
type: Directive,
|
|
46
|
+
args: [{
|
|
47
|
+
selector: '[perfectScrollbar]'
|
|
48
|
+
}]
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Router }]; }, propDecorators: { perfectScrollOptions: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], onResize: [{
|
|
52
|
+
type: HostListener,
|
|
53
|
+
args: ['window:resize']
|
|
54
|
+
}] } });
|
|
55
|
+
|
|
56
|
+
class PerfectScrollbarModule {
|
|
57
|
+
}
|
|
58
|
+
PerfectScrollbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
59
|
+
PerfectScrollbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, declarations: [PerfectScrollbarDirective], exports: [PerfectScrollbarDirective] });
|
|
60
|
+
PerfectScrollbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule });
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, decorators: [{
|
|
62
|
+
type: NgModule,
|
|
63
|
+
args: [{
|
|
64
|
+
declarations: [
|
|
65
|
+
PerfectScrollbarDirective
|
|
66
|
+
],
|
|
67
|
+
exports: [
|
|
68
|
+
PerfectScrollbarDirective
|
|
69
|
+
]
|
|
70
|
+
}]
|
|
71
|
+
}] });
|
|
72
|
+
|
|
73
|
+
/*
|
|
74
|
+
* Public API Surface of perfect-scrollbar
|
|
75
|
+
*/
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Generated bundle index. Do not edit.
|
|
79
|
+
*/
|
|
80
|
+
|
|
81
|
+
export { PerfectScrollbarDirective, PerfectScrollbarModule };
|
|
82
|
+
//# sourceMappingURL=craftsjs-perfect-scrollbar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"craftsjs-perfect-scrollbar.mjs","sources":["../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.directive.ts","../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.module.ts","../../../../projects/craftsjs/perfect-scrollbar/src/public-api.ts","../../../../projects/craftsjs/perfect-scrollbar/src/craftsjs-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":";;;;;;;MASa,yBAAyB;IAQlC,YAAoB,WAAuB,EAAW,OAAe;QAAjD,gBAAW,GAAX,WAAW,CAAY;QAAW,YAAO,GAAP,OAAO,CAAQ;QAFrE,WAAM,GAAG,IAAI,KAAK,EAAgB,CAAC;QAG/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;KACrB;IAED,IACI,oBAAoB,CAAC,KAAK;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACxB;IAGD,QAAQ;QACJ,IAAI,CAAC,QAAQ,EAAE,CAAC;KACnB;IAED,eAAe;QACX,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM;aACrC,IAAI,CACD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,aAAa,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,YAAY,gBAAgB,CAAC,EAC1H,KAAK,CAAC,GAAG,CAAC,CACb;aACA,SAAS,CAAC;YACP,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB,CAAC,CAAC;QACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KACpC;IAED,iBAAiB;;QAEb,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;KACtE;IAEO,QAAQ;QACZ,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;KAC/B;IAED,WAAW;QACP,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;KAC7C;;sHA/CQ,yBAAyB;0GAAzB,yBAAyB;2FAAzB,yBAAyB;kBAHrC,SAAS;mBAAC;oBACP,QAAQ,EAAE,oBAAoB;iBACjC;sHAcO,oBAAoB;sBADvB,KAAK;gBAMN,QAAQ;sBADP,YAAY;uBAAC,eAAe;;;MCfpB,sBAAsB;;mHAAtB,sBAAsB;oHAAtB,sBAAsB,iBAN3B,yBAAyB,aAGzB,yBAAyB;oHAGpB,sBAAsB;2FAAtB,sBAAsB;kBARlC,QAAQ;mBAAC;oBACN,YAAY,EAAE;wBACV,yBAAyB;qBAC5B;oBACD,OAAO,EAAE;wBACL,yBAAyB;qBAC5B;iBACJ;;;ACVD;;;;ACAA;;;;;;"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Directive, Input, HostListener, NgModule } from '@angular/core';
|
|
3
|
+
import PerfectScrollbar from 'perfect-scrollbar';
|
|
4
|
+
import * as i1 from '@angular/router';
|
|
5
|
+
import { NavigationEnd, NavigationError, NavigationCancel } from '@angular/router';
|
|
6
|
+
import { filter, delay } from 'rxjs/operators';
|
|
7
|
+
|
|
8
|
+
class PerfectScrollbarDirective {
|
|
9
|
+
constructor(_elementRef, _router) {
|
|
10
|
+
this._elementRef = _elementRef;
|
|
11
|
+
this._router = _router;
|
|
12
|
+
this.allSub = new Array();
|
|
13
|
+
this.options = {};
|
|
14
|
+
}
|
|
15
|
+
set perfectScrollOptions(value) {
|
|
16
|
+
this.options = value;
|
|
17
|
+
}
|
|
18
|
+
onResize() {
|
|
19
|
+
this.psUpdate();
|
|
20
|
+
}
|
|
21
|
+
ngAfterViewInit() {
|
|
22
|
+
this.initPerfectScroll();
|
|
23
|
+
const navigationEnd$ = this._router.events
|
|
24
|
+
.pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel), delay(100))
|
|
25
|
+
.subscribe(() => {
|
|
26
|
+
this.psUpdate();
|
|
27
|
+
});
|
|
28
|
+
this.allSub.push(navigationEnd$);
|
|
29
|
+
}
|
|
30
|
+
initPerfectScroll() {
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
32
|
+
this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});
|
|
33
|
+
}
|
|
34
|
+
psUpdate() {
|
|
35
|
+
this.ps && this.ps.update();
|
|
36
|
+
}
|
|
37
|
+
ngOnDestroy() {
|
|
38
|
+
this.ps && this.ps.destroy();
|
|
39
|
+
this.allSub.forEach(x => x.unsubscribe());
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
PerfectScrollbarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarDirective, deps: [{ token: i0.ElementRef }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Directive });
|
|
43
|
+
PerfectScrollbarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.7", type: PerfectScrollbarDirective, selector: "[perfectScrollbar]", inputs: { perfectScrollOptions: "perfectScrollOptions" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0 });
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarDirective, decorators: [{
|
|
45
|
+
type: Directive,
|
|
46
|
+
args: [{
|
|
47
|
+
selector: '[perfectScrollbar]'
|
|
48
|
+
}]
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Router }]; }, propDecorators: { perfectScrollOptions: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], onResize: [{
|
|
52
|
+
type: HostListener,
|
|
53
|
+
args: ['window:resize']
|
|
54
|
+
}] } });
|
|
55
|
+
|
|
56
|
+
class PerfectScrollbarModule {
|
|
57
|
+
}
|
|
58
|
+
PerfectScrollbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
59
|
+
PerfectScrollbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, declarations: [PerfectScrollbarDirective], exports: [PerfectScrollbarDirective] });
|
|
60
|
+
PerfectScrollbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule });
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.7", ngImport: i0, type: PerfectScrollbarModule, decorators: [{
|
|
62
|
+
type: NgModule,
|
|
63
|
+
args: [{
|
|
64
|
+
declarations: [
|
|
65
|
+
PerfectScrollbarDirective
|
|
66
|
+
],
|
|
67
|
+
exports: [
|
|
68
|
+
PerfectScrollbarDirective
|
|
69
|
+
]
|
|
70
|
+
}]
|
|
71
|
+
}] });
|
|
72
|
+
|
|
73
|
+
/*
|
|
74
|
+
* Public API Surface of perfect-scrollbar
|
|
75
|
+
*/
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Generated bundle index. Do not edit.
|
|
79
|
+
*/
|
|
80
|
+
|
|
81
|
+
export { PerfectScrollbarDirective, PerfectScrollbarModule };
|
|
82
|
+
//# sourceMappingURL=craftsjs-perfect-scrollbar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"craftsjs-perfect-scrollbar.mjs","sources":["../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.directive.ts","../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.module.ts","../../../../projects/craftsjs/perfect-scrollbar/src/public-api.ts","../../../../projects/craftsjs/perfect-scrollbar/src/craftsjs-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":";;;;;;;MASa,yBAAyB;IAQlC,YAAoB,WAAuB,EAAW,OAAe;QAAjD,gBAAW,GAAX,WAAW,CAAY;QAAW,YAAO,GAAP,OAAO,CAAQ;QAFrE,WAAM,GAAG,IAAI,KAAK,EAAgB,CAAC;QAG/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;KACrB;IAED,IACI,oBAAoB,CAAC,KAAK;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACxB;IAGD,QAAQ;QACJ,IAAI,CAAC,QAAQ,EAAE,CAAC;KACnB;IAED,eAAe;QACX,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM;aACrC,IAAI,CACD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,aAAa,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,YAAY,gBAAgB,CAAC,EAC1H,KAAK,CAAC,GAAG,CAAC,CACb;aACA,SAAS,CAAC;YACP,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB,CAAC,CAAC;QACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KACpC;IAED,iBAAiB;;QAEb,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;KACtE;IAEO,QAAQ;QACZ,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;KAC/B;IAED,WAAW;QACP,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;KAC7C;;sHA/CQ,yBAAyB;0GAAzB,yBAAyB;2FAAzB,yBAAyB;kBAHrC,SAAS;mBAAC;oBACP,QAAQ,EAAE,oBAAoB;iBACjC;sHAcO,oBAAoB;sBADvB,KAAK;gBAMN,QAAQ;sBADP,YAAY;uBAAC,eAAe;;;MCfpB,sBAAsB;;mHAAtB,sBAAsB;oHAAtB,sBAAsB,iBAN3B,yBAAyB,aAGzB,yBAAyB;oHAGpB,sBAAsB;2FAAtB,sBAAsB;kBARlC,QAAQ;mBAAC;oBACN,YAAY,EAAE;wBACV,yBAAyB;qBAC5B;oBACD,OAAO,EAAE;wBACL,yBAAyB;qBAC5B;iBACJ;;;ACVD;;;;ACAA;;;;;;"}
|
|
@@ -2,6 +2,7 @@ import { ElementRef, OnDestroy, AfterViewInit } from '@angular/core';
|
|
|
2
2
|
import PerfectScrollbar from 'perfect-scrollbar';
|
|
3
3
|
import { Router } from '@angular/router';
|
|
4
4
|
import { Subscription } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
5
6
|
export declare class PerfectScrollbarDirective implements AfterViewInit, OnDestroy {
|
|
6
7
|
private _elementRef;
|
|
7
8
|
readonly _router: Router;
|
|
@@ -15,4 +16,6 @@ export declare class PerfectScrollbarDirective implements AfterViewInit, OnDestr
|
|
|
15
16
|
initPerfectScroll(): void;
|
|
16
17
|
private psUpdate;
|
|
17
18
|
ngOnDestroy(): void;
|
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PerfectScrollbarDirective, never>;
|
|
20
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<PerfectScrollbarDirective, "[perfectScrollbar]", never, { "perfectScrollOptions": "perfectScrollOptions"; }, {}, never>;
|
|
18
21
|
}
|
|
@@ -1,2 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./perfect-scrollbar.directive";
|
|
1
3
|
export declare class PerfectScrollbarModule {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PerfectScrollbarModule, never>;
|
|
5
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<PerfectScrollbarModule, [typeof i1.PerfectScrollbarDirective], never, [typeof i1.PerfectScrollbarDirective]>;
|
|
6
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<PerfectScrollbarModule>;
|
|
2
7
|
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@craftsjs/perfect-scrollbar",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"author": "Addapptables",
|
|
5
5
|
"description": "Perfect scrollbar library for angular",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"homepage": "https://github.com/addapptables/alert-ui",
|
|
8
8
|
"peerDependencies": {
|
|
9
|
-
"@angular/core": ">=
|
|
9
|
+
"@angular/core": ">=13.0.0 < 14.0.0",
|
|
10
10
|
"rxjs": ">=6.0.0 < 7.0.0",
|
|
11
11
|
"perfect-scrollbar": ">=1.0.0 < 2.0.0"
|
|
12
12
|
},
|
|
@@ -27,12 +27,24 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"tslib": "^2.0.0"
|
|
29
29
|
},
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"fesm2015": "fesm2015/craftsjs-perfect-scrollbar.
|
|
30
|
+
"module": "fesm2015/craftsjs-perfect-scrollbar.mjs",
|
|
31
|
+
"es2020": "fesm2020/craftsjs-perfect-scrollbar.mjs",
|
|
32
|
+
"esm2020": "esm2020/craftsjs-perfect-scrollbar.mjs",
|
|
33
|
+
"fesm2020": "fesm2020/craftsjs-perfect-scrollbar.mjs",
|
|
34
|
+
"fesm2015": "fesm2015/craftsjs-perfect-scrollbar.mjs",
|
|
35
35
|
"typings": "craftsjs-perfect-scrollbar.d.ts",
|
|
36
|
-
"
|
|
36
|
+
"exports": {
|
|
37
|
+
"./package.json": {
|
|
38
|
+
"default": "./package.json"
|
|
39
|
+
},
|
|
40
|
+
".": {
|
|
41
|
+
"types": "./craftsjs-perfect-scrollbar.d.ts",
|
|
42
|
+
"esm2020": "./esm2020/craftsjs-perfect-scrollbar.mjs",
|
|
43
|
+
"es2020": "./fesm2020/craftsjs-perfect-scrollbar.mjs",
|
|
44
|
+
"es2015": "./fesm2015/craftsjs-perfect-scrollbar.mjs",
|
|
45
|
+
"node": "./fesm2015/craftsjs-perfect-scrollbar.mjs",
|
|
46
|
+
"default": "./fesm2020/craftsjs-perfect-scrollbar.mjs"
|
|
47
|
+
}
|
|
48
|
+
},
|
|
37
49
|
"sideEffects": false
|
|
38
|
-
}
|
|
50
|
+
}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('perfect-scrollbar'), require('@angular/router'), require('rxjs/operators')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define('@craftsjs/perfect-scrollbar', ['exports', '@angular/core', 'perfect-scrollbar', '@angular/router', 'rxjs/operators'], factory) :
|
|
4
|
-
(global = global || self, factory((global.craftsjs = global.craftsjs || {}, global.craftsjs['perfect-scrollbar'] = {}), global.ng.core, global['perfect-scrollbar'], global.ng.router, global.rxjs.operators));
|
|
5
|
-
}(this, (function (exports, core, PerfectScrollbar, router, operators) { 'use strict';
|
|
6
|
-
|
|
7
|
-
PerfectScrollbar = PerfectScrollbar && Object.prototype.hasOwnProperty.call(PerfectScrollbar, 'default') ? PerfectScrollbar['default'] : PerfectScrollbar;
|
|
8
|
-
|
|
9
|
-
var PerfectScrollbarDirective = /** @class */ (function () {
|
|
10
|
-
function PerfectScrollbarDirective(_elementRef, _router) {
|
|
11
|
-
this._elementRef = _elementRef;
|
|
12
|
-
this._router = _router;
|
|
13
|
-
this.allSub = new Array();
|
|
14
|
-
this.options = {};
|
|
15
|
-
}
|
|
16
|
-
Object.defineProperty(PerfectScrollbarDirective.prototype, "perfectScrollOptions", {
|
|
17
|
-
set: function (value) {
|
|
18
|
-
this.options = value;
|
|
19
|
-
},
|
|
20
|
-
enumerable: false,
|
|
21
|
-
configurable: true
|
|
22
|
-
});
|
|
23
|
-
PerfectScrollbarDirective.prototype.onResize = function () {
|
|
24
|
-
this.psUpdate();
|
|
25
|
-
};
|
|
26
|
-
PerfectScrollbarDirective.prototype.ngAfterViewInit = function () {
|
|
27
|
-
var _this = this;
|
|
28
|
-
this.initPerfectScroll();
|
|
29
|
-
var navigationEnd$ = this._router.events
|
|
30
|
-
.pipe(operators.filter(function (event) { return event instanceof router.NavigationEnd || event instanceof router.NavigationError || event instanceof router.NavigationCancel; }), operators.delay(100))
|
|
31
|
-
.subscribe(function () {
|
|
32
|
-
_this.psUpdate();
|
|
33
|
-
});
|
|
34
|
-
this.allSub.push(navigationEnd$);
|
|
35
|
-
};
|
|
36
|
-
PerfectScrollbarDirective.prototype.initPerfectScroll = function () {
|
|
37
|
-
this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});
|
|
38
|
-
};
|
|
39
|
-
PerfectScrollbarDirective.prototype.psUpdate = function () {
|
|
40
|
-
this.ps && this.ps.update();
|
|
41
|
-
};
|
|
42
|
-
PerfectScrollbarDirective.prototype.ngOnDestroy = function () {
|
|
43
|
-
this.ps && this.ps.destroy();
|
|
44
|
-
this.allSub.forEach(function (x) { return x.unsubscribe(); });
|
|
45
|
-
};
|
|
46
|
-
return PerfectScrollbarDirective;
|
|
47
|
-
}());
|
|
48
|
-
PerfectScrollbarDirective.decorators = [
|
|
49
|
-
{ type: core.Directive, args: [{
|
|
50
|
-
selector: '[perfectScrollbar]'
|
|
51
|
-
},] }
|
|
52
|
-
];
|
|
53
|
-
PerfectScrollbarDirective.ctorParameters = function () { return [
|
|
54
|
-
{ type: core.ElementRef },
|
|
55
|
-
{ type: router.Router }
|
|
56
|
-
]; };
|
|
57
|
-
PerfectScrollbarDirective.propDecorators = {
|
|
58
|
-
perfectScrollOptions: [{ type: core.Input }],
|
|
59
|
-
onResize: [{ type: core.HostListener, args: ['window:resize',] }]
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
var PerfectScrollbarModule = /** @class */ (function () {
|
|
63
|
-
function PerfectScrollbarModule() {
|
|
64
|
-
}
|
|
65
|
-
return PerfectScrollbarModule;
|
|
66
|
-
}());
|
|
67
|
-
PerfectScrollbarModule.decorators = [
|
|
68
|
-
{ type: core.NgModule, args: [{
|
|
69
|
-
declarations: [
|
|
70
|
-
PerfectScrollbarDirective
|
|
71
|
-
],
|
|
72
|
-
exports: [
|
|
73
|
-
PerfectScrollbarDirective
|
|
74
|
-
]
|
|
75
|
-
},] }
|
|
76
|
-
];
|
|
77
|
-
|
|
78
|
-
/*
|
|
79
|
-
* Public API Surface of perfect-scrollbar
|
|
80
|
-
*/
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Generated bundle index. Do not edit.
|
|
84
|
-
*/
|
|
85
|
-
|
|
86
|
-
exports.PerfectScrollbarDirective = PerfectScrollbarDirective;
|
|
87
|
-
exports.PerfectScrollbarModule = PerfectScrollbarModule;
|
|
88
|
-
|
|
89
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
90
|
-
|
|
91
|
-
})));
|
|
92
|
-
//# sourceMappingURL=craftsjs-perfect-scrollbar.umd.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"craftsjs-perfect-scrollbar.umd.js","sources":["../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.directive.ts","../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.module.ts","../../../../projects/craftsjs/perfect-scrollbar/src/public-api.ts","../../../../projects/craftsjs/perfect-scrollbar/src/craftsjs-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 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":["filter","NavigationEnd","NavigationError","NavigationCancel","delay","Directive","ElementRef","Router","Input","HostListener","NgModule"],"mappings":";;;;;;;;;QAiBI,mCAAoB,WAAuB,EAAW,OAAe;YAAjD,gBAAW,GAAX,WAAW,CAAY;YAAW,YAAO,GAAP,OAAO,CAAQ;YAFrE,WAAM,GAAG,IAAI,KAAK,EAAgB,CAAC;YAG/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;SACrB;QAED,sBACI,2DAAoB;iBADxB,UACyB,KAAK;gBAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACxB;;;WAAA;QAGD,4CAAQ,GAAR;YACI,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB;QAED,mDAAe,GAAf;YAAA,iBAWC;YAVG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM;iBACrC,IAAI,CACDA,gBAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,YAAYC,oBAAa,IAAI,KAAK,YAAYC,sBAAe,IAAI,KAAK,YAAYC,uBAAgB,GAAA,CAAC,EAC1HC,eAAK,CAAC,GAAG,CAAC,CACb;iBACA,SAAS,CAAC;gBACP,KAAI,CAAC,QAAQ,EAAE,CAAC;aACnB,CAAC,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACpC;QAED,qDAAiB,GAAjB;YACI,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;SACtE;QAEO,4CAAQ,GAAR;YACJ,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;SAC/B;QAED,+CAAW,GAAX;YACI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,WAAW,EAAE,GAAA,CAAC,CAAC;SAC7C;;;;gBAjDJC,cAAS,SAAC;oBACP,QAAQ,EAAE,oBAAoB;iBACjC;;;gBARmBC,eAAU;gBAErBC,aAAM;;;uCAmBVC,UAAK;2BAKLC,iBAAY,SAAC,eAAe;;;;QCfjC;;;;;gBARCC,aAAQ,SAAC;oBACN,YAAY,EAAE;wBACV,yBAAyB;qBAC5B;oBACD,OAAO,EAAE;wBACL,yBAAyB;qBAC5B;iBACJ;;;ICVD;;;;ICAA;;;;;;;;;;;;;;;"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("perfect-scrollbar"),require("@angular/router"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@craftsjs/perfect-scrollbar",["exports","@angular/core","perfect-scrollbar","@angular/router","rxjs/operators"],t):t(((e=e||self).craftsjs=e.craftsjs||{},e.craftsjs["perfect-scrollbar"]={}),e.ng.core,e["perfect-scrollbar"],e.ng.router,e.rxjs.operators)}(this,(function(e,t,r,o,n){"use strict";r=r&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r;var s=function(){function e(e,t){this._elementRef=e,this._router=t,this.allSub=new Array,this.options={}}return Object.defineProperty(e.prototype,"perfectScrollOptions",{set:function(e){this.options=e},enumerable:!1,configurable:!0}),e.prototype.onResize=function(){this.psUpdate()},e.prototype.ngAfterViewInit=function(){var e=this;this.initPerfectScroll();var t=this._router.events.pipe(n.filter((function(e){return e instanceof o.NavigationEnd||e instanceof o.NavigationError||e instanceof o.NavigationCancel})),n.delay(100)).subscribe((function(){e.psUpdate()}));this.allSub.push(t)},e.prototype.initPerfectScroll=function(){this.ps=new r(this._elementRef.nativeElement,{})},e.prototype.psUpdate=function(){this.ps&&this.ps.update()},e.prototype.ngOnDestroy=function(){this.ps&&this.ps.destroy(),this.allSub.forEach((function(e){return e.unsubscribe()}))},e}();s.decorators=[{type:t.Directive,args:[{selector:"[perfectScrollbar]"}]}],s.ctorParameters=function(){return[{type:t.ElementRef},{type:o.Router}]},s.propDecorators={perfectScrollOptions:[{type:t.Input}],onResize:[{type:t.HostListener,args:["window:resize"]}]};var i=function(){};i.decorators=[{type:t.NgModule,args:[{declarations:[s],exports:[s]}]}],e.PerfectScrollbarDirective=s,e.PerfectScrollbarModule=i,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
|
-
//# sourceMappingURL=craftsjs-perfect-scrollbar.umd.min.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.directive.ts","../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.module.ts"],"names":["PerfectScrollbarDirective","_elementRef","_router","this","allSub","Array","options","Object","defineProperty","prototype","value","onResize","psUpdate","ngAfterViewInit","_this","initPerfectScroll","navigationEnd$","events","pipe","filter","event","NavigationEnd","NavigationError","NavigationCancel","delay","subscribe","push","ps","PerfectScrollbar","nativeElement","update","ngOnDestroy","destroy","forEach","x","unsubscribe","Directive","args","selector","ElementRef","Router","Input","HostListener","NgModule","declarations","exports"],"mappings":"imBAiBI,SAAAA,EAAoBC,EAAkCC,GAAlCC,KAAAF,YAAAA,EAAkCE,KAAAD,QAAAA,EAFtDC,KAAAC,OAAS,IAAIC,MAGTF,KAAKG,QAAU,UAGnBC,OAAAC,eACIR,EAAAS,UAAA,uBAAoB,KADxB,SACyBC,GACrBP,KAAKG,QAAUI,mCAInBV,EAAAS,UAAAE,SAAA,WACIR,KAAKS,YAGTZ,EAAAS,UAAAI,gBAAA,WAAA,IAAAC,EAAAX,KACIA,KAAKY,oBACL,IAAMC,EAAiBb,KAAKD,QAAQe,OAC/BC,KACGC,EAAAA,QAAO,SAACC,GAAU,OAAAA,aAAiBC,EAAAA,eAAiBD,aAAiBE,EAAAA,iBAAmBF,aAAiBG,EAAAA,oBACzGC,EAAAA,MAAM,MAETC,WAAU,WACPX,EAAKF,cAEbT,KAAKC,OAAOsB,KAAKV,IAGrBhB,EAAAS,UAAAM,kBAAA,WACIZ,KAAKwB,GAAK,IAAIC,EAAiBzB,KAAKF,YAAY4B,cAAe,KAG3D7B,EAAAS,UAAAG,SAAA,WACJT,KAAKwB,IAAMxB,KAAKwB,GAAGG,UAGvB9B,EAAAS,UAAAsB,YAAA,WACI5B,KAAKwB,IAAMxB,KAAKwB,GAAGK,UACnB7B,KAAKC,OAAO6B,SAAQ,SAAAC,GAAK,OAAAA,EAAEC,2CAhDlCC,EAAAA,UAASC,KAAA,CAAC,CACPC,SAAU,kEAPMC,EAAAA,kBAEXC,EAAAA,wDAmBJC,EAAAA,wBAKAC,EAAAA,aAAYL,KAAA,CAAC,0BCflB,iCARCM,EAAAA,SAAQN,KAAA,CAAC,CACNO,aAAc,CACV5C,GAEJ6C,QAAS,CACL7C","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 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"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"PerfectScrollbarDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[perfectScrollbar]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":17,"character":37},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":17,"character":67}]}],"perfectScrollOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":5}}]}],"onResize":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":26,"character":5},"arguments":["window:resize"]}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"initPerfectScroll":[{"__symbolic":"method"}],"psUpdate":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"PerfectScrollbarModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":3,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"PerfectScrollbarDirective"}],"exports":[{"__symbolic":"reference","name":"PerfectScrollbarDirective"}]}]}],"members":{}}},"origins":{"PerfectScrollbarDirective":"./lib/perfect-scrollbar.directive","PerfectScrollbarModule":"./lib/perfect-scrollbar.module"},"importAs":"@craftsjs/perfect-scrollbar"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, HostListener, Input } from '@angular/core';
|
|
2
|
-
import PerfectScrollbar from 'perfect-scrollbar';
|
|
3
|
-
import { Router, NavigationEnd, NavigationError, NavigationCancel } from '@angular/router';
|
|
4
|
-
import { filter, delay } from 'rxjs/operators';
|
|
5
|
-
export class PerfectScrollbarDirective {
|
|
6
|
-
constructor(_elementRef, _router) {
|
|
7
|
-
this._elementRef = _elementRef;
|
|
8
|
-
this._router = _router;
|
|
9
|
-
this.allSub = new Array();
|
|
10
|
-
this.options = {};
|
|
11
|
-
}
|
|
12
|
-
set perfectScrollOptions(value) {
|
|
13
|
-
this.options = value;
|
|
14
|
-
}
|
|
15
|
-
onResize() {
|
|
16
|
-
this.psUpdate();
|
|
17
|
-
}
|
|
18
|
-
ngAfterViewInit() {
|
|
19
|
-
this.initPerfectScroll();
|
|
20
|
-
const navigationEnd$ = this._router.events
|
|
21
|
-
.pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel), delay(100))
|
|
22
|
-
.subscribe(() => {
|
|
23
|
-
this.psUpdate();
|
|
24
|
-
});
|
|
25
|
-
this.allSub.push(navigationEnd$);
|
|
26
|
-
}
|
|
27
|
-
initPerfectScroll() {
|
|
28
|
-
this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});
|
|
29
|
-
}
|
|
30
|
-
psUpdate() {
|
|
31
|
-
this.ps && this.ps.update();
|
|
32
|
-
}
|
|
33
|
-
ngOnDestroy() {
|
|
34
|
-
this.ps && this.ps.destroy();
|
|
35
|
-
this.allSub.forEach(x => x.unsubscribe());
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
PerfectScrollbarDirective.decorators = [
|
|
39
|
-
{ type: Directive, args: [{
|
|
40
|
-
selector: '[perfectScrollbar]'
|
|
41
|
-
},] }
|
|
42
|
-
];
|
|
43
|
-
PerfectScrollbarDirective.ctorParameters = () => [
|
|
44
|
-
{ type: ElementRef },
|
|
45
|
-
{ type: Router }
|
|
46
|
-
];
|
|
47
|
-
PerfectScrollbarDirective.propDecorators = {
|
|
48
|
-
perfectScrollOptions: [{ type: Input }],
|
|
49
|
-
onResize: [{ type: HostListener, args: ['window:resize',] }]
|
|
50
|
-
};
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZmVjdC1zY3JvbGxiYXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JhZnRzanMvcGVyZmVjdC1zY3JvbGxiYXIvc3JjL2xpYi9wZXJmZWN0LXNjcm9sbGJhci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFhLEtBQUssRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxnQkFBZ0IsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTS9DLE1BQU0sT0FBTyx5QkFBeUI7SUFRbEMsWUFBb0IsV0FBdUIsRUFBVyxPQUFlO1FBQWpELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQVcsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUZyRSxXQUFNLEdBQUcsSUFBSSxLQUFLLEVBQWdCLENBQUM7UUFHL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQ0ksb0JBQW9CLENBQUMsS0FBSztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBR0QsUUFBUTtRQUNKLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTthQUNyQyxJQUFJLENBQ0QsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxJQUFJLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLGdCQUFnQixDQUFDLEVBQzFILEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FDYjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7UUFDUCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTyxRQUFRO1FBQ1osSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7O1lBakRKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsb0JBQW9CO2FBQ2pDOzs7WUFSbUIsVUFBVTtZQUVyQixNQUFNOzs7bUNBbUJWLEtBQUs7dUJBS0wsWUFBWSxTQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBJbnB1dCwgQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgUGVyZmVjdFNjcm9sbGJhciBmcm9tICdwZXJmZWN0LXNjcm9sbGJhcic7XHJcbmltcG9ydCB7IFJvdXRlciwgTmF2aWdhdGlvbkVuZCwgTmF2aWdhdGlvbkVycm9yLCBOYXZpZ2F0aW9uQ2FuY2VsIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZmlsdGVyLCBkZWxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW3BlcmZlY3RTY3JvbGxiYXJdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVyZmVjdFNjcm9sbGJhckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gICAgcHM6IFBlcmZlY3RTY3JvbGxiYXI7XHJcblxyXG4gICAgb3B0aW9uczogYW55O1xyXG5cclxuICAgIGFsbFN1YiA9IG5ldyBBcnJheTxTdWJzY3JpcHRpb24+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVhZG9ubHkgX3JvdXRlcjogUm91dGVyKSB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25zID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHNldCBwZXJmZWN0U2Nyb2xsT3B0aW9ucyh2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMub3B0aW9ucyA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxyXG4gICAgb25SZXNpemUoKSB7XHJcbiAgICAgICAgdGhpcy5wc1VwZGF0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmluaXRQZXJmZWN0U2Nyb2xsKCk7XHJcbiAgICAgICAgY29uc3QgbmF2aWdhdGlvbkVuZCQgPSB0aGlzLl9yb3V0ZXIuZXZlbnRzXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kIHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yIHx8IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkNhbmNlbCksXHJcbiAgICAgICAgICAgICAgICBkZWxheSgxMDApXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBzVXBkYXRlKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuYWxsU3ViLnB1c2gobmF2aWdhdGlvbkVuZCQpO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRQZXJmZWN0U2Nyb2xsKCkge1xyXG4gICAgICAgIHRoaXMucHMgPSBuZXcgUGVyZmVjdFNjcm9sbGJhcih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHBzVXBkYXRlKCkge1xyXG4gICAgICAgIHRoaXMucHMgJiYgdGhpcy5wcy51cGRhdGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnBzICYmIHRoaXMucHMuZGVzdHJveSgpO1xyXG4gICAgICAgIHRoaXMuYWxsU3ViLmZvckVhY2goeCA9PiB4LnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { PerfectScrollbarDirective } from './perfect-scrollbar.directive';
|
|
3
|
-
export class PerfectScrollbarModule {
|
|
4
|
-
}
|
|
5
|
-
PerfectScrollbarModule.decorators = [
|
|
6
|
-
{ type: NgModule, args: [{
|
|
7
|
-
declarations: [
|
|
8
|
-
PerfectScrollbarDirective
|
|
9
|
-
],
|
|
10
|
-
exports: [
|
|
11
|
-
PerfectScrollbarDirective
|
|
12
|
-
]
|
|
13
|
-
},] }
|
|
14
|
-
];
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZmVjdC1zY3JvbGxiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JhZnRzanMvcGVyZmVjdC1zY3JvbGxiYXIvc3JjL2xpYi9wZXJmZWN0LXNjcm9sbGJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQVUxRSxNQUFNLE9BQU8sc0JBQXNCOzs7WUFSbEMsUUFBUSxTQUFDO2dCQUNOLFlBQVksRUFBRTtvQkFDVix5QkFBeUI7aUJBQzVCO2dCQUNELE9BQU8sRUFBRTtvQkFDTCx5QkFBeUI7aUJBQzVCO2FBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQZXJmZWN0U2Nyb2xsYmFyRGlyZWN0aXZlIH0gZnJvbSAnLi9wZXJmZWN0LXNjcm9sbGJhci5kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIFBlcmZlY3RTY3JvbGxiYXJEaXJlY3RpdmVcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgUGVyZmVjdFNjcm9sbGJhckRpcmVjdGl2ZVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVyZmVjdFNjcm9sbGJhck1vZHVsZSB7IH1cclxuIl19
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, Input, HostListener, NgModule } from '@angular/core';
|
|
2
|
-
import PerfectScrollbar from 'perfect-scrollbar';
|
|
3
|
-
import { NavigationEnd, NavigationError, NavigationCancel, Router } from '@angular/router';
|
|
4
|
-
import { filter, delay } from 'rxjs/operators';
|
|
5
|
-
|
|
6
|
-
class PerfectScrollbarDirective {
|
|
7
|
-
constructor(_elementRef, _router) {
|
|
8
|
-
this._elementRef = _elementRef;
|
|
9
|
-
this._router = _router;
|
|
10
|
-
this.allSub = new Array();
|
|
11
|
-
this.options = {};
|
|
12
|
-
}
|
|
13
|
-
set perfectScrollOptions(value) {
|
|
14
|
-
this.options = value;
|
|
15
|
-
}
|
|
16
|
-
onResize() {
|
|
17
|
-
this.psUpdate();
|
|
18
|
-
}
|
|
19
|
-
ngAfterViewInit() {
|
|
20
|
-
this.initPerfectScroll();
|
|
21
|
-
const navigationEnd$ = this._router.events
|
|
22
|
-
.pipe(filter((event) => event instanceof NavigationEnd || event instanceof NavigationError || event instanceof NavigationCancel), delay(100))
|
|
23
|
-
.subscribe(() => {
|
|
24
|
-
this.psUpdate();
|
|
25
|
-
});
|
|
26
|
-
this.allSub.push(navigationEnd$);
|
|
27
|
-
}
|
|
28
|
-
initPerfectScroll() {
|
|
29
|
-
this.ps = new PerfectScrollbar(this._elementRef.nativeElement, {});
|
|
30
|
-
}
|
|
31
|
-
psUpdate() {
|
|
32
|
-
this.ps && this.ps.update();
|
|
33
|
-
}
|
|
34
|
-
ngOnDestroy() {
|
|
35
|
-
this.ps && this.ps.destroy();
|
|
36
|
-
this.allSub.forEach(x => x.unsubscribe());
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
PerfectScrollbarDirective.decorators = [
|
|
40
|
-
{ type: Directive, args: [{
|
|
41
|
-
selector: '[perfectScrollbar]'
|
|
42
|
-
},] }
|
|
43
|
-
];
|
|
44
|
-
PerfectScrollbarDirective.ctorParameters = () => [
|
|
45
|
-
{ type: ElementRef },
|
|
46
|
-
{ type: Router }
|
|
47
|
-
];
|
|
48
|
-
PerfectScrollbarDirective.propDecorators = {
|
|
49
|
-
perfectScrollOptions: [{ type: Input }],
|
|
50
|
-
onResize: [{ type: HostListener, args: ['window:resize',] }]
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
class PerfectScrollbarModule {
|
|
54
|
-
}
|
|
55
|
-
PerfectScrollbarModule.decorators = [
|
|
56
|
-
{ type: NgModule, args: [{
|
|
57
|
-
declarations: [
|
|
58
|
-
PerfectScrollbarDirective
|
|
59
|
-
],
|
|
60
|
-
exports: [
|
|
61
|
-
PerfectScrollbarDirective
|
|
62
|
-
]
|
|
63
|
-
},] }
|
|
64
|
-
];
|
|
65
|
-
|
|
66
|
-
/*
|
|
67
|
-
* Public API Surface of perfect-scrollbar
|
|
68
|
-
*/
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Generated bundle index. Do not edit.
|
|
72
|
-
*/
|
|
73
|
-
|
|
74
|
-
export { PerfectScrollbarDirective, PerfectScrollbarModule };
|
|
75
|
-
//# sourceMappingURL=craftsjs-perfect-scrollbar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"craftsjs-perfect-scrollbar.js","sources":["../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.directive.ts","../../../../projects/craftsjs/perfect-scrollbar/src/lib/perfect-scrollbar.module.ts","../../../../projects/craftsjs/perfect-scrollbar/src/public-api.ts","../../../../projects/craftsjs/perfect-scrollbar/src/craftsjs-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 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":";;;;;MASa,yBAAyB;IAQlC,YAAoB,WAAuB,EAAW,OAAe;QAAjD,gBAAW,GAAX,WAAW,CAAY;QAAW,YAAO,GAAP,OAAO,CAAQ;QAFrE,WAAM,GAAG,IAAI,KAAK,EAAgB,CAAC;QAG/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;KACrB;IAED,IACI,oBAAoB,CAAC,KAAK;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACxB;IAGD,QAAQ;QACJ,IAAI,CAAC,QAAQ,EAAE,CAAC;KACnB;IAED,eAAe;QACX,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM;aACrC,IAAI,CACD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,aAAa,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,YAAY,gBAAgB,CAAC,EAC1H,KAAK,CAAC,GAAG,CAAC,CACb;aACA,SAAS,CAAC;YACP,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB,CAAC,CAAC;QACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KACpC;IAED,iBAAiB;QACb,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;KACtE;IAEO,QAAQ;QACZ,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;KAC/B;IAED,WAAW;QACP,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;KAC7C;;;YAjDJ,SAAS,SAAC;gBACP,QAAQ,EAAE,oBAAoB;aACjC;;;YARmB,UAAU;YAErB,MAAM;;;mCAmBV,KAAK;uBAKL,YAAY,SAAC,eAAe;;;MCfpB,sBAAsB;;;YARlC,QAAQ,SAAC;gBACN,YAAY,EAAE;oBACV,yBAAyB;iBAC5B;gBACD,OAAO,EAAE;oBACL,yBAAyB;iBAC5B;aACJ;;;ACVD;;;;ACAA;;;;;;"}
|