@hug/ngx-layout 1.1.0 → 1.1.2

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.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVnLW5neC1sYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9sYXlvdXQvc3JjL2h1Zy1uZ3gtbGF5b3V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './layout.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9sYXlvdXQvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xheW91dC5jb21wb25lbnQnO1xuIl19
@@ -0,0 +1,170 @@
1
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
4
+ import { MatButtonModule } from '@angular/material/button';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { MatSidenavModule } from '@angular/material/sidenav';
7
+ import { MatToolbarModule } from '@angular/material/toolbar';
8
+ import { MatTooltipModule } from '@angular/material/tooltip';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@hug/ngx-core";
11
+ import * as i2 from "@hug/ngx-sidenav";
12
+ import * as i3 from "@angular/common";
13
+ import * as i4 from "@angular/material/button";
14
+ import * as i5 from "@angular/material/icon";
15
+ import * as i6 from "@angular/material/sidenav";
16
+ import * as i7 from "@angular/material/toolbar";
17
+ import * as i8 from "@angular/material/tooltip";
18
+ export class LayoutComponent {
19
+ constructor(mediaService, sidenavService) {
20
+ this.mediaService = mediaService;
21
+ this.sidenavService = sidenavService;
22
+ this.toolbarColor = 'primary';
23
+ this.editorToolbarId = 'editor-toolbar';
24
+ this.closeButtonLabel = 'Fermer';
25
+ this.backButtonLabel = 'Retour';
26
+ this.closeButtonClicked = new EventEmitter();
27
+ this.backButtonClicked = new EventEmitter();
28
+ this.sideFilterClosed = new EventEmitter();
29
+ this.sideFilterOpened = new EventEmitter();
30
+ this.noRight = false;
31
+ this._withEditorToolbar = true;
32
+ this._withSidenav = false;
33
+ this._keepFilterButtonDisplayed = true;
34
+ this._withCloseButton = false;
35
+ this._withBackButton = false;
36
+ this._displayEditorToolbar = true;
37
+ }
38
+ get layoutToolbar() {
39
+ return this.layoutToolbarExternal ?? this.layoutToolbarContent;
40
+ }
41
+ get layoutPrimaryAction() {
42
+ return this.layoutPrimaryActionExternal ?? this.layoutPrimaryActionContent;
43
+ }
44
+ get layoutActions() {
45
+ return this.layoutActionsExternal ?? this.layoutActionsContent;
46
+ }
47
+ get layoutInfoBoxes() {
48
+ return this.layoutInfoBoxesExternal ?? this.layoutInfoBoxesContent;
49
+ }
50
+ get layoutRight() {
51
+ const value = this.layoutRightExternal ?? this.layoutRightContent;
52
+ this.noRight = !value;
53
+ return value;
54
+ }
55
+ set withEditorToolbar(value) {
56
+ this._withEditorToolbar = coerceBooleanProperty(value);
57
+ }
58
+ get withEditorToolbar() {
59
+ return this._withEditorToolbar;
60
+ }
61
+ set withSidenav(value) {
62
+ this._withSidenav = coerceBooleanProperty(value);
63
+ }
64
+ get withSidenav() {
65
+ return this._withSidenav;
66
+ }
67
+ set keepFilterButtonDisplayed(value) {
68
+ this._keepFilterButtonDisplayed = coerceBooleanProperty(value);
69
+ }
70
+ get keepFilterButtonDisplayed() {
71
+ return this._keepFilterButtonDisplayed;
72
+ }
73
+ set withCloseButton(value) {
74
+ this._withCloseButton = coerceBooleanProperty(value);
75
+ }
76
+ get withCloseButton() {
77
+ return this._withCloseButton;
78
+ }
79
+ set withBackButton(value) {
80
+ this._withBackButton = coerceBooleanProperty(value);
81
+ }
82
+ get withBackButton() {
83
+ return this._withBackButton;
84
+ }
85
+ set displayEditorToolbar(value) {
86
+ this._displayEditorToolbar = coerceBooleanProperty(value);
87
+ }
88
+ get displayEditorToolbar() {
89
+ return this._displayEditorToolbar;
90
+ }
91
+ closeSideFilter() {
92
+ void this.sideFilter?.close();
93
+ }
94
+ openSideFilter() {
95
+ void this.sideFilter?.open();
96
+ }
97
+ }
98
+ LayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LayoutComponent, deps: [{ token: i1.MediaService }, { token: i2.SidenavService }], target: i0.ɵɵFactoryTarget.Component });
99
+ LayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LayoutComponent, isStandalone: true, selector: "layout", inputs: { toolbarColor: "toolbarColor", editorToolbarId: "editorToolbarId", closeButtonLabel: "closeButtonLabel", backButtonLabel: "backButtonLabel", layoutToolbarExternal: "layoutToolbarExternal", layoutPrimaryActionExternal: "layoutPrimaryActionExternal", layoutActionsExternal: "layoutActionsExternal", layoutInfoBoxesExternal: "layoutInfoBoxesExternal", layoutRightExternal: "layoutRightExternal", withEditorToolbar: "withEditorToolbar", withSidenav: "withSidenav", keepFilterButtonDisplayed: "keepFilterButtonDisplayed", withCloseButton: "withCloseButton", withBackButton: "withBackButton", displayEditorToolbar: "displayEditorToolbar" }, outputs: { closeButtonClicked: "closeButtonClicked", backButtonClicked: "backButtonClicked", sideFilterClosed: "sideFilterClosed", sideFilterOpened: "sideFilterOpened" }, host: { properties: { "class.no-right": "this.noRight" } }, queries: [{ propertyName: "layoutToolbarContent", first: true, predicate: ["layoutToolbar"], descendants: true }, { propertyName: "layoutPrimaryActionContent", first: true, predicate: ["layoutPrimaryAction"], descendants: true }, { propertyName: "layoutActionsContent", first: true, predicate: ["layoutActions"], descendants: true }, { propertyName: "layoutInfoBoxesContent", first: true, predicate: ["layoutInfoBoxes"], descendants: true }, { propertyName: "layoutRightContent", first: true, predicate: ["layoutRight"], descendants: true }], viewQueries: [{ propertyName: "sideFilter", first: true, predicate: ["sideFilter"], descendants: true }], ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"filter\"></ng-container>\n\n<ng-template #content>\n <div class=\"main-content\">\n <span class=\"primary-action-container\" [class.bottom]=\"(mediaService.isHandset$ | async)\" *ngIf=\"layoutPrimaryAction && !((layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false))\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-content></ng-content>\n </div>\n <ng-container *ngIf=\"(mediaService.isHandset$ | async) && actionsToolbar\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #actionsToolbar>\n <mat-toolbar id=\"actions-toolbar\" class=\"actions\" [color]=\"toolbarColor\" [class.bottom]=\"(mediaService.isHandset$ | async)\">\n <span class=\"primary-action-container\" *ngIf=\"layoutPrimaryAction && (layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-container *ngIf=\"layoutActions\">\n <ng-template [ngTemplateOutlet]=\"layoutActions\"></ng-template>\n </ng-container>\n <div class=\"info-boxes-container\" *ngIf=\"layoutInfoBoxes && (mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutInfoBoxes\"></ng-template>\n </div>\n </mat-toolbar>\n</ng-template>\n\n<ng-template #filter>\n <mat-toolbar id=\"toolbar\" [color]=\"toolbarColor\" *ngIf=\"layoutToolbar || layoutRight\">\n <button type=\"button\" id=\"sidenav-button\" mat-icon-button *ngIf=\"withSidenav && (mediaService.isHandset$ | async) && ((sidenavService.openChanged$ | async) === false)\" (click)=\"sidenavService.toggle()\">\n <mat-icon>menu</mat-icon>\n </button>\n <button type=\"button\" id=\"back-button\" mat-icon-button *ngIf=\"withBackButton\" (click)=\"this.backButtonClicked.emit($event)\" [matTooltip]=\"backButtonLabel\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div id=\"toolbar-content-container\">\n <ng-container *ngIf=\"layoutToolbar\">\n <ng-template [ngTemplateOutlet]=\"layoutToolbar\"></ng-template>\n </ng-container>\n </div>\n <button type=\"button\" id=\"filter-button\" mat-icon-button (click)=\"sideFilter.toggle()\" *ngIf=\"sideFilter && (keepFilterButtonDisplayed || (mediaService.isHandset$ | async)) && layoutRight\" matTooltip=\"Afficher/Masquer les filtres\">\n <mat-icon>tune</mat-icon>\n </button>\n <button type=\"button\" id=\"close-button\" mat-icon-button *ngIf=\"withCloseButton\" (click)=\"this.closeButtonClicked.emit($event)\" [matTooltip]=\"closeButtonLabel\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-toolbar>\n <ng-container *ngIf=\"(layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n <mat-drawer-container *ngIf=\"layoutRight; else content\" autosize=\"true\">\n <mat-drawer-content>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </mat-drawer-content>\n <mat-drawer id=\"side-filter\" #sideFilter (closed)=\"sideFilterClosed.emit()\" (openedChange)=\"sideFilterOpened.emit()\" class=\"right\" position=\"end\" [attr.role]=\"(mediaService.isHandset$ | async) ? 'dialog' : 'navigation'\" [mode]=\"(mediaService.isHandset$ | async) ? 'over' : 'side'\" [opened]=\"(mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutRight\"></ng-template>\n </mat-drawer>\n </mat-drawer-container>\n</ng-template>\n", styles: ["layout{display:flex;flex-direction:column;position:absolute;inset:0}layout.no-left.no-right .main-content{padding:0}layout mat-sidenav-container{position:absolute;inset:0}layout mat-sidenav-content,layout mat-drawer-content{display:flex!important;flex-direction:column}layout mat-sidenav{width:200px}layout mat-drawer{width:220px}layout mat-drawer.right{padding:.3rem}layout mat-drawer.right [filters-title]{font-size:1.2rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:700;padding:.6rem;margin-bottom:.3rem}layout mat-drawer.right [filters-subtitle]{font-size:1rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:600;padding:.4rem .6rem;margin-bottom:.3rem;margin-top:.3rem}layout mat-drawer.right [icons-container]{display:flex;align-items:center}layout mat-drawer.right [filters-icon]{cursor:pointer;transition:color .3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-chip-list-wrapper{margin:0;max-height:20vh;overflow-y:auto}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{position:relative}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{padding:.5rem;margin:.1rem;font-size:.75rem;transition:.3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]){cursor:pointer}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]):hover:before{content:\"close\";display:flex;align-items:center;justify-content:center;position:absolute;inset:0;font-weight:700;font-size:1.2rem;cursor:pointer;transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group]{display:flex}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle{transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle mat-icon{margin-right:1rem}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-label-content{text-align:start}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-focus-overlay{height:100%}layout mat-drawer.right mat-form-field{width:100%}layout mat-drawer.right .mat-form-field-infix{width:inherit}layout mat-drawer.right.mat-drawer-side{box-shadow:-3px 0 5px -1px #0003;z-index:10}layout mat-drawer-container{flex:1}layout .mat-toolbar:not(.actions){display:flex;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:10}layout .mat-toolbar:not(.actions) #toolbar-content-container{display:flex;flex-grow:1;overflow:hidden}layout .mat-toolbar:not(.actions) [toolbar-title]{overflow:hidden;text-overflow:ellipsis}layout .mat-toolbar:not(.actions)>div{display:flex;align-items:center}layout .mat-toolbar#actions-toolbar{flex:0 0 auto;height:40px;font-size:inherit;padding-right:0}layout .mat-toolbar#actions-toolbar .info-boxes-container{display:flex;flex:1 1 auto;justify-content:flex-end}layout .mat-toolbar#actions-toolbar .info-boxes-container .info-box{display:flex;flex-grow:0;line-height:40px;padding-left:2rem;padding-right:2rem;box-shadow:-3px 0 5px -1px #0003}layout .mat-toolbar#actions-toolbar.bottom#actions-toolbar{display:flex;width:100%;justify-content:space-around}layout .mat-toolbar#actions-toolbar .primary-action-container{z-index:20}layout .main-content{position:relative;display:flex;flex:1 1 auto;overflow:hidden}layout .main-content .primary-action-container{position:absolute;z-index:20;opacity:.8;transition:.3s ease-in-out}layout .main-content .primary-action-container:hover{opacity:1}layout .main-content .primary-action-container.bottom{right:1rem;bottom:1rem}layout .main-content .primary-action-container:not(.bottom){top:1rem;left:1rem}layout ::-webkit-scrollbar{width:12px;height:12px}layout ::-webkit-scrollbar-thumb{-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;border-radius:6px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatSidenavModule }, { kind: "component", type: i6.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i6.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i6.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i7.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LayoutComponent, decorators: [{
101
+ type: Component,
102
+ args: [{ selector: 'layout', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
103
+ CommonModule,
104
+ MatButtonModule,
105
+ MatIconModule,
106
+ MatSidenavModule,
107
+ MatToolbarModule,
108
+ MatTooltipModule
109
+ ], template: "<ng-container *ngTemplateOutlet=\"filter\"></ng-container>\n\n<ng-template #content>\n <div class=\"main-content\">\n <span class=\"primary-action-container\" [class.bottom]=\"(mediaService.isHandset$ | async)\" *ngIf=\"layoutPrimaryAction && !((layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false))\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-content></ng-content>\n </div>\n <ng-container *ngIf=\"(mediaService.isHandset$ | async) && actionsToolbar\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #actionsToolbar>\n <mat-toolbar id=\"actions-toolbar\" class=\"actions\" [color]=\"toolbarColor\" [class.bottom]=\"(mediaService.isHandset$ | async)\">\n <span class=\"primary-action-container\" *ngIf=\"layoutPrimaryAction && (layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-container *ngIf=\"layoutActions\">\n <ng-template [ngTemplateOutlet]=\"layoutActions\"></ng-template>\n </ng-container>\n <div class=\"info-boxes-container\" *ngIf=\"layoutInfoBoxes && (mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutInfoBoxes\"></ng-template>\n </div>\n </mat-toolbar>\n</ng-template>\n\n<ng-template #filter>\n <mat-toolbar id=\"toolbar\" [color]=\"toolbarColor\" *ngIf=\"layoutToolbar || layoutRight\">\n <button type=\"button\" id=\"sidenav-button\" mat-icon-button *ngIf=\"withSidenav && (mediaService.isHandset$ | async) && ((sidenavService.openChanged$ | async) === false)\" (click)=\"sidenavService.toggle()\">\n <mat-icon>menu</mat-icon>\n </button>\n <button type=\"button\" id=\"back-button\" mat-icon-button *ngIf=\"withBackButton\" (click)=\"this.backButtonClicked.emit($event)\" [matTooltip]=\"backButtonLabel\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div id=\"toolbar-content-container\">\n <ng-container *ngIf=\"layoutToolbar\">\n <ng-template [ngTemplateOutlet]=\"layoutToolbar\"></ng-template>\n </ng-container>\n </div>\n <button type=\"button\" id=\"filter-button\" mat-icon-button (click)=\"sideFilter.toggle()\" *ngIf=\"sideFilter && (keepFilterButtonDisplayed || (mediaService.isHandset$ | async)) && layoutRight\" matTooltip=\"Afficher/Masquer les filtres\">\n <mat-icon>tune</mat-icon>\n </button>\n <button type=\"button\" id=\"close-button\" mat-icon-button *ngIf=\"withCloseButton\" (click)=\"this.closeButtonClicked.emit($event)\" [matTooltip]=\"closeButtonLabel\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-toolbar>\n <ng-container *ngIf=\"(layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n <mat-drawer-container *ngIf=\"layoutRight; else content\" autosize=\"true\">\n <mat-drawer-content>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </mat-drawer-content>\n <mat-drawer id=\"side-filter\" #sideFilter (closed)=\"sideFilterClosed.emit()\" (openedChange)=\"sideFilterOpened.emit()\" class=\"right\" position=\"end\" [attr.role]=\"(mediaService.isHandset$ | async) ? 'dialog' : 'navigation'\" [mode]=\"(mediaService.isHandset$ | async) ? 'over' : 'side'\" [opened]=\"(mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutRight\"></ng-template>\n </mat-drawer>\n </mat-drawer-container>\n</ng-template>\n", styles: ["layout{display:flex;flex-direction:column;position:absolute;inset:0}layout.no-left.no-right .main-content{padding:0}layout mat-sidenav-container{position:absolute;inset:0}layout mat-sidenav-content,layout mat-drawer-content{display:flex!important;flex-direction:column}layout mat-sidenav{width:200px}layout mat-drawer{width:220px}layout mat-drawer.right{padding:.3rem}layout mat-drawer.right [filters-title]{font-size:1.2rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:700;padding:.6rem;margin-bottom:.3rem}layout mat-drawer.right [filters-subtitle]{font-size:1rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:600;padding:.4rem .6rem;margin-bottom:.3rem;margin-top:.3rem}layout mat-drawer.right [icons-container]{display:flex;align-items:center}layout mat-drawer.right [filters-icon]{cursor:pointer;transition:color .3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-chip-list-wrapper{margin:0;max-height:20vh;overflow-y:auto}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{position:relative}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{padding:.5rem;margin:.1rem;font-size:.75rem;transition:.3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]){cursor:pointer}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]):hover:before{content:\"close\";display:flex;align-items:center;justify-content:center;position:absolute;inset:0;font-weight:700;font-size:1.2rem;cursor:pointer;transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group]{display:flex}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle{transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle mat-icon{margin-right:1rem}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-label-content{text-align:start}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-focus-overlay{height:100%}layout mat-drawer.right mat-form-field{width:100%}layout mat-drawer.right .mat-form-field-infix{width:inherit}layout mat-drawer.right.mat-drawer-side{box-shadow:-3px 0 5px -1px #0003;z-index:10}layout mat-drawer-container{flex:1}layout .mat-toolbar:not(.actions){display:flex;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:10}layout .mat-toolbar:not(.actions) #toolbar-content-container{display:flex;flex-grow:1;overflow:hidden}layout .mat-toolbar:not(.actions) [toolbar-title]{overflow:hidden;text-overflow:ellipsis}layout .mat-toolbar:not(.actions)>div{display:flex;align-items:center}layout .mat-toolbar#actions-toolbar{flex:0 0 auto;height:40px;font-size:inherit;padding-right:0}layout .mat-toolbar#actions-toolbar .info-boxes-container{display:flex;flex:1 1 auto;justify-content:flex-end}layout .mat-toolbar#actions-toolbar .info-boxes-container .info-box{display:flex;flex-grow:0;line-height:40px;padding-left:2rem;padding-right:2rem;box-shadow:-3px 0 5px -1px #0003}layout .mat-toolbar#actions-toolbar.bottom#actions-toolbar{display:flex;width:100%;justify-content:space-around}layout .mat-toolbar#actions-toolbar .primary-action-container{z-index:20}layout .main-content{position:relative;display:flex;flex:1 1 auto;overflow:hidden}layout .main-content .primary-action-container{position:absolute;z-index:20;opacity:.8;transition:.3s ease-in-out}layout .main-content .primary-action-container:hover{opacity:1}layout .main-content .primary-action-container.bottom{right:1rem;bottom:1rem}layout .main-content .primary-action-container:not(.bottom){top:1rem;left:1rem}layout ::-webkit-scrollbar{width:12px;height:12px}layout ::-webkit-scrollbar-thumb{-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;border-radius:6px}\n"] }]
110
+ }], ctorParameters: function () { return [{ type: i1.MediaService }, { type: i2.SidenavService }]; }, propDecorators: { toolbarColor: [{
111
+ type: Input
112
+ }], editorToolbarId: [{
113
+ type: Input
114
+ }], closeButtonLabel: [{
115
+ type: Input
116
+ }], backButtonLabel: [{
117
+ type: Input
118
+ }], layoutToolbarExternal: [{
119
+ type: Input
120
+ }], layoutPrimaryActionExternal: [{
121
+ type: Input
122
+ }], layoutActionsExternal: [{
123
+ type: Input
124
+ }], layoutInfoBoxesExternal: [{
125
+ type: Input
126
+ }], layoutRightExternal: [{
127
+ type: Input
128
+ }], closeButtonClicked: [{
129
+ type: Output
130
+ }], backButtonClicked: [{
131
+ type: Output
132
+ }], sideFilterClosed: [{
133
+ type: Output
134
+ }], sideFilterOpened: [{
135
+ type: Output
136
+ }], layoutToolbarContent: [{
137
+ type: ContentChild,
138
+ args: ['layoutToolbar']
139
+ }], layoutPrimaryActionContent: [{
140
+ type: ContentChild,
141
+ args: ['layoutPrimaryAction']
142
+ }], layoutActionsContent: [{
143
+ type: ContentChild,
144
+ args: ['layoutActions']
145
+ }], layoutInfoBoxesContent: [{
146
+ type: ContentChild,
147
+ args: ['layoutInfoBoxes']
148
+ }], layoutRightContent: [{
149
+ type: ContentChild,
150
+ args: ['layoutRight']
151
+ }], noRight: [{
152
+ type: HostBinding,
153
+ args: ['class.no-right']
154
+ }], sideFilter: [{
155
+ type: ViewChild,
156
+ args: ['sideFilter']
157
+ }], withEditorToolbar: [{
158
+ type: Input
159
+ }], withSidenav: [{
160
+ type: Input
161
+ }], keepFilterButtonDisplayed: [{
162
+ type: Input
163
+ }], withCloseButton: [{
164
+ type: Input
165
+ }], withBackButton: [{
166
+ type: Input
167
+ }], displayEditorToolbar: [{
168
+ type: Input
169
+ }] } });
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xheW91dC9zcmMvbGF5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3Byb2plY3RzL2xheW91dC9zcmMvbGF5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFlLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7Ozs7O0FBb0I3RCxNQUFNLE9BQU8sZUFBZTtJQWtIeEIsWUFDYyxZQUEwQixFQUMxQixjQUE4QjtRQUQ5QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFuSDVCLGlCQUFZLEdBQUcsU0FBUyxDQUFDO1FBQ3pCLG9CQUFlLEdBQUcsZ0JBQWdCLENBQUM7UUFFbkMscUJBQWdCLEdBQUcsUUFBUSxDQUFDO1FBQzVCLG9CQUFlLEdBQUcsUUFBUSxDQUFDO1FBUWpCLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFD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QUFTO3VCQUFDLFlBQVk7Z0JBMkJaLGlCQUFpQjtzQkFEM0IsS0FBSztnQkFZSyxXQUFXO3NCQURyQixLQUFLO2dCQVdLLHlCQUF5QjtzQkFEbkMsS0FBSztnQkFXSyxlQUFlO3NCQUR6QixLQUFLO2dCQVlLLGNBQWM7c0JBRHhCLEtBQUs7Z0JBWUssb0JBQW9CO3NCQUQ5QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXREcmF3ZXIsIE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IE1lZGlhU2VydmljZSB9IGZyb20gJ0BodWcvbmd4LWNvcmUnO1xuaW1wb3J0IHsgU2lkZW5hdlNlcnZpY2UgfSBmcm9tICdAaHVnL25neC1zaWRlbmF2JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsYXlvdXQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xheW91dC5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRTaWRlbmF2TW9kdWxlLFxuICAgICAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgICAgICBNYXRUb29sdGlwTW9kdWxlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyQ29sb3IgPSAncHJpbWFyeSc7XG4gICAgQElucHV0KCkgcHVibGljIGVkaXRvclRvb2xiYXJJZCA9ICdlZGl0b3ItdG9vbGJhcic7XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgY2xvc2VCdXR0b25MYWJlbCA9ICdGZXJtZXInO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBiYWNrQnV0dG9uTGFiZWwgPSAnUmV0b3VyJztcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBsYXlvdXRUb29sYmFyRXh0ZXJuYWw/OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgICBASW5wdXQoKSBwdWJsaWMgbGF5b3V0UHJpbWFyeUFjdGlvbkV4dGVybmFsPzogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gICAgQElucHV0KCkgcHVibGljIGxheW91dEFjdGlvbnNFeHRlcm5hbD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBsYXlvdXRJbmZvQm94ZXNFeHRlcm5hbD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBsYXlvdXRSaWdodEV4dGVybmFsPzogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGNsb3NlQnV0dG9uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGJhY2tCdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgc2lkZUZpbHRlckNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IHNpZGVGaWx0ZXJPcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBAQ29udGVudENoaWxkKCdsYXlvdXRUb29sYmFyJykgcHJvdGVjdGVkIGxheW91dFRvb2xiYXJDb250ZW50PzogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gICAgQENvbnRlbnRDaGlsZCgnbGF5b3V0UHJpbWFyeUFjdGlvbicpIHByb3RlY3RlZCBsYXlvdXRQcmltYXJ5QWN0aW9uQ29udGVudD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICAgIEBDb250ZW50Q2hpbGQoJ2xheW91dEFjdGlvbnMnKSBwcm90ZWN0ZWQgbGF5b3V0QWN0aW9uc0NvbnRlbnQ/OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgICBAQ29udGVudENoaWxkKCdsYXlvdXRJbmZvQm94ZXMnKSBwcm90ZWN0ZWQgbGF5b3V0SW5mb0JveGVzQ29udGVudD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICAgIEBDb250ZW50Q2hpbGQoJ2xheW91dFJpZ2h0JykgcHJvdGVjdGVkIGxheW91dFJpZ2h0Q29udGVudD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5uby1yaWdodCcpIHByb3RlY3RlZCBub1JpZ2h0ID0gZmFsc2U7XG5cbiAgICBAVmlld0NoaWxkKCdzaWRlRmlsdGVyJykgcHJvdGVjdGVkIHNpZGVGaWx0ZXI/OiBNYXREcmF3ZXI7XG5cbiAgICBwcml2YXRlIF93aXRoRWRpdG9yVG9vbGJhciA9IHRydWU7XG5cbiAgICBwdWJsaWMgZ2V0IGxheW91dFRvb2xiYXIoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXlvdXRUb29sYmFyRXh0ZXJuYWwgPz8gdGhpcy5sYXlvdXRUb29sYmFyQ29udGVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxheW91dFByaW1hcnlBY3Rpb24oKTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXlvdXRQcmltYXJ5QWN0aW9uRXh0ZXJuYWwgPz8gdGhpcy5sYXlvdXRQcmltYXJ5QWN0aW9uQ29udGVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxheW91dEFjdGlvbnMoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXlvdXRBY3Rpb25zRXh0ZXJuYWwgPz8gdGhpcy5sYXlvdXRBY3Rpb25zQ29udGVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxheW91dEluZm9Cb3hlcygpOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmxheW91dEluZm9Cb3hlc0V4dGVybmFsID8/IHRoaXMubGF5b3V0SW5mb0JveGVzQ29udGVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxheW91dFJpZ2h0KCk6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmxheW91dFJpZ2h0RXh0ZXJuYWwgPz8gdGhpcy5sYXlvdXRSaWdodENvbnRlbnQ7XG4gICAgICAgIHRoaXMubm9SaWdodCA9ICF2YWx1ZTtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCB3aXRoRWRpdG9yVG9vbGJhcih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX3dpdGhFZGl0b3JUb29sYmFyID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHdpdGhFZGl0b3JUb29sYmFyKCk6IEJvb2xlYW5JbnB1dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl93aXRoRWRpdG9yVG9vbGJhcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF93aXRoU2lkZW5hdiA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IHdpdGhTaWRlbmF2KHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fd2l0aFNpZGVuYXYgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgd2l0aFNpZGVuYXYoKTogQm9vbGVhbklucHV0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3dpdGhTaWRlbmF2O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2tlZXBGaWx0ZXJCdXR0b25EaXNwbGF5ZWQgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBrZWVwRmlsdGVyQnV0dG9uRGlzcGxheWVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fa2VlcEZpbHRlckJ1dHRvbkRpc3BsYXllZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBrZWVwRmlsdGVyQnV0dG9uRGlzcGxheWVkKCk6IEJvb2xlYW5JbnB1dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9rZWVwRmlsdGVyQnV0dG9uRGlzcGxheWVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3dpdGhDbG9zZUJ1dHRvbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCB3aXRoQ2xvc2VCdXR0b24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl93aXRoQ2xvc2VCdXR0b24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgd2l0aENsb3NlQnV0dG9uKCk6IEJvb2xlYW5JbnB1dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl93aXRoQ2xvc2VCdXR0b247XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfd2l0aEJhY2tCdXR0b24gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCB3aXRoQmFja0J1dHRvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX3dpdGhCYWNrQnV0dG9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHdpdGhCYWNrQnV0dG9uKCk6IEJvb2xlYW5JbnB1dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl93aXRoQmFja0J1dHRvbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9kaXNwbGF5RWRpdG9yVG9vbGJhciA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgZGlzcGxheUVkaXRvclRvb2xiYXIodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9kaXNwbGF5RWRpdG9yVG9vbGJhciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkaXNwbGF5RWRpdG9yVG9vbGJhcigpOiBCb29sZWFuSW5wdXQge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzcGxheUVkaXRvclRvb2xiYXI7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgbWVkaWFTZXJ2aWNlOiBNZWRpYVNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBzaWRlbmF2U2VydmljZTogU2lkZW5hdlNlcnZpY2VcbiAgICApIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2VTaWRlRmlsdGVyKCk6IHZvaWQge1xuICAgICAgICB2b2lkIHRoaXMuc2lkZUZpbHRlcj8uY2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlblNpZGVGaWx0ZXIoKTogdm9pZCB7XG4gICAgICAgIHZvaWQgdGhpcy5zaWRlRmlsdGVyPy5vcGVuKCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZpbHRlclwiPjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+XG4gICAgPGRpdiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInByaW1hcnktYWN0aW9uLWNvbnRhaW5lclwiIFtjbGFzcy5ib3R0b21dPVwiKG1lZGlhU2VydmljZS5pc0hhbmRzZXQkIHwgYXN5bmMpXCIgKm5nSWY9XCJsYXlvdXRQcmltYXJ5QWN0aW9uICYmICEoKGxheW91dEFjdGlvbnMgfHwgbGF5b3V0SW5mb0JveGVzKSAmJiAoKG1lZGlhU2VydmljZS5pc0hhbmRzZXQkIHwgYXN5bmMpID09PSBmYWxzZSkpXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGF5b3V0UHJpbWFyeUFjdGlvblwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIobWVkaWFTZXJ2aWNlLmlzSGFuZHNldCQgfCBhc3luYykgJiYgYWN0aW9uc1Rvb2xiYXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFjdGlvbnNUb29sYmFyXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2FjdGlvbnNUb29sYmFyPlxuICAgIDxtYXQtdG9vbGJhciBpZD1cImFjdGlvbnMtdG9vbGJhclwiIGNsYXNzPVwiYWN0aW9uc1wiIFtjb2xvcl09XCJ0b29sYmFyQ29sb3JcIiBbY2xhc3MuYm90dG9tXT1cIihtZWRpYVNlcnZpY2UuaXNIYW5kc2V0JCB8IGFzeW5jKVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInByaW1hcnktYWN0aW9uLWNvbnRhaW5lclwiICpuZ0lmPVwibGF5b3V0UHJpbWFyeUFjdGlvbiAmJiAobGF5b3V0QWN0aW9ucyB8fCBsYXlvdXRJbmZvQm94ZXMpICYmICgobWVkaWFTZXJ2aWNlLmlzSGFuZHNldCQgfCBhc3luYykgPT09IGZhbHNlKVwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxheW91dFByaW1hcnlBY3Rpb25cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYXlvdXRBY3Rpb25zXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGF5b3V0QWN0aW9uc1wiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5mby1ib3hlcy1jb250YWluZXJcIiAqbmdJZj1cImxheW91dEluZm9Cb3hlcyAmJiAobWVkaWFTZXJ2aWNlLmlzSGFuZHNldCQgfCBhc3luYykgPT09IGZhbHNlXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGF5b3V0SW5mb0JveGVzXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9tYXQtdG9vbGJhcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZmlsdGVyPlxuICAgIDxtYXQtdG9vbGJhciBpZD1cInRvb2xiYXJcIiBbY29sb3JdPVwidG9vbGJhckNvbG9yXCIgKm5nSWY9XCJsYXlvdXRUb29sYmFyIHx8IGxheW91dFJpZ2h0XCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGlkPVwic2lkZW5hdi1idXR0b25cIiBtYXQtaWNvbi1idXR0b24gKm5nSWY9XCJ3aXRoU2lkZW5hdiAmJiAobWVkaWFTZXJ2aWNlLmlzSGFuZHNldCQgfCBhc3luYykgJiYgKChzaWRlbmF2U2VydmljZS5vcGVuQ2hhbmdlZCQgfCBhc3luYykgPT09IGZhbHNlKVwiIChjbGljayk9XCJzaWRlbmF2U2VydmljZS50b2dnbGUoKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPm1lbnU8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgaWQ9XCJiYWNrLWJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAqbmdJZj1cIndpdGhCYWNrQnV0dG9uXCIgKGNsaWNrKT1cInRoaXMuYmFja0J1dHRvbkNsaWNrZWQuZW1pdCgkZXZlbnQpXCIgW21hdFRvb2x0aXBdPVwiYmFja0J1dHRvbkxhYmVsXCI+XG4gICAgICAgICAgICA8bWF0LWljb24+YXJyb3dfYmFjazwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8ZGl2IGlkPVwidG9vbGJhci1jb250ZW50LWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxheW91dFRvb2xiYXJcIj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGF5b3V0VG9vbGJhclwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGlkPVwiZmlsdGVyLWJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwic2lkZUZpbHRlci50b2dnbGUoKVwiICpuZ0lmPVwic2lkZUZpbHRlciAmJiAoa2VlcEZpbHRlckJ1dHRvbkRpc3BsYXllZCB8fCAobWVkaWFTZXJ2aWNlLmlzSGFuZHNldCQgfCBhc3luYykpICYmIGxheW91dFJpZ2h0XCIgbWF0VG9vbHRpcD1cIkFmZmljaGVyL01hc3F1ZXIgbGVzIGZpbHRyZXNcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj50dW5lPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGlkPVwiY2xvc2UtYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uICpuZ0lmPVwid2l0aENsb3NlQnV0dG9uXCIgKGNsaWNrKT1cInRoaXMuY2xvc2VCdXR0b25DbGlja2VkLmVtaXQoJGV2ZW50KVwiIFttYXRUb29sdGlwXT1cImNsb3NlQnV0dG9uTGFiZWxcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LXRvb2xiYXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihsYXlvdXRBY3Rpb25zIHx8IGxheW91dEluZm9Cb3hlcykgJiYgKChtZWRpYVNlcnZpY2UuaXNIYW5kc2V0JCB8IGFzeW5jKSA9PT0gZmFsc2UpXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhY3Rpb25zVG9vbGJhclwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxtYXQtZHJhd2VyLWNvbnRhaW5lciAqbmdJZj1cImxheW91dFJpZ2h0OyBlbHNlIGNvbnRlbnRcIiBhdXRvc2l6ZT1cInRydWVcIj5cbiAgICAgICAgPG1hdC1kcmF3ZXItY29udGVudD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbWF0LWRyYXdlci1jb250ZW50PlxuICAgICAgICA8bWF0LWRyYXdlciBpZD1cInNpZGUtZmlsdGVyXCIgI3NpZGVGaWx0ZXIgKGNsb3NlZCk9XCJzaWRlRmlsdGVyQ2xvc2VkLmVtaXQoKVwiIChvcGVuZWRDaGFuZ2UpPVwic2lkZUZpbHRlck9wZW5lZC5lbWl0KClcIiBjbGFzcz1cInJpZ2h0XCIgcG9zaXRpb249XCJlbmRcIiBbYXR0ci5yb2xlXT1cIihtZWRpYVNlcnZpY2UuaXNIYW5kc2V0JCB8IGFzeW5jKSA/ICdkaWFsb2cnIDogJ25hdmlnYXRpb24nXCIgW21vZGVdPVwiKG1lZGlhU2VydmljZS5pc0hhbmRzZXQkIHwgYXN5bmMpID8gJ292ZXInIDogJ3NpZGUnXCIgW29wZW5lZF09XCIobWVkaWFTZXJ2aWNlLmlzSGFuZHNldCQgfCBhc3luYykgPT09IGZhbHNlXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGF5b3V0UmlnaHRcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L21hdC1kcmF3ZXI+XG4gICAgPC9tYXQtZHJhd2VyLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -0,0 +1,184 @@
1
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import * as i3 from '@angular/common';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i0 from '@angular/core';
5
+ import { EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, ContentChild, HostBinding, ViewChild } from '@angular/core';
6
+ import * as i4 from '@angular/material/button';
7
+ import { MatButtonModule } from '@angular/material/button';
8
+ import * as i5 from '@angular/material/icon';
9
+ import { MatIconModule } from '@angular/material/icon';
10
+ import * as i6 from '@angular/material/sidenav';
11
+ import { MatSidenavModule } from '@angular/material/sidenav';
12
+ import * as i7 from '@angular/material/toolbar';
13
+ import { MatToolbarModule } from '@angular/material/toolbar';
14
+ import * as i8 from '@angular/material/tooltip';
15
+ import { MatTooltipModule } from '@angular/material/tooltip';
16
+ import * as i1 from '@hug/ngx-core';
17
+ import * as i2 from '@hug/ngx-sidenav';
18
+
19
+ class LayoutComponent {
20
+ constructor(mediaService, sidenavService) {
21
+ this.mediaService = mediaService;
22
+ this.sidenavService = sidenavService;
23
+ this.toolbarColor = 'primary';
24
+ this.editorToolbarId = 'editor-toolbar';
25
+ this.closeButtonLabel = 'Fermer';
26
+ this.backButtonLabel = 'Retour';
27
+ this.closeButtonClicked = new EventEmitter();
28
+ this.backButtonClicked = new EventEmitter();
29
+ this.sideFilterClosed = new EventEmitter();
30
+ this.sideFilterOpened = new EventEmitter();
31
+ this.noRight = false;
32
+ this._withEditorToolbar = true;
33
+ this._withSidenav = false;
34
+ this._keepFilterButtonDisplayed = true;
35
+ this._withCloseButton = false;
36
+ this._withBackButton = false;
37
+ this._displayEditorToolbar = true;
38
+ }
39
+ get layoutToolbar() {
40
+ var _a;
41
+ return (_a = this.layoutToolbarExternal) !== null && _a !== void 0 ? _a : this.layoutToolbarContent;
42
+ }
43
+ get layoutPrimaryAction() {
44
+ var _a;
45
+ return (_a = this.layoutPrimaryActionExternal) !== null && _a !== void 0 ? _a : this.layoutPrimaryActionContent;
46
+ }
47
+ get layoutActions() {
48
+ var _a;
49
+ return (_a = this.layoutActionsExternal) !== null && _a !== void 0 ? _a : this.layoutActionsContent;
50
+ }
51
+ get layoutInfoBoxes() {
52
+ var _a;
53
+ return (_a = this.layoutInfoBoxesExternal) !== null && _a !== void 0 ? _a : this.layoutInfoBoxesContent;
54
+ }
55
+ get layoutRight() {
56
+ var _a;
57
+ const value = (_a = this.layoutRightExternal) !== null && _a !== void 0 ? _a : this.layoutRightContent;
58
+ this.noRight = !value;
59
+ return value;
60
+ }
61
+ set withEditorToolbar(value) {
62
+ this._withEditorToolbar = coerceBooleanProperty(value);
63
+ }
64
+ get withEditorToolbar() {
65
+ return this._withEditorToolbar;
66
+ }
67
+ set withSidenav(value) {
68
+ this._withSidenav = coerceBooleanProperty(value);
69
+ }
70
+ get withSidenav() {
71
+ return this._withSidenav;
72
+ }
73
+ set keepFilterButtonDisplayed(value) {
74
+ this._keepFilterButtonDisplayed = coerceBooleanProperty(value);
75
+ }
76
+ get keepFilterButtonDisplayed() {
77
+ return this._keepFilterButtonDisplayed;
78
+ }
79
+ set withCloseButton(value) {
80
+ this._withCloseButton = coerceBooleanProperty(value);
81
+ }
82
+ get withCloseButton() {
83
+ return this._withCloseButton;
84
+ }
85
+ set withBackButton(value) {
86
+ this._withBackButton = coerceBooleanProperty(value);
87
+ }
88
+ get withBackButton() {
89
+ return this._withBackButton;
90
+ }
91
+ set displayEditorToolbar(value) {
92
+ this._displayEditorToolbar = coerceBooleanProperty(value);
93
+ }
94
+ get displayEditorToolbar() {
95
+ return this._displayEditorToolbar;
96
+ }
97
+ closeSideFilter() {
98
+ var _a;
99
+ void ((_a = this.sideFilter) === null || _a === void 0 ? void 0 : _a.close());
100
+ }
101
+ openSideFilter() {
102
+ var _a;
103
+ void ((_a = this.sideFilter) === null || _a === void 0 ? void 0 : _a.open());
104
+ }
105
+ }
106
+ LayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LayoutComponent, deps: [{ token: i1.MediaService }, { token: i2.SidenavService }], target: i0.ɵɵFactoryTarget.Component });
107
+ LayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LayoutComponent, isStandalone: true, selector: "layout", inputs: { toolbarColor: "toolbarColor", editorToolbarId: "editorToolbarId", closeButtonLabel: "closeButtonLabel", backButtonLabel: "backButtonLabel", layoutToolbarExternal: "layoutToolbarExternal", layoutPrimaryActionExternal: "layoutPrimaryActionExternal", layoutActionsExternal: "layoutActionsExternal", layoutInfoBoxesExternal: "layoutInfoBoxesExternal", layoutRightExternal: "layoutRightExternal", withEditorToolbar: "withEditorToolbar", withSidenav: "withSidenav", keepFilterButtonDisplayed: "keepFilterButtonDisplayed", withCloseButton: "withCloseButton", withBackButton: "withBackButton", displayEditorToolbar: "displayEditorToolbar" }, outputs: { closeButtonClicked: "closeButtonClicked", backButtonClicked: "backButtonClicked", sideFilterClosed: "sideFilterClosed", sideFilterOpened: "sideFilterOpened" }, host: { properties: { "class.no-right": "this.noRight" } }, queries: [{ propertyName: "layoutToolbarContent", first: true, predicate: ["layoutToolbar"], descendants: true }, { propertyName: "layoutPrimaryActionContent", first: true, predicate: ["layoutPrimaryAction"], descendants: true }, { propertyName: "layoutActionsContent", first: true, predicate: ["layoutActions"], descendants: true }, { propertyName: "layoutInfoBoxesContent", first: true, predicate: ["layoutInfoBoxes"], descendants: true }, { propertyName: "layoutRightContent", first: true, predicate: ["layoutRight"], descendants: true }], viewQueries: [{ propertyName: "sideFilter", first: true, predicate: ["sideFilter"], descendants: true }], ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"filter\"></ng-container>\n\n<ng-template #content>\n <div class=\"main-content\">\n <span class=\"primary-action-container\" [class.bottom]=\"(mediaService.isHandset$ | async)\" *ngIf=\"layoutPrimaryAction && !((layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false))\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-content></ng-content>\n </div>\n <ng-container *ngIf=\"(mediaService.isHandset$ | async) && actionsToolbar\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #actionsToolbar>\n <mat-toolbar id=\"actions-toolbar\" class=\"actions\" [color]=\"toolbarColor\" [class.bottom]=\"(mediaService.isHandset$ | async)\">\n <span class=\"primary-action-container\" *ngIf=\"layoutPrimaryAction && (layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-container *ngIf=\"layoutActions\">\n <ng-template [ngTemplateOutlet]=\"layoutActions\"></ng-template>\n </ng-container>\n <div class=\"info-boxes-container\" *ngIf=\"layoutInfoBoxes && (mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutInfoBoxes\"></ng-template>\n </div>\n </mat-toolbar>\n</ng-template>\n\n<ng-template #filter>\n <mat-toolbar id=\"toolbar\" [color]=\"toolbarColor\" *ngIf=\"layoutToolbar || layoutRight\">\n <button type=\"button\" id=\"sidenav-button\" mat-icon-button *ngIf=\"withSidenav && (mediaService.isHandset$ | async) && ((sidenavService.openChanged$ | async) === false)\" (click)=\"sidenavService.toggle()\">\n <mat-icon>menu</mat-icon>\n </button>\n <button type=\"button\" id=\"back-button\" mat-icon-button *ngIf=\"withBackButton\" (click)=\"this.backButtonClicked.emit($event)\" [matTooltip]=\"backButtonLabel\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div id=\"toolbar-content-container\">\n <ng-container *ngIf=\"layoutToolbar\">\n <ng-template [ngTemplateOutlet]=\"layoutToolbar\"></ng-template>\n </ng-container>\n </div>\n <button type=\"button\" id=\"filter-button\" mat-icon-button (click)=\"sideFilter.toggle()\" *ngIf=\"sideFilter && (keepFilterButtonDisplayed || (mediaService.isHandset$ | async)) && layoutRight\" matTooltip=\"Afficher/Masquer les filtres\">\n <mat-icon>tune</mat-icon>\n </button>\n <button type=\"button\" id=\"close-button\" mat-icon-button *ngIf=\"withCloseButton\" (click)=\"this.closeButtonClicked.emit($event)\" [matTooltip]=\"closeButtonLabel\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-toolbar>\n <ng-container *ngIf=\"(layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n <mat-drawer-container *ngIf=\"layoutRight; else content\" autosize=\"true\">\n <mat-drawer-content>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </mat-drawer-content>\n <mat-drawer id=\"side-filter\" #sideFilter (closed)=\"sideFilterClosed.emit()\" (openedChange)=\"sideFilterOpened.emit()\" class=\"right\" position=\"end\" [attr.role]=\"(mediaService.isHandset$ | async) ? 'dialog' : 'navigation'\" [mode]=\"(mediaService.isHandset$ | async) ? 'over' : 'side'\" [opened]=\"(mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutRight\"></ng-template>\n </mat-drawer>\n </mat-drawer-container>\n</ng-template>\n", styles: ["layout{display:flex;flex-direction:column;position:absolute;inset:0}layout.no-left.no-right .main-content{padding:0}layout mat-sidenav-container{position:absolute;inset:0}layout mat-sidenav-content,layout mat-drawer-content{display:flex!important;flex-direction:column}layout mat-sidenav{width:200px}layout mat-drawer{width:220px}layout mat-drawer.right{padding:.3rem}layout mat-drawer.right [filters-title]{font-size:1.2rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:700;padding:.6rem;margin-bottom:.3rem}layout mat-drawer.right [filters-subtitle]{font-size:1rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:600;padding:.4rem .6rem;margin-bottom:.3rem;margin-top:.3rem}layout mat-drawer.right [icons-container]{display:flex;align-items:center}layout mat-drawer.right [filters-icon]{cursor:pointer;transition:color .3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-chip-list-wrapper{margin:0;max-height:20vh;overflow-y:auto}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{position:relative}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{padding:.5rem;margin:.1rem;font-size:.75rem;transition:.3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]){cursor:pointer}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]):hover:before{content:\"close\";display:flex;align-items:center;justify-content:center;position:absolute;inset:0;font-weight:700;font-size:1.2rem;cursor:pointer;transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group]{display:flex}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle{transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle mat-icon{margin-right:1rem}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-label-content{text-align:start}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-focus-overlay{height:100%}layout mat-drawer.right mat-form-field{width:100%}layout mat-drawer.right .mat-form-field-infix{width:inherit}layout mat-drawer.right.mat-drawer-side{box-shadow:-3px 0 5px -1px #0003;z-index:10}layout mat-drawer-container{flex:1}layout .mat-toolbar:not(.actions){display:flex;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:10}layout .mat-toolbar:not(.actions) #toolbar-content-container{display:flex;flex-grow:1;overflow:hidden}layout .mat-toolbar:not(.actions) [toolbar-title]{overflow:hidden;text-overflow:ellipsis}layout .mat-toolbar:not(.actions)>div{display:flex;align-items:center}layout .mat-toolbar#actions-toolbar{flex:0 0 auto;height:40px;font-size:inherit;padding-right:0}layout .mat-toolbar#actions-toolbar .info-boxes-container{display:flex;flex:1 1 auto;justify-content:flex-end}layout .mat-toolbar#actions-toolbar .info-boxes-container .info-box{display:flex;flex-grow:0;line-height:40px;padding-left:2rem;padding-right:2rem;box-shadow:-3px 0 5px -1px #0003}layout .mat-toolbar#actions-toolbar.bottom#actions-toolbar{display:flex;width:100%;justify-content:space-around}layout .mat-toolbar#actions-toolbar .primary-action-container{z-index:20}layout .main-content{position:relative;display:flex;flex:1 1 auto;overflow:hidden}layout .main-content .primary-action-container{position:absolute;z-index:20;opacity:.8;transition:.3s ease-in-out}layout .main-content .primary-action-container:hover{opacity:1}layout .main-content .primary-action-container.bottom{right:1rem;bottom:1rem}layout .main-content .primary-action-container:not(.bottom){top:1rem;left:1rem}layout ::-webkit-scrollbar{width:12px;height:12px}layout ::-webkit-scrollbar-thumb{-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;border-radius:6px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatSidenavModule }, { kind: "component", type: i6.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i6.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i6.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i7.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LayoutComponent, decorators: [{
109
+ type: Component,
110
+ args: [{ selector: 'layout', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
111
+ CommonModule,
112
+ MatButtonModule,
113
+ MatIconModule,
114
+ MatSidenavModule,
115
+ MatToolbarModule,
116
+ MatTooltipModule
117
+ ], template: "<ng-container *ngTemplateOutlet=\"filter\"></ng-container>\n\n<ng-template #content>\n <div class=\"main-content\">\n <span class=\"primary-action-container\" [class.bottom]=\"(mediaService.isHandset$ | async)\" *ngIf=\"layoutPrimaryAction && !((layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false))\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-content></ng-content>\n </div>\n <ng-container *ngIf=\"(mediaService.isHandset$ | async) && actionsToolbar\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #actionsToolbar>\n <mat-toolbar id=\"actions-toolbar\" class=\"actions\" [color]=\"toolbarColor\" [class.bottom]=\"(mediaService.isHandset$ | async)\">\n <span class=\"primary-action-container\" *ngIf=\"layoutPrimaryAction && (layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-container *ngIf=\"layoutActions\">\n <ng-template [ngTemplateOutlet]=\"layoutActions\"></ng-template>\n </ng-container>\n <div class=\"info-boxes-container\" *ngIf=\"layoutInfoBoxes && (mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutInfoBoxes\"></ng-template>\n </div>\n </mat-toolbar>\n</ng-template>\n\n<ng-template #filter>\n <mat-toolbar id=\"toolbar\" [color]=\"toolbarColor\" *ngIf=\"layoutToolbar || layoutRight\">\n <button type=\"button\" id=\"sidenav-button\" mat-icon-button *ngIf=\"withSidenav && (mediaService.isHandset$ | async) && ((sidenavService.openChanged$ | async) === false)\" (click)=\"sidenavService.toggle()\">\n <mat-icon>menu</mat-icon>\n </button>\n <button type=\"button\" id=\"back-button\" mat-icon-button *ngIf=\"withBackButton\" (click)=\"this.backButtonClicked.emit($event)\" [matTooltip]=\"backButtonLabel\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div id=\"toolbar-content-container\">\n <ng-container *ngIf=\"layoutToolbar\">\n <ng-template [ngTemplateOutlet]=\"layoutToolbar\"></ng-template>\n </ng-container>\n </div>\n <button type=\"button\" id=\"filter-button\" mat-icon-button (click)=\"sideFilter.toggle()\" *ngIf=\"sideFilter && (keepFilterButtonDisplayed || (mediaService.isHandset$ | async)) && layoutRight\" matTooltip=\"Afficher/Masquer les filtres\">\n <mat-icon>tune</mat-icon>\n </button>\n <button type=\"button\" id=\"close-button\" mat-icon-button *ngIf=\"withCloseButton\" (click)=\"this.closeButtonClicked.emit($event)\" [matTooltip]=\"closeButtonLabel\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-toolbar>\n <ng-container *ngIf=\"(layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n <mat-drawer-container *ngIf=\"layoutRight; else content\" autosize=\"true\">\n <mat-drawer-content>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </mat-drawer-content>\n <mat-drawer id=\"side-filter\" #sideFilter (closed)=\"sideFilterClosed.emit()\" (openedChange)=\"sideFilterOpened.emit()\" class=\"right\" position=\"end\" [attr.role]=\"(mediaService.isHandset$ | async) ? 'dialog' : 'navigation'\" [mode]=\"(mediaService.isHandset$ | async) ? 'over' : 'side'\" [opened]=\"(mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutRight\"></ng-template>\n </mat-drawer>\n </mat-drawer-container>\n</ng-template>\n", styles: ["layout{display:flex;flex-direction:column;position:absolute;inset:0}layout.no-left.no-right .main-content{padding:0}layout mat-sidenav-container{position:absolute;inset:0}layout mat-sidenav-content,layout mat-drawer-content{display:flex!important;flex-direction:column}layout mat-sidenav{width:200px}layout mat-drawer{width:220px}layout mat-drawer.right{padding:.3rem}layout mat-drawer.right [filters-title]{font-size:1.2rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:700;padding:.6rem;margin-bottom:.3rem}layout mat-drawer.right [filters-subtitle]{font-size:1rem;display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;font-weight:600;padding:.4rem .6rem;margin-bottom:.3rem;margin-top:.3rem}layout mat-drawer.right [icons-container]{display:flex;align-items:center}layout mat-drawer.right [filters-icon]{cursor:pointer;transition:color .3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-chip-list-wrapper{margin:0;max-height:20vh;overflow-y:auto}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{position:relative}layout mat-drawer.right [filters-chip-list] .mat-standard-chip{padding:.5rem;margin:.1rem;font-size:.75rem;transition:.3s ease-in-out}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]){cursor:pointer}layout mat-drawer.right [filters-chip-list] .mat-standard-chip:not([disabled]):hover:before{content:\"close\";display:flex;align-items:center;justify-content:center;position:absolute;inset:0;font-weight:700;font-size:1.2rem;cursor:pointer;transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group]{display:flex}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle{transition:.3s ease-in-out}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle mat-icon{margin-right:1rem}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-label-content{text-align:start}layout mat-drawer.right [filters-toggle-group] .mat-button-toggle .mat-button-toggle-focus-overlay{height:100%}layout mat-drawer.right mat-form-field{width:100%}layout mat-drawer.right .mat-form-field-infix{width:inherit}layout mat-drawer.right.mat-drawer-side{box-shadow:-3px 0 5px -1px #0003;z-index:10}layout mat-drawer-container{flex:1}layout .mat-toolbar:not(.actions){display:flex;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:10}layout .mat-toolbar:not(.actions) #toolbar-content-container{display:flex;flex-grow:1;overflow:hidden}layout .mat-toolbar:not(.actions) [toolbar-title]{overflow:hidden;text-overflow:ellipsis}layout .mat-toolbar:not(.actions)>div{display:flex;align-items:center}layout .mat-toolbar#actions-toolbar{flex:0 0 auto;height:40px;font-size:inherit;padding-right:0}layout .mat-toolbar#actions-toolbar .info-boxes-container{display:flex;flex:1 1 auto;justify-content:flex-end}layout .mat-toolbar#actions-toolbar .info-boxes-container .info-box{display:flex;flex-grow:0;line-height:40px;padding-left:2rem;padding-right:2rem;box-shadow:-3px 0 5px -1px #0003}layout .mat-toolbar#actions-toolbar.bottom#actions-toolbar{display:flex;width:100%;justify-content:space-around}layout .mat-toolbar#actions-toolbar .primary-action-container{z-index:20}layout .main-content{position:relative;display:flex;flex:1 1 auto;overflow:hidden}layout .main-content .primary-action-container{position:absolute;z-index:20;opacity:.8;transition:.3s ease-in-out}layout .main-content .primary-action-container:hover{opacity:1}layout .main-content .primary-action-container.bottom{right:1rem;bottom:1rem}layout .main-content .primary-action-container:not(.bottom){top:1rem;left:1rem}layout ::-webkit-scrollbar{width:12px;height:12px}layout ::-webkit-scrollbar-thumb{-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;border-radius:6px}\n"] }]
118
+ }], ctorParameters: function () { return [{ type: i1.MediaService }, { type: i2.SidenavService }]; }, propDecorators: { toolbarColor: [{
119
+ type: Input
120
+ }], editorToolbarId: [{
121
+ type: Input
122
+ }], closeButtonLabel: [{
123
+ type: Input
124
+ }], backButtonLabel: [{
125
+ type: Input
126
+ }], layoutToolbarExternal: [{
127
+ type: Input
128
+ }], layoutPrimaryActionExternal: [{
129
+ type: Input
130
+ }], layoutActionsExternal: [{
131
+ type: Input
132
+ }], layoutInfoBoxesExternal: [{
133
+ type: Input
134
+ }], layoutRightExternal: [{
135
+ type: Input
136
+ }], closeButtonClicked: [{
137
+ type: Output
138
+ }], backButtonClicked: [{
139
+ type: Output
140
+ }], sideFilterClosed: [{
141
+ type: Output
142
+ }], sideFilterOpened: [{
143
+ type: Output
144
+ }], layoutToolbarContent: [{
145
+ type: ContentChild,
146
+ args: ['layoutToolbar']
147
+ }], layoutPrimaryActionContent: [{
148
+ type: ContentChild,
149
+ args: ['layoutPrimaryAction']
150
+ }], layoutActionsContent: [{
151
+ type: ContentChild,
152
+ args: ['layoutActions']
153
+ }], layoutInfoBoxesContent: [{
154
+ type: ContentChild,
155
+ args: ['layoutInfoBoxes']
156
+ }], layoutRightContent: [{
157
+ type: ContentChild,
158
+ args: ['layoutRight']
159
+ }], noRight: [{
160
+ type: HostBinding,
161
+ args: ['class.no-right']
162
+ }], sideFilter: [{
163
+ type: ViewChild,
164
+ args: ['sideFilter']
165
+ }], withEditorToolbar: [{
166
+ type: Input
167
+ }], withSidenav: [{
168
+ type: Input
169
+ }], keepFilterButtonDisplayed: [{
170
+ type: Input
171
+ }], withCloseButton: [{
172
+ type: Input
173
+ }], withBackButton: [{
174
+ type: Input
175
+ }], displayEditorToolbar: [{
176
+ type: Input
177
+ }] } });
178
+
179
+ /**
180
+ * Generated bundle index. Do not edit.
181
+ */
182
+
183
+ export { LayoutComponent };
184
+ //# sourceMappingURL=hug-ngx-layout.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hug-ngx-layout.mjs","sources":["../../../projects/layout/src/layout.component.ts","../../../projects/layout/src/layout.component.html","../../../projects/layout/src/hug-ngx-layout.ts"],"sourcesContent":["import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, HostBinding, Input, Output, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatDrawer, MatSidenavModule } from '@angular/material/sidenav';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MediaService } from '@hug/ngx-core';\nimport { SidenavService } from '@hug/ngx-sidenav';\n\n@Component({\n selector: 'layout',\n templateUrl: './layout.component.html',\n styleUrls: ['./layout.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatSidenavModule,\n MatToolbarModule,\n MatTooltipModule\n ]\n})\nexport class LayoutComponent {\n @Input() public toolbarColor = 'primary';\n @Input() public editorToolbarId = 'editor-toolbar';\n\n @Input() public closeButtonLabel = 'Fermer';\n @Input() public backButtonLabel = 'Retour';\n\n @Input() public layoutToolbarExternal?: TemplateRef<unknown>;\n @Input() public layoutPrimaryActionExternal?: TemplateRef<unknown>;\n @Input() public layoutActionsExternal?: TemplateRef<unknown>;\n @Input() public layoutInfoBoxesExternal?: TemplateRef<unknown>;\n @Input() public layoutRightExternal?: TemplateRef<unknown>;\n\n @Output() public readonly closeButtonClicked = new EventEmitter<MouseEvent>();\n @Output() public readonly backButtonClicked = new EventEmitter<MouseEvent>();\n @Output() public readonly sideFilterClosed = new EventEmitter<void>();\n @Output() public readonly sideFilterOpened = new EventEmitter<void>();\n\n @ContentChild('layoutToolbar') protected layoutToolbarContent?: TemplateRef<unknown>;\n @ContentChild('layoutPrimaryAction') protected layoutPrimaryActionContent?: TemplateRef<unknown>;\n @ContentChild('layoutActions') protected layoutActionsContent?: TemplateRef<unknown>;\n @ContentChild('layoutInfoBoxes') protected layoutInfoBoxesContent?: TemplateRef<unknown>;\n @ContentChild('layoutRight') protected layoutRightContent?: TemplateRef<unknown>;\n\n @HostBinding('class.no-right') protected noRight = false;\n\n @ViewChild('sideFilter') protected sideFilter?: MatDrawer;\n\n private _withEditorToolbar = true;\n\n public get layoutToolbar(): TemplateRef<unknown> | undefined {\n return this.layoutToolbarExternal ?? this.layoutToolbarContent;\n }\n\n public get layoutPrimaryAction(): TemplateRef<unknown> | undefined {\n return this.layoutPrimaryActionExternal ?? this.layoutPrimaryActionContent;\n }\n\n public get layoutActions(): TemplateRef<unknown> | undefined {\n return this.layoutActionsExternal ?? this.layoutActionsContent;\n }\n\n public get layoutInfoBoxes(): TemplateRef<unknown> | undefined {\n return this.layoutInfoBoxesExternal ?? this.layoutInfoBoxesContent;\n }\n\n public get layoutRight(): TemplateRef<unknown> | undefined {\n const value = this.layoutRightExternal ?? this.layoutRightContent;\n this.noRight = !value;\n return value;\n }\n\n @Input()\n public set withEditorToolbar(value: BooleanInput) {\n this._withEditorToolbar = coerceBooleanProperty(value);\n }\n\n public get withEditorToolbar(): BooleanInput {\n return this._withEditorToolbar;\n }\n\n private _withSidenav = false;\n\n @Input()\n public set withSidenav(value: BooleanInput) {\n this._withSidenav = coerceBooleanProperty(value);\n }\n\n public get withSidenav(): BooleanInput {\n return this._withSidenav;\n }\n\n private _keepFilterButtonDisplayed = true;\n @Input()\n public set keepFilterButtonDisplayed(value: BooleanInput) {\n this._keepFilterButtonDisplayed = coerceBooleanProperty(value);\n }\n\n public get keepFilterButtonDisplayed(): BooleanInput {\n return this._keepFilterButtonDisplayed;\n }\n\n private _withCloseButton = false;\n @Input()\n public set withCloseButton(value: BooleanInput) {\n this._withCloseButton = coerceBooleanProperty(value);\n }\n\n public get withCloseButton(): BooleanInput {\n return this._withCloseButton;\n }\n\n private _withBackButton = false;\n\n @Input()\n public set withBackButton(value: BooleanInput) {\n this._withBackButton = coerceBooleanProperty(value);\n }\n\n public get withBackButton(): BooleanInput {\n return this._withBackButton;\n }\n\n private _displayEditorToolbar = true;\n\n @Input()\n public set displayEditorToolbar(value: BooleanInput) {\n this._displayEditorToolbar = coerceBooleanProperty(value);\n }\n\n public get displayEditorToolbar(): BooleanInput {\n return this._displayEditorToolbar;\n }\n\n public constructor(\n protected mediaService: MediaService,\n protected sidenavService: SidenavService\n ) {\n }\n\n public closeSideFilter(): void {\n void this.sideFilter?.close();\n }\n\n public openSideFilter(): void {\n void this.sideFilter?.open();\n }\n}\n","<ng-container *ngTemplateOutlet=\"filter\"></ng-container>\n\n<ng-template #content>\n <div class=\"main-content\">\n <span class=\"primary-action-container\" [class.bottom]=\"(mediaService.isHandset$ | async)\" *ngIf=\"layoutPrimaryAction && !((layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false))\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-content></ng-content>\n </div>\n <ng-container *ngIf=\"(mediaService.isHandset$ | async) && actionsToolbar\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #actionsToolbar>\n <mat-toolbar id=\"actions-toolbar\" class=\"actions\" [color]=\"toolbarColor\" [class.bottom]=\"(mediaService.isHandset$ | async)\">\n <span class=\"primary-action-container\" *ngIf=\"layoutPrimaryAction && (layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-template [ngTemplateOutlet]=\"layoutPrimaryAction\"></ng-template>\n </span>\n <ng-container *ngIf=\"layoutActions\">\n <ng-template [ngTemplateOutlet]=\"layoutActions\"></ng-template>\n </ng-container>\n <div class=\"info-boxes-container\" *ngIf=\"layoutInfoBoxes && (mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutInfoBoxes\"></ng-template>\n </div>\n </mat-toolbar>\n</ng-template>\n\n<ng-template #filter>\n <mat-toolbar id=\"toolbar\" [color]=\"toolbarColor\" *ngIf=\"layoutToolbar || layoutRight\">\n <button type=\"button\" id=\"sidenav-button\" mat-icon-button *ngIf=\"withSidenav && (mediaService.isHandset$ | async) && ((sidenavService.openChanged$ | async) === false)\" (click)=\"sidenavService.toggle()\">\n <mat-icon>menu</mat-icon>\n </button>\n <button type=\"button\" id=\"back-button\" mat-icon-button *ngIf=\"withBackButton\" (click)=\"this.backButtonClicked.emit($event)\" [matTooltip]=\"backButtonLabel\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div id=\"toolbar-content-container\">\n <ng-container *ngIf=\"layoutToolbar\">\n <ng-template [ngTemplateOutlet]=\"layoutToolbar\"></ng-template>\n </ng-container>\n </div>\n <button type=\"button\" id=\"filter-button\" mat-icon-button (click)=\"sideFilter.toggle()\" *ngIf=\"sideFilter && (keepFilterButtonDisplayed || (mediaService.isHandset$ | async)) && layoutRight\" matTooltip=\"Afficher/Masquer les filtres\">\n <mat-icon>tune</mat-icon>\n </button>\n <button type=\"button\" id=\"close-button\" mat-icon-button *ngIf=\"withCloseButton\" (click)=\"this.closeButtonClicked.emit($event)\" [matTooltip]=\"closeButtonLabel\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-toolbar>\n <ng-container *ngIf=\"(layoutActions || layoutInfoBoxes) && ((mediaService.isHandset$ | async) === false)\">\n <ng-container *ngTemplateOutlet=\"actionsToolbar\"></ng-container>\n </ng-container>\n <mat-drawer-container *ngIf=\"layoutRight; else content\" autosize=\"true\">\n <mat-drawer-content>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </mat-drawer-content>\n <mat-drawer id=\"side-filter\" #sideFilter (closed)=\"sideFilterClosed.emit()\" (openedChange)=\"sideFilterOpened.emit()\" class=\"right\" position=\"end\" [attr.role]=\"(mediaService.isHandset$ | async) ? 'dialog' : 'navigation'\" [mode]=\"(mediaService.isHandset$ | async) ? 'over' : 'side'\" [opened]=\"(mediaService.isHandset$ | async) === false\">\n <ng-template [ngTemplateOutlet]=\"layoutRight\"></ng-template>\n </mat-drawer>\n </mat-drawer-container>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}