@dontdrinkandroot/ngx-material-extensions 0.3.4 → 0.5.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/_utilities.scss +24 -0
- package/{esm2020 → esm2022}/src/ddr-material-extensions.module.mjs +27 -27
- package/{esm2020 → esm2022}/src/filter/filter.component.mjs +4 -4
- package/esm2022/src/gridlist/grid-tile-lazy-image-container.directive.mjs +55 -0
- package/esm2022/src/gridlist/grid-tile-lazy-img.directive.mjs +115 -0
- package/{esm2020 → esm2022}/src/sidenav/sidenav-container.component.mjs +5 -5
- package/{esm2020 → esm2022}/src/sidenav/sidenav-toggle.component.mjs +7 -7
- package/esm2022/src/sidenav/sidenav.service.mjs +65 -0
- package/{fesm2020 → fesm2022}/dontdrinkandroot-ngx-material-extensions.mjs +50 -50
- package/{fesm2020 → fesm2022}/dontdrinkandroot-ngx-material-extensions.mjs.map +1 -1
- package/package.json +12 -18
- package/src/filter/filter.component.d.ts +1 -1
- package/src/gridlist/grid-tile-lazy-img.directive.d.ts +1 -1
- package/src/sidenav/sidenav-container.component.d.ts +1 -1
- package/esm2020/src/gridlist/grid-tile-lazy-image-container.directive.mjs +0 -55
- package/esm2020/src/gridlist/grid-tile-lazy-img.directive.mjs +0 -115
- package/esm2020/src/sidenav/sidenav.service.mjs +0 -65
- package/fesm2015/dontdrinkandroot-ngx-material-extensions.mjs +0 -416
- package/fesm2015/dontdrinkandroot-ngx-material-extensions.mjs.map +0 -1
- /package/{esm2020 → esm2022}/dontdrinkandroot-ngx-material-extensions.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
package/_utilities.scss
CHANGED
|
@@ -28,6 +28,18 @@
|
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
@each $suffix, $size in $ddr-spacers {
|
|
32
|
+
.px-#{$suffix} {
|
|
33
|
+
padding-left: #{$size} !important;
|
|
34
|
+
padding-right: #{$size} !important;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.py-#{$suffix} {
|
|
38
|
+
padding-top: #{$size} !important;
|
|
39
|
+
padding-bottom: #{$size} !important;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
31
43
|
@each $prefix, $property in $ddr-margins {
|
|
32
44
|
@each $suffix, $size in $ddr-spacers {
|
|
33
45
|
.#{$prefix}-#{$suffix} {
|
|
@@ -36,6 +48,18 @@
|
|
|
36
48
|
}
|
|
37
49
|
}
|
|
38
50
|
|
|
51
|
+
@each $suffix, $size in $ddr-spacers {
|
|
52
|
+
.mx-#{$suffix} {
|
|
53
|
+
margin-left: #{$size} !important;
|
|
54
|
+
margin-right: #{$size} !important;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.my-#{$suffix} {
|
|
58
|
+
margin-top: #{$size} !important;
|
|
59
|
+
margin-bottom: #{$size} !important;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
39
63
|
.me-auto {
|
|
40
64
|
margin-right: auto !important;
|
|
41
65
|
}
|
|
@@ -14,33 +14,33 @@ import { MatInputModule } from '@angular/material/input';
|
|
|
14
14
|
import { MatCardModule } from '@angular/material/card';
|
|
15
15
|
import * as i0 from "@angular/core";
|
|
16
16
|
export class DdrMaterialExtensionsModule {
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: DdrMaterialExtensionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
18
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: DdrMaterialExtensionsModule, declarations: [FilterComponent,
|
|
19
|
+
SidenavToggleComponent,
|
|
20
|
+
GridTileLazyImageContainerDirective,
|
|
21
|
+
GridTileLazyImgDirective,
|
|
22
|
+
SidenavContainerComponent], imports: [CommonModule,
|
|
23
|
+
MatCardModule,
|
|
24
|
+
MatSidenavModule,
|
|
25
|
+
MatIconModule,
|
|
26
|
+
MatInputModule,
|
|
27
|
+
MatButtonModule,
|
|
28
|
+
MatFormFieldModule,
|
|
29
|
+
ReactiveFormsModule], exports: [FilterComponent,
|
|
30
|
+
SidenavToggleComponent,
|
|
31
|
+
GridTileLazyImageContainerDirective,
|
|
32
|
+
GridTileLazyImgDirective,
|
|
33
|
+
SidenavContainerComponent] }); }
|
|
34
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: DdrMaterialExtensionsModule, imports: [CommonModule,
|
|
35
|
+
MatCardModule,
|
|
36
|
+
MatSidenavModule,
|
|
37
|
+
MatIconModule,
|
|
38
|
+
MatInputModule,
|
|
39
|
+
MatButtonModule,
|
|
40
|
+
MatFormFieldModule,
|
|
41
|
+
ReactiveFormsModule] }); }
|
|
17
42
|
}
|
|
18
|
-
|
|
19
|
-
DdrMaterialExtensionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: DdrMaterialExtensionsModule, declarations: [FilterComponent,
|
|
20
|
-
SidenavToggleComponent,
|
|
21
|
-
GridTileLazyImageContainerDirective,
|
|
22
|
-
GridTileLazyImgDirective,
|
|
23
|
-
SidenavContainerComponent], imports: [CommonModule,
|
|
24
|
-
MatCardModule,
|
|
25
|
-
MatSidenavModule,
|
|
26
|
-
MatIconModule,
|
|
27
|
-
MatInputModule,
|
|
28
|
-
MatButtonModule,
|
|
29
|
-
MatFormFieldModule,
|
|
30
|
-
ReactiveFormsModule], exports: [FilterComponent,
|
|
31
|
-
SidenavToggleComponent,
|
|
32
|
-
GridTileLazyImageContainerDirective,
|
|
33
|
-
GridTileLazyImgDirective,
|
|
34
|
-
SidenavContainerComponent] });
|
|
35
|
-
DdrMaterialExtensionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DdrMaterialExtensionsModule, imports: [CommonModule,
|
|
36
|
-
MatCardModule,
|
|
37
|
-
MatSidenavModule,
|
|
38
|
-
MatIconModule,
|
|
39
|
-
MatInputModule,
|
|
40
|
-
MatButtonModule,
|
|
41
|
-
MatFormFieldModule,
|
|
42
|
-
ReactiveFormsModule] });
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: DdrMaterialExtensionsModule, decorators: [{
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: DdrMaterialExtensionsModule, decorators: [{
|
|
44
44
|
type: NgModule,
|
|
45
45
|
args: [{
|
|
46
46
|
declarations: [
|
|
@@ -69,4 +69,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
|
|
|
69
69
|
]
|
|
70
70
|
}]
|
|
71
71
|
}] });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGRyLW1hdGVyaWFsLWV4dGVuc2lvbnMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Rkci1tYXRlcmlhbC1leHRlbnNpb25zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0scURBQXFELENBQUM7QUFDeEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDOztBQTRCckQsTUFBTSxPQUFPLDJCQUEyQjs4R0FBM0IsMkJBQTJCOytHQUEzQiwyQkFBMkIsaUJBeEJoQyxlQUFlO1lBQ2Ysc0JBQXNCO1lBQ3RCLG1DQUFtQztZQUNuQyx3QkFBd0I7WUFDeEIseUJBQXlCLGFBR3pCLFlBQVk7WUFDWixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixjQUFjO1lBQ2QsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixtQkFBbUIsYUFHbkIsZUFBZTtZQUNmLHNCQUFzQjtZQUN0QixtQ0FBbUM7WUFDbkMsd0JBQXdCO1lBQ3hCLHlCQUF5QjsrR0FHcEIsMkJBQTJCLFlBakJoQyxZQUFZO1lBQ1osYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IsY0FBYztZQUNkLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsbUJBQW1COzsyRkFVZCwyQkFBMkI7a0JBMUJ2QyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRTt3QkFDVixlQUFlO3dCQUNmLHNCQUFzQjt3QkFDdEIsbUNBQW1DO3dCQUNuQyx3QkFBd0I7d0JBQ3hCLHlCQUF5QjtxQkFDNUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLG1DQUFtQzt3QkFDbkMsd0JBQXdCO3dCQUN4Qix5QkFBeUI7cUJBQzVCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NpZGVuYXZUb2dnbGVDb21wb25lbnR9IGZyb20gJy4vc2lkZW5hdi9zaWRlbmF2LXRvZ2dsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtNYXRTaWRlbmF2TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7R3JpZFRpbGVMYXp5SW1hZ2VDb250YWluZXJEaXJlY3RpdmV9IGZyb20gJy4vZ3JpZGxpc3QvZ3JpZC10aWxlLWxhenktaW1hZ2UtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0dyaWRUaWxlTGF6eUltZ0RpcmVjdGl2ZX0gZnJvbSAnLi9ncmlkbGlzdC9ncmlkLXRpbGUtbGF6eS1pbWcuZGlyZWN0aXZlJztcbmltcG9ydCB7U2lkZW5hdkNvbnRhaW5lckNvbXBvbmVudH0gZnJvbSAnLi9zaWRlbmF2L3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RmlsdGVyQ29tcG9uZW50fSBmcm9tICcuL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7UmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtNYXRJbnB1dE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHtNYXRDYXJkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgRmlsdGVyQ29tcG9uZW50LFxuICAgICAgICBTaWRlbmF2VG9nZ2xlQ29tcG9uZW50LFxuICAgICAgICBHcmlkVGlsZUxhenlJbWFnZUNvbnRhaW5lckRpcmVjdGl2ZSxcbiAgICAgICAgR3JpZFRpbGVMYXp5SW1nRGlyZWN0aXZlLFxuICAgICAgICBTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgTWF0Q2FyZE1vZHVsZSxcbiAgICAgICAgTWF0U2lkZW5hdk1vZHVsZSxcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcbiAgICAgICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEZpbHRlckNvbXBvbmVudCxcbiAgICAgICAgU2lkZW5hdlRvZ2dsZUNvbXBvbmVudCxcbiAgICAgICAgR3JpZFRpbGVMYXp5SW1hZ2VDb250YWluZXJEaXJlY3RpdmUsXG4gICAgICAgIEdyaWRUaWxlTGF6eUltZ0RpcmVjdGl2ZSxcbiAgICAgICAgU2lkZW5hdkNvbnRhaW5lckNvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRGRyTWF0ZXJpYWxFeHRlbnNpb25zTW9kdWxlXG57XG59XG4iXX0=
|
|
@@ -39,10 +39,10 @@ export class FilterComponent {
|
|
|
39
39
|
this.formControl.setValue(null);
|
|
40
40
|
this.onFilterChanged.emit(undefined);
|
|
41
41
|
}
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: FilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: FilterComponent, selector: "ddr-filter", inputs: { bouncePeriod: "bouncePeriod" }, outputs: { onFilterChanged: "onFilterChanged" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true, static: true }], ngImport: i0, template: "<mat-card appearance=\"outlined\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <input matInput type=\"text\" [formControl]=\"formControl\" #input />\n <button mat-icon-button matSuffix (click)=\"clear()\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n</mat-card>\n", dependencies: [{ kind: "component", type: i1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
42
44
|
}
|
|
43
|
-
|
|
44
|
-
FilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: FilterComponent, selector: "ddr-filter", inputs: { bouncePeriod: "bouncePeriod" }, outputs: { onFilterChanged: "onFilterChanged" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true, static: true }], ngImport: i0, template: "<mat-card appearance=\"outlined\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <input matInput type=\"text\" [formControl]=\"formControl\" #input />\n <button mat-icon-button matSuffix (click)=\"clear()\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n</mat-card>\n", dependencies: [{ kind: "component", type: i1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FilterComponent, decorators: [{
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: FilterComponent, decorators: [{
|
|
46
46
|
type: Component,
|
|
47
47
|
args: [{ selector: 'ddr-filter', template: "<mat-card appearance=\"outlined\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <input matInput type=\"text\" [formControl]=\"formControl\" #input />\n <button mat-icon-button matSuffix (click)=\"clear()\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n</mat-card>\n" }]
|
|
48
48
|
}], propDecorators: { onFilterChanged: [{
|
|
@@ -53,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
|
|
|
53
53
|
type: ViewChild,
|
|
54
54
|
args: ['input', { static: true }]
|
|
55
55
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsUUFBUSxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFNeEMsTUFBTSxPQUFPLGVBQWU7SUFKNUI7UUFNVyxnQkFBVyxHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBRzdDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUc3QyxpQkFBWSxHQUFHLEdBQUcsQ0FBQztLQXVDN0I7SUFoQ0c7O09BRUc7SUFDSSxRQUFRO1FBRVgsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWTthQUN4RCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQzthQUNqRCxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBRWQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNJLGtCQUFrQjtRQUVyQixJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBR00sS0FBSztRQUVSLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7OEdBOUNRLGVBQWU7a0dBQWYsZUFBZSxrUUNuQjVCLDZWQVFBOzsyRkRXYSxlQUFlO2tCQUozQixTQUFTOytCQUNJLFlBQVk7OEJBUWYsZUFBZTtzQkFEckIsTUFBTTtnQkFJQSxZQUFZO3NCQURsQixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtpbnRlcnZhbCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkZHItZmlsdGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXRcbntcbiAgICBwdWJsaWMgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgb25GaWx0ZXJDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBib3VuY2VQZXJpb2QgPSA1MDA7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dCcsIHtzdGF0aWM6IHRydWV9KVxuICAgIHB1YmxpYyBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmO1xuXG4gICAgcHJpdmF0ZSB2YWx1ZUNoYW5nZXNTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgICAvKipcbiAgICAgKiBAb3ZlcnJpZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZXNTdWJzY3JpcHRpb24gPSB0aGlzLmZvcm1Db250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2UoKCkgPT4gaW50ZXJ2YWwodGhpcy5ib3VuY2VQZXJpb2QpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlID0+IHRoaXMub25GaWx0ZXJDaGFuZ2VkLmVtaXQodmFsdWUpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG92ZXJyaWRlXG4gICAgICovXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWRcbiAgICB7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG92ZXJyaWRlXG4gICAgICovXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpXG4gICAge1xuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG5cbiAgICBwdWJsaWMgY2xlYXIoKVxuICAgIHtcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShudWxsKTtcbiAgICAgICAgdGhpcy5vbkZpbHRlckNoYW5nZWQuZW1pdCh1bmRlZmluZWQpO1xuICAgIH1cbn1cbiIsIjxtYXQtY2FyZCBhcHBlYXJhbmNlPVwib3V0bGluZWRcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBzdWJzY3JpcHRTaXppbmc9XCJkeW5hbWljXCI+XG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCB0eXBlPVwidGV4dFwiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiICNpbnB1dCAvPlxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBtYXRTdWZmaXggKGNsaWNrKT1cImNsZWFyKClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG48L21hdC1jYXJkPlxuIl19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { ContentChildren, Directive, HostListener } from '@angular/core';
|
|
3
|
+
import { GridTileLazyImgDirective } from './grid-tile-lazy-img.directive';
|
|
4
|
+
import { Debounce, Limit } from '@dontdrinkandroot/ngx-extensions';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class GridTileLazyImageContainerDirective {
|
|
7
|
+
windowResized($event) {
|
|
8
|
+
if (null != this.lazyImages) {
|
|
9
|
+
this.lazyImages.forEach((lazyImage, index) => lazyImage.recheck());
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
windowScroll($event) {
|
|
13
|
+
if (null != this.lazyImages) {
|
|
14
|
+
this.lazyImages.forEach((lazyImage, index) => lazyImage.check());
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @override
|
|
19
|
+
*/
|
|
20
|
+
ngAfterContentInit() {
|
|
21
|
+
this.lazyImages.forEach((lazyImage, index) => lazyImage.check());
|
|
22
|
+
this.changeSubscription = this.lazyImages.changes.subscribe(() => {
|
|
23
|
+
/* Wait one tick until layout is ready */
|
|
24
|
+
setTimeout(() => this.lazyImages.forEach((lazyImage, index) => lazyImage.recheck()), 1);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @override
|
|
29
|
+
*/
|
|
30
|
+
ngOnDestroy() {
|
|
31
|
+
this.changeSubscription.unsubscribe();
|
|
32
|
+
}
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: GridTileLazyImageContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.8", type: GridTileLazyImageContainerDirective, selector: "[ddrGridTileLazyImgContainer]", host: { listeners: { "window:resize": "windowResized($event)", "window:scroll": "windowScroll($event)" } }, queries: [{ propertyName: "lazyImages", predicate: GridTileLazyImgDirective, descendants: true }], ngImport: i0 }); }
|
|
35
|
+
}
|
|
36
|
+
__decorate([
|
|
37
|
+
Debounce()
|
|
38
|
+
], GridTileLazyImageContainerDirective.prototype, "windowResized", null);
|
|
39
|
+
__decorate([
|
|
40
|
+
Limit()
|
|
41
|
+
], GridTileLazyImageContainerDirective.prototype, "windowScroll", null);
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: GridTileLazyImageContainerDirective, decorators: [{
|
|
43
|
+
type: Directive,
|
|
44
|
+
args: [{ selector: '[ddrGridTileLazyImgContainer]' }]
|
|
45
|
+
}], propDecorators: { lazyImages: [{
|
|
46
|
+
type: ContentChildren,
|
|
47
|
+
args: [GridTileLazyImgDirective, { descendants: true }]
|
|
48
|
+
}], windowResized: [{
|
|
49
|
+
type: HostListener,
|
|
50
|
+
args: ['window:resize', ['$event']]
|
|
51
|
+
}], windowScroll: [{
|
|
52
|
+
type: HostListener,
|
|
53
|
+
args: ['window:scroll', ['$event']]
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC10aWxlLWxhenktaW1hZ2UtY29udGFpbmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ncmlkbGlzdC9ncmlkLXRpbGUtbGF6eS1pbWFnZS1jb250YWluZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQW1CLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4RSxPQUFPLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQUdqRSxNQUFNLE9BQU8sbUNBQW1DO0lBUXJDLGFBQWEsQ0FBQyxNQUFhO1FBRTlCLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQW1DLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNqRyxDQUFDO0lBQ0wsQ0FBQztJQUlNLFlBQVksQ0FBQyxNQUFhO1FBRTdCLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQW1DLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMvRixDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksa0JBQWtCO1FBRXJCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBbUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdELHlDQUF5QztZQUN6QyxVQUFVLENBQ04sR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFtQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQ2hHLENBQUMsQ0FDTixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBRWQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7OEdBN0NRLG1DQUFtQztrR0FBbkMsbUNBQW1DLDRNQUUzQix3QkFBd0I7O0FBTWxDO0lBRE4sUUFBUSxFQUFFO3dFQU1WO0FBSU07SUFETixLQUFLLEVBQUU7dUVBTVA7MkZBdEJRLG1DQUFtQztrQkFEL0MsU0FBUzttQkFBQyxFQUFDLFFBQVEsRUFBRSwrQkFBK0IsRUFBQzs4QkFHYyxVQUFVO3NCQUF6RSxlQUFlO3VCQUFDLHdCQUF3QixFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQztnQkFNdkQsYUFBYTtzQkFGbkIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBV2xDLFlBQVk7c0JBRmxCLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlckNvbnRlbnRJbml0LCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIFF1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0dyaWRUaWxlTGF6eUltZ0RpcmVjdGl2ZX0gZnJvbSAnLi9ncmlkLXRpbGUtbGF6eS1pbWcuZGlyZWN0aXZlJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7RGVib3VuY2UsIExpbWl0fSBmcm9tICdAZG9udGRyaW5rYW5kcm9vdC9uZ3gtZXh0ZW5zaW9ucyc7XG5cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnW2RkckdyaWRUaWxlTGF6eUltZ0NvbnRhaW5lcl0nfSlcbmV4cG9ydCBjbGFzcyBHcmlkVGlsZUxhenlJbWFnZUNvbnRhaW5lckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveVxue1xuICAgIEBDb250ZW50Q2hpbGRyZW4oR3JpZFRpbGVMYXp5SW1nRGlyZWN0aXZlLCB7ZGVzY2VuZGFudHM6IHRydWV9KSBsYXp5SW1hZ2VzITogUXVlcnlMaXN0PEdyaWRUaWxlTGF6eUltZ0RpcmVjdGl2ZT47XG5cbiAgICBwcml2YXRlIGNoYW5nZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIEBEZWJvdW5jZSgpXG4gICAgcHVibGljIHdpbmRvd1Jlc2l6ZWQoJGV2ZW50OiBFdmVudClcbiAgICB7XG4gICAgICAgIGlmIChudWxsICE9IHRoaXMubGF6eUltYWdlcykge1xuICAgICAgICAgICAgdGhpcy5sYXp5SW1hZ2VzLmZvckVhY2goKGxhenlJbWFnZTogR3JpZFRpbGVMYXp5SW1nRGlyZWN0aXZlLCBpbmRleCkgPT4gbGF6eUltYWdlLnJlY2hlY2soKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJywgWyckZXZlbnQnXSlcbiAgICBATGltaXQoKVxuICAgIHB1YmxpYyB3aW5kb3dTY3JvbGwoJGV2ZW50OiBFdmVudClcbiAgICB7XG4gICAgICAgIGlmIChudWxsICE9IHRoaXMubGF6eUltYWdlcykge1xuICAgICAgICAgICAgdGhpcy5sYXp5SW1hZ2VzLmZvckVhY2goKGxhenlJbWFnZTogR3JpZFRpbGVMYXp5SW1nRGlyZWN0aXZlLCBpbmRleCkgPT4gbGF6eUltYWdlLmNoZWNrKCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG92ZXJyaWRlXG4gICAgICovXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkXG4gICAge1xuICAgICAgICB0aGlzLmxhenlJbWFnZXMuZm9yRWFjaCgobGF6eUltYWdlOiBHcmlkVGlsZUxhenlJbWdEaXJlY3RpdmUsIGluZGV4KSA9PiBsYXp5SW1hZ2UuY2hlY2soKSk7XG4gICAgICAgIHRoaXMuY2hhbmdlU3Vic2NyaXB0aW9uID0gdGhpcy5sYXp5SW1hZ2VzLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIC8qIFdhaXQgb25lIHRpY2sgdW50aWwgbGF5b3V0IGlzIHJlYWR5ICovXG4gICAgICAgICAgICBzZXRUaW1lb3V0KFxuICAgICAgICAgICAgICAgICgpID0+IHRoaXMubGF6eUltYWdlcy5mb3JFYWNoKChsYXp5SW1hZ2U6IEdyaWRUaWxlTGF6eUltZ0RpcmVjdGl2ZSwgaW5kZXgpID0+IGxhenlJbWFnZS5yZWNoZWNrKCkpXG4gICAgICAgICAgICAgICAgLCAxXG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAb3ZlcnJpZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Directive, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import { NumberUtils, StringUtils } from '@dontdrinkandroot/ngx-extensions';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class GridTileLazyImgDirective {
|
|
5
|
+
constructor(element, cd) {
|
|
6
|
+
this.element = element;
|
|
7
|
+
this.cd = cd;
|
|
8
|
+
this.hostSrc = 'assets/placeholder.gif';
|
|
9
|
+
this.hostStyleObjectFit = 'contain';
|
|
10
|
+
this.hostStyleOpacity = 0;
|
|
11
|
+
this.offset = 1000;
|
|
12
|
+
this.objectFit = 'cover';
|
|
13
|
+
this.displayed = false;
|
|
14
|
+
this.maxLoadedDimension = null;
|
|
15
|
+
}
|
|
16
|
+
recheck() {
|
|
17
|
+
this.displayed = false;
|
|
18
|
+
this.check();
|
|
19
|
+
}
|
|
20
|
+
check() {
|
|
21
|
+
if (this.displayed
|
|
22
|
+
|| this.isHidden(this.element.nativeElement)
|
|
23
|
+
|| !this.isInsideViewport(this.element.nativeElement, this.offset)) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
this.displayed = true;
|
|
27
|
+
const dimension = this.getDimension();
|
|
28
|
+
if (null != this.maxLoadedDimension
|
|
29
|
+
&& this.maxLoadedDimension.width >= dimension.width
|
|
30
|
+
&& this.maxLoadedDimension.height >= dimension.height) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
this.maxLoadedDimension = dimension;
|
|
34
|
+
this.hostStyleWidthPx = dimension.width;
|
|
35
|
+
this.hostStyleHeightPx = dimension.height;
|
|
36
|
+
let wantedSize;
|
|
37
|
+
if (this.objectFit === 'cover') {
|
|
38
|
+
wantedSize = NumberUtils.getNextPowerOfTwo(Math.max(dimension.width, dimension.height));
|
|
39
|
+
this.hostStyleObjectFit = 'cover';
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
wantedSize = NumberUtils.getNextPowerOfTwo(Math.min(dimension.width, dimension.height));
|
|
43
|
+
this.hostStyleObjectFit = 'contain';
|
|
44
|
+
}
|
|
45
|
+
this.hostSrc = StringUtils.updateUrlParameter(this.src, 'size', String(wantedSize));
|
|
46
|
+
this.hostStyleOpacity = 1;
|
|
47
|
+
this.cd.detectChanges();
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* @override
|
|
51
|
+
*/
|
|
52
|
+
ngOnChanges(changes) {
|
|
53
|
+
this.displayed = false;
|
|
54
|
+
this.maxLoadedDimension = null;
|
|
55
|
+
this.hostStyleOpacity = 0;
|
|
56
|
+
if (this.element.nativeElement.parentElement.offsetWidth > 0) {
|
|
57
|
+
this.check();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
isInsideViewport(nativeElement, offset) {
|
|
61
|
+
// console.log('isInsideViewport');
|
|
62
|
+
const ownerDocument = nativeElement.ownerDocument;
|
|
63
|
+
const documentTop = window.pageYOffset || ownerDocument.body.scrollTop;
|
|
64
|
+
const documentLeft = window.pageXOffset || ownerDocument.body.scrollLeft;
|
|
65
|
+
const documentWidth = window.innerWidth || (ownerDocument.documentElement.clientWidth || document.body.clientWidth);
|
|
66
|
+
const documentHeight = window.innerHeight || (ownerDocument.documentElement.clientHeight || document.body.clientHeight);
|
|
67
|
+
const topOffset = nativeElement.getBoundingClientRect().top + documentTop - ownerDocument.documentElement.clientTop;
|
|
68
|
+
const leftOffset = nativeElement.getBoundingClientRect().left + documentLeft - ownerDocument.documentElement.clientLeft;
|
|
69
|
+
// console.log(documentWidth, documentHeight, topOffset, leftOffset);
|
|
70
|
+
const isBelowViewport = documentHeight + documentTop <= topOffset - offset;
|
|
71
|
+
const isAtRightOfViewport = documentWidth + window.pageXOffset <= leftOffset - offset;
|
|
72
|
+
const isAboveViewport = documentTop >= topOffset + offset + nativeElement.offsetHeight;
|
|
73
|
+
const isAtLeftOfViewport = documentLeft >= leftOffset + offset + nativeElement.offsetWidth;
|
|
74
|
+
return !isBelowViewport && !isAboveViewport && !isAtRightOfViewport && !isAtLeftOfViewport;
|
|
75
|
+
}
|
|
76
|
+
getDimension() {
|
|
77
|
+
return {
|
|
78
|
+
width: this.element.nativeElement.parentElement.offsetWidth,
|
|
79
|
+
height: this.element.nativeElement.parentElement.offsetHeight,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
isHidden(nativeElement) {
|
|
83
|
+
// console.log('isHidden');
|
|
84
|
+
return window.getComputedStyle(nativeElement).display === 'none';
|
|
85
|
+
}
|
|
86
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: GridTileLazyImgDirective, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
87
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.8", type: GridTileLazyImgDirective, selector: "[ddrGridTileLazyImg]", inputs: { src: ["ddrGridTileLazyImg", "src"], offset: "offset", objectFit: "objectFit" }, host: { properties: { "src": "this.hostSrc", "style.object-fit": "this.hostStyleObjectFit", "style.width.px": "this.hostStyleWidthPx", "style.height.px": "this.hostStyleHeightPx", "style.opacity": "this.hostStyleOpacity" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
88
|
+
}
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: GridTileLazyImgDirective, decorators: [{
|
|
90
|
+
type: Directive,
|
|
91
|
+
args: [{ selector: '[ddrGridTileLazyImg]' }]
|
|
92
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { src: [{
|
|
93
|
+
type: Input,
|
|
94
|
+
args: ['ddrGridTileLazyImg']
|
|
95
|
+
}], hostSrc: [{
|
|
96
|
+
type: HostBinding,
|
|
97
|
+
args: ['src']
|
|
98
|
+
}], hostStyleObjectFit: [{
|
|
99
|
+
type: HostBinding,
|
|
100
|
+
args: ['style.object-fit']
|
|
101
|
+
}], hostStyleWidthPx: [{
|
|
102
|
+
type: HostBinding,
|
|
103
|
+
args: ['style.width.px']
|
|
104
|
+
}], hostStyleHeightPx: [{
|
|
105
|
+
type: HostBinding,
|
|
106
|
+
args: ['style.height.px']
|
|
107
|
+
}], hostStyleOpacity: [{
|
|
108
|
+
type: HostBinding,
|
|
109
|
+
args: ['style.opacity']
|
|
110
|
+
}], offset: [{
|
|
111
|
+
type: Input
|
|
112
|
+
}], objectFit: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}] } });
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC10aWxlLWxhenktaW1nLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ncmlkbGlzdC9ncmlkLXRpbGUtbGF6eS1pbWcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQTJCLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBQyxXQUFXLEVBQUUsV0FBVyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7O0FBRzFFLE1BQU0sT0FBTyx3QkFBd0I7SUE4QmpDLFlBQW9CLE9BQW1CLEVBQVUsRUFBcUI7UUFBbEQsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUFVLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBeEIvRCxZQUFPLEdBQUcsd0JBQXdCLENBQUM7UUFHbkMsdUJBQWtCLEdBQUcsU0FBUyxDQUFDO1FBUy9CLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUdyQixXQUFNLEdBQUcsSUFBSSxDQUFDO1FBR2QsY0FBUyxHQUFHLE9BQU8sQ0FBQztRQUVuQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRWxCLHVCQUFrQixHQUE2QyxJQUFJLENBQUM7SUFJNUUsQ0FBQztJQUVNLE9BQU87UUFFVixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVNLEtBQUs7UUFFUixJQUNJLElBQUksQ0FBQyxTQUFTO2VBQ1gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztlQUN6QyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3BFLENBQUM7WUFDQyxPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLEdB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QUR4QixXQUFXO3VCQUFDLGtCQUFrQjtnQkFJeEIsZ0JBQWdCO3NCQUR0QixXQUFXO3VCQUFDLGdCQUFnQjtnQkFJdEIsaUJBQWlCO3NCQUR2QixXQUFXO3VCQUFDLGlCQUFpQjtnQkFJdkIsZ0JBQWdCO3NCQUR0QixXQUFXO3VCQUFDLGVBQWU7Z0JBSXJCLE1BQU07c0JBRFosS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TnVtYmVyVXRpbHMsIFN0cmluZ1V0aWxzfSBmcm9tICdAZG9udGRyaW5rYW5kcm9vdC9uZ3gtZXh0ZW5zaW9ucyc7XG5cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnW2RkckdyaWRUaWxlTGF6eUltZ10nfSlcbmV4cG9ydCBjbGFzcyBHcmlkVGlsZUxhenlJbWdEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXNcbntcbiAgICBASW5wdXQoJ2RkckdyaWRUaWxlTGF6eUltZycpXG4gICAgcHVibGljIHNyYyE6IHN0cmluZztcblxuICAgIEBIb3N0QmluZGluZygnc3JjJylcbiAgICBwdWJsaWMgaG9zdFNyYyA9ICdhc3NldHMvcGxhY2Vob2xkZXIuZ2lmJztcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUub2JqZWN0LWZpdCcpXG4gICAgcHVibGljIGhvc3RTdHlsZU9iamVjdEZpdCA9ICdjb250YWluJztcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgucHgnKVxuICAgIHB1YmxpYyBob3N0U3R5bGVXaWR0aFB4ITogbnVtYmVyO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKVxuICAgIHB1YmxpYyBob3N0U3R5bGVIZWlnaHRQeCE6IG51bWJlcjtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUub3BhY2l0eScpXG4gICAgcHVibGljIGhvc3RTdHlsZU9wYWNpdHkgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgb2Zmc2V0ID0gMTAwMDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG9iamVjdEZpdCA9ICdjb3Zlcic7XG5cbiAgICBwcml2YXRlIGRpc3BsYXllZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBtYXhMb2FkZWREaW1lbnNpb246IHsgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIgfSB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLCBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZilcbiAgICB7XG4gICAgfVxuXG4gICAgcHVibGljIHJlY2hlY2soKVxuICAgIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jaGVjaygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjaGVjaygpXG4gICAge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXllZFxuICAgICAgICAgICAgfHwgdGhpcy5pc0hpZGRlbih0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudClcbiAgICAgICAgICAgIHx8ICF0aGlzLmlzSW5zaWRlVmlld3BvcnQodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRoaXMub2Zmc2V0KVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZGlzcGxheWVkID0gdHJ1ZTtcbiAgICAgICAgY29uc3QgZGltZW5zaW9uID0gdGhpcy5nZXREaW1lbnNpb24oKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBudWxsICE9IHRoaXMubWF4TG9hZGVkRGltZW5zaW9uXG4gICAgICAgICAgICAmJiB0aGlzLm1heExvYWRlZERpbWVuc2lvbi53aWR0aCA+PSBkaW1lbnNpb24ud2lkdGhcbiAgICAgICAgICAgICYmIHRoaXMubWF4TG9hZGVkRGltZW5zaW9uLmhlaWdodCA+PSBkaW1lbnNpb24uaGVpZ2h0XG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5tYXhMb2FkZWREaW1lbnNpb24gPSBkaW1lbnNpb247XG4gICAgICAgIHRoaXMuaG9zdFN0eWxlV2lkdGhQeCA9IGRpbWVuc2lvbi53aWR0aDtcbiAgICAgICAgdGhpcy5ob3N0U3R5bGVIZWlnaHRQeCA9IGRpbWVuc2lvbi5oZWlnaHQ7XG4gICAgICAgIGxldCB3YW50ZWRTaXplOiBudW1iZXI7XG4gICAgICAgIGlmICh0aGlzLm9iamVjdEZpdCA9PT0gJ2NvdmVyJykge1xuICAgICAgICAgICAgd2FudGVkU2l6ZSA9IE51bWJlclV0aWxzLmdldE5leHRQb3dlck9mVHdvKE1hdGgubWF4KGRpbWVuc2lvbi53aWR0aCwgZGltZW5zaW9uLmhlaWdodCkpO1xuICAgICAgICAgICAgdGhpcy5ob3N0U3R5bGVPYmplY3RGaXQgPSAnY292ZXInO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgd2FudGVkU2l6ZSA9IE51bWJlclV0aWxzLmdldE5leHRQb3dlck9mVHdvKE1hdGgubWluKGRpbWVuc2lvbi53aWR0aCwgZGltZW5zaW9uLmhlaWdodCkpO1xuICAgICAgICAgICAgdGhpcy5ob3N0U3R5bGVPYmplY3RGaXQgPSAnY29udGFpbic7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ob3N0U3JjID0gU3RyaW5nVXRpbHMudXBkYXRlVXJsUGFyYW1ldGVyKHRoaXMuc3JjLCAnc2l6ZScsIFN0cmluZyh3YW50ZWRTaXplKSk7XG4gICAgICAgIHRoaXMuaG9zdFN0eWxlT3BhY2l0eSA9IDE7XG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBvdmVycmlkZVxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5tYXhMb2FkZWREaW1lbnNpb24gPSBudWxsO1xuICAgICAgICB0aGlzLmhvc3RTdHlsZU9wYWNpdHkgPSAwO1xuICAgICAgICBpZiAodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5vZmZzZXRXaWR0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaXNJbnNpZGVWaWV3cG9ydChuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudCwgb2Zmc2V0OiBudW1iZXIpOiBib29sZWFuXG4gICAge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnaXNJbnNpZGVWaWV3cG9ydCcpO1xuICAgICAgICBjb25zdCBvd25lckRvY3VtZW50ID0gbmF0aXZlRWxlbWVudC5vd25lckRvY3VtZW50O1xuICAgICAgICBjb25zdCBkb2N1bWVudFRvcCA9IHdpbmRvdy5wYWdlWU9mZnNldCB8fCBvd25lckRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wO1xuICAgICAgICBjb25zdCBkb2N1bWVudExlZnQgPSB3aW5kb3cucGFnZVhPZmZzZXQgfHwgb3duZXJEb2N1bWVudC5ib2R5LnNjcm9sbExlZnQ7XG5cbiAgICAgICAgY29uc3QgZG9jdW1lbnRXaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoIHx8IChvd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCB8fCBkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoKTtcbiAgICAgICAgY29uc3QgZG9jdW1lbnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgfHwgKG93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCB8fCBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCk7XG4gICAgICAgIGNvbnN0IHRvcE9mZnNldCA9IG5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgZG9jdW1lbnRUb3AgLSBvd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRUb3A7XG4gICAgICAgIGNvbnN0IGxlZnRPZmZzZXQgPSBuYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQgKyBkb2N1bWVudExlZnQgLSBvd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRMZWZ0O1xuXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGRvY3VtZW50V2lkdGgsIGRvY3VtZW50SGVpZ2h0LCB0b3BPZmZzZXQsIGxlZnRPZmZzZXQpO1xuXG4gICAgICAgIGNvbnN0IGlzQmVsb3dWaWV3cG9ydCA9IGRvY3VtZW50SGVpZ2h0ICsgZG9jdW1lbnRUb3AgPD0gdG9wT2Zmc2V0IC0gb2Zmc2V0O1xuICAgICAgICBjb25zdCBpc0F0UmlnaHRPZlZpZXdwb3J0ID0gZG9jdW1lbnRXaWR0aCArIHdpbmRvdy5wYWdlWE9mZnNldCA8PSBsZWZ0T2Zmc2V0IC0gb2Zmc2V0O1xuICAgICAgICBjb25zdCBpc0Fib3ZlVmlld3BvcnQgPSBkb2N1bWVudFRvcCA+PSB0b3BPZmZzZXQgKyBvZmZzZXQgKyBuYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICAgICAgY29uc3QgaXNBdExlZnRPZlZpZXdwb3J0ID0gZG9jdW1lbnRMZWZ0ID49IGxlZnRPZmZzZXQgKyBvZmZzZXQgKyBuYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xuXG4gICAgICAgIHJldHVybiAhaXNCZWxvd1ZpZXdwb3J0ICYmICFpc0Fib3ZlVmlld3BvcnQgJiYgIWlzQXRSaWdodE9mVmlld3BvcnQgJiYgIWlzQXRMZWZ0T2ZWaWV3cG9ydDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERpbWVuc2lvbigpOiB7IHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyIH1cbiAgICB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB3aWR0aDogdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5vZmZzZXRXaWR0aCxcbiAgICAgICAgICAgIGhlaWdodDogdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5vZmZzZXRIZWlnaHQsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0hpZGRlbihuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudClcbiAgICB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdpc0hpZGRlbicpO1xuICAgICAgICByZXR1cm4gd2luZG93LmdldENvbXB1dGVkU3R5bGUobmF0aXZlRWxlbWVudCkuZGlzcGxheSA9PT0gJ25vbmUnO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -24,16 +24,16 @@ export class SidenavContainerComponent {
|
|
|
24
24
|
ngOnInit() {
|
|
25
25
|
this.sidenavService.setSidenav(this.sidenav);
|
|
26
26
|
}
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavContainerComponent, deps: [{ token: i1.SidenavService }, { token: i2.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", 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 fixedInViewport=\"true\"\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>\n <ng-content select=\"[slot=mat-sidenav-content]\"></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i4.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
|
|
27
29
|
}
|
|
28
|
-
|
|
29
|
-
SidenavContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", 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 fixedInViewport=\"true\"\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>\n <ng-content select=\"[slot=mat-sidenav-content]\"></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i4.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i4.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: SidenavContainerComponent, decorators: [{
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavContainerComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: 'ddr-mat-sidenav-container', template: "<mat-sidenav-container [ngClass]=\"(mode$|async)\">\n <mat-sidenav\n #sidenav\n fixedInViewport=\"true\"\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>\n <ng-content select=\"[slot=mat-sidenav-content]\"></ng-content>\n </mat-sidenav-content>\n</mat-sidenav-container>\n" }]
|
|
33
|
-
}], ctorParameters:
|
|
33
|
+
}], ctorParameters: () => [{ type: i1.SidenavService }, { type: i2.BreakpointObserver }], propDecorators: { sidenav: [{
|
|
34
34
|
type: ViewChild,
|
|
35
35
|
args: ['sidenav', { static: true }]
|
|
36
36
|
}], stayOpenOnLargeScreen: [{
|
|
37
37
|
type: Input
|
|
38
38
|
}] } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQW9DLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBVTVGLE1BQU0sT0FBTyx5QkFBeUI7SUFZbEMsWUFBb0IsY0FBOEIsRUFBVSxrQkFBc0M7UUFBOUUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQU4zRiwwQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFFOUIsVUFBSyxHQUE4QixJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFM0UsWUFBTyxHQUF3QixJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFJaEYsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVyxDQUFDLE9BQXNCO1FBRXJDLElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUVYLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqRCxDQUFDOzhHQTlCUSx5QkFBeUI7a0dBQXpCLHlCQUF5QixvUUNWdEMsK2JBWUE7OzJGREZhLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDSSwyQkFBMkI7b0hBTTlCLE9BQU87c0JBRGIsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUk3QixxQkFBcUI7c0JBRDNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXREcmF3ZXJNb2RlLCBNYXRTaWRlbmF2fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7U2lkZW5hdlNlcnZpY2V9IGZyb20gJy4vc2lkZW5hdi5zZXJ2aWNlJztcbmltcG9ydCB7QnJlYWtwb2ludE9ic2VydmVyfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZGRyLW1hdC1zaWRlbmF2LWNvbnRhaW5lcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXNcbntcbiAgICBAVmlld0NoaWxkKCdzaWRlbmF2Jywge3N0YXRpYzogdHJ1ZX0pXG4gICAgcHVibGljIHNpZGVuYXYhOiBNYXRTaWRlbmF2O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc3RheU9wZW5PbkxhcmdlU2NyZWVuID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgbW9kZSQ6IE9ic2VydmFibGU8TWF0RHJhd2VyTW9kZT4gPSB0aGlzLnNpZGVuYXZTZXJ2aWNlLmdldE1vZGVPYnNlcnZhYmxlKCk7XG5cbiAgICBwdWJsaWMgb3BlbmVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc2lkZW5hdlNlcnZpY2UuZ2V0T3BlbmVkT2JzZXJ2YWJsZSgpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzaWRlbmF2U2VydmljZTogU2lkZW5hdlNlcnZpY2UsIHByaXZhdGUgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIpXG4gICAge1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBvdmVycmlkZVxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5zZXRTdGF5T3Blbk9uTGFyZ2VTY3JlZW4oY2hhbmdlc1snc3RheU9wZW5PbkxhcmdlU2NyZWVuJ10uY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAb3ZlcnJpZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5zZXRTaWRlbmF2KHRoaXMuc2lkZW5hdik7XG4gICAgfVxufVxuIiwiPG1hdC1zaWRlbmF2LWNvbnRhaW5lciBbbmdDbGFzc109XCIobW9kZSR8YXN5bmMpXCI+XG4gICAgPG1hdC1zaWRlbmF2XG4gICAgICAgICNzaWRlbmF2XG4gICAgICAgIGZpeGVkSW5WaWV3cG9ydD1cInRydWVcIlxuICAgICAgICBbbW9kZV09XCIobW9kZSR8YXN5bmMpID8/ICdvdmVyJ1wiXG4gICAgICAgIFtvcGVuZWRdPVwiKG9wZW5lZCR8YXN5bmMpXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzbG90PW1hdC1zaWRlbmF2XVwiPjwvbmctY29udGVudD5cbiAgICA8L21hdC1zaWRlbmF2PlxuICAgIDxtYXQtc2lkZW5hdi1jb250ZW50PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD1tYXQtc2lkZW5hdi1jb250ZW50XVwiPjwvbmctY29udGVudD5cbiAgICA8L21hdC1zaWRlbmF2LWNvbnRlbnQ+XG48L21hdC1zaWRlbmF2LWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -10,13 +10,13 @@ export class SidenavToggleComponent {
|
|
|
10
10
|
toggleSidenav() {
|
|
11
11
|
this.sidenavService.toggle();
|
|
12
12
|
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
SidenavToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: SidenavToggleComponent, selector: "ddr-mat-sidenav-toggle", ngImport: i0, template: `
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavToggleComponent, deps: [{ token: i1.SidenavService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: SidenavToggleComponent, selector: "ddr-mat-sidenav-toggle", ngImport: i0, template: `
|
|
16
15
|
<button mat-icon-button (click)="toggleSidenav()">
|
|
17
16
|
<mat-icon>menu</mat-icon>
|
|
18
|
-
</button>`, isInline: true, dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]",
|
|
19
|
-
|
|
17
|
+
</button>`, isInline: true, dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavToggleComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
21
|
args: [{
|
|
22
22
|
selector: 'ddr-mat-sidenav-toggle',
|
|
@@ -25,5 +25,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
|
|
|
25
25
|
<mat-icon>menu</mat-icon>
|
|
26
26
|
</button>`
|
|
27
27
|
}]
|
|
28
|
-
}], ctorParameters:
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
}], ctorParameters: () => [{ type: i1.SidenavService }] });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi10b2dnbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7O0FBVXhDLE1BQU0sT0FBTyxzQkFBc0I7SUFFL0IsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBRWxELENBQUM7SUFFTSxhQUFhO1FBRWhCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDakMsQ0FBQzs4R0FUUSxzQkFBc0I7a0dBQXRCLHNCQUFzQiw4REFMckI7OztrQkFHSTs7MkZBRUwsc0JBQXNCO2tCQVBsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRTs7O2tCQUdJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2lkZW5hdlNlcnZpY2V9IGZyb20gJy4vc2lkZW5hdi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkZHItbWF0LXNpZGVuYXYtdG9nZ2xlJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidG9nZ2xlU2lkZW5hdigpXCI+XG4gICAgICAgICAgICA8bWF0LWljb24+bWVudTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPmBcbn0pXG5leHBvcnQgY2xhc3MgU2lkZW5hdlRvZ2dsZUNvbXBvbmVudFxue1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2lkZW5hdlNlcnZpY2U6IFNpZGVuYXZTZXJ2aWNlKVxuICAgIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9nZ2xlU2lkZW5hdigpXG4gICAge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnRvZ2dsZSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Breakpoints } from '@angular/cdk/layout';
|
|
3
|
+
import { map } from 'rxjs/operators';
|
|
4
|
+
import { NavigationStart } from '@angular/router';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/cdk/layout";
|
|
7
|
+
import * as i2 from "@angular/router";
|
|
8
|
+
export class SidenavService {
|
|
9
|
+
constructor(breakpointObserver, router) {
|
|
10
|
+
this.breakpointObserver = breakpointObserver;
|
|
11
|
+
this.router = router;
|
|
12
|
+
this.stayOpenOnLargeScreen = false;
|
|
13
|
+
this.largeBreakpoints = [
|
|
14
|
+
Breakpoints.Medium,
|
|
15
|
+
Breakpoints.Large,
|
|
16
|
+
Breakpoints.XLarge
|
|
17
|
+
];
|
|
18
|
+
this.screenLarge$ = this.breakpointObserver.observe(this.largeBreakpoints).pipe(map(result => result.matches));
|
|
19
|
+
this.mode$ = this.screenLarge$.pipe(map(large => large && this.stayOpenOnLargeScreen ? 'side' : 'over'));
|
|
20
|
+
this.opened$ = this.screenLarge$.pipe(map(large => large && this.stayOpenOnLargeScreen));
|
|
21
|
+
this.router.events.subscribe(event => {
|
|
22
|
+
if (event instanceof NavigationStart) {
|
|
23
|
+
this.closeSidebar();
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
setSidenav(sidenav) {
|
|
28
|
+
this.sidenav = sidenav;
|
|
29
|
+
}
|
|
30
|
+
getStayOpenOnLargeScreen() {
|
|
31
|
+
return this.stayOpenOnLargeScreen;
|
|
32
|
+
}
|
|
33
|
+
setStayOpenOnLargeScreen(value) {
|
|
34
|
+
this.stayOpenOnLargeScreen = value;
|
|
35
|
+
}
|
|
36
|
+
toggle() {
|
|
37
|
+
if (null == this.sidenav) {
|
|
38
|
+
return Promise.reject('No MatSidenav found. Use setSidenav() of SidenavService');
|
|
39
|
+
}
|
|
40
|
+
if (!(this.stayOpenOnLargeScreen && this.breakpointObserver.isMatched(this.largeBreakpoints))) {
|
|
41
|
+
return this.sidenav.toggle();
|
|
42
|
+
}
|
|
43
|
+
return Promise.resolve(this.sidenav.opened ? 'open' : 'close');
|
|
44
|
+
}
|
|
45
|
+
closeSidebar() {
|
|
46
|
+
if (!(this.stayOpenOnLargeScreen && this.breakpointObserver.isMatched(this.largeBreakpoints))) {
|
|
47
|
+
this.sidenav.close();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
getModeObservable() {
|
|
51
|
+
return this.mode$;
|
|
52
|
+
}
|
|
53
|
+
getOpenedObservable() {
|
|
54
|
+
return this.opened$;
|
|
55
|
+
}
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavService, deps: [{ token: i1.BreakpointObserver }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
57
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavService, providedIn: 'root' }); }
|
|
58
|
+
}
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: SidenavService, decorators: [{
|
|
60
|
+
type: Injectable,
|
|
61
|
+
args: [{
|
|
62
|
+
providedIn: 'root'
|
|
63
|
+
}]
|
|
64
|
+
}], ctorParameters: () => [{ type: i1.BreakpointObserver }, { type: i2.Router }] });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFxQixXQUFXLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRSxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxFQUFDLGVBQWUsRUFBUyxNQUFNLGlCQUFpQixDQUFDOzs7O0FBS3hELE1BQU0sT0FBTyxjQUFjO0lBa0J2QixZQUFvQixrQkFBc0MsRUFBVSxNQUFjO1FBQTlELHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBZDFFLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUU5QixxQkFBZ0IsR0FBRztZQUN2QixXQUFXLENBQUMsTUFBTTtZQUNsQixXQUFXLENBQUMsS0FBSztZQUNqQixXQUFXLENBQUMsTUFBTTtTQUNyQixDQUFDO1FBVUUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksQ0FDM0UsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNoQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDL0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FDdEUsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2pDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FDcEQsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQyxJQUFJLEtBQUssWUFBWSxlQUFlLEVBQUUsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxVQUFVLENBQUMsT0FBbUI7UUFFakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDM0IsQ0FBQztJQUVNLHdCQUF3QjtRQUUzQixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztJQUN0QyxDQUFDO0lBRU0sd0JBQXdCLENBQUMsS0FBYztRQUUxQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxNQUFNO1FBRVQsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO1FBQ3JGLENBQUM7UUFFRCxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pDLENBQUM7UUFFRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLFlBQVk7UUFFZixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVNLGlCQUFpQjtRQUVwQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVNLG1CQUFtQjtRQUV0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQzs4R0EvRVEsY0FBYztrSEFBZCxjQUFjLGNBRlgsTUFBTTs7MkZBRVQsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXREcmF3ZXJNb2RlLCBNYXREcmF3ZXJUb2dnbGVSZXN1bHQsIE1hdFNpZGVuYXZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHtCcmVha3BvaW50T2JzZXJ2ZXIsIEJyZWFrcG9pbnRzfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTaWRlbmF2U2VydmljZVxue1xuICAgIHByaXZhdGUgc2lkZW5hdiE6IE1hdFNpZGVuYXY7XG5cbiAgICBwcml2YXRlIHN0YXlPcGVuT25MYXJnZVNjcmVlbiA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBsYXJnZUJyZWFrcG9pbnRzID0gW1xuICAgICAgICBCcmVha3BvaW50cy5NZWRpdW0sXG4gICAgICAgIEJyZWFrcG9pbnRzLkxhcmdlLFxuICAgICAgICBCcmVha3BvaW50cy5YTGFyZ2VcbiAgICBdO1xuXG4gICAgcHJpdmF0ZSBzY3JlZW5MYXJnZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgICBwcml2YXRlIG1vZGUkOiBPYnNlcnZhYmxlPE1hdERyYXdlck1vZGU+O1xuXG4gICAgcHJpdmF0ZSBvcGVuZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlciwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcilcbiAgICB7XG4gICAgICAgIHRoaXMuc2NyZWVuTGFyZ2UkID0gdGhpcy5icmVha3BvaW50T2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmxhcmdlQnJlYWtwb2ludHMpLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzdWx0ID0+IHJlc3VsdC5tYXRjaGVzKVxuICAgICAgICApO1xuICAgICAgICB0aGlzLm1vZGUkID0gdGhpcy5zY3JlZW5MYXJnZSQucGlwZShcbiAgICAgICAgICAgIG1hcChsYXJnZSA9PiBsYXJnZSAmJiB0aGlzLnN0YXlPcGVuT25MYXJnZVNjcmVlbiA/ICdzaWRlJyA6ICdvdmVyJylcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5vcGVuZWQkID0gdGhpcy5zY3JlZW5MYXJnZSQucGlwZShcbiAgICAgICAgICAgIG1hcChsYXJnZSA9PiBsYXJnZSAmJiB0aGlzLnN0YXlPcGVuT25MYXJnZVNjcmVlbilcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlU2lkZWJhcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0U2lkZW5hdihzaWRlbmF2OiBNYXRTaWRlbmF2KTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2ID0gc2lkZW5hdjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U3RheU9wZW5PbkxhcmdlU2NyZWVuKCk6IGJvb2xlYW5cbiAgICB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXlPcGVuT25MYXJnZVNjcmVlbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0U3RheU9wZW5PbkxhcmdlU2NyZWVuKHZhbHVlOiBib29sZWFuKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5zdGF5T3Blbk9uTGFyZ2VTY3JlZW4gPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9nZ2xlKCk6IFByb21pc2U8TWF0RHJhd2VyVG9nZ2xlUmVzdWx0PlxuICAgIHtcbiAgICAgICAgaWYgKG51bGwgPT0gdGhpcy5zaWRlbmF2KSB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoJ05vIE1hdFNpZGVuYXYgZm91bmQuIFVzZSBzZXRTaWRlbmF2KCkgb2YgU2lkZW5hdlNlcnZpY2UnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghKHRoaXMuc3RheU9wZW5PbkxhcmdlU2NyZWVuICYmIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyLmlzTWF0Y2hlZCh0aGlzLmxhcmdlQnJlYWtwb2ludHMpKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2lkZW5hdi50b2dnbGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5zaWRlbmF2Lm9wZW5lZCA/ICdvcGVuJyA6ICdjbG9zZScpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZVNpZGViYXIoKTogdm9pZFxuICAgIHtcbiAgICAgICAgaWYgKCEodGhpcy5zdGF5T3Blbk9uTGFyZ2VTY3JlZW4gJiYgdGhpcy5icmVha3BvaW50T2JzZXJ2ZXIuaXNNYXRjaGVkKHRoaXMubGFyZ2VCcmVha3BvaW50cykpKSB7XG4gICAgICAgICAgICB0aGlzLnNpZGVuYXYuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRNb2RlT2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPE1hdERyYXdlck1vZGU+XG4gICAge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlJDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0T3BlbmVkT2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG4gICAge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuZWQkO1xuICAgIH1cbn1cbiJdfQ==
|