@pepperi-addons/ngx-lib 0.4.0-angular14.21 → 0.4.0-angular14.24
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/core/common/services/addon.service.d.ts +5 -8
- package/esm2020/core/common/services/addon.service.mjs +38 -35
- package/esm2020/page-layout/page-layout.component.mjs +6 -3
- package/esm2020/remote-loader/remote-loader.service.mjs +17 -14
- package/esm2020/side-bar/side-bar.component.mjs +8 -27
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs +5 -2
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +16 -13
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs +7 -26
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.mjs +37 -34
- package/fesm2015/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs +5 -2
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs +16 -13
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs +7 -26
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib.mjs +38 -35
- package/fesm2020/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/package.json +1 -1
- package/page-layout/page-layout.component.d.ts +2 -1
- package/remote-loader/remote-loader.service.d.ts +3 -3
- package/side-bar/side-bar.component.d.ts +2 -3
|
@@ -17,6 +17,7 @@ class PepSideBarComponent {
|
|
|
17
17
|
this.hostElement = hostElement;
|
|
18
18
|
this.renderer = renderer;
|
|
19
19
|
this.layoutService = layoutService;
|
|
20
|
+
this.position = 'start';
|
|
20
21
|
this.ignoreResize = false;
|
|
21
22
|
this.showHeader = true;
|
|
22
23
|
this.showFooter = false;
|
|
@@ -53,7 +54,7 @@ class PepSideBarComponent {
|
|
|
53
54
|
this.toggleButtonArrowName =
|
|
54
55
|
// state === 'open' ?
|
|
55
56
|
// (this.layoutService.isRtl() ? pepIconArrowRight.name : pepIconArrowLeft.name) :
|
|
56
|
-
(this.layoutService.isRtl() ? pepIconArrowLeft.name : pepIconArrowRight.name);
|
|
57
|
+
(this.layoutService.isRtl() || this.position === 'end' ? pepIconArrowLeft.name : pepIconArrowRight.name);
|
|
57
58
|
}
|
|
58
59
|
toggleState() {
|
|
59
60
|
this.setState(this.state === 'close' ? 'open' : 'close');
|
|
@@ -62,28 +63,6 @@ class PepSideBarComponent {
|
|
|
62
63
|
document.documentElement.style.setProperty(PepSideBarComponent.ONE_MULTI_BY_DIR_KEY, this.layoutService.isRtl() ? '1' : '-1');
|
|
63
64
|
this.setState(this.isLargeScreen ? 'open' : 'close');
|
|
64
65
|
}
|
|
65
|
-
setSideBarHeight(event) {
|
|
66
|
-
// const from = event.relatedTarget
|
|
67
|
-
// ? event.relatedTarget
|
|
68
|
-
// : event.fromElement;
|
|
69
|
-
// const to = event.target ? event.target : event.toElement;
|
|
70
|
-
// if (typeof from === 'undefined' || typeof to === 'undefined') {
|
|
71
|
-
// return;
|
|
72
|
-
// }
|
|
73
|
-
// this.isMouseIn = true;
|
|
74
|
-
// this.sideBarHeight = window.innerHeight - to.offsetTop + 'px';
|
|
75
|
-
}
|
|
76
|
-
mouseLeaveSideBar(event) {
|
|
77
|
-
// const from = event.relatedTarget
|
|
78
|
-
// ? event.relatedTarget
|
|
79
|
-
// : event.fromElement;
|
|
80
|
-
// const to = event.target ? event.target : event.toElement;
|
|
81
|
-
// if (typeof from === 'undefined' || typeof to === 'undefined') {
|
|
82
|
-
// return;
|
|
83
|
-
// }
|
|
84
|
-
// this.sideBarHeight = '100%';
|
|
85
|
-
// this.isMouseIn = false;
|
|
86
|
-
}
|
|
87
66
|
open() {
|
|
88
67
|
if (this.sidenav) {
|
|
89
68
|
this.sidenav.open();
|
|
@@ -120,14 +99,16 @@ class PepSideBarComponent {
|
|
|
120
99
|
}
|
|
121
100
|
PepSideBarComponent.ONE_MULTI_BY_DIR_KEY = '--pep-one-multi-by-dir';
|
|
122
101
|
PepSideBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepSideBarComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.PepLayoutService }], target: i0.ɵɵFactoryTarget.Component });
|
|
123
|
-
PepSideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepSideBarComponent, selector: "pep-side-bar", inputs: { ignoreResize: "ignoreResize", showHeader: "showHeader", showFooter: "showFooter", showToggle: "showToggle", useAsWebComponent: "useAsWebComponent" }, outputs: { stateChange: "stateChange" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: ["sidenav"], descendants: true }], ngImport: i0, template: "<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'is-open-state': !showToggle || state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button *ngIf=\"showToggle\" class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>", styles: [".pep-side-bar-container{height:100%}.pep-side-bar-container .toggle-side-bar-container{height:inherit;display:grid;grid-auto-flow:column;transition:transform ease-out .35s,width ease-out .35s;transform:translate(calc(var(--pep-one-multi-by-dir) * var(--pep-side-bar-width, 16rem)));width:calc((var(--pep-spacing-lg, 1rem) * 2) + 1px)}.pep-side-bar-container .toggle-side-bar-container.is-open-state{transition:transform ease-out .35s,width ease-out .35s;transform:unset;width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button{transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(180deg);margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out,margin-inline ease-out .35s;opacity:0;margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button{z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:calc(calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem)) - .75rem);transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(0);margin-inline:-.75rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out calc(.35s / 3),margin-inline ease-out .35s;opacity:1;margin-inline:unset;width:1px;padding-inline-start:var(--pep-spacing-lg, 1rem);margin-top:var(--pep-top-bar-spacing-top, 1.5rem)}.pep-side-bar-container .mat-sidenav-container{position:absolute;bottom:0;left:0;right:0;z-index:999;height:calc(100vh - var(--pep-header-height, 4rem));visibility:hidden}.pep-side-bar-container .mat-sidenav-container.mat-drawer-opened{visibility:unset}.pep-side-bar-container .mat-sidenav-container .mat-sidenav{max-width:calc(calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem)) + calc(var(--pep-spacing-lg, 1rem) * 2));padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 599px){.pep-side-bar-container .mat-sidenav-container .mat-sidenav{padding-inline:0}}.pep-side-bar-container .mat-sidenav-container .mat-sidenav .side-layout{max-width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem));width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem))}.pep-side-bar-container .side-layout{display:block;max-width:var(--pep-side-bar-width, 16rem);width:var(--pep-side-bar-width, 16rem);padding:0 var(--pep-spacing-lg, 1rem);overflow:auto}.pep-side-bar-container .side-layout .header-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));padding-top:var(--pep-top-bar-spacing-top, 1.5rem);z-index:2;position:sticky;top:0}.pep-side-bar-container .side-layout .header-content .content{height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;overflow:unset}.pep-side-bar-container .side-layout .footer-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem))}.pep-side-bar-container .side-layout .main-content{display:block;height:inherit;max-width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .side-layout .main-content .content{height:inherit}\n", ".pep-side-bar-container .toggle-side-bar-container .toggle-button-border{border-inline-end:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .mat-sidenav-container ::ng-deep .mat-drawer-backdrop.mat-drawer-shown{background-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .side-layout,.pep-side-bar-container .side-layout .header-content{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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: i1$1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }] });
|
|
102
|
+
PepSideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepSideBarComponent, selector: "pep-side-bar", inputs: { position: "position", ignoreResize: "ignoreResize", showHeader: "showHeader", showFooter: "showFooter", showToggle: "showToggle", useAsWebComponent: "useAsWebComponent" }, outputs: { stateChange: "stateChange" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: ["sidenav"], descendants: true }], ngImport: i0, template: "<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'end-position': position === 'end', 'is-open-state': !showToggle || state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button *ngIf=\"showToggle\" class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav [position]=\"position\" mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>", styles: [".pep-side-bar-container{height:100%}.pep-side-bar-container .toggle-side-bar-container{height:inherit;display:grid;grid-auto-flow:column;transition:transform ease-out .35s,width ease-out .35s;transform:translate(calc(var(--pep-one-multi-by-dir) * var(--pep-side-bar-width, 16rem)));width:calc((var(--pep-spacing-lg, 1rem) * 2) + 1px)}.pep-side-bar-container .toggle-side-bar-container.end-position.is-open-state .toggle-button,.pep-side-bar-container .toggle-side-bar-container.end-position.is-open-state .toggle-button-border{margin-inline:.25rem -3rem}.pep-side-bar-container .toggle-side-bar-container.end-position .toggle-button{margin-inline:.25rem -.75rem}.pep-side-bar-container .toggle-side-bar-container.end-position .toggle-button-border{padding-inline-start:unset;padding-inline-end:var(--pep-spacing-lg, 1rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state{transition:transform ease-out .35s,width ease-out .35s;transform:unset;width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button{transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(180deg);margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out,margin-inline ease-out .35s;opacity:0;margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button{z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:calc(calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem)) - .75rem);transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(0);margin-inline:-.75rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out calc(.35s / 3),margin-inline ease-out .35s;opacity:1;margin-inline:unset;width:1px;padding-inline-start:var(--pep-spacing-lg, 1rem);margin-top:var(--pep-top-bar-spacing-top, 1.5rem)}.pep-side-bar-container .mat-sidenav-container{position:absolute;bottom:0;left:0;right:0;z-index:999;height:calc(100vh - var(--pep-header-height, 4rem));visibility:hidden}.pep-side-bar-container .mat-sidenav-container.mat-drawer-opened{visibility:unset}.pep-side-bar-container .mat-sidenav-container .mat-sidenav{max-width:calc(calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem)) + calc(var(--pep-spacing-lg, 1rem) * 2));padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 599px){.pep-side-bar-container .mat-sidenav-container .mat-sidenav{padding-inline:0}}.pep-side-bar-container .mat-sidenav-container .mat-sidenav .side-layout{max-width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem));width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem))}.pep-side-bar-container .side-layout{display:block;max-width:var(--pep-side-bar-width, 16rem);width:var(--pep-side-bar-width, 16rem);padding:0 var(--pep-spacing-lg, 1rem);overflow:auto}.pep-side-bar-container .side-layout .header-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));padding-top:var(--pep-top-bar-spacing-top, 1.5rem);z-index:2;position:sticky;top:0}.pep-side-bar-container .side-layout .header-content .content{height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;overflow:unset}.pep-side-bar-container .side-layout .footer-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem))}.pep-side-bar-container .side-layout .main-content{display:block;height:inherit;max-width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .side-layout .main-content .content{height:inherit}\n", ".pep-side-bar-container .toggle-side-bar-container .toggle-button-border{border-inline-end:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .mat-sidenav-container ::ng-deep .mat-drawer-backdrop.mat-drawer-shown{background-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .side-layout,.pep-side-bar-container .side-layout .header-content{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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: i1$1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }] });
|
|
124
103
|
PepSideBarComponent.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepSideBarComponent });
|
|
125
104
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepSideBarComponent, decorators: [{
|
|
126
105
|
type: Component,
|
|
127
|
-
args: [{ selector: 'pep-side-bar', template: "<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'is-open-state': !showToggle || state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button *ngIf=\"showToggle\" class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>", styles: [".pep-side-bar-container{height:100%}.pep-side-bar-container .toggle-side-bar-container{height:inherit;display:grid;grid-auto-flow:column;transition:transform ease-out .35s,width ease-out .35s;transform:translate(calc(var(--pep-one-multi-by-dir) * var(--pep-side-bar-width, 16rem)));width:calc((var(--pep-spacing-lg, 1rem) * 2) + 1px)}.pep-side-bar-container .toggle-side-bar-container.is-open-state{transition:transform ease-out .35s,width ease-out .35s;transform:unset;width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button{transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(180deg);margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out,margin-inline ease-out .35s;opacity:0;margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button{z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:calc(calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem)) - .75rem);transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(0);margin-inline:-.75rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out calc(.35s / 3),margin-inline ease-out .35s;opacity:1;margin-inline:unset;width:1px;padding-inline-start:var(--pep-spacing-lg, 1rem);margin-top:var(--pep-top-bar-spacing-top, 1.5rem)}.pep-side-bar-container .mat-sidenav-container{position:absolute;bottom:0;left:0;right:0;z-index:999;height:calc(100vh - var(--pep-header-height, 4rem));visibility:hidden}.pep-side-bar-container .mat-sidenav-container.mat-drawer-opened{visibility:unset}.pep-side-bar-container .mat-sidenav-container .mat-sidenav{max-width:calc(calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem)) + calc(var(--pep-spacing-lg, 1rem) * 2));padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 599px){.pep-side-bar-container .mat-sidenav-container .mat-sidenav{padding-inline:0}}.pep-side-bar-container .mat-sidenav-container .mat-sidenav .side-layout{max-width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem));width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem))}.pep-side-bar-container .side-layout{display:block;max-width:var(--pep-side-bar-width, 16rem);width:var(--pep-side-bar-width, 16rem);padding:0 var(--pep-spacing-lg, 1rem);overflow:auto}.pep-side-bar-container .side-layout .header-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));padding-top:var(--pep-top-bar-spacing-top, 1.5rem);z-index:2;position:sticky;top:0}.pep-side-bar-container .side-layout .header-content .content{height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;overflow:unset}.pep-side-bar-container .side-layout .footer-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem))}.pep-side-bar-container .side-layout .main-content{display:block;height:inherit;max-width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .side-layout .main-content .content{height:inherit}\n", ".pep-side-bar-container .toggle-side-bar-container .toggle-button-border{border-inline-end:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .mat-sidenav-container ::ng-deep .mat-drawer-backdrop.mat-drawer-shown{background-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .side-layout,.pep-side-bar-container .side-layout .header-content{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}\n"] }]
|
|
106
|
+
args: [{ selector: 'pep-side-bar', template: "<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'end-position': position === 'end', 'is-open-state': !showToggle || state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button *ngIf=\"showToggle\" class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav [position]=\"position\" mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>", styles: [".pep-side-bar-container{height:100%}.pep-side-bar-container .toggle-side-bar-container{height:inherit;display:grid;grid-auto-flow:column;transition:transform ease-out .35s,width ease-out .35s;transform:translate(calc(var(--pep-one-multi-by-dir) * var(--pep-side-bar-width, 16rem)));width:calc((var(--pep-spacing-lg, 1rem) * 2) + 1px)}.pep-side-bar-container .toggle-side-bar-container.end-position.is-open-state .toggle-button,.pep-side-bar-container .toggle-side-bar-container.end-position.is-open-state .toggle-button-border{margin-inline:.25rem -3rem}.pep-side-bar-container .toggle-side-bar-container.end-position .toggle-button{margin-inline:.25rem -.75rem}.pep-side-bar-container .toggle-side-bar-container.end-position .toggle-button-border{padding-inline-start:unset;padding-inline-end:var(--pep-spacing-lg, 1rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state{transition:transform ease-out .35s,width ease-out .35s;transform:unset;width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button{transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(180deg);margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out,margin-inline ease-out .35s;opacity:0;margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button{z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:calc(calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem)) - .75rem);transition:margin-inline ease-out .35s,transform ease-out .35s;transform:rotate(0);margin-inline:-.75rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out calc(.35s / 3),margin-inline ease-out .35s;opacity:1;margin-inline:unset;width:1px;padding-inline-start:var(--pep-spacing-lg, 1rem);margin-top:var(--pep-top-bar-spacing-top, 1.5rem)}.pep-side-bar-container .mat-sidenav-container{position:absolute;bottom:0;left:0;right:0;z-index:999;height:calc(100vh - var(--pep-header-height, 4rem));visibility:hidden}.pep-side-bar-container .mat-sidenav-container.mat-drawer-opened{visibility:unset}.pep-side-bar-container .mat-sidenav-container .mat-sidenav{max-width:calc(calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem)) + calc(var(--pep-spacing-lg, 1rem) * 2));padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 599px){.pep-side-bar-container .mat-sidenav-container .mat-sidenav{padding-inline:0}}.pep-side-bar-container .mat-sidenav-container .mat-sidenav .side-layout{max-width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem));width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem))}.pep-side-bar-container .side-layout{display:block;max-width:var(--pep-side-bar-width, 16rem);width:var(--pep-side-bar-width, 16rem);padding:0 var(--pep-spacing-lg, 1rem);overflow:auto}.pep-side-bar-container .side-layout .header-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));padding-top:var(--pep-top-bar-spacing-top, 1.5rem);z-index:2;position:sticky;top:0}.pep-side-bar-container .side-layout .header-content .content{height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;overflow:unset}.pep-side-bar-container .side-layout .footer-content{height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem))}.pep-side-bar-container .side-layout .main-content{display:block;height:inherit;max-width:var(--pep-side-bar-width, 16rem)}.pep-side-bar-container .side-layout .main-content .content{height:inherit}\n", ".pep-side-bar-container .toggle-side-bar-container .toggle-button-border{border-inline-end:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .mat-sidenav-container ::ng-deep .mat-drawer-backdrop.mat-drawer-shown{background-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}.pep-side-bar-container .side-layout,.pep-side-bar-container .side-layout .header-content{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}\n"] }]
|
|
128
107
|
}, {
|
|
129
108
|
type: Injectable
|
|
130
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.PepLayoutService }]; }, propDecorators: {
|
|
109
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.PepLayoutService }]; }, propDecorators: { position: [{
|
|
110
|
+
type: Input
|
|
111
|
+
}], ignoreResize: [{
|
|
131
112
|
type: Input
|
|
132
113
|
}], showHeader: [{
|
|
133
114
|
type: Input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-side-bar.mjs","sources":["../../../projects/ngx-lib/side-bar/side-bar.component.ts","../../../projects/ngx-lib/side-bar/side-bar.component.html","../../../projects/ngx-lib/side-bar/side-bar.module.ts","../../../projects/ngx-lib/side-bar/public-api.ts","../../../projects/ngx-lib/side-bar/pepperi-addons-ngx-lib-side-bar.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n Injectable,\n Input,\n Output,\n EventEmitter,\n ViewChild,\n ElementRef,\n Renderer2,\n} from '@angular/core';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport {\n trigger,\n state,\n style,\n transition,\n animate,\n} from '@angular/animations';\nimport {\n PepCustomizationService,\n PepLayoutService,\n PepScreenSizeType,\n} from '@pepperi-addons/ngx-lib';\nimport { IPepSideBarStateChangeEvent, PepSideBarStateType } from './side-bar.model';\nimport { pepIconArrowLeft, pepIconArrowRight } from '@pepperi-addons/ngx-lib/icon';\n\n@Component({\n selector: 'pep-side-bar',\n templateUrl: './side-bar.component.html',\n styleUrls: ['./side-bar.component.scss', './side-bar.component.theme.scss']\n})\n@Injectable()\nexport class PepSideBarComponent implements OnInit {\n static ONE_MULTI_BY_DIR_KEY = '--pep-one-multi-by-dir';\n\n @Input() ignoreResize = false;\n @Input() showHeader = true;\n @Input() showFooter = false;\n @Input() showToggle = true;\n\n private _useAsWebComponent = false;\n private readonly _animationTime = 350; // milliseconds.\n\n state: PepSideBarStateType = 'open';\n toggleButtonArrowName: string = pepIconArrowRight.name;\n isLargeScreen = true;\n\n @Input()\n set useAsWebComponent(value: boolean) {\n if (value) {\n this.exportFunctionsOnHostElement();\n }\n }\n get useAsWebComponent(): boolean {\n return this._useAsWebComponent;\n }\n\n @Output()\n stateChange: EventEmitter<IPepSideBarStateChangeEvent> = new EventEmitter<IPepSideBarStateChangeEvent>();\n\n @ViewChild('sidenav') sidenav: MatSidenav;\n\n isMouseIn = false;\n sideBarHeight = '100%';\n\n screenSize: PepScreenSizeType;\n PepScreenSizeType = PepScreenSizeType;\n\n constructor(\n private hostElement: ElementRef,\n private renderer: Renderer2,\n public layoutService: PepLayoutService\n ) {\n this.layoutService.onResize$.subscribe((size: PepScreenSizeType) => {\n this.screenSize = size;\n this.isLargeScreen = size < PepScreenSizeType.MD;\n });\n }\n\n private exportFunctionsOnHostElement() {\n // This is for web component usage for use those functions.\n this.hostElement.nativeElement.open = this.open.bind(this);\n this.hostElement.nativeElement.close = this.close.bind(this);\n }\n\n private setState(state: PepSideBarStateType) {\n this.state = state;\n this.toggleButtonArrowName =\n // state === 'open' ?\n // (this.layoutService.isRtl() ? pepIconArrowRight.name : pepIconArrowLeft.name) :\n (this.layoutService.isRtl() ? pepIconArrowLeft.name : pepIconArrowRight.name);\n }\n\n private toggleState() {\n this.setState(this.state === 'close' ? 'open' : 'close');\n }\n\n ngOnInit() {\n document.documentElement.style.setProperty(PepSideBarComponent.ONE_MULTI_BY_DIR_KEY, this.layoutService.isRtl() ? '1' : '-1');\n this.setState(this.isLargeScreen ? 'open' : 'close');\n }\n\n setSideBarHeight(event) {\n // const from = event.relatedTarget\n // ? event.relatedTarget\n // : event.fromElement;\n // const to = event.target ? event.target : event.toElement;\n\n // if (typeof from === 'undefined' || typeof to === 'undefined') {\n // return;\n // }\n // this.isMouseIn = true;\n\n // this.sideBarHeight = window.innerHeight - to.offsetTop + 'px';\n }\n\n mouseLeaveSideBar(event) {\n // const from = event.relatedTarget\n // ? event.relatedTarget\n // : event.fromElement;\n // const to = event.target ? event.target : event.toElement;\n\n // if (typeof from === 'undefined' || typeof to === 'undefined') {\n // return;\n // }\n // this.sideBarHeight = '100%';\n // this.isMouseIn = false;\n }\n\n open() {\n if (this.sidenav) {\n this.sidenav.open();\n }\n\n this.state = 'open';\n }\n\n close() {\n if (this.sidenav) {\n this.sidenav.close();\n }\n\n this.state = 'close';\n }\n\n toggle() {\n if (this.sidenav) {\n // const isOpen = this.sidenav.opened;\n this.sidenav.toggle();\n }\n\n this.toggleState();\n }\n\n toggleSideWrapper() {\n this.toggleState();\n // Raise event after animation finish.\n setTimeout(() => {\n this.stateChange.emit({ state: this.state });\n }, this._animationTime);\n }\n\n toggleSidenav(isOpen: boolean) {\n this.setState(isOpen ? 'open' : 'close');\n // Raise event after animation finish.\n setTimeout(() => {\n this.stateChange.emit({ state: this.state });\n }, this._animationTime);\n }\n}\n","<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'is-open-state': !showToggle || state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button *ngIf=\"showToggle\" class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSidenavModule } from '@angular/material/sidenav';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemClose,\n} from '@pepperi-addons/ngx-lib/icon';\n\nimport { PepSideBarComponent } from './side-bar.component';\n\n@NgModule({\n imports: [\n CommonModule,\n // Material modules,\n MatCommonModule,\n MatIconModule,\n MatSidenavModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n ],\n exports: [PepSideBarComponent],\n declarations: [PepSideBarComponent],\n})\nexport class PepSideBarModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([pepIconSystemClose]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/side-bar\n */\nexport * from './side-bar.module';\nexport * from './side-bar.component';\nexport * from './side-bar.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i5","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-side-bar.mjs","sources":["../../../projects/ngx-lib/side-bar/side-bar.component.ts","../../../projects/ngx-lib/side-bar/side-bar.component.html","../../../projects/ngx-lib/side-bar/side-bar.module.ts","../../../projects/ngx-lib/side-bar/public-api.ts","../../../projects/ngx-lib/side-bar/pepperi-addons-ngx-lib-side-bar.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n Injectable,\n Input,\n Output,\n EventEmitter,\n ViewChild,\n ElementRef,\n Renderer2,\n} from '@angular/core';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport {\n PepCustomizationService,\n PepLayoutService,\n PepScreenSizeType,\n} from '@pepperi-addons/ngx-lib';\nimport { IPepSideBarStateChangeEvent, PepSideBarStateType } from './side-bar.model';\nimport { pepIconArrowLeft, pepIconArrowRight } from '@pepperi-addons/ngx-lib/icon';\n\n@Component({\n selector: 'pep-side-bar',\n templateUrl: './side-bar.component.html',\n styleUrls: ['./side-bar.component.scss', './side-bar.component.theme.scss']\n})\n@Injectable()\nexport class PepSideBarComponent implements OnInit {\n static ONE_MULTI_BY_DIR_KEY = '--pep-one-multi-by-dir';\n\n @Input() position: 'start' | 'end' = 'start';\n @Input() ignoreResize = false;\n @Input() showHeader = true;\n @Input() showFooter = false;\n @Input() showToggle = true;\n\n private _useAsWebComponent = false;\n private readonly _animationTime = 350; // milliseconds.\n\n state: PepSideBarStateType = 'open';\n toggleButtonArrowName: string = pepIconArrowRight.name;\n isLargeScreen = true;\n\n @Input()\n set useAsWebComponent(value: boolean) {\n if (value) {\n this.exportFunctionsOnHostElement();\n }\n }\n get useAsWebComponent(): boolean {\n return this._useAsWebComponent;\n }\n\n @Output()\n stateChange: EventEmitter<IPepSideBarStateChangeEvent> = new EventEmitter<IPepSideBarStateChangeEvent>();\n\n @ViewChild('sidenav') sidenav: MatSidenav;\n\n isMouseIn = false;\n sideBarHeight = '100%';\n\n screenSize: PepScreenSizeType;\n PepScreenSizeType = PepScreenSizeType;\n\n constructor(\n private hostElement: ElementRef,\n private renderer: Renderer2,\n public layoutService: PepLayoutService\n ) {\n this.layoutService.onResize$.subscribe((size: PepScreenSizeType) => {\n this.screenSize = size;\n this.isLargeScreen = size < PepScreenSizeType.MD;\n });\n }\n\n private exportFunctionsOnHostElement() {\n // This is for web component usage for use those functions.\n this.hostElement.nativeElement.open = this.open.bind(this);\n this.hostElement.nativeElement.close = this.close.bind(this);\n }\n\n private setState(state: PepSideBarStateType) {\n this.state = state;\n this.toggleButtonArrowName =\n // state === 'open' ?\n // (this.layoutService.isRtl() ? pepIconArrowRight.name : pepIconArrowLeft.name) :\n (this.layoutService.isRtl() || this.position === 'end' ? pepIconArrowLeft.name : pepIconArrowRight.name);\n }\n\n private toggleState() {\n this.setState(this.state === 'close' ? 'open' : 'close');\n }\n\n ngOnInit() {\n document.documentElement.style.setProperty(PepSideBarComponent.ONE_MULTI_BY_DIR_KEY, this.layoutService.isRtl() ? '1' : '-1');\n this.setState(this.isLargeScreen ? 'open' : 'close');\n }\n\n open() {\n if (this.sidenav) {\n this.sidenav.open();\n }\n\n this.state = 'open';\n }\n\n close() {\n if (this.sidenav) {\n this.sidenav.close();\n }\n\n this.state = 'close';\n }\n\n toggle() {\n if (this.sidenav) {\n // const isOpen = this.sidenav.opened;\n this.sidenav.toggle();\n }\n\n this.toggleState();\n }\n\n toggleSideWrapper() {\n this.toggleState();\n // Raise event after animation finish.\n setTimeout(() => {\n this.stateChange.emit({ state: this.state });\n }, this._animationTime);\n }\n\n toggleSidenav(isOpen: boolean) {\n this.setState(isOpen ? 'open' : 'close');\n // Raise event after animation finish.\n setTimeout(() => {\n this.stateChange.emit({ state: this.state });\n }, this._animationTime);\n }\n}\n","<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'end-position': position === 'end', 'is-open-state': !showToggle || state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button *ngIf=\"showToggle\" class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav [position]=\"position\" mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSidenavModule } from '@angular/material/sidenav';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemClose,\n} from '@pepperi-addons/ngx-lib/icon';\n\nimport { PepSideBarComponent } from './side-bar.component';\n\n@NgModule({\n imports: [\n CommonModule,\n // Material modules,\n MatCommonModule,\n MatIconModule,\n MatSidenavModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n ],\n exports: [PepSideBarComponent],\n declarations: [PepSideBarComponent],\n})\nexport class PepSideBarModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([pepIconSystemClose]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/side-bar\n */\nexport * from './side-bar.module';\nexport * from './side-bar.component';\nexport * from './side-bar.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i5","i1"],"mappings":"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"}
|
|
@@ -2368,7 +2368,7 @@ class PepAddonService {
|
|
|
2368
2368
|
this.fileService = fileService;
|
|
2369
2369
|
this.route = route;
|
|
2370
2370
|
this.PAGES_ADDON_UUID = '50062e0c-9967-4ed4-9102-f2bc50602d41';
|
|
2371
|
-
|
|
2371
|
+
// private readonly ADDON_ASSETS_PATH_KEY = 'AddonAssetsPath';
|
|
2372
2372
|
this.ADDONS_DICTIONARY_ASSETS_PATH_KEY = 'AddonsDictionaryAssetsPath';
|
|
2373
2373
|
this.ADDON_API_RELATIVE_PATH = '/addons/api';
|
|
2374
2374
|
this.ADDON_API_ASYNC_RELATIVE_PATH = `${this.ADDON_API_RELATIVE_PATH}/async`;
|
|
@@ -2382,25 +2382,23 @@ class PepAddonService {
|
|
|
2382
2382
|
? this.ADDON_API_ASYNC_RELATIVE_PATH
|
|
2383
2383
|
: this.ADDON_API_RELATIVE_PATH;
|
|
2384
2384
|
}
|
|
2385
|
-
getAddonStaticFolder(
|
|
2386
|
-
if (
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
}
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
}
|
|
2385
|
+
getAddonStaticFolder(addonUUID) {
|
|
2386
|
+
// if (addonUUID.length > 0) {
|
|
2387
|
+
const addonsDictionary = this.sessionService.getObject(this.ADDONS_DICTIONARY_ASSETS_PATH_KEY);
|
|
2388
|
+
return addonsDictionary && addonsDictionary[addonUUID] ? addonsDictionary[addonUUID] : '';
|
|
2389
|
+
// } else {
|
|
2390
|
+
// return this.sessionService.getObject(this.ADDON_ASSETS_PATH_KEY) || '';
|
|
2391
|
+
// }
|
|
2393
2392
|
}
|
|
2394
|
-
setAddonStaticFolder(path,
|
|
2393
|
+
setAddonStaticFolder(path, addonUUID) {
|
|
2395
2394
|
var _a;
|
|
2396
|
-
if (
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
}
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
}
|
|
2395
|
+
// if (addonUUID.length > 0) {
|
|
2396
|
+
const addonsDictionary = (_a = this.sessionService.getObject(this.ADDONS_DICTIONARY_ASSETS_PATH_KEY)) !== null && _a !== void 0 ? _a : {};
|
|
2397
|
+
addonsDictionary[addonUUID] = path;
|
|
2398
|
+
this.sessionService.setObject(this.ADDONS_DICTIONARY_ASSETS_PATH_KEY, addonsDictionary);
|
|
2399
|
+
// } else {
|
|
2400
|
+
// return this.sessionService.setObject(this.ADDON_ASSETS_PATH_KEY, path);
|
|
2401
|
+
// }
|
|
2404
2402
|
}
|
|
2405
2403
|
getServerBaseUrl(addonUUID, fileName = '', isAsync = false, localhostPort = 4500) {
|
|
2406
2404
|
const fileToAdd = fileName.length > 0 ? `/${fileName}` : '';
|
|
@@ -2441,8 +2439,8 @@ class PepAddonService {
|
|
|
2441
2439
|
this.loaderService.hide();
|
|
2442
2440
|
});
|
|
2443
2441
|
}
|
|
2444
|
-
getNgxLibTranslationResource(
|
|
2445
|
-
const addonStaticFolder = this.getAddonStaticFolder(
|
|
2442
|
+
getNgxLibTranslationResource(addonUUID, libName = 'ngx-lib') {
|
|
2443
|
+
const addonStaticFolder = this.getAddonStaticFolder(addonUUID);
|
|
2446
2444
|
const translationsPath = this.fileService.getAssetsTranslationsPath(addonStaticFolder, libName);
|
|
2447
2445
|
const translationsSuffix = this.fileService.getAssetsTranslationsSuffix(libName);
|
|
2448
2446
|
return {
|
|
@@ -2450,8 +2448,8 @@ class PepAddonService {
|
|
|
2450
2448
|
suffix: translationsSuffix,
|
|
2451
2449
|
};
|
|
2452
2450
|
}
|
|
2453
|
-
getAddonTranslationResource(
|
|
2454
|
-
const addonStaticFolder = this.getAddonStaticFolder(
|
|
2451
|
+
getAddonTranslationResource(addonUUID) {
|
|
2452
|
+
const addonStaticFolder = this.getAddonStaticFolder(addonUUID);
|
|
2455
2453
|
const defaultSubFolder = 'assets/i18n/';
|
|
2456
2454
|
return {
|
|
2457
2455
|
prefix: addonStaticFolder.length > 0 ? `${addonStaticFolder}${defaultSubFolder}` : `/${defaultSubFolder}`,
|
|
@@ -2464,24 +2462,29 @@ class PepAddonService {
|
|
|
2464
2462
|
getPagesAddonUUID() {
|
|
2465
2463
|
return this.PAGES_ADDON_UUID;
|
|
2466
2464
|
}
|
|
2467
|
-
// Deprecated need to delete in next major.
|
|
2468
|
-
static createDefaultMultiTranslateLoader(
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2465
|
+
// // Deprecated need to delete in next major.
|
|
2466
|
+
// public static createDefaultMultiTranslateLoader(
|
|
2467
|
+
// http: HttpClient,
|
|
2468
|
+
// fileService: PepFileService,
|
|
2469
|
+
// addonService: PepAddonService,
|
|
2470
|
+
// addonUUID = ''
|
|
2471
|
+
// ) {
|
|
2472
|
+
// const ngxLibTranslationResource = addonService.getNgxLibTranslationResource(addonUUID);
|
|
2473
|
+
// const addonTranslationResource = addonService.getAddonTranslationResource(addonUUID);
|
|
2474
|
+
// return addonService.translateService.createMultiTranslateLoader([
|
|
2475
|
+
// ngxLibTranslationResource,
|
|
2476
|
+
// addonTranslationResource
|
|
2477
|
+
// ]);
|
|
2478
|
+
// }
|
|
2479
|
+
static createMultiTranslateLoader(addonUUID, addonService, libsName = ['ngx-lib']) {
|
|
2477
2480
|
const ngxLibTranslationResources = [];
|
|
2478
2481
|
if ((libsName === null || libsName === void 0 ? void 0 : libsName.length) > 0) {
|
|
2479
2482
|
for (let index = 0; index < libsName.length; index++) {
|
|
2480
2483
|
const libName = libsName[index];
|
|
2481
|
-
ngxLibTranslationResources.push(addonService.getNgxLibTranslationResource(
|
|
2484
|
+
ngxLibTranslationResources.push(addonService.getNgxLibTranslationResource(addonUUID, libName));
|
|
2482
2485
|
}
|
|
2483
2486
|
}
|
|
2484
|
-
const addonTranslationResource = addonService.getAddonTranslationResource(
|
|
2487
|
+
const addonTranslationResource = addonService.getAddonTranslationResource(addonUUID);
|
|
2485
2488
|
return addonService.translateService.createMultiTranslateLoader([
|
|
2486
2489
|
...ngxLibTranslationResources,
|
|
2487
2490
|
addonTranslationResource
|