@dontdrinkandroot/ngx-material-extensions 0.5.2 → 0.5.4
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/assets/_extensions.scss +104 -0
- package/assets/_theme.scss +145 -0
- package/assets/_utils.scss +49 -0
- package/{_variables.scss → assets/_variables.scss} +16 -1
- package/assets/fonts.scss +21 -0
- package/{index.scss → assets/style.scss} +1 -1
- package/assets/utils/_display.scss +37 -0
- package/{_utilities.scss → assets/utils/_spacing.scss} +3 -53
- package/esm2022/public-api.mjs +7 -4
- package/esm2022/src/button/fab-fixed.directive.mjs +25 -0
- package/esm2022/src/ddr-material-extensions.module.mjs +58 -7
- package/esm2022/src/sidenav/sidenav-container.component.mjs +4 -8
- package/esm2022/src/sidenav/sidenav.service.mjs +2 -9
- package/esm2022/src/theme/theme-config.mjs +3 -0
- package/esm2022/src/theme/theme-scroll.service.mjs +49 -0
- package/esm2022/src/toolbar/toolbar-fixed-top.directive.mjs +31 -0
- package/fesm2022/dontdrinkandroot-ngx-material-extensions.mjs +255 -122
- package/fesm2022/dontdrinkandroot-ngx-material-extensions.mjs.map +1 -1
- package/package.json +6 -7
- package/public-api.d.ts +6 -3
- package/src/button/fab-fixed.directive.d.ts +12 -0
- package/src/ddr-material-extensions.module.d.ts +17 -15
- package/src/sidenav/sidenav-container.component.d.ts +1 -2
- package/src/sidenav/sidenav.service.d.ts +1 -3
- package/src/theme/theme-config.d.ts +8 -0
- package/src/theme/theme-scroll.service.d.ts +12 -0
- package/src/toolbar/toolbar-fixed-top.directive.d.ts +13 -0
- package/_extensions.scss +0 -65
- package/_theme.scss +0 -42
|
@@ -6,7 +6,7 @@ import * as i3 from "@angular/material/sidenav";
|
|
|
6
6
|
export class SidenavContainerComponent {
|
|
7
7
|
constructor(sidenavService) {
|
|
8
8
|
this.sidenavService = sidenavService;
|
|
9
|
-
this.stayOpenOnLargeScreen =
|
|
9
|
+
this.stayOpenOnLargeScreen = true;
|
|
10
10
|
this.mode$ = this.sidenavService.getModeObservable();
|
|
11
11
|
this.opened$ = this.sidenavService.getOpenedObservable();
|
|
12
12
|
}
|
|
@@ -21,7 +21,6 @@ export class SidenavContainerComponent {
|
|
|
21
21
|
*/
|
|
22
22
|
ngOnInit() {
|
|
23
23
|
this.sidenavService.setSidenav(this.sidenav);
|
|
24
|
-
this.sidenavService.setSidenavContent(this.sidenavContent);
|
|
25
24
|
}
|
|
26
25
|
/**
|
|
27
26
|
* @override
|
|
@@ -30,18 +29,15 @@ export class SidenavContainerComponent {
|
|
|
30
29
|
this.scrollSubscription.unsubscribe();
|
|
31
30
|
}
|
|
32
31
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: SidenavContainerComponent, deps: [{ token: i1.SidenavService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: SidenavContainerComponent, selector: "ddr-mat-sidenav-container", inputs: { stayOpenOnLargeScreen: "stayOpenOnLargeScreen" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: ["sidenav"], descendants: true, static: true }
|
|
32
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: SidenavContainerComponent, selector: "ddr-mat-sidenav-container", inputs: { stayOpenOnLargeScreen: "stayOpenOnLargeScreen" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: ["sidenav"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<mat-sidenav-container [ngClass]=\"(mode$|async)\">\n <mat-sidenav\n #sidenav\n [mode]=\"(mode$|async) ?? 'over'\"\n [opened]=\"(opened$|async)\"\n [fixedInViewport]=\"true\"\n >\n <ng-content select=\"[slot=mat-sidenav]\"></ng-content>\n </mat-sidenav>\n <mat-sidenav-content #sidenavContent>\n <ng-content select=\"[slot=mat-sidenav-content]\"></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i3.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i3.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
34
33
|
}
|
|
35
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: SidenavContainerComponent, decorators: [{
|
|
36
35
|
type: Component,
|
|
37
|
-
args: [{ selector: 'ddr-mat-sidenav-container', template: "<mat-sidenav-container [ngClass]=\"(mode$|async)\">\n <mat-sidenav\n #sidenav\n [mode]=\"(mode$|async) ?? 'over'\"\n [opened]=\"(opened$|async)\">\n <ng-content select=\"[slot=mat-sidenav]\"></ng-content>\n </mat-sidenav>\n <mat-sidenav-content #sidenavContent>\n <ng-content select=\"[slot=mat-sidenav-content]\"></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n" }]
|
|
36
|
+
args: [{ selector: 'ddr-mat-sidenav-container', template: "<mat-sidenav-container [ngClass]=\"(mode$|async)\">\n <mat-sidenav\n #sidenav\n [mode]=\"(mode$|async) ?? 'over'\"\n [opened]=\"(opened$|async)\"\n [fixedInViewport]=\"true\"\n >\n <ng-content select=\"[slot=mat-sidenav]\"></ng-content>\n </mat-sidenav>\n <mat-sidenav-content #sidenavContent>\n <ng-content select=\"[slot=mat-sidenav-content]\"></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n" }]
|
|
38
37
|
}], ctorParameters: () => [{ type: i1.SidenavService }], propDecorators: { sidenav: [{
|
|
39
38
|
type: ViewChild,
|
|
40
39
|
args: ['sidenav', { static: true }]
|
|
41
|
-
}], sidenavContent: [{
|
|
42
|
-
type: ViewChild,
|
|
43
|
-
args: ['sidenavContent', { static: true }]
|
|
44
40
|
}], stayOpenOnLargeScreen: [{
|
|
45
41
|
type: Input
|
|
46
42
|
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQStDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTdkcsTUFBTSxPQUFPLHlCQUF5QjtJQWNsQyxZQUNZLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQVRuQywwQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFFN0IsVUFBSyxHQUE4QixJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFM0UsWUFBTyxHQUF3QixJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFRaEYsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVyxDQUFDLE9BQXNCO1FBRXJDLElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUVYLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBRWQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7OEdBMUNRLHlCQUF5QjtrR0FBekIseUJBQXlCLG9RQ1R0Qyx1ZEFhQTs7MkZESmEseUJBQXlCO2tCQUpyQyxTQUFTOytCQUNJLDJCQUEyQjttRkFNOUIsT0FBTztzQkFEYixTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBSTdCLHFCQUFxQjtzQkFEM0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0RHJhd2VyTW9kZSwgTWF0U2lkZW5hdn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQge1NpZGVuYXZTZXJ2aWNlfSBmcm9tICcuL3NpZGVuYXYuc2VydmljZSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZGRyLW1hdC1zaWRlbmF2LWNvbnRhaW5lcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveVxue1xuICAgIEBWaWV3Q2hpbGQoJ3NpZGVuYXYnLCB7c3RhdGljOiB0cnVlfSlcbiAgICBwdWJsaWMgc2lkZW5hdiE6IE1hdFNpZGVuYXY7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzdGF5T3Blbk9uTGFyZ2VTY3JlZW4gPSB0cnVlO1xuXG4gICAgcHVibGljIG1vZGUkOiBPYnNlcnZhYmxlPE1hdERyYXdlck1vZGU+ID0gdGhpcy5zaWRlbmF2U2VydmljZS5nZXRNb2RlT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHVibGljIG9wZW5lZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnNpZGVuYXZTZXJ2aWNlLmdldE9wZW5lZE9ic2VydmFibGUoKTtcblxuICAgIHByaXZhdGUgc2Nyb2xsU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgc2lkZW5hdlNlcnZpY2U6IFNpZGVuYXZTZXJ2aWNlLFxuICAgIClcbiAgICB7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG92ZXJyaWRlXG4gICAgICovXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkXG4gICAge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnNldFN0YXlPcGVuT25MYXJnZVNjcmVlbihjaGFuZ2VzWydzdGF5T3Blbk9uTGFyZ2VTY3JlZW4nXS5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBvdmVycmlkZVxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkXG4gICAge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnNldFNpZGVuYXYodGhpcy5zaWRlbmF2KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAb3ZlcnJpZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKVxuICAgIHtcbiAgICAgICAgdGhpcy5zY3JvbGxTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG59XG4iLCI8bWF0LXNpZGVuYXYtY29udGFpbmVyIFtuZ0NsYXNzXT1cIihtb2RlJHxhc3luYylcIj5cbiAgICA8bWF0LXNpZGVuYXZcbiAgICAgICAgI3NpZGVuYXZcbiAgICAgICAgW21vZGVdPVwiKG1vZGUkfGFzeW5jKSA/PyAnb3ZlcidcIlxuICAgICAgICBbb3BlbmVkXT1cIihvcGVuZWQkfGFzeW5jKVwiXG4gICAgICAgIFtmaXhlZEluVmlld3BvcnRdPVwidHJ1ZVwiXG4gICAgPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD1tYXQtc2lkZW5hdl1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9tYXQtc2lkZW5hdj5cbiAgICA8bWF0LXNpZGVuYXYtY29udGVudCAjc2lkZW5hdkNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzbG90PW1hdC1zaWRlbmF2LWNvbnRlbnRdXCI+PC9uZy1jb250ZW50PlxuICAgIDwvbWF0LXNpZGVuYXYtY29udGVudD5cbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxuIl19
|
|
@@ -12,7 +12,7 @@ export class SidenavService {
|
|
|
12
12
|
this.breakpointObserver = breakpointObserver;
|
|
13
13
|
this.router = router;
|
|
14
14
|
this.document = document;
|
|
15
|
-
this.stayOpenOnLargeScreen =
|
|
15
|
+
this.stayOpenOnLargeScreen = true;
|
|
16
16
|
this.largeBreakpoints = [
|
|
17
17
|
Breakpoints.Medium,
|
|
18
18
|
Breakpoints.Large,
|
|
@@ -31,13 +31,6 @@ export class SidenavService {
|
|
|
31
31
|
setSidenav(sidenav) {
|
|
32
32
|
this.sidenav = sidenav;
|
|
33
33
|
}
|
|
34
|
-
setSidenavContent(sidenavContent) {
|
|
35
|
-
this.sidenavContent = sidenavContent;
|
|
36
|
-
this.sidenavContent.elementScrolled().pipe(map(() => this.sidenavContent.measureScrollOffset('top') > 0)).subscribe(scrolled => {
|
|
37
|
-
this.document.body.classList.toggle('scrolled', scrolled);
|
|
38
|
-
this.sidenavContentScrolled$.next(scrolled);
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
34
|
getStayOpenOnLargeScreen() {
|
|
42
35
|
return this.stayOpenOnLargeScreen;
|
|
43
36
|
}
|
|
@@ -82,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
82
75
|
type: Inject,
|
|
83
76
|
args: [DOCUMENT]
|
|
84
77
|
}] }] });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBcUIsV0FBVyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEUsT0FBTyxFQUFDLGVBQWUsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxFQUFDLGVBQWUsRUFBUyxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUt6QyxNQUFNLE9BQU8sY0FBYztJQW1CdkIsWUFDWSxrQkFBc0MsRUFDdEMsTUFBYyxFQUNJLFFBQWtCO1FBRnBDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNJLGFBQVEsR0FBUixRQUFRLENBQVU7UUFuQnhDLDBCQUFxQixHQUFHLElBQUksQ0FBQztRQUU3QixxQkFBZ0IsR0FBRztZQUN2QixXQUFXLENBQUMsTUFBTTtZQUNsQixXQUFXLENBQUMsS0FBSztZQUNqQixXQUFXLENBQUMsTUFBTTtTQUNyQixDQUFDO1FBUU0sNEJBQXVCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFPbEUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksQ0FDM0UsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNoQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDL0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FDdEUsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2pDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FDcEQsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQyxJQUFJLEtBQUssWUFBWSxlQUFlLEVBQUUsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxVQUFVLENBQUMsT0FBbUI7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDM0IsQ0FBQztJQUdNLHdCQUF3QjtRQUMzQixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztJQUN0QyxDQUFDO0lBRU0sd0JBQXdCLENBQUMsS0FBYztRQUMxQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxNQUFNO1FBQ1QsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO1FBQ3JGLENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pDLENBQUM7UUFFRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVNLGlCQUFpQjtRQUNwQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVNLG1CQUFtQjtRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUN6QixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUN0RCxDQUFDO0lBQ04sQ0FBQztJQUVNLG9CQUFvQjtRQUN2QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2RCxDQUFDOzhHQXZGUSxjQUFjLDBFQXNCWCxRQUFRO2tIQXRCWCxjQUFjLGNBRlgsTUFBTTs7MkZBRVQsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQXVCUSxNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERyYXdlck1vZGUsIE1hdERyYXdlclRvZ2dsZVJlc3VsdCwgTWF0U2lkZW5hdn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQge0JyZWFrcG9pbnRPYnNlcnZlciwgQnJlYWtwb2ludHN9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNpZGVuYXZTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHNpZGVuYXYhOiBNYXRTaWRlbmF2O1xuXG4gICAgcHJpdmF0ZSBzdGF5T3Blbk9uTGFyZ2VTY3JlZW4gPSB0cnVlO1xuXG4gICAgcHJpdmF0ZSBsYXJnZUJyZWFrcG9pbnRzID0gW1xuICAgICAgICBCcmVha3BvaW50cy5NZWRpdW0sXG4gICAgICAgIEJyZWFrcG9pbnRzLkxhcmdlLFxuICAgICAgICBCcmVha3BvaW50cy5YTGFyZ2VcbiAgICBdO1xuXG4gICAgcHJpdmF0ZSBzY3JlZW5MYXJnZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgICBwcml2YXRlIG1vZGUkOiBPYnNlcnZhYmxlPE1hdERyYXdlck1vZGU+O1xuXG4gICAgcHJpdmF0ZSBvcGVuZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gICAgcHJpdmF0ZSBzaWRlbmF2Q29udGVudFNjcm9sbGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgICkge1xuICAgICAgICB0aGlzLnNjcmVlbkxhcmdlJCA9IHRoaXMuYnJlYWtwb2ludE9ic2VydmVyLm9ic2VydmUodGhpcy5sYXJnZUJyZWFrcG9pbnRzKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiByZXN1bHQubWF0Y2hlcylcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5tb2RlJCA9IHRoaXMuc2NyZWVuTGFyZ2UkLnBpcGUoXG4gICAgICAgICAgICBtYXAobGFyZ2UgPT4gbGFyZ2UgJiYgdGhpcy5zdGF5T3Blbk9uTGFyZ2VTY3JlZW4gPyAnc2lkZScgOiAnb3ZlcicpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMub3BlbmVkJCA9IHRoaXMuc2NyZWVuTGFyZ2UkLnBpcGUoXG4gICAgICAgICAgICBtYXAobGFyZ2UgPT4gbGFyZ2UgJiYgdGhpcy5zdGF5T3Blbk9uTGFyZ2VTY3JlZW4pXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZVNpZGViYXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFNpZGVuYXYoc2lkZW5hdjogTWF0U2lkZW5hdik6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZGVuYXYgPSBzaWRlbmF2O1xuICAgIH1cblxuXG4gICAgcHVibGljIGdldFN0YXlPcGVuT25MYXJnZVNjcmVlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RheU9wZW5PbkxhcmdlU2NyZWVuO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRTdGF5T3Blbk9uTGFyZ2VTY3JlZW4odmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdGF5T3Blbk9uTGFyZ2VTY3JlZW4gPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9nZ2xlKCk6IFByb21pc2U8TWF0RHJhd2VyVG9nZ2xlUmVzdWx0PiB7XG4gICAgICAgIGlmIChudWxsID09IHRoaXMuc2lkZW5hdikge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KCdObyBNYXRTaWRlbmF2IGZvdW5kLiBVc2Ugc2V0U2lkZW5hdigpIG9mIFNpZGVuYXZTZXJ2aWNlJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoISh0aGlzLnN0YXlPcGVuT25MYXJnZVNjcmVlbiAmJiB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlci5pc01hdGNoZWQodGhpcy5sYXJnZUJyZWFrcG9pbnRzKSkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnNpZGVuYXYudG9nZ2xlKCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuc2lkZW5hdi5vcGVuZWQgPyAnb3BlbicgOiAnY2xvc2UnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2VTaWRlYmFyKCk6IHZvaWQge1xuICAgICAgICBpZiAoISh0aGlzLnN0YXlPcGVuT25MYXJnZVNjcmVlbiAmJiB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlci5pc01hdGNoZWQodGhpcy5sYXJnZUJyZWFrcG9pbnRzKSkpIHtcbiAgICAgICAgICAgIHRoaXMuc2lkZW5hdi5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldE1vZGVPYnNlcnZhYmxlKCk6IE9ic2VydmFibGU8TWF0RHJhd2VyTW9kZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlJDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0T3BlbmVkT2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3BlbmVkJDtcbiAgICB9XG5cbiAgICBwdWJsaWMgd2F0Y2hUb2dnbGVWaXNpYmxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zY3JlZW5MYXJnZSQucGlwZShcbiAgICAgICAgICAgIG1hcChsYXJnZSA9PiAhbGFyZ2UgfHwgIXRoaXMuc3RheU9wZW5PbkxhcmdlU2NyZWVuKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB3YXRjaENvbnRlbnRTY3JvbGxlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2lkZW5hdkNvbnRlbnRTY3JvbGxlZCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InjectionToken } from "@angular/core";
|
|
2
|
+
export const DDR_MATERIAL_EXTENSIONS_THEME = new InjectionToken('DDR_MATERIAL_EXTENSIONS_THEME');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RoZW1lL3RoZW1lLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTdDLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLElBQUksY0FBYyxDQUFjLCtCQUErQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5leHBvcnQgY29uc3QgRERSX01BVEVSSUFMX0VYVEVOU0lPTlNfVEhFTUUgPSBuZXcgSW5qZWN0aW9uVG9rZW48VGhlbWVDb25maWc+KCdERFJfTUFURVJJQUxfRVhURU5TSU9OU19USEVNRScpO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZW1lQ29uZmlnIHtcbiAgICB0aGVtZUNvbG9yTGlnaHQ6IHN0cmluZyxcbiAgICB0aGVtZUNvbG9yRGFyazogc3RyaW5nLFxuICAgIHRoZW1lQ29sb3JMaWdodFNjcm9sbGVkOiBzdHJpbmcsXG4gICAgdGhlbWVDb2xvckRhcmtTY3JvbGxlZDogc3RyaW5nLFxufVxuIl19
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
2
|
+
import { DOCUMENT } from "@angular/common";
|
|
3
|
+
import { distinctUntilChanged, fromEvent } from "rxjs";
|
|
4
|
+
import { map } from "rxjs/operators";
|
|
5
|
+
import { DDR_MATERIAL_EXTENSIONS_THEME } from "./theme-config";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class ThemeScrollService {
|
|
8
|
+
constructor(document, themeConfig) {
|
|
9
|
+
this.document = document;
|
|
10
|
+
this.themeConfig = themeConfig;
|
|
11
|
+
}
|
|
12
|
+
init() {
|
|
13
|
+
const lightMetaElement = this.findOrCreateThemeColorMetaElement('(prefers-color-scheme: light)', this.themeConfig.themeColorLight);
|
|
14
|
+
const darkMetaElement = this.findOrCreateThemeColorMetaElement('(prefers-color-scheme: dark)', this.themeConfig.themeColorDark);
|
|
15
|
+
fromEvent(this.document, 'scroll')
|
|
16
|
+
.pipe(map(() => this.document.documentElement.scrollTop > 0), distinctUntilChanged()).subscribe((scrolled) => {
|
|
17
|
+
scrolled ? this.document.body.classList.add('ddr-mat-scrolled') : this.document.body.classList.remove('ddr-mat-scrolled');
|
|
18
|
+
lightMetaElement.content = scrolled ? this.themeConfig.themeColorLightScrolled : this.themeConfig.themeColorLight;
|
|
19
|
+
darkMetaElement.content = scrolled ? this.themeConfig.themeColorDarkScrolled : this.themeConfig.themeColorDark;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
findOrCreateThemeColorMetaElement(media, content) {
|
|
23
|
+
let metaElement = this.document.head.querySelector(`meta[name="theme-color"][media="${media}"]`);
|
|
24
|
+
if (null == metaElement) {
|
|
25
|
+
metaElement = this.createThemeColorMetaElement(media, content);
|
|
26
|
+
}
|
|
27
|
+
return metaElement;
|
|
28
|
+
}
|
|
29
|
+
createThemeColorMetaElement(media, content) {
|
|
30
|
+
const metaElement = this.document.createElement('meta');
|
|
31
|
+
metaElement.name = 'theme-color';
|
|
32
|
+
metaElement.media = media;
|
|
33
|
+
metaElement.content = content;
|
|
34
|
+
this.document.head.appendChild(metaElement);
|
|
35
|
+
return metaElement;
|
|
36
|
+
}
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ThemeScrollService, deps: [{ token: DOCUMENT }, { token: DDR_MATERIAL_EXTENSIONS_THEME }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
38
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ThemeScrollService }); }
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ThemeScrollService, decorators: [{
|
|
41
|
+
type: Injectable
|
|
42
|
+
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
43
|
+
type: Inject,
|
|
44
|
+
args: [DOCUMENT]
|
|
45
|
+
}] }, { type: undefined, decorators: [{
|
|
46
|
+
type: Inject,
|
|
47
|
+
args: [DDR_MATERIAL_EXTENSIONS_THEME]
|
|
48
|
+
}] }] });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2Nyb2xsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGhlbWUvdGhlbWUtc2Nyb2xsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxTQUFTLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBQyw2QkFBNkIsRUFBYyxNQUFNLGdCQUFnQixDQUFDOztBQUcxRSxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLFlBQ3VDLFFBQWtCLEVBQ0csV0FBd0I7UUFEN0MsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNHLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBRXBGLENBQUM7SUFFTSxJQUFJO1FBQ1AsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUNBQWlDLENBQUMsK0JBQStCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNuSSxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsaUNBQWlDLENBQUMsOEJBQThCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVoSSxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUM7YUFDN0IsSUFBSSxDQUNELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLEVBQ3RELG9CQUFvQixFQUFFLENBQ3pCLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDekIsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUUxSCxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQztZQUNsSCxlQUFlLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUM7UUFDbkgsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8saUNBQWlDLENBQUMsS0FBYSxFQUFFLE9BQWU7UUFDcEUsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFrQixtQ0FBbUMsS0FBSyxJQUFJLENBQUMsQ0FBQztRQUNsSCxJQUFJLElBQUksSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUN0QixXQUFXLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQztJQUVPLDJCQUEyQixDQUFDLEtBQWEsRUFBRSxPQUFlO1FBQzlELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hELFdBQVcsQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO1FBQ2pDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzFCLFdBQVcsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU1QyxPQUFPLFdBQVcsQ0FBQztJQUN2QixDQUFDOzhHQXZDUSxrQkFBa0Isa0JBRWYsUUFBUSxhQUNSLDZCQUE2QjtrSEFIaEMsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFHRixNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBmcm9tRXZlbnR9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge21hcH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQge0REUl9NQVRFUklBTF9FWFRFTlNJT05TX1RIRU1FLCBUaGVtZUNvbmZpZ30gZnJvbSBcIi4vdGhlbWUtY29uZmlnXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUaGVtZVNjcm9sbFNlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChERFJfTUFURVJJQUxfRVhURU5TSU9OU19USEVNRSkgcHJpdmF0ZSByZWFkb25seSB0aGVtZUNvbmZpZzogVGhlbWVDb25maWdcbiAgICApIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgaW5pdCgpIHtcbiAgICAgICAgY29uc3QgbGlnaHRNZXRhRWxlbWVudCA9IHRoaXMuZmluZE9yQ3JlYXRlVGhlbWVDb2xvck1ldGFFbGVtZW50KCcocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KScsIHRoaXMudGhlbWVDb25maWcudGhlbWVDb2xvckxpZ2h0KTtcbiAgICAgICAgY29uc3QgZGFya01ldGFFbGVtZW50ID0gdGhpcy5maW5kT3JDcmVhdGVUaGVtZUNvbG9yTWV0YUVsZW1lbnQoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknLCB0aGlzLnRoZW1lQ29uZmlnLnRoZW1lQ29sb3JEYXJrKTtcblxuICAgICAgICBmcm9tRXZlbnQodGhpcy5kb2N1bWVudCwgJ3Njcm9sbCcpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wID4gMCksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgICAgICAgKS5zdWJzY3JpYmUoKHNjcm9sbGVkKSA9PiB7XG4gICAgICAgICAgICBzY3JvbGxlZCA/IHRoaXMuZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCdkZHItbWF0LXNjcm9sbGVkJykgOiB0aGlzLmRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnZGRyLW1hdC1zY3JvbGxlZCcpO1xuXG4gICAgICAgICAgICBsaWdodE1ldGFFbGVtZW50LmNvbnRlbnQgPSBzY3JvbGxlZCA/IHRoaXMudGhlbWVDb25maWcudGhlbWVDb2xvckxpZ2h0U2Nyb2xsZWQgOiB0aGlzLnRoZW1lQ29uZmlnLnRoZW1lQ29sb3JMaWdodDtcbiAgICAgICAgICAgIGRhcmtNZXRhRWxlbWVudC5jb250ZW50ID0gc2Nyb2xsZWQgPyB0aGlzLnRoZW1lQ29uZmlnLnRoZW1lQ29sb3JEYXJrU2Nyb2xsZWQgOiB0aGlzLnRoZW1lQ29uZmlnLnRoZW1lQ29sb3JEYXJrO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbmRPckNyZWF0ZVRoZW1lQ29sb3JNZXRhRWxlbWVudChtZWRpYTogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcpIHtcbiAgICAgICAgbGV0IG1ldGFFbGVtZW50ID0gdGhpcy5kb2N1bWVudC5oZWFkLnF1ZXJ5U2VsZWN0b3I8SFRNTE1ldGFFbGVtZW50PihgbWV0YVtuYW1lPVwidGhlbWUtY29sb3JcIl1bbWVkaWE9XCIke21lZGlhfVwiXWApO1xuICAgICAgICBpZiAobnVsbCA9PSBtZXRhRWxlbWVudCkge1xuICAgICAgICAgICAgbWV0YUVsZW1lbnQgPSB0aGlzLmNyZWF0ZVRoZW1lQ29sb3JNZXRhRWxlbWVudChtZWRpYSwgY29udGVudCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG1ldGFFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlVGhlbWVDb2xvck1ldGFFbGVtZW50KG1lZGlhOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZykge1xuICAgICAgICBjb25zdCBtZXRhRWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbWV0YScpO1xuICAgICAgICBtZXRhRWxlbWVudC5uYW1lID0gJ3RoZW1lLWNvbG9yJztcbiAgICAgICAgbWV0YUVsZW1lbnQubWVkaWEgPSBtZWRpYTtcbiAgICAgICAgbWV0YUVsZW1lbnQuY29udGVudCA9IGNvbnRlbnQ7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChtZXRhRWxlbWVudCk7XG5cbiAgICAgICAgcmV0dXJuIG1ldGFFbGVtZW50O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Directive, Input } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ToolbarFixedTopDirective {
|
|
4
|
+
constructor(el) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
this.ddrMatToolbarFixedTop = undefined;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* @override
|
|
10
|
+
*/
|
|
11
|
+
ngOnInit() {
|
|
12
|
+
const container = document.createElement('div');
|
|
13
|
+
container.classList.add('ddr-mat-toolbar-fixed-top-container');
|
|
14
|
+
this.el.nativeElement.parentElement.insertBefore(container, this.el.nativeElement);
|
|
15
|
+
container.appendChild(this.el.nativeElement);
|
|
16
|
+
if (this.ddrMatToolbarFixedTop != null && '' !== this.ddrMatToolbarFixedTop) {
|
|
17
|
+
container.classList.add(this.ddrMatToolbarFixedTop);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ToolbarFixedTopDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
21
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: ToolbarFixedTopDirective, selector: "[ddrMatToolbarFixedTop]", inputs: { ddrMatToolbarFixedTop: "ddrMatToolbarFixedTop" }, ngImport: i0 }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ToolbarFixedTopDirective, decorators: [{
|
|
24
|
+
type: Directive,
|
|
25
|
+
args: [{
|
|
26
|
+
selector: '[ddrMatToolbarFixedTop]'
|
|
27
|
+
}]
|
|
28
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { ddrMatToolbarFixedTop: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}] } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1maXhlZC10b3AuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Rvb2xiYXIvdG9vbGJhci1maXhlZC10b3AuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDOztBQUtuRSxNQUFNLE9BQU8sd0JBQXdCO0lBS2pDLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBRjNCLDBCQUFxQixHQUFZLFNBQVMsQ0FBQztJQUdsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ1gsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkYsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTdDLElBQUksSUFBSSxDQUFDLHFCQUFxQixJQUFJLElBQUksSUFBSSxFQUFFLEtBQUssSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDMUUsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNMLENBQUM7OEdBcEJRLHdCQUF3QjtrR0FBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUhwQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx5QkFBeUI7aUJBQ3RDOytFQUlVLHFCQUFxQjtzQkFEM0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tkZHJNYXRUb29sYmFyRml4ZWRUb3BdJ1xufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyRml4ZWRUb3BEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZGRyTWF0VG9vbGJhckZpeGVkVG9wPzogc3RyaW5nID0gdW5kZWZpbmVkO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBvdmVycmlkZVxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKCdkZHItbWF0LXRvb2xiYXItZml4ZWQtdG9wLWNvbnRhaW5lcicpO1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5pbnNlcnRCZWZvcmUoY29udGFpbmVyLCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICBjb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICBpZiAodGhpcy5kZHJNYXRUb29sYmFyRml4ZWRUb3AgIT0gbnVsbCAmJiAnJyAhPT0gdGhpcy5kZHJNYXRUb29sYmFyRml4ZWRUb3ApIHtcbiAgICAgICAgICAgIGNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKHRoaXMuZGRyTWF0VG9vbGJhckZpeGVkVG9wKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|