@progressio_resources/gravity-design-system 3.6.18 → 3.6.19
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/esm2022/lib/layout/gravity-header/gravity-header.component.mjs +3 -3
- package/esm2022/lib/layout/gravity-menu/gravity-menu.component.mjs +6 -3
- package/fesm2022/progressio_resources-gravity-design-system.mjs +7 -4
- package/fesm2022/progressio_resources-gravity-design-system.mjs.map +1 -1
- package/lib/layout/gravity-menu/gravity-menu.component.d.ts +1 -0
- package/package.json +1 -1
- package/src/lib/assets/json/icons.json +24 -0
|
@@ -37,11 +37,11 @@ export class GravityHeaderComponent {
|
|
|
37
37
|
return this.resolution === 'xs' || this.resolution === 'sm' || this.resolution === 'md';
|
|
38
38
|
}
|
|
39
39
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityHeaderComponent, selector: "gravity-header", inputs: { title: "title", logoUrl: "logoUrl", longTitle: "longTitle", backButton: "backButton", breadCrumb: "breadCrumb", language: "language", notifications: "notifications", resolution: "resolution", userNotifications: "userNotifications", isMenuOpen: "isMenuOpen" }, outputs: { backButtonResponse: "backButtonResponse", toggleMenuResponse: "toggleMenuResponse", viewedNotificationsResponse: "viewedNotificationsResponse" }, ngImport: i0, template: "<div class=\"gravity-header\" [class.mobile]=\"isMobile()\">\n <section class=\"first-level\" [class.long-title]=\"longTitle\">\n <svg-icon *ngIf=\"isMobile() && logoUrl && !backButton\" class=\"logo-header\" [src]=\"logoUrl\"/>\n\n <div *ngIf=\"backButton && breadCrumb?.list?.length < 1\"\n class=\"back-button\" [class.pressed]=\"isBackButtonPressed\"\n (mousedown)=\"isBackButtonPressed = true\" (mouseup)=\"isBackButtonPressed = false\" (click)=\"backAction()\"\n (mouseleave)=\"isBackButtonPressed = false\" (touchstart)=\"isBackButtonPressed = true\">\n\n <gravity-icon [style.--icon-color]=\"'var(--back-button-color)'\" [iconSize]=\"'sm-12'\" [iconName]=\"'arrow-left'\"/>\n <span class=\"'hr-label md-regular')\">{{ language === 'en' ? 'Back' : 'Atr\u00E1s' }}</span>\n </div>\n\n <div *ngIf=\"breadCrumb?.list?.length > 0 && (resolution === 'lg' || resolution === 'xl' )\" class=\"breadcrumb\">\n <gravity-icon *ngIf=\"breadCrumb.icon\" class=\"gravity-margin-right-xs\" [iconSize]=\"'md-16'\"\n [style.--icon-color]=\"'var(--breadcrumb-button-base-primary)'\" [iconName]=\"breadCrumb.icon\"/>\n\n <ng-container *ngFor=\"let item of breadCrumb.list; let last = last; let i = index\">\n <div class=\"breadcrumb-item\" [class.is-last]=\"last\" [class.has-prev]=\"i !== 0\"\n (mousedown)=\"item.isPressed = true\" (mouseup)=\"item.isPressed = false\"\n (mouseleave)=\"item.isPressed = false\" (touchstart)=\"item.isPressed = true\">\n <span [ngClass]=\"'hr-body ' + (resolution === 'xl' ? 'md-regular' : 'sm-regular')\"\n [class.pressed]=\"item.isPressed\" (click)=\"!last && item.callback?.()\">{{ item.text }} </span>\n </div>\n </ng-container>\n </div>\n\n <h1 *ngIf=\"!backButton && !isMobile() && breadCrumb?.list?.length < 1\"
|
|
40
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityHeaderComponent, selector: "gravity-header", inputs: { title: "title", logoUrl: "logoUrl", longTitle: "longTitle", backButton: "backButton", breadCrumb: "breadCrumb", language: "language", notifications: "notifications", resolution: "resolution", userNotifications: "userNotifications", isMenuOpen: "isMenuOpen" }, outputs: { backButtonResponse: "backButtonResponse", toggleMenuResponse: "toggleMenuResponse", viewedNotificationsResponse: "viewedNotificationsResponse" }, ngImport: i0, template: "<div class=\"gravity-header\" [class.mobile]=\"isMobile()\">\n <section class=\"first-level\" [class.long-title]=\"longTitle\">\n <svg-icon *ngIf=\"isMobile() && logoUrl && !backButton\" class=\"logo-header\" [src]=\"logoUrl\"/>\n\n <div *ngIf=\"backButton && breadCrumb?.list?.length < 1\"\n class=\"back-button\" [class.pressed]=\"isBackButtonPressed\"\n (mousedown)=\"isBackButtonPressed = true\" (mouseup)=\"isBackButtonPressed = false\" (click)=\"backAction()\"\n (mouseleave)=\"isBackButtonPressed = false\" (touchstart)=\"isBackButtonPressed = true\">\n\n <gravity-icon [style.--icon-color]=\"'var(--back-button-color)'\" [iconSize]=\"'sm-12'\" [iconName]=\"'arrow-left'\"/>\n <span class=\"'hr-label md-regular')\">{{ language === 'en' ? 'Back' : 'Atr\u00E1s' }}</span>\n </div>\n\n <div *ngIf=\"breadCrumb?.list?.length > 0 && (resolution === 'lg' || resolution === 'xl' )\" class=\"breadcrumb\">\n <gravity-icon *ngIf=\"breadCrumb.icon\" class=\"gravity-margin-right-xs\" [iconSize]=\"'md-16'\"\n [style.--icon-color]=\"'var(--breadcrumb-button-base-primary)'\" [iconName]=\"breadCrumb.icon\"/>\n\n <ng-container *ngFor=\"let item of breadCrumb.list; let last = last; let i = index\">\n <div class=\"breadcrumb-item\" [class.is-last]=\"last\" [class.has-prev]=\"i !== 0\"\n (mousedown)=\"item.isPressed = true\" (mouseup)=\"item.isPressed = false\"\n (mouseleave)=\"item.isPressed = false\" (touchstart)=\"item.isPressed = true\">\n <span [ngClass]=\"'hr-body ' + (resolution === 'xl' ? 'md-regular' : 'sm-regular')\"\n [class.pressed]=\"item.isPressed\" (click)=\"!last && item.callback?.()\">{{ item.text }} </span>\n </div>\n </ng-container>\n </div>\n\n <h1 *ngIf=\"!backButton && (!isMobile() || (isMobile() && !logoUrl)) && breadCrumb?.list?.length < 1\"\n [ngClass]=\"!isMobile() ? 'hr-headline md-bold' : 'hr-title ' + (resolution === 'md' ? 'md-bold' : 'lg-bold')\">\n {{ title }}\n </h1>\n\n <h1 *ngIf=\"isMobile() && backButton\" [ngClass]=\"'hr-body md-bold'\"> {{ longTitle }} </h1>\n\n <div class=\"main-actions\">\n <ng-content select=\"[main-actions]\"/>\n\n <gravity-push-notifications *ngIf=\"(notifications && !isMobile()) || (notifications && isMobile() && !backButton)\"\n [userNotifications]=\"userNotifications\" (viewedNotificationsResponse)=\"handleViewedNotificationsResponse($event)\"/>\n\n <gravity-icon *ngIf=\"isMobile()\" [style.--icon-color]=\"'var(--back-button-color)'\"\n [iconSize]=\"'lg-24'\" [iconName]=\"'menu'\" (click)=\"toggleMenu()\"/>\n </div>\n </section>\n\n <section *ngIf=\"!isMobile() && (backButton || breadCrumb?.list?.length > 0) && title\" class=\"second-level\">\n <h1 class=\"hr-headline md-bold\">{{ title }}</h1>\n </section>\n\n <section *ngIf=\"isMobile() && logoUrl && !backButton && title\" class=\"second-level\">\n <h1 [ngClass]=\"'hr-title ' + (resolution === 'md' ? 'md-bold' : 'lg-bold')\">{{ title }}</h1>\n </section>\n\n</div>", styles: [".gravity-header{width:100%;display:flex;-webkit-user-select:none;user-select:none;align-items:center;flex-direction:column;color:var(--text-primary);justify-content:space-between;gap:var(--gravity-spacing-xs);padding:var(--gravity-spacing-md) var(--gravity-spacing-md) var(--gravity-spacing-xs) var(--gravity-spacing-md)}.gravity-header h1{height:27px;line-height:27px;white-space:nowrap}.gravity-header .first-level{display:flex;align-items:center;align-self:stretch;justify-content:space-between}.gravity-header .first-level .logo-header svg{display:flex;max-width:55px;max-height:22px}.gravity-header .first-level .back-button{height:20px;display:flex;cursor:pointer;padding:4px 6px;align-items:center;gap:var(--gravity-spacing-xs);color:var(--back-button-color);--back-button-color: var(--bg-button-active-primary)}.gravity-header .first-level .back-button:hover{border-radius:2px;color:var(--back-button-color);background:var(--surface-primary);--back-button-color: var(--on-bg-back-button-hover-primary)}.gravity-header .first-level .back-button.pressed{background:none;color:var(--back-button-color);--back-button-color: var(--back-button-pressed-primary)}.gravity-header .first-level .breadcrumb{display:flex;align-items:center;justify-content:flex-start}.gravity-header .first-level .breadcrumb .breadcrumb-item{display:flex;align-items:center;gap:var(--gravity-spacing-xxxs)}.gravity-header .first-level .breadcrumb .breadcrumb-item.has-prev:before{content:\"/\";gap:var(--gravity-spacing-xxxs);color:var(--breadcrumb-button-base-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item.is-last span{cursor:default;color:var(--breadcrumb-button-active-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item:not(.is-last) span{cursor:pointer;color:var(--breadcrumb-button-base-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item:not(.is-last) span:hover{background:var(--surface-primary);color:var(--on-bg-breadcrumb-button-hover-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item:not(.is-last) span.pressed{background:none;color:var(--breadcrumb-button-pressed-primary)}.gravity-header .first-level .main-actions{display:flex;align-items:center}.gravity-header .first-level .main-actions gravity-icon{cursor:pointer;margin-left:var(--gravity-spacing-sm);transition:transform .1s ease-in-out;--back-button-color: var(--bg-button-active-primary)}.gravity-header .first-level .main-actions gravity-push-notifications{position:relative;margin-left:var(--gravity-spacing-sm)}.gravity-header .second-level{display:flex;flex-direction:row;align-items:center;align-self:stretch;justify-content:space-between;gap:var(--gravity-spacing-xs)}.gravity-header .second-level.no-title{justify-content:flex-end}.gravity-header.mobile{min-width:320px;max-width:1099px;padding:var(--gravity-spacing-sm)}.gravity-header.mobile h1{height:21px;line-height:21px}.gravity-header.mobile .long-title{height:36px}\n"], dependencies: [{ kind: "component", type: i1.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "component", type: i4.GravityPushNotificationsComponent, selector: "gravity-push-notifications", inputs: ["userNotifications"], outputs: ["viewedNotificationsResponse"] }] }); }
|
|
41
41
|
}
|
|
42
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityHeaderComponent, decorators: [{
|
|
43
43
|
type: Component,
|
|
44
|
-
args: [{ selector: 'gravity-header', template: "<div class=\"gravity-header\" [class.mobile]=\"isMobile()\">\n <section class=\"first-level\" [class.long-title]=\"longTitle\">\n <svg-icon *ngIf=\"isMobile() && logoUrl && !backButton\" class=\"logo-header\" [src]=\"logoUrl\"/>\n\n <div *ngIf=\"backButton && breadCrumb?.list?.length < 1\"\n class=\"back-button\" [class.pressed]=\"isBackButtonPressed\"\n (mousedown)=\"isBackButtonPressed = true\" (mouseup)=\"isBackButtonPressed = false\" (click)=\"backAction()\"\n (mouseleave)=\"isBackButtonPressed = false\" (touchstart)=\"isBackButtonPressed = true\">\n\n <gravity-icon [style.--icon-color]=\"'var(--back-button-color)'\" [iconSize]=\"'sm-12'\" [iconName]=\"'arrow-left'\"/>\n <span class=\"'hr-label md-regular')\">{{ language === 'en' ? 'Back' : 'Atr\u00E1s' }}</span>\n </div>\n\n <div *ngIf=\"breadCrumb?.list?.length > 0 && (resolution === 'lg' || resolution === 'xl' )\" class=\"breadcrumb\">\n <gravity-icon *ngIf=\"breadCrumb.icon\" class=\"gravity-margin-right-xs\" [iconSize]=\"'md-16'\"\n [style.--icon-color]=\"'var(--breadcrumb-button-base-primary)'\" [iconName]=\"breadCrumb.icon\"/>\n\n <ng-container *ngFor=\"let item of breadCrumb.list; let last = last; let i = index\">\n <div class=\"breadcrumb-item\" [class.is-last]=\"last\" [class.has-prev]=\"i !== 0\"\n (mousedown)=\"item.isPressed = true\" (mouseup)=\"item.isPressed = false\"\n (mouseleave)=\"item.isPressed = false\" (touchstart)=\"item.isPressed = true\">\n <span [ngClass]=\"'hr-body ' + (resolution === 'xl' ? 'md-regular' : 'sm-regular')\"\n [class.pressed]=\"item.isPressed\" (click)=\"!last && item.callback?.()\">{{ item.text }} </span>\n </div>\n </ng-container>\n </div>\n\n <h1 *ngIf=\"!backButton && !isMobile() && breadCrumb?.list?.length < 1\"
|
|
44
|
+
args: [{ selector: 'gravity-header', template: "<div class=\"gravity-header\" [class.mobile]=\"isMobile()\">\n <section class=\"first-level\" [class.long-title]=\"longTitle\">\n <svg-icon *ngIf=\"isMobile() && logoUrl && !backButton\" class=\"logo-header\" [src]=\"logoUrl\"/>\n\n <div *ngIf=\"backButton && breadCrumb?.list?.length < 1\"\n class=\"back-button\" [class.pressed]=\"isBackButtonPressed\"\n (mousedown)=\"isBackButtonPressed = true\" (mouseup)=\"isBackButtonPressed = false\" (click)=\"backAction()\"\n (mouseleave)=\"isBackButtonPressed = false\" (touchstart)=\"isBackButtonPressed = true\">\n\n <gravity-icon [style.--icon-color]=\"'var(--back-button-color)'\" [iconSize]=\"'sm-12'\" [iconName]=\"'arrow-left'\"/>\n <span class=\"'hr-label md-regular')\">{{ language === 'en' ? 'Back' : 'Atr\u00E1s' }}</span>\n </div>\n\n <div *ngIf=\"breadCrumb?.list?.length > 0 && (resolution === 'lg' || resolution === 'xl' )\" class=\"breadcrumb\">\n <gravity-icon *ngIf=\"breadCrumb.icon\" class=\"gravity-margin-right-xs\" [iconSize]=\"'md-16'\"\n [style.--icon-color]=\"'var(--breadcrumb-button-base-primary)'\" [iconName]=\"breadCrumb.icon\"/>\n\n <ng-container *ngFor=\"let item of breadCrumb.list; let last = last; let i = index\">\n <div class=\"breadcrumb-item\" [class.is-last]=\"last\" [class.has-prev]=\"i !== 0\"\n (mousedown)=\"item.isPressed = true\" (mouseup)=\"item.isPressed = false\"\n (mouseleave)=\"item.isPressed = false\" (touchstart)=\"item.isPressed = true\">\n <span [ngClass]=\"'hr-body ' + (resolution === 'xl' ? 'md-regular' : 'sm-regular')\"\n [class.pressed]=\"item.isPressed\" (click)=\"!last && item.callback?.()\">{{ item.text }} </span>\n </div>\n </ng-container>\n </div>\n\n <h1 *ngIf=\"!backButton && (!isMobile() || (isMobile() && !logoUrl)) && breadCrumb?.list?.length < 1\"\n [ngClass]=\"!isMobile() ? 'hr-headline md-bold' : 'hr-title ' + (resolution === 'md' ? 'md-bold' : 'lg-bold')\">\n {{ title }}\n </h1>\n\n <h1 *ngIf=\"isMobile() && backButton\" [ngClass]=\"'hr-body md-bold'\"> {{ longTitle }} </h1>\n\n <div class=\"main-actions\">\n <ng-content select=\"[main-actions]\"/>\n\n <gravity-push-notifications *ngIf=\"(notifications && !isMobile()) || (notifications && isMobile() && !backButton)\"\n [userNotifications]=\"userNotifications\" (viewedNotificationsResponse)=\"handleViewedNotificationsResponse($event)\"/>\n\n <gravity-icon *ngIf=\"isMobile()\" [style.--icon-color]=\"'var(--back-button-color)'\"\n [iconSize]=\"'lg-24'\" [iconName]=\"'menu'\" (click)=\"toggleMenu()\"/>\n </div>\n </section>\n\n <section *ngIf=\"!isMobile() && (backButton || breadCrumb?.list?.length > 0) && title\" class=\"second-level\">\n <h1 class=\"hr-headline md-bold\">{{ title }}</h1>\n </section>\n\n <section *ngIf=\"isMobile() && logoUrl && !backButton && title\" class=\"second-level\">\n <h1 [ngClass]=\"'hr-title ' + (resolution === 'md' ? 'md-bold' : 'lg-bold')\">{{ title }}</h1>\n </section>\n\n</div>", styles: [".gravity-header{width:100%;display:flex;-webkit-user-select:none;user-select:none;align-items:center;flex-direction:column;color:var(--text-primary);justify-content:space-between;gap:var(--gravity-spacing-xs);padding:var(--gravity-spacing-md) var(--gravity-spacing-md) var(--gravity-spacing-xs) var(--gravity-spacing-md)}.gravity-header h1{height:27px;line-height:27px;white-space:nowrap}.gravity-header .first-level{display:flex;align-items:center;align-self:stretch;justify-content:space-between}.gravity-header .first-level .logo-header svg{display:flex;max-width:55px;max-height:22px}.gravity-header .first-level .back-button{height:20px;display:flex;cursor:pointer;padding:4px 6px;align-items:center;gap:var(--gravity-spacing-xs);color:var(--back-button-color);--back-button-color: var(--bg-button-active-primary)}.gravity-header .first-level .back-button:hover{border-radius:2px;color:var(--back-button-color);background:var(--surface-primary);--back-button-color: var(--on-bg-back-button-hover-primary)}.gravity-header .first-level .back-button.pressed{background:none;color:var(--back-button-color);--back-button-color: var(--back-button-pressed-primary)}.gravity-header .first-level .breadcrumb{display:flex;align-items:center;justify-content:flex-start}.gravity-header .first-level .breadcrumb .breadcrumb-item{display:flex;align-items:center;gap:var(--gravity-spacing-xxxs)}.gravity-header .first-level .breadcrumb .breadcrumb-item.has-prev:before{content:\"/\";gap:var(--gravity-spacing-xxxs);color:var(--breadcrumb-button-base-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item.is-last span{cursor:default;color:var(--breadcrumb-button-active-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item:not(.is-last) span{cursor:pointer;color:var(--breadcrumb-button-base-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item:not(.is-last) span:hover{background:var(--surface-primary);color:var(--on-bg-breadcrumb-button-hover-primary)}.gravity-header .first-level .breadcrumb .breadcrumb-item:not(.is-last) span.pressed{background:none;color:var(--breadcrumb-button-pressed-primary)}.gravity-header .first-level .main-actions{display:flex;align-items:center}.gravity-header .first-level .main-actions gravity-icon{cursor:pointer;margin-left:var(--gravity-spacing-sm);transition:transform .1s ease-in-out;--back-button-color: var(--bg-button-active-primary)}.gravity-header .first-level .main-actions gravity-push-notifications{position:relative;margin-left:var(--gravity-spacing-sm)}.gravity-header .second-level{display:flex;flex-direction:row;align-items:center;align-self:stretch;justify-content:space-between;gap:var(--gravity-spacing-xs)}.gravity-header .second-level.no-title{justify-content:flex-end}.gravity-header.mobile{min-width:320px;max-width:1099px;padding:var(--gravity-spacing-sm)}.gravity-header.mobile h1{height:21px;line-height:21px}.gravity-header.mobile .long-title{height:36px}\n"] }]
|
|
45
45
|
}], propDecorators: { title: [{
|
|
46
46
|
type: Input
|
|
47
47
|
}], logoUrl: [{
|
|
@@ -69,4 +69,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
69
69
|
}], viewedNotificationsResponse: [{
|
|
70
70
|
type: Output
|
|
71
71
|
}] } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvbGF5b3V0L2dyYXZpdHktaGVhZGVyL2dyYXZpdHktaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2xheW91dC9ncmF2aXR5LWhlYWRlci9ncmF2aXR5LWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFjckUsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVlpQixhQUFRLEdBQWdCLElBQUksQ0FBQztRQUM3QixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQWM5Qix1QkFBa0IsR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1RCx1QkFBa0IsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvRCxnQ0FBMkIsR0FBa0QsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV6RyxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU5QixlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLHdCQUFtQixHQUFZLEtBQUssQ0FBQztLQW9CNUM7SUFyQ0EsSUFDSSxVQUFVLENBQUMsS0FBYztRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3pCLENBQUM7SUFXTSxVQUFVO1FBQ2hCLFVBQVUsQ0FBQztZQUNWLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDbEIsQ0FBQztJQUVNLFVBQVU7UUFDaEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxpQ0FBaUMsQ0FBQyxNQUF1QztRQUMvRSxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxRQUFRO1FBQ2QsT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQztJQUN6RixDQUFDOytHQTlDVyxzQkFBc0I7bUdBQXRCLHNCQUFzQixpZUNkbkMsc2xHQXFETTs7NEZEdkNPLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTVgsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLGlCQUFpQjtzQkFBaEMsS0FBSztnQkFHRixVQUFVO3NCQURiLEtBQUs7Z0JBVVcsa0JBQWtCO3NCQUFsQyxNQUFNO2dCQUNVLGtCQUFrQjtzQkFBbEMsTUFBTTtnQkFDVSwyQkFBMkI7c0JBQTNDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Tm90aWZpY2F0aW9uVmlld2VkU3RhdHVzUmVxdWVzdCwgVXNlck5vdGlmaWNhdGlvbnN9IGZyb20gXCIuLi8uLi9tb2RlbC9ncmF2aXR5LXB1c2gtbm90aWZpY2F0aW9ucy5tb2RlbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJyZWFkQ3J1bWIge1xuXHRpY29uPzogc3RyaW5nO1xuXHRsaXN0PzogeyB0ZXh0OiBzdHJpbmc7IGNhbGxiYWNrPzogKCkgPT4gdm9pZDsgaXNQcmVzc2VkPzogYm9vbGVhbiB9IFtdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyYXZpdHktaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuXG5leHBvcnQgY2xhc3MgR3Jhdml0eUhlYWRlckNvbXBvbmVudCB7XG5cdEBJbnB1dCgpIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuXHRASW5wdXQoKSBwdWJsaWMgbG9nb1VybDogc3RyaW5nO1xuXHRASW5wdXQoKSBwdWJsaWMgbG9uZ1RpdGxlOiBzdHJpbmc7XG5cdEBJbnB1dCgpIHB1YmxpYyBiYWNrQnV0dG9uOiBib29sZWFuO1xuXHRASW5wdXQoKSBwdWJsaWMgYnJlYWRDcnVtYjogQnJlYWRDcnVtYjtcblx0QElucHV0KCkgcHVibGljIGxhbmd1YWdlOiAnZW4nIHwgJ2VzJyA9ICdlbic7XG5cdEBJbnB1dCgpIHB1YmxpYyBub3RpZmljYXRpb25zOiBib29sZWFuID0gZmFsc2U7XG5cdEBJbnB1dCgpIHB1YmxpYyByZXNvbHV0aW9uOiAneHMnIHwgJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJztcblx0QElucHV0KCkgcHVibGljIHVzZXJOb3RpZmljYXRpb25zOiBVc2VyTm90aWZpY2F0aW9ucyB8IHVuZGVmaW5lZDtcblxuXHRASW5wdXQoKVxuXHRzZXQgaXNNZW51T3Blbih2YWx1ZTogYm9vbGVhbikge1xuXHRcdHRoaXMuaWNvblRvZ2dsZSA9IHZhbHVlO1xuXHRcdHRoaXMuX2lzTWVudU9wZW4gPSB2YWx1ZTtcblx0fVxuXG5cdGdldCBpc01lbnVPcGVuKCkge1xuXHRcdHJldHVybiB0aGlzLl9pc01lbnVPcGVuO1xuXHR9XG5cblx0QE91dHB1dCgpIHB1YmxpYyBiYWNrQnV0dG9uUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblx0QE91dHB1dCgpIHB1YmxpYyB0b2dnbGVNZW51UmVzcG9uc2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblx0QE91dHB1dCgpIHB1YmxpYyB2aWV3ZWROb3RpZmljYXRpb25zUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjxOb3RpZmljYXRpb25WaWV3ZWRTdGF0dXNSZXF1ZXN0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXHRwcml2YXRlIF9pc01lbnVPcGVuOiBib29sZWFuID0gZmFsc2U7XG5cblx0cHVibGljIGljb25Ub2dnbGU6IGJvb2xlYW4gPSBmYWxzZTtcblx0cHVibGljIGlzQmFja0J1dHRvblByZXNzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHRwdWJsaWMgdG9nZ2xlTWVudSAoKSB7XG5cdFx0c2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0XHR0aGlzLnRvZ2dsZU1lbnVSZXNwb25zZS5lbWl0KHRoaXMuX2lzTWVudU9wZW4pO1xuXHRcdH0uYmluZCh0aGlzKSwgNjUpXG5cdH1cblxuXHRwdWJsaWMgYmFja0FjdGlvbigpe1xuXHRcdHRoaXMuYmFja0J1dHRvblJlc3BvbnNlLmVtaXQoKTtcblx0fVxuXG5cdHB1YmxpYyBoYW5kbGVWaWV3ZWROb3RpZmljYXRpb25zUmVzcG9uc2UoJGV2ZW50OiBOb3RpZmljYXRpb25WaWV3ZWRTdGF0dXNSZXF1ZXN0KXtcblx0XHR0aGlzLnZpZXdlZE5vdGlmaWNhdGlvbnNSZXNwb25zZS5lbWl0KCRldmVudCk7XG5cdH1cblxuXHRwdWJsaWMgaXNNb2JpbGUoKXtcblx0XHRyZXR1cm4gdGhpcy5yZXNvbHV0aW9uID09PSAneHMnIHx8IHRoaXMucmVzb2x1dGlvbiA9PT0gJ3NtJyB8fCB0aGlzLnJlc29sdXRpb24gPT09ICdtZCc7XG5cdH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImdyYXZpdHktaGVhZGVyXCIgW2NsYXNzLm1vYmlsZV09XCJpc01vYmlsZSgpXCI+XG4gIDxzZWN0aW9uIGNsYXNzPVwiZmlyc3QtbGV2ZWxcIiBbY2xhc3MubG9uZy10aXRsZV09XCJsb25nVGl0bGVcIj5cbiAgICA8c3ZnLWljb24gKm5nSWY9XCJpc01vYmlsZSgpICYmIGxvZ29VcmwgJiYgIWJhY2tCdXR0b25cIiBjbGFzcz1cImxvZ28taGVhZGVyXCIgW3NyY109XCJsb2dvVXJsXCIvPlxuXG4gICAgPGRpdiAqbmdJZj1cImJhY2tCdXR0b24gJiYgYnJlYWRDcnVtYj8ubGlzdD8ubGVuZ3RoIDwgMVwiXG4gICAgICAgICBjbGFzcz1cImJhY2stYnV0dG9uXCIgW2NsYXNzLnByZXNzZWRdPVwiaXNCYWNrQnV0dG9uUHJlc3NlZFwiXG4gICAgICAgICAobW91c2Vkb3duKT1cImlzQmFja0J1dHRvblByZXNzZWQgPSB0cnVlXCIgKG1vdXNldXApPVwiaXNCYWNrQnV0dG9uUHJlc3NlZCA9IGZhbHNlXCIgKGNsaWNrKT1cImJhY2tBY3Rpb24oKVwiXG4gICAgICAgICAobW91c2VsZWF2ZSk9XCJpc0JhY2tCdXR0b25QcmVzc2VkID0gZmFsc2VcIiAodG91Y2hzdGFydCk9XCJpc0JhY2tCdXR0b25QcmVzc2VkID0gdHJ1ZVwiPlxuXG4gICAgICA8Z3Jhdml0eS1pY29uIFtzdHlsZS4tLWljb24tY29sb3JdPVwiJ3ZhcigtLWJhY2stYnV0dG9uLWNvbG9yKSdcIiBbaWNvblNpemVdPVwiJ3NtLTEyJ1wiIFtpY29uTmFtZV09XCInYXJyb3ctbGVmdCdcIi8+XG4gICAgICA8c3BhbiBjbGFzcz1cIidoci1sYWJlbCBtZC1yZWd1bGFyJylcIj57eyBsYW5ndWFnZSA9PT0gJ2VuJyA/ICdCYWNrJyA6ICdBdHLDoXMnIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiAqbmdJZj1cImJyZWFkQ3J1bWI/Lmxpc3Q/Lmxlbmd0aCA+IDAgJiYgKHJlc29sdXRpb24gPT09ICdsZycgfHwgcmVzb2x1dGlvbiA9PT0gJ3hsJyApXCIgY2xhc3M9XCJicmVhZGNydW1iXCI+XG4gICAgICA8Z3Jhdml0eS1pY29uICpuZ0lmPVwiYnJlYWRDcnVtYi5pY29uXCIgY2xhc3M9XCJncmF2aXR5LW1hcmdpbi1yaWdodC14c1wiIFtpY29uU2l6ZV09XCInbWQtMTYnXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLi0taWNvbi1jb2xvcl09XCIndmFyKC0tYnJlYWRjcnVtYi1idXR0b24tYmFzZS1wcmltYXJ5KSdcIiBbaWNvbk5hbWVdPVwiYnJlYWRDcnVtYi5pY29uXCIvPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJyZWFkQ3J1bWIubGlzdDsgbGV0IGxhc3QgPSBsYXN0OyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIiBbY2xhc3MuaXMtbGFzdF09XCJsYXN0XCIgW2NsYXNzLmhhcy1wcmV2XT1cImkgIT09IDBcIlxuICAgICAgICAgICAgIChtb3VzZWRvd24pPVwiaXRlbS5pc1ByZXNzZWQgPSB0cnVlXCIgKG1vdXNldXApPVwiaXRlbS5pc1ByZXNzZWQgPSBmYWxzZVwiXG4gICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwiaXRlbS5pc1ByZXNzZWQgPSBmYWxzZVwiICh0b3VjaHN0YXJ0KT1cIml0ZW0uaXNQcmVzc2VkID0gdHJ1ZVwiPlxuICAgICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIidoci1ib2R5ICcgKyAocmVzb2x1dGlvbiA9PT0gJ3hsJyA/ICdtZC1yZWd1bGFyJyA6ICdzbS1yZWd1bGFyJylcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5wcmVzc2VkXT1cIml0ZW0uaXNQcmVzc2VkXCIgKGNsaWNrKT1cIiFsYXN0ICYmIGl0ZW0uY2FsbGJhY2s/LigpXCI+e3sgaXRlbS50ZXh0IH19IDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDxoMSAqbmdJZj1cIiFiYWNrQnV0dG9uICYmICghaXNNb2JpbGUoKSB8fCAoaXNNb2JpbGUoKSAmJiAhbG9nb1VybCkpICYmIGJyZWFkQ3J1bWI/Lmxpc3Q/Lmxlbmd0aCA8IDFcIlxuICAgICAgICBbbmdDbGFzc109XCIhaXNNb2JpbGUoKSA/ICdoci1oZWFkbGluZSBtZC1ib2xkJyA6ICdoci10aXRsZSAnICsgKHJlc29sdXRpb24gPT09ICdtZCcgPyAnbWQtYm9sZCcgOiAnbGctYm9sZCcpXCI+XG4gICAgICB7eyB0aXRsZSB9fVxuICAgIDwvaDE+XG5cbiAgICA8aDEgKm5nSWY9XCJpc01vYmlsZSgpICYmIGJhY2tCdXR0b25cIiBbbmdDbGFzc109XCInaHItYm9keSBtZC1ib2xkJ1wiPiB7eyBsb25nVGl0bGUgfX0gPC9oMT5cblxuICAgIDxkaXYgY2xhc3M9XCJtYWluLWFjdGlvbnNcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlttYWluLWFjdGlvbnNdXCIvPlxuXG4gICAgICA8Z3Jhdml0eS1wdXNoLW5vdGlmaWNhdGlvbnMgKm5nSWY9XCIobm90aWZpY2F0aW9ucyAmJiAhaXNNb2JpbGUoKSkgfHwgKG5vdGlmaWNhdGlvbnMgJiYgaXNNb2JpbGUoKSAmJiAhYmFja0J1dHRvbilcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt1c2VyTm90aWZpY2F0aW9uc109XCJ1c2VyTm90aWZpY2F0aW9uc1wiICh2aWV3ZWROb3RpZmljYXRpb25zUmVzcG9uc2UpPVwiaGFuZGxlVmlld2VkTm90aWZpY2F0aW9uc1Jlc3BvbnNlKCRldmVudClcIi8+XG5cbiAgICAgIDxncmF2aXR5LWljb24gKm5nSWY9XCJpc01vYmlsZSgpXCIgW3N0eWxlLi0taWNvbi1jb2xvcl09XCIndmFyKC0tYmFjay1idXR0b24tY29sb3IpJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtpY29uU2l6ZV09XCInbGctMjQnXCIgW2ljb25OYW1lXT1cIidtZW51J1wiIChjbGljayk9XCJ0b2dnbGVNZW51KClcIi8+XG4gICAgPC9kaXY+XG4gIDwvc2VjdGlvbj5cblxuICA8c2VjdGlvbiAqbmdJZj1cIiFpc01vYmlsZSgpICYmIChiYWNrQnV0dG9uIHx8IGJyZWFkQ3J1bWI/Lmxpc3Q/Lmxlbmd0aCA+IDApICYmIHRpdGxlXCIgY2xhc3M9XCJzZWNvbmQtbGV2ZWxcIj5cbiAgICA8aDEgY2xhc3M9XCJoci1oZWFkbGluZSBtZC1ib2xkXCI+e3sgdGl0bGUgfX08L2gxPlxuICA8L3NlY3Rpb24+XG5cbiAgPHNlY3Rpb24gKm5nSWY9XCJpc01vYmlsZSgpICYmIGxvZ29VcmwgJiYgIWJhY2tCdXR0b24gJiYgdGl0bGVcIiBjbGFzcz1cInNlY29uZC1sZXZlbFwiPlxuICAgIDxoMSBbbmdDbGFzc109XCInaHItdGl0bGUgJyArIChyZXNvbHV0aW9uID09PSAnbWQnID8gJ21kLWJvbGQnIDogJ2xnLWJvbGQnKVwiPnt7IHRpdGxlIH19PC9oMT5cbiAgPC9zZWN0aW9uPlxuXG48L2Rpdj4iXX0=
|
|
@@ -15,6 +15,7 @@ export class GravityMenuComponent {
|
|
|
15
15
|
this.mainFooterAction = null;
|
|
16
16
|
this.close = new EventEmitter();
|
|
17
17
|
this.selected = new EventEmitter();
|
|
18
|
+
this.closing = false;
|
|
18
19
|
}
|
|
19
20
|
ngAfterViewInit() {
|
|
20
21
|
const el = this.menuBody.nativeElement;
|
|
@@ -35,6 +36,8 @@ export class GravityMenuComponent {
|
|
|
35
36
|
}
|
|
36
37
|
closeMenu() {
|
|
37
38
|
this.close.emit();
|
|
39
|
+
this.closing = true;
|
|
40
|
+
setTimeout(() => { this.closing = false; }, 100);
|
|
38
41
|
}
|
|
39
42
|
toggleMenuHeader(header) {
|
|
40
43
|
if (header.headerOptions?.length > 0) {
|
|
@@ -61,11 +64,11 @@ export class GravityMenuComponent {
|
|
|
61
64
|
return rows;
|
|
62
65
|
}
|
|
63
66
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
64
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityMenuComponent, selector: "gravity-menu", inputs: { logoUrl: "logoUrl", items: "items", userInfo: "userInfo", isOpen: "isOpen", showCloseButton: "showCloseButton", cardButtons: "cardButtons", maxCardButtonsPerRow: "maxCardButtonsPerRow", secondaryActions: "secondaryActions", size: "size", mainFooterAction: "mainFooterAction" }, outputs: { close: "close", selected: "selected" }, viewQueries: [{ propertyName: "menuBody", first: true, predicate: ["menuBody"], descendants: true }], ngImport: i0, template: "<div class=\"gravity-menu {{size}}\" [class.open]=\"isOpen\">\n <div class=\"menu-logo\">\n <svg-icon *ngIf=\"logoUrl\" [src]=\"logoUrl\" />\n <gravity-icon *ngIf=\"(size === 'md' || size === 'sm') && showCloseButton\"\n [iconSize]=\"'md-16'\" [iconName]=\"'unsuccess'\" (click)=\"closeMenu()\"/>\n </div>\n\n <div class=\"menu-content\">\n <section #menuBody class=\"menu-body\">\n <div class=\"menu-section\">\n <div class=\"levels\" *ngFor=\"let header of items\">\n <section class=\"first-level\" [class.is-open]=\"!header.collapsed\"\n [routerLink]=\"header.link || undefined\" (click)=\"toggleMenuHeader(header)\">\n <p class=\"hr-label sm-regular\">\n <gravity-icon *ngIf=\"header.icon !== ''\" [iconName]=\"header.icon\" [iconSize]=\"size === 'lg' ? 'sm-12' : 'md-16'\"/>\n {{header.text}}\n </p>\n\n <div class=\"toggle\">\n <span *ngIf=\"header.badged\" class=\"badge\"></span>\n <gravity-icon *ngIf=\"header.headerOptions?.length > 0\" [iconSize]=\"'sm-12'\"\n [iconName]=\"header.collapsed ? 'arrow-down' : 'arrow-up'\"/>\n </div>\n </section>\n\n <section *ngIf=\"!header.collapsed && header.headerOptions?.length > 0\" class=\"second-level\" [@fadeSlide]>\n <div class=\"options-list\">\n <ng-container *ngFor=\"let option of header.headerOptions\">\n <div class=\"option\" [attr.data-cy]=\"option.cypress_tag\" [class.selected]=\"option === selectedOption\">\n <div class=\"line\" [class.selected]=\"(size === 'xl' || size == 'lg') && option === selectedOption\"></div>\n <span class=\"hr-label sm-regular\" [class.disabled]=\"option.disabled\" [class.selected]=\"option === selectedOption\"\n [routerLink]=\"option.link || undefined\" (click)=\"selectOption(option)\">{{option.text}}</span>\n </div>\n </ng-container>\n </div>\n </section>\n </div>\n </div>\n </section>\n\n <section *ngIf=\"(secondaryActions || userInfo) && (size === 'xl' || size === 'lg')\" class=\"menu-footer elevation-xs\">\n <section class=\"footer-content\">\n <div *ngIf=\"secondaryActions\" class=\"secondary-actions\">\n <div class=\"action\" *ngFor=\"let action of secondaryActions\" (click)=\"action.callback()\">\n <gravity-icon *ngIf=\"action.icon !== ''\" [iconName]=\"action.icon\" [iconSize]=\"'md-16'\"/>\n <span class=\"hr-label sm-regular\">{{action.text}}</span>\n </div>\n </div>\n\n <hr *ngIf=\"secondaryActions && userInfo\" class=\"separator-line\">\n\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon *ngIf=\"userInfo.icon !== ''\" [iconName]=\"userInfo.icon\" [iconSize]=\"'sm-12'\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n\n <!-- - - - - - - - - - - Mobile Resolutions - - - - - - - - - - -->\n\n <section *ngIf=\"(cardButtons || userInfo) && (size === 'md' || size === 'sm')\" class=\"menu-footer-mobile\">\n <section class=\"footer-content\">\n <div *ngIf=\"cardButtons\" class=\"secondary-actions\">\n <div class=\"card-buttons\">\n <div class=\"card-buttons-row\" *ngFor=\"let row of getCardButtonsRows()\">\n <gravity-card-button *ngFor=\"let button of row\" [type]=\"'secondary'\"\n (clicked)=\"button.callback(); selected.emit()\" [orientation]=\"'vrt-center'\" [iconName]=\"button.icon\" [label]=\"button.text\"/>\n </div>\n </div>\n <gravity-button *ngIf=\"mainFooterAction\" [size]=\"'md'\" [type]=\"'tertiary'\" [iconName]=\"mainFooterAction.icon\"\n [iconPosition]=\"'left'\" (click)=\"mainFooterAction.callback()\"> {{mainFooterAction.text}} </gravity-button>\n </div>\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon [iconSize]=\"'sm-12'\" [iconName]=\"userInfo.icon\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n </div>\n</div>\n\n", styles: [".scrollbar-sm::-webkit-scrollbar{width:4px;height:4px}.scrollbar-sm::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.scrollbar-md::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar{width:8px;height:8px}.scrollbar-md::-webkit-scrollbar-track,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb:hover,.gravity-menu .menu-content .menu-body.has-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.gravity-menu{height:100%;max-width:266px;-webkit-user-select:none;user-select:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-md);margin-right:var(--gravity-spacing-xs)}.gravity-menu .menu-logo{width:100%;display:flex;align-items:center;padding:24px 26px 0 24px;justify-content:space-between}.gravity-menu .menu-logo gravity-icon{cursor:pointer}.gravity-menu .menu-logo svg{width:70px;height:28px}.gravity-menu .menu-content{width:100%;height:100%;display:flex;overflow:hidden;flex-direction:column;justify-content:space-between}.gravity-menu .menu-content .menu-body{display:flex;overflow-y:auto;flex-direction:column;align-items:flex-start;padding:0 18px 20px 24px}.gravity-menu .menu-content .menu-body:not(.has-scroll),.gravity-menu .menu-content .menu-body.has-scroll:not(:hover){margin-right:8px;scrollbar-width:none}.gravity-menu .menu-content .menu-body:not(.has-scroll)::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:not(:hover)::-webkit-scrollbar{width:0;height:0}.gravity-menu .menu-content .menu-body.has-scroll:hover{margin-right:0}.gravity-menu .menu-content .menu-body .menu-section{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels{width:100%}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level{width:100%;display:flex;cursor:pointer;align-items:center;justify-content:space-between;gap:var(--gravity-spacing-xs);height:var(--gravity-spacing-md);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level.is-open p{text-decoration:underline}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level p,.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle{display:flex;align-items:center;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle .badge{width:var(--gravity-spacing-xs);height:var(--gravity-spacing-xs);border-radius:6.25rem;background-color:var(--bg-menu-badge-button)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level:not(.is-open):hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level{display:flex;align-self:stretch;align-items:flex-start;justify-content:center;padding-left:var(--gravity-spacing-xxs);transition:max-height .3s ease-in-out,opacity .3s ease-in-out}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list{flex:1 0 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line{height:100%;margin-left:var(--gravity-spacing-xs);border-left:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line.selected{margin:0 -1px 0 7px;border-left:3px solid var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option{width:100%;height:34px;display:flex;align-items:center;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span{flex:1 0 0;height:24px;display:flex;cursor:pointer;align-items:center;padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:not(.disabled):not(.selected):hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.disabled{cursor:default;pointer-events:none;color:var(--on-bg-menu-button-disabled-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{color:var(--on-bg-menu-button-pressed-primary);background-color:var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-footer{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:16px 22px 20px 24px;gap:var(--gravity-spacing-md);background-color:var(--bg-menu-primary)}.gravity-menu .menu-content .menu-footer .footer-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action{width:220px;height:24px;display:flex;align-items:center;gap:var(--gravity-spacing-xs);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action:hover{cursor:pointer;color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-footer .footer-content hr{margin:0;width:100%;border:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list{display:grid;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list .user-info{display:flex;padding:1px 2px;align-items:center;gap:var(--gravity-spacing-xxs)}.gravity-menu.lg{max-width:246px}.gravity-menu.md,.gravity-menu.sm{gap:0;width:100%;z-index:101;max-width:100%;position:fixed;min-width:577px;transform:translate(101%);transition:transform .165s ease-in-out;background-color:var(--bg-menu-mobile-primary)}.gravity-menu.md .menu-content,.gravity-menu.sm .menu-content{margin-top:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-body,.gravity-menu.sm .menu-content .menu-body{padding:0 18px 0 24px}.gravity-menu.md .menu-content .menu-body .menu-section .levels,.gravity-menu.sm .menu-content .menu-body .menu-section .levels{display:flex;flex-direction:column;gap:var(--gravity-spacing-sm);border-radius:.3125rem;padding:var(--gravity-spacing-sm);background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level{height:20px;border-radius:.3125rem;background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level:hover{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option{height:45px}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected{background-color:var(--bg-menu-mobile-button-pressed-primary)}.gravity-menu.md .menu-content .menu-footer-mobile,.gravity-menu.sm .menu-content .menu-footer-mobile{display:flex;align-items:center;align-self:stretch;flex-direction:column;justify-content:flex-end;gap:var(--gravity-spacing-sm);padding:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content{width:100%;display:flex;flex-direction:column;gap:var(--gravity-spacing-sm)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-sm);padding:0 var(--gravity-spacing-lg)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row{width:100%;display:flex;flex-direction:row;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container{padding:0;width:100%;min-width:auto}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list{gap:0;display:grid;border-top:1px solid var(--surface-secondary)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info{display:flex;flex-direction:row;align-items:center;align-self:stretch;justify-content:center;gap:var(--gravity-spacing-xs);padding-top:var(--gravity-spacing-sm)}.gravity-menu.md.open,.gravity-menu.sm.open{transform:translate(0)}.gravity-menu.sm{min-width:320px}.gravity-menu.sm .menu-footer-mobile .footer-content .secondary-actions{padding:0!important}\n"], dependencies: [{ kind: "component", type: i1.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.GravityButtonComponent, selector: "gravity-button", inputs: ["cypressTag", "disabled", "iconName", "isLoading", "showContent", "size", "iconPosition", "customState", "type"] }, { kind: "component", type: i5.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "component", type: i6.GravityCardButtonComponent, selector: "gravity-card-button", inputs: ["cypressTag", "label", "iconName", "fullWidth", "type", "state", "orientation"], outputs: ["clicked"] }] }); }
|
|
67
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityMenuComponent, selector: "gravity-menu", inputs: { logoUrl: "logoUrl", items: "items", userInfo: "userInfo", isOpen: "isOpen", showCloseButton: "showCloseButton", cardButtons: "cardButtons", maxCardButtonsPerRow: "maxCardButtonsPerRow", secondaryActions: "secondaryActions", size: "size", mainFooterAction: "mainFooterAction" }, outputs: { close: "close", selected: "selected" }, viewQueries: [{ propertyName: "menuBody", first: true, predicate: ["menuBody"], descendants: true }], ngImport: i0, template: "<div class=\"gravity-menu {{size}}\" [class.open]=\"isOpen\" [class.closing]=\"closing\">\n <div class=\"menu-logo\">\n <svg-icon *ngIf=\"logoUrl\" [src]=\"logoUrl\" />\n <gravity-icon *ngIf=\"(size === 'md' || size === 'sm') && showCloseButton\"\n [iconSize]=\"'lg-24'\" [iconName]=\"'unsuccess'\" (click)=\"closeMenu()\"/>\n </div>\n\n <div class=\"menu-content\">\n <section #menuBody class=\"menu-body\">\n <div class=\"menu-section\">\n <div class=\"levels\" *ngFor=\"let header of items\">\n <section class=\"first-level\" [class.is-open]=\"!header.collapsed\"\n [routerLink]=\"header.link || undefined\" (click)=\"toggleMenuHeader(header)\">\n <p class=\"hr-label sm-regular\">\n <gravity-icon *ngIf=\"header.icon !== ''\" [iconName]=\"header.icon\" [iconSize]=\"'md-16'\"/>\n {{header.text}}\n </p>\n\n <div class=\"toggle\">\n <span *ngIf=\"header.badged\" class=\"badge\"></span>\n <gravity-icon *ngIf=\"header.headerOptions?.length > 0\" [iconSize]=\"'sm-12'\"\n [iconName]=\"header.collapsed ? 'arrow-down' : 'arrow-up'\"/>\n </div>\n </section>\n\n <section *ngIf=\"!header.collapsed && header.headerOptions?.length > 0\" class=\"second-level\" [@fadeSlide]>\n <div class=\"options-list\">\n <ng-container *ngFor=\"let option of header.headerOptions\">\n <div class=\"option\" [attr.data-cy]=\"option.cypress_tag\" [class.selected]=\"option === selectedOption\">\n <div class=\"line\" [class.selected]=\"(size === 'xl' || size == 'lg') && option === selectedOption\"></div>\n <span [ngClass]=\"(size === 'sm' || size === 'md') ? 'hr-label md-regular' : 'hr-label sm-regular'\"\n [class.disabled]=\"option.disabled\" [class.selected]=\"option === selectedOption\"\n [routerLink]=\"option.link || undefined\" (click)=\"selectOption(option)\">\n {{option.text}}\n </span>\n </div>\n </ng-container>\n </div>\n </section>\n </div>\n </div>\n </section>\n\n <section *ngIf=\"(secondaryActions || userInfo) && (size === 'xl' || size === 'lg')\" class=\"menu-footer elevation-xs\">\n <section class=\"footer-content\">\n <div *ngIf=\"secondaryActions\" class=\"secondary-actions\">\n <div class=\"action\" *ngFor=\"let action of secondaryActions\" (click)=\"action.callback()\">\n <gravity-icon *ngIf=\"action.icon !== ''\" [iconName]=\"action.icon\" [iconSize]=\"'md-16'\"/>\n <span class=\"hr-label sm-regular\">{{action.text}}</span>\n </div>\n </div>\n\n <hr *ngIf=\"secondaryActions && userInfo\" class=\"separator-line\">\n\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon *ngIf=\"userInfo.icon !== ''\" [iconName]=\"userInfo.icon\" [iconSize]=\"'sm-12'\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n\n <!-- - - - - - - - - - - Mobile Resolutions - - - - - - - - - - -->\n\n <section *ngIf=\"(cardButtons || userInfo) && (size === 'md' || size === 'sm')\" class=\"menu-footer-mobile\">\n <section class=\"footer-content\">\n <div *ngIf=\"cardButtons\" class=\"secondary-actions\">\n <div class=\"card-buttons\">\n <div class=\"card-buttons-row\" *ngFor=\"let row of getCardButtonsRows()\">\n <gravity-card-button *ngFor=\"let button of row\" [type]=\"'secondary'\"\n (clicked)=\"button.callback(); selected.emit()\" [orientation]=\"'vrt-center'\" [iconName]=\"button.icon\" [label]=\"button.text\"/>\n </div>\n </div>\n <gravity-button *ngIf=\"mainFooterAction\" [size]=\"'md'\" [type]=\"'tertiary'\" [iconName]=\"mainFooterAction.icon\"\n [iconPosition]=\"'left'\" (click)=\"mainFooterAction.callback()\"> {{mainFooterAction.text}} </gravity-button>\n </div>\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon [iconSize]=\"'sm-12'\" [iconName]=\"userInfo.icon\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n </div>\n</div>\n\n", styles: [".scrollbar-sm::-webkit-scrollbar{width:4px;height:4px}.scrollbar-sm::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.scrollbar-md::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar{width:8px;height:8px}.scrollbar-md::-webkit-scrollbar-track,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb:hover,.gravity-menu .menu-content .menu-body.has-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.gravity-menu{height:100%;width:266px;-webkit-user-select:none;user-select:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-md)}.gravity-menu .menu-logo{width:100%;display:flex;align-items:center;padding:24px 26px 0 24px;justify-content:space-between}.gravity-menu .menu-logo gravity-icon{cursor:pointer}.gravity-menu .menu-logo svg{width:60px;height:24px;display:flex}.gravity-menu .menu-content{width:100%;height:100%;display:flex;overflow:hidden;flex-direction:column;justify-content:space-between}.gravity-menu .menu-content .menu-body{display:flex;overflow-y:auto;flex-direction:column;align-items:flex-start;padding:0 18px 12px 24px}.gravity-menu .menu-content .menu-body:not(.has-scroll),.gravity-menu .menu-content .menu-body.has-scroll:not(:hover){margin-right:8px;scrollbar-width:none}.gravity-menu .menu-content .menu-body:not(.has-scroll)::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:not(:hover)::-webkit-scrollbar{width:0;height:0}.gravity-menu .menu-content .menu-body.has-scroll:hover{margin-right:0}.gravity-menu .menu-content .menu-body .menu-section{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-body .menu-section .levels{width:100%}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level{width:100%;display:flex;cursor:pointer;align-items:center;justify-content:space-between;gap:var(--gravity-spacing-xs);height:var(--gravity-spacing-md);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level.is-open p{text-decoration:underline}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level p,.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle{display:flex;align-items:center;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle .badge{width:var(--gravity-spacing-xs);height:var(--gravity-spacing-xs);border-radius:6.25rem;background-color:var(--bg-menu-badge-button)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level:hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level{display:flex;align-self:stretch;align-items:flex-start;justify-content:center;padding-left:var(--gravity-spacing-xxs);transition:max-height .3s ease-in-out,opacity .3s ease-in-out}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list{flex:1 0 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line{height:100%;margin-left:var(--gravity-spacing-xs);border-left:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line.selected{margin:0 -1px 0 7px;border-left:3px solid var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option{width:100%;height:34px;display:flex;align-items:center;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span{flex:1 0 0;height:24px;display:flex;cursor:pointer;align-items:center;padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:not(.disabled):not(.selected):hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.disabled{cursor:default;pointer-events:none;color:var(--on-bg-menu-button-disabled-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{color:var(--on-bg-menu-button-pressed-primary);background-color:var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-footer{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:16px 22px 20px 24px;gap:var(--gravity-spacing-md);width:calc(100% - var(--gravity-spacing-xs));box-shadow:-8px 1px 4px 0 rgba(var(--shadow-primary-rgba),var(--shadow-opacity))}.gravity-menu .menu-content .menu-footer .footer-content{width:234px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action{width:220px;height:24px;display:flex;align-items:center;gap:var(--gravity-spacing-xs);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action:hover{cursor:pointer;color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-footer .footer-content hr{margin:0;width:100%;border:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list{display:grid;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list .user-info{display:flex;padding:1px 2px;align-items:center;gap:var(--gravity-spacing-xxs)}.gravity-menu.lg{width:246px}.gravity-menu.lg .menu-content .menu-footer .footer-content{width:214px}.gravity-menu.md,.gravity-menu.sm{gap:0;width:100%;z-index:101;max-width:100%;position:fixed;min-width:577px;transition:none;transform:translate(101%);background-color:var(--bg-menu-mobile-primary)}.gravity-menu.md.open,.gravity-menu.sm.open{transform:translate(0);transition:transform .165s ease-in-out}.gravity-menu.md:not(.open),.gravity-menu.sm:not(.open){transform:translate(101%)}.gravity-menu.md.closing,.gravity-menu.sm.closing{transition:transform .165s ease-in-out}.gravity-menu.md .menu-logo svg,.gravity-menu.sm .menu-logo svg{width:70px;height:28px}.gravity-menu.md .menu-content,.gravity-menu.sm .menu-content{margin-top:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-body,.gravity-menu.sm .menu-content .menu-body{padding:0 18px 0 24px}.gravity-menu.md .menu-content .menu-body .menu-section .levels,.gravity-menu.sm .menu-content .menu-body .menu-section .levels{display:flex;flex-direction:column;gap:var(--gravity-spacing-sm);border-radius:.3125rem;padding:var(--gravity-spacing-sm);background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level{height:20px;border-radius:.3125rem;background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level:hover{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option{height:45px}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected{background-color:var(--bg-menu-mobile-button-pressed-primary)}.gravity-menu.md .menu-content .menu-footer-mobile,.gravity-menu.sm .menu-content .menu-footer-mobile{display:flex;align-items:center;align-self:stretch;flex-direction:column;justify-content:flex-end;gap:var(--gravity-spacing-sm);padding:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content{width:100%;display:flex;flex-direction:column;gap:var(--gravity-spacing-sm)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-sm);padding:0 var(--gravity-spacing-lg)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row{width:100%;display:flex;flex-direction:row;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container{padding:0;width:100%;min-width:auto}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list{gap:0;display:grid;border-top:1px solid var(--surface-secondary)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info{display:flex;flex-direction:row;align-items:center;align-self:stretch;justify-content:center;gap:var(--gravity-spacing-xs);padding-top:var(--gravity-spacing-sm)}.gravity-menu.sm{min-width:320px}.gravity-menu.sm .menu-footer-mobile .footer-content .secondary-actions{padding:0!important}\n"], dependencies: [{ kind: "component", type: i1.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.GravityButtonComponent, selector: "gravity-button", inputs: ["cypressTag", "disabled", "iconName", "isLoading", "showContent", "size", "iconPosition", "customState", "type"] }, { kind: "component", type: i5.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "component", type: i6.GravityCardButtonComponent, selector: "gravity-card-button", inputs: ["cypressTag", "label", "iconName", "fullWidth", "type", "state", "orientation"], outputs: ["clicked"] }] }); }
|
|
65
68
|
}
|
|
66
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityMenuComponent, decorators: [{
|
|
67
70
|
type: Component,
|
|
68
|
-
args: [{ selector: 'gravity-menu', template: "<div class=\"gravity-menu {{size}}\" [class.open]=\"isOpen\">\n <div class=\"menu-logo\">\n <svg-icon *ngIf=\"logoUrl\" [src]=\"logoUrl\" />\n <gravity-icon *ngIf=\"(size === 'md' || size === 'sm') && showCloseButton\"\n [iconSize]=\"'md-16'\" [iconName]=\"'unsuccess'\" (click)=\"closeMenu()\"/>\n </div>\n\n <div class=\"menu-content\">\n <section #menuBody class=\"menu-body\">\n <div class=\"menu-section\">\n <div class=\"levels\" *ngFor=\"let header of items\">\n <section class=\"first-level\" [class.is-open]=\"!header.collapsed\"\n [routerLink]=\"header.link || undefined\" (click)=\"toggleMenuHeader(header)\">\n <p class=\"hr-label sm-regular\">\n <gravity-icon *ngIf=\"header.icon !== ''\" [iconName]=\"header.icon\" [iconSize]=\"size === 'lg' ? 'sm-12' : 'md-16'\"/>\n {{header.text}}\n </p>\n\n <div class=\"toggle\">\n <span *ngIf=\"header.badged\" class=\"badge\"></span>\n <gravity-icon *ngIf=\"header.headerOptions?.length > 0\" [iconSize]=\"'sm-12'\"\n [iconName]=\"header.collapsed ? 'arrow-down' : 'arrow-up'\"/>\n </div>\n </section>\n\n <section *ngIf=\"!header.collapsed && header.headerOptions?.length > 0\" class=\"second-level\" [@fadeSlide]>\n <div class=\"options-list\">\n <ng-container *ngFor=\"let option of header.headerOptions\">\n <div class=\"option\" [attr.data-cy]=\"option.cypress_tag\" [class.selected]=\"option === selectedOption\">\n <div class=\"line\" [class.selected]=\"(size === 'xl' || size == 'lg') && option === selectedOption\"></div>\n <span class=\"hr-label sm-regular\" [class.disabled]=\"option.disabled\" [class.selected]=\"option === selectedOption\"\n [routerLink]=\"option.link || undefined\" (click)=\"selectOption(option)\">{{option.text}}</span>\n </div>\n </ng-container>\n </div>\n </section>\n </div>\n </div>\n </section>\n\n <section *ngIf=\"(secondaryActions || userInfo) && (size === 'xl' || size === 'lg')\" class=\"menu-footer elevation-xs\">\n <section class=\"footer-content\">\n <div *ngIf=\"secondaryActions\" class=\"secondary-actions\">\n <div class=\"action\" *ngFor=\"let action of secondaryActions\" (click)=\"action.callback()\">\n <gravity-icon *ngIf=\"action.icon !== ''\" [iconName]=\"action.icon\" [iconSize]=\"'md-16'\"/>\n <span class=\"hr-label sm-regular\">{{action.text}}</span>\n </div>\n </div>\n\n <hr *ngIf=\"secondaryActions && userInfo\" class=\"separator-line\">\n\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon *ngIf=\"userInfo.icon !== ''\" [iconName]=\"userInfo.icon\" [iconSize]=\"'sm-12'\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n\n <!-- - - - - - - - - - - Mobile Resolutions - - - - - - - - - - -->\n\n <section *ngIf=\"(cardButtons || userInfo) && (size === 'md' || size === 'sm')\" class=\"menu-footer-mobile\">\n <section class=\"footer-content\">\n <div *ngIf=\"cardButtons\" class=\"secondary-actions\">\n <div class=\"card-buttons\">\n <div class=\"card-buttons-row\" *ngFor=\"let row of getCardButtonsRows()\">\n <gravity-card-button *ngFor=\"let button of row\" [type]=\"'secondary'\"\n (clicked)=\"button.callback(); selected.emit()\" [orientation]=\"'vrt-center'\" [iconName]=\"button.icon\" [label]=\"button.text\"/>\n </div>\n </div>\n <gravity-button *ngIf=\"mainFooterAction\" [size]=\"'md'\" [type]=\"'tertiary'\" [iconName]=\"mainFooterAction.icon\"\n [iconPosition]=\"'left'\" (click)=\"mainFooterAction.callback()\"> {{mainFooterAction.text}} </gravity-button>\n </div>\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon [iconSize]=\"'sm-12'\" [iconName]=\"userInfo.icon\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n </div>\n</div>\n\n", styles: [".scrollbar-sm::-webkit-scrollbar{width:4px;height:4px}.scrollbar-sm::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.scrollbar-md::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar{width:8px;height:8px}.scrollbar-md::-webkit-scrollbar-track,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb:hover,.gravity-menu .menu-content .menu-body.has-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.gravity-menu{height:100%;max-width:266px;-webkit-user-select:none;user-select:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-md);margin-right:var(--gravity-spacing-xs)}.gravity-menu .menu-logo{width:100%;display:flex;align-items:center;padding:24px 26px 0 24px;justify-content:space-between}.gravity-menu .menu-logo gravity-icon{cursor:pointer}.gravity-menu .menu-logo svg{width:70px;height:28px}.gravity-menu .menu-content{width:100%;height:100%;display:flex;overflow:hidden;flex-direction:column;justify-content:space-between}.gravity-menu .menu-content .menu-body{display:flex;overflow-y:auto;flex-direction:column;align-items:flex-start;padding:0 18px 20px 24px}.gravity-menu .menu-content .menu-body:not(.has-scroll),.gravity-menu .menu-content .menu-body.has-scroll:not(:hover){margin-right:8px;scrollbar-width:none}.gravity-menu .menu-content .menu-body:not(.has-scroll)::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:not(:hover)::-webkit-scrollbar{width:0;height:0}.gravity-menu .menu-content .menu-body.has-scroll:hover{margin-right:0}.gravity-menu .menu-content .menu-body .menu-section{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels{width:100%}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level{width:100%;display:flex;cursor:pointer;align-items:center;justify-content:space-between;gap:var(--gravity-spacing-xs);height:var(--gravity-spacing-md);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level.is-open p{text-decoration:underline}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level p,.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle{display:flex;align-items:center;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle .badge{width:var(--gravity-spacing-xs);height:var(--gravity-spacing-xs);border-radius:6.25rem;background-color:var(--bg-menu-badge-button)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level:not(.is-open):hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level{display:flex;align-self:stretch;align-items:flex-start;justify-content:center;padding-left:var(--gravity-spacing-xxs);transition:max-height .3s ease-in-out,opacity .3s ease-in-out}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list{flex:1 0 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line{height:100%;margin-left:var(--gravity-spacing-xs);border-left:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line.selected{margin:0 -1px 0 7px;border-left:3px solid var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option{width:100%;height:34px;display:flex;align-items:center;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span{flex:1 0 0;height:24px;display:flex;cursor:pointer;align-items:center;padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:not(.disabled):not(.selected):hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.disabled{cursor:default;pointer-events:none;color:var(--on-bg-menu-button-disabled-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{color:var(--on-bg-menu-button-pressed-primary);background-color:var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-footer{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:16px 22px 20px 24px;gap:var(--gravity-spacing-md);background-color:var(--bg-menu-primary)}.gravity-menu .menu-content .menu-footer .footer-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action{width:220px;height:24px;display:flex;align-items:center;gap:var(--gravity-spacing-xs);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action:hover{cursor:pointer;color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-footer .footer-content hr{margin:0;width:100%;border:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list{display:grid;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list .user-info{display:flex;padding:1px 2px;align-items:center;gap:var(--gravity-spacing-xxs)}.gravity-menu.lg{max-width:246px}.gravity-menu.md,.gravity-menu.sm{gap:0;width:100%;z-index:101;max-width:100%;position:fixed;min-width:577px;transform:translate(101%);transition:transform .165s ease-in-out;background-color:var(--bg-menu-mobile-primary)}.gravity-menu.md .menu-content,.gravity-menu.sm .menu-content{margin-top:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-body,.gravity-menu.sm .menu-content .menu-body{padding:0 18px 0 24px}.gravity-menu.md .menu-content .menu-body .menu-section .levels,.gravity-menu.sm .menu-content .menu-body .menu-section .levels{display:flex;flex-direction:column;gap:var(--gravity-spacing-sm);border-radius:.3125rem;padding:var(--gravity-spacing-sm);background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level{height:20px;border-radius:.3125rem;background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level:hover{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option{height:45px}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected{background-color:var(--bg-menu-mobile-button-pressed-primary)}.gravity-menu.md .menu-content .menu-footer-mobile,.gravity-menu.sm .menu-content .menu-footer-mobile{display:flex;align-items:center;align-self:stretch;flex-direction:column;justify-content:flex-end;gap:var(--gravity-spacing-sm);padding:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content{width:100%;display:flex;flex-direction:column;gap:var(--gravity-spacing-sm)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-sm);padding:0 var(--gravity-spacing-lg)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row{width:100%;display:flex;flex-direction:row;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container{padding:0;width:100%;min-width:auto}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list{gap:0;display:grid;border-top:1px solid var(--surface-secondary)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info{display:flex;flex-direction:row;align-items:center;align-self:stretch;justify-content:center;gap:var(--gravity-spacing-xs);padding-top:var(--gravity-spacing-sm)}.gravity-menu.md.open,.gravity-menu.sm.open{transform:translate(0)}.gravity-menu.sm{min-width:320px}.gravity-menu.sm .menu-footer-mobile .footer-content .secondary-actions{padding:0!important}\n"] }]
|
|
71
|
+
args: [{ selector: 'gravity-menu', template: "<div class=\"gravity-menu {{size}}\" [class.open]=\"isOpen\" [class.closing]=\"closing\">\n <div class=\"menu-logo\">\n <svg-icon *ngIf=\"logoUrl\" [src]=\"logoUrl\" />\n <gravity-icon *ngIf=\"(size === 'md' || size === 'sm') && showCloseButton\"\n [iconSize]=\"'lg-24'\" [iconName]=\"'unsuccess'\" (click)=\"closeMenu()\"/>\n </div>\n\n <div class=\"menu-content\">\n <section #menuBody class=\"menu-body\">\n <div class=\"menu-section\">\n <div class=\"levels\" *ngFor=\"let header of items\">\n <section class=\"first-level\" [class.is-open]=\"!header.collapsed\"\n [routerLink]=\"header.link || undefined\" (click)=\"toggleMenuHeader(header)\">\n <p class=\"hr-label sm-regular\">\n <gravity-icon *ngIf=\"header.icon !== ''\" [iconName]=\"header.icon\" [iconSize]=\"'md-16'\"/>\n {{header.text}}\n </p>\n\n <div class=\"toggle\">\n <span *ngIf=\"header.badged\" class=\"badge\"></span>\n <gravity-icon *ngIf=\"header.headerOptions?.length > 0\" [iconSize]=\"'sm-12'\"\n [iconName]=\"header.collapsed ? 'arrow-down' : 'arrow-up'\"/>\n </div>\n </section>\n\n <section *ngIf=\"!header.collapsed && header.headerOptions?.length > 0\" class=\"second-level\" [@fadeSlide]>\n <div class=\"options-list\">\n <ng-container *ngFor=\"let option of header.headerOptions\">\n <div class=\"option\" [attr.data-cy]=\"option.cypress_tag\" [class.selected]=\"option === selectedOption\">\n <div class=\"line\" [class.selected]=\"(size === 'xl' || size == 'lg') && option === selectedOption\"></div>\n <span [ngClass]=\"(size === 'sm' || size === 'md') ? 'hr-label md-regular' : 'hr-label sm-regular'\"\n [class.disabled]=\"option.disabled\" [class.selected]=\"option === selectedOption\"\n [routerLink]=\"option.link || undefined\" (click)=\"selectOption(option)\">\n {{option.text}}\n </span>\n </div>\n </ng-container>\n </div>\n </section>\n </div>\n </div>\n </section>\n\n <section *ngIf=\"(secondaryActions || userInfo) && (size === 'xl' || size === 'lg')\" class=\"menu-footer elevation-xs\">\n <section class=\"footer-content\">\n <div *ngIf=\"secondaryActions\" class=\"secondary-actions\">\n <div class=\"action\" *ngFor=\"let action of secondaryActions\" (click)=\"action.callback()\">\n <gravity-icon *ngIf=\"action.icon !== ''\" [iconName]=\"action.icon\" [iconSize]=\"'md-16'\"/>\n <span class=\"hr-label sm-regular\">{{action.text}}</span>\n </div>\n </div>\n\n <hr *ngIf=\"secondaryActions && userInfo\" class=\"separator-line\">\n\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon *ngIf=\"userInfo.icon !== ''\" [iconName]=\"userInfo.icon\" [iconSize]=\"'sm-12'\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n\n <!-- - - - - - - - - - - Mobile Resolutions - - - - - - - - - - -->\n\n <section *ngIf=\"(cardButtons || userInfo) && (size === 'md' || size === 'sm')\" class=\"menu-footer-mobile\">\n <section class=\"footer-content\">\n <div *ngIf=\"cardButtons\" class=\"secondary-actions\">\n <div class=\"card-buttons\">\n <div class=\"card-buttons-row\" *ngFor=\"let row of getCardButtonsRows()\">\n <gravity-card-button *ngFor=\"let button of row\" [type]=\"'secondary'\"\n (clicked)=\"button.callback(); selected.emit()\" [orientation]=\"'vrt-center'\" [iconName]=\"button.icon\" [label]=\"button.text\"/>\n </div>\n </div>\n <gravity-button *ngIf=\"mainFooterAction\" [size]=\"'md'\" [type]=\"'tertiary'\" [iconName]=\"mainFooterAction.icon\"\n [iconPosition]=\"'left'\" (click)=\"mainFooterAction.callback()\"> {{mainFooterAction.text}} </gravity-button>\n </div>\n <div *ngIf=\"userInfo\" class=\"user-info-list\">\n <div *ngFor=\"let userInfo of userInfo\" class=\"user-info\">\n <gravity-icon [iconSize]=\"'sm-12'\" [iconName]=\"userInfo.icon\"/>\n <span class=\"hr-label sm-regular\">{{userInfo.info}}</span>\n </div>\n </div>\n </section>\n </section>\n </div>\n</div>\n\n", styles: [".scrollbar-sm::-webkit-scrollbar{width:4px;height:4px}.scrollbar-sm::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.scrollbar-md::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar{width:8px;height:8px}.scrollbar-md::-webkit-scrollbar-track,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb,.gravity-menu .menu-content .menu-body.has-scroll:hover::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb:hover,.gravity-menu .menu-content .menu-body.has-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.gravity-menu{height:100%;width:266px;-webkit-user-select:none;user-select:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-md)}.gravity-menu .menu-logo{width:100%;display:flex;align-items:center;padding:24px 26px 0 24px;justify-content:space-between}.gravity-menu .menu-logo gravity-icon{cursor:pointer}.gravity-menu .menu-logo svg{width:60px;height:24px;display:flex}.gravity-menu .menu-content{width:100%;height:100%;display:flex;overflow:hidden;flex-direction:column;justify-content:space-between}.gravity-menu .menu-content .menu-body{display:flex;overflow-y:auto;flex-direction:column;align-items:flex-start;padding:0 18px 12px 24px}.gravity-menu .menu-content .menu-body:not(.has-scroll),.gravity-menu .menu-content .menu-body.has-scroll:not(:hover){margin-right:8px;scrollbar-width:none}.gravity-menu .menu-content .menu-body:not(.has-scroll)::-webkit-scrollbar,.gravity-menu .menu-content .menu-body.has-scroll:not(:hover)::-webkit-scrollbar{width:0;height:0}.gravity-menu .menu-content .menu-body.has-scroll:hover{margin-right:0}.gravity-menu .menu-content .menu-body .menu-section{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-body .menu-section .levels{width:100%}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level{width:100%;display:flex;cursor:pointer;align-items:center;justify-content:space-between;gap:var(--gravity-spacing-xs);height:var(--gravity-spacing-md);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level.is-open p{text-decoration:underline}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level p,.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle{display:flex;align-items:center;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level .toggle .badge{width:var(--gravity-spacing-xs);height:var(--gravity-spacing-xs);border-radius:6.25rem;background-color:var(--bg-menu-badge-button)}.gravity-menu .menu-content .menu-body .menu-section .levels .first-level:hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level{display:flex;align-self:stretch;align-items:flex-start;justify-content:center;padding-left:var(--gravity-spacing-xxs);transition:max-height .3s ease-in-out,opacity .3s ease-in-out}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list{flex:1 0 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line{height:100%;margin-left:var(--gravity-spacing-xs);border-left:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .line.selected{margin:0 -1px 0 7px;border-left:3px solid var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option{width:100%;height:34px;display:flex;align-items:center;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span{flex:1 0 0;height:24px;display:flex;cursor:pointer;align-items:center;padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:not(.disabled):not(.selected):hover{color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.disabled{cursor:default;pointer-events:none;color:var(--on-bg-menu-button-disabled-primary)}.gravity-menu .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{color:var(--on-bg-menu-button-pressed-primary);background-color:var(--bg-menu-button-pressed-primary)}.gravity-menu .menu-content .menu-footer{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:16px 22px 20px 24px;gap:var(--gravity-spacing-md);width:calc(100% - var(--gravity-spacing-xs));box-shadow:-8px 1px 4px 0 rgba(var(--shadow-primary-rgba),var(--shadow-opacity))}.gravity-menu .menu-content .menu-footer .footer-content{width:234px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:var(--gravity-spacing-sm)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action{width:220px;height:24px;display:flex;align-items:center;gap:var(--gravity-spacing-xs);padding:0 var(--gravity-spacing-xxs)}.gravity-menu .menu-content .menu-footer .footer-content .secondary-actions .action:hover{cursor:pointer;color:var(--on-bg-menu-button-hover-primary);background-color:var(--bg-menu-button-hover-primary)}.gravity-menu .menu-content .menu-footer .footer-content hr{margin:0;width:100%;border:1px solid var(--divider-menu-active-primary)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list{display:grid;gap:var(--gravity-spacing-xs)}.gravity-menu .menu-content .menu-footer .footer-content .user-info-list .user-info{display:flex;padding:1px 2px;align-items:center;gap:var(--gravity-spacing-xxs)}.gravity-menu.lg{width:246px}.gravity-menu.lg .menu-content .menu-footer .footer-content{width:214px}.gravity-menu.md,.gravity-menu.sm{gap:0;width:100%;z-index:101;max-width:100%;position:fixed;min-width:577px;transition:none;transform:translate(101%);background-color:var(--bg-menu-mobile-primary)}.gravity-menu.md.open,.gravity-menu.sm.open{transform:translate(0);transition:transform .165s ease-in-out}.gravity-menu.md:not(.open),.gravity-menu.sm:not(.open){transform:translate(101%)}.gravity-menu.md.closing,.gravity-menu.sm.closing{transition:transform .165s ease-in-out}.gravity-menu.md .menu-logo svg,.gravity-menu.sm .menu-logo svg{width:70px;height:28px}.gravity-menu.md .menu-content,.gravity-menu.sm .menu-content{margin-top:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-body,.gravity-menu.sm .menu-content .menu-body{padding:0 18px 0 24px}.gravity-menu.md .menu-content .menu-body .menu-section .levels,.gravity-menu.sm .menu-content .menu-body .menu-section .levels{display:flex;flex-direction:column;gap:var(--gravity-spacing-sm);border-radius:.3125rem;padding:var(--gravity-spacing-sm);background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level{height:20px;border-radius:.3125rem;background-color:var(--bg-menu-mobile-card-primary)}.gravity-menu.md .menu-content .menu-body .menu-section .levels .first-level:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .first-level:hover{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option{height:45px}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span:hover,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option span.selected{background:none!important}.gravity-menu.md .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected,.gravity-menu.sm .menu-content .menu-body .menu-section .levels .second-level .options-list .option.selected{background-color:var(--bg-menu-mobile-button-pressed-primary)}.gravity-menu.md .menu-content .menu-footer-mobile,.gravity-menu.sm .menu-content .menu-footer-mobile{display:flex;align-items:center;align-self:stretch;flex-direction:column;justify-content:flex-end;gap:var(--gravity-spacing-sm);padding:var(--gravity-spacing-md)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content{width:100%;display:flex;flex-direction:column;gap:var(--gravity-spacing-sm)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-sm);padding:0 var(--gravity-spacing-lg)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons{display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions .card-buttons .card-buttons-row{width:100%;display:flex;flex-direction:row;gap:var(--gravity-spacing-xs)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions gravity-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button{width:100%}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .secondary-actions ::ng-deep gravity-card-button .card-button-container{padding:0;width:100%;min-width:auto}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list{gap:0;display:grid;border-top:1px solid var(--surface-secondary)}.gravity-menu.md .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info,.gravity-menu.sm .menu-content .menu-footer-mobile .footer-content .user-info-list .user-info{display:flex;flex-direction:row;align-items:center;align-self:stretch;justify-content:center;gap:var(--gravity-spacing-xs);padding-top:var(--gravity-spacing-sm)}.gravity-menu.sm{min-width:320px}.gravity-menu.sm .menu-footer-mobile .footer-content .secondary-actions{padding:0!important}\n"] }]
|
|
69
72
|
}], propDecorators: { logoUrl: [{
|
|
70
73
|
type: Input
|
|
71
74
|
}], items: [{
|
|
@@ -94,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
94
97
|
type: ViewChild,
|
|
95
98
|
args: ['menuBody', { static: false }]
|
|
96
99
|
}] } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2xheW91dC9ncmF2aXR5LW1lbnUvZ3Jhdml0eS1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2xheW91dC9ncmF2aXR5LW1lbnUvZ3Jhdml0eS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFReEgsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQVNpQixXQUFNLEdBQVksS0FBSyxDQUFDO1FBQ3hCLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBRXZCLHlCQUFvQixHQUFXLENBQUMsQ0FBQztRQUVqQyxTQUFJLEdBQXFDLElBQUksQ0FBQztRQUM5QyxxQkFBZ0IsR0FBK0QsSUFBSSxDQUFDO1FBRW5GLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBMkQvQztJQW5EQSxlQUFlO1FBQ2QsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7UUFFdkMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDN0MsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDakM7SUFDRixDQUFDO0lBRU0sWUFBWSxDQUFDLE1BQWtCO1FBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVNLFNBQVM7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFrQjtRQUN6QyxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNyQyxNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztZQUNyQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzNDO2FBQU07WUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztZQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3JCO0lBQ0YsQ0FBQztJQUVPLGNBQWM7UUFDckIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7UUFDdkMsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO1FBQ3BELEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQjtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQy9ELE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNoQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM1RSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztTQUNwRTtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2IsQ0FBQzsrR0F2RVcsb0JBQW9CO21HQUFwQixvQkFBb0IsNmVDUmpDLHErSUFxRkE7OzRGRDdFYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0MsY0FBYzs4QkFLUixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUVXLEtBQUs7c0JBQXJCLE1BQU07Z0JBQ1UsUUFBUTtzQkFBeEIsTUFBTTtnQkFFaUMsUUFBUTtzQkFBL0MsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01lbnVIZWFkZXIsIE1lbnVPcHRpb24sIFNlY29uZGFyeUFjdGlvbnMsIFVzZXJJbmZvfSBmcm9tIFwiLi4vLi4vbW9kZWwvZ3Jhdml0eS1tZW51LWl0ZW1zLm1vZGVsXCI7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2dyYXZpdHktbWVudScsXG5cdHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9ncmF2aXR5LW1lbnUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cdEBJbnB1dCgpIHB1YmxpYyBsb2dvVXJsOiBzdHJpbmc7XG5cdEBJbnB1dCgpIHB1YmxpYyBpdGVtczogTWVudUhlYWRlcltdO1xuXHRASW5wdXQoKSBwdWJsaWMgdXNlckluZm86IFVzZXJJbmZvW107XG5cdEBJbnB1dCgpIHB1YmxpYyBpc09wZW46IGJvb2xlYW4gPSBmYWxzZTtcblx0QElucHV0KCkgcHVibGljIHNob3dDbG9zZUJ1dHRvbiA9IHRydWU7XG5cdEBJbnB1dCgpIHB1YmxpYyBjYXJkQnV0dG9uczogU2Vjb25kYXJ5QWN0aW9uc1tdO1xuXHRASW5wdXQoKSBwdWJsaWMgbWF4Q2FyZEJ1dHRvbnNQZXJSb3c6IG51bWJlciA9IDM7XG5cdEBJbnB1dCgpIHB1YmxpYyBzZWNvbmRhcnlBY3Rpb25zOiBTZWNvbmRhcnlBY3Rpb25zW107XG5cdEBJbnB1dCgpIHB1YmxpYyBzaXplOiAneHMnIHwgJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJyA9ICd4bCc7XG5cdEBJbnB1dCgpIHB1YmxpYyBtYWluRm9vdGVyQWN0aW9uOiB7aWNvbjogc3RyaW5nOyB0ZXh0OiBzdHJpbmc7IGNhbGxiYWNrPzogKCkgPT4gdm9pZH0gfCBudWxsID0gbnVsbDtcblxuXHRAT3V0cHV0KCkgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXHRAT3V0cHV0KCkgcHVibGljIHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG5cdEBWaWV3Q2hpbGQoJ21lbnVCb2R5Jywge3N0YXRpYzogZmFsc2V9KSBtZW51Qm9keSE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG5cdHB1YmxpYyBzZWxlY3RlZE9wdGlvbjogTWVudU9wdGlvbjtcblxuXHRwcml2YXRlIHJlc2l6ZU9ic2VydmVyITogUmVzaXplT2JzZXJ2ZXI7XG5cblx0bmdBZnRlclZpZXdJbml0KCkge1xuXHRcdGNvbnN0IGVsID0gdGhpcy5tZW51Qm9keS5uYXRpdmVFbGVtZW50O1xuXG5cdFx0dGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XG5cdFx0XHR0aGlzLnVwZGF0ZU92ZXJmbG93KCk7XG5cdFx0fSk7XG5cblx0XHR0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUoZWwpO1xuXHRcdHRoaXMudXBkYXRlT3ZlcmZsb3coKTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCkge1xuXHRcdGlmICh0aGlzLnJlc2l6ZU9ic2VydmVyKSB7XG5cdFx0XHR0aGlzLnJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcblx0XHR9XG5cdH1cblxuXHRwdWJsaWMgc2VsZWN0T3B0aW9uKG9wdGlvbjogTWVudU9wdGlvbikge1xuXHRcdHRoaXMuc2VsZWN0ZWRPcHRpb24gPSBvcHRpb247XG5cdFx0dGhpcy5zZWxlY3RlZC5lbWl0KCk7XG5cdH1cblxuXHRwdWJsaWMgY2xvc2VNZW51KCkge1xuXHRcdHRoaXMuY2xvc2UuZW1pdCgpO1xuXHR9XG5cblx0cHVibGljIHRvZ2dsZU1lbnVIZWFkZXIoaGVhZGVyOiBNZW51SGVhZGVyKSB7XG5cdFx0aWYgKGhlYWRlci5oZWFkZXJPcHRpb25zPy5sZW5ndGggPiAwKSB7XG5cdFx0XHRoZWFkZXIuY29sbGFwc2VkID0gIWhlYWRlci5jb2xsYXBzZWQ7XG5cdFx0XHRzZXRUaW1lb3V0KCgpID0+IHRoaXMudXBkYXRlT3ZlcmZsb3coKSwgMCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRPcHRpb24gPSBudWxsO1xuXHRcdFx0dGhpcy5zZWxlY3RlZC5lbWl0KCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSB1cGRhdGVPdmVyZmxvdygpOiB2b2lkIHtcblx0XHRjb25zdCBlbCA9IHRoaXMubWVudUJvZHkubmF0aXZlRWxlbWVudDtcblx0XHRjb25zdCBoYXNTY3JvbGwgPSBlbC5zY3JvbGxIZWlnaHQgPiBlbC5jbGllbnRIZWlnaHQ7XG5cdFx0ZWwuY2xhc3NMaXN0LnRvZ2dsZSgnaGFzLXNjcm9sbCcsIGhhc1Njcm9sbCk7XG5cdH1cblxuXHRwdWJsaWMgZ2V0Q2FyZEJ1dHRvbnNSb3dzKCk6IGFueVtdW10ge1xuXHRcdGlmICghdGhpcy5jYXJkQnV0dG9ucyB8fCAhdGhpcy5tYXhDYXJkQnV0dG9uc1BlclJvdykgcmV0dXJuIFtdO1xuXHRcdGNvbnN0IHJvd3MgPSBbXTtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuY2FyZEJ1dHRvbnMubGVuZ3RoOyBpICs9IHRoaXMubWF4Q2FyZEJ1dHRvbnNQZXJSb3cpIHtcblx0XHRcdHJvd3MucHVzaCh0aGlzLmNhcmRCdXR0b25zLnNsaWNlKGksIGkgKyB0aGlzLm1heENhcmRCdXR0b25zUGVyUm93KSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHJvd3M7XG5cdH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJncmF2aXR5LW1lbnUge3tzaXplfX1cIiBbY2xhc3Mub3Blbl09XCJpc09wZW5cIj5cbiAgPGRpdiBjbGFzcz1cIm1lbnUtbG9nb1wiPlxuICAgIDxzdmctaWNvbiAqbmdJZj1cImxvZ29VcmxcIiBbc3JjXT1cImxvZ29VcmxcIiAvPlxuICAgIDxncmF2aXR5LWljb24gKm5nSWY9XCIoc2l6ZSA9PT0gJ21kJyB8fCBzaXplID09PSAnc20nKSAmJiBzaG93Q2xvc2VCdXR0b25cIlxuICAgICAgICAgICAgICAgICAgW2ljb25TaXplXT1cIidtZC0xNidcIiBbaWNvbk5hbWVdPVwiJ3Vuc3VjY2VzcydcIiAoY2xpY2spPVwiY2xvc2VNZW51KClcIi8+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJtZW51LWNvbnRlbnRcIj5cbiAgICA8c2VjdGlvbiAjbWVudUJvZHkgY2xhc3M9XCJtZW51LWJvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtZW51LXNlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxldmVsc1wiICpuZ0Zvcj1cImxldCBoZWFkZXIgb2YgaXRlbXNcIj5cbiAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImZpcnN0LWxldmVsXCIgW2NsYXNzLmlzLW9wZW5dPVwiIWhlYWRlci5jb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cImhlYWRlci5saW5rIHx8IHVuZGVmaW5lZFwiIChjbGljayk9XCJ0b2dnbGVNZW51SGVhZGVyKGhlYWRlcilcIj5cbiAgICAgICAgICAgICAgPHAgY2xhc3M9XCJoci1sYWJlbCBzbS1yZWd1bGFyXCI+XG4gICAgICAgICAgICAgICAgPGdyYXZpdHktaWNvbiAqbmdJZj1cImhlYWRlci5pY29uICE9PSAnJ1wiIFtpY29uTmFtZV09XCJoZWFkZXIuaWNvblwiIFtpY29uU2l6ZV09XCJzaXplID09PSAnbGcnID8gJ3NtLTEyJyA6ICdtZC0xNidcIi8+XG4gICAgICAgICAgICAgICAge3toZWFkZXIudGV4dH19XG4gICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvZ2dsZVwiPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlci5iYWRnZWRcIiBjbGFzcz1cImJhZGdlXCI+PC9zcGFuPlxuICAgICAgICAgICAgICA8Z3Jhdml0eS1pY29uICpuZ0lmPVwiaGVhZGVyLmhlYWRlck9wdGlvbnM/Lmxlbmd0aCA+IDBcIiBbaWNvblNpemVdPVwiJ3NtLTEyJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25OYW1lXT1cImhlYWRlci5jb2xsYXBzZWQgPyAnYXJyb3ctZG93bicgOiAnYXJyb3ctdXAnXCIvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCIhaGVhZGVyLmNvbGxhcHNlZCAmJiBoZWFkZXIuaGVhZGVyT3B0aW9ucz8ubGVuZ3RoID4gMFwiIGNsYXNzPVwic2Vjb25kLWxldmVsXCIgW0BmYWRlU2xpZGVdPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvbnMtbGlzdFwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgaGVhZGVyLmhlYWRlck9wdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3B0aW9uXCIgW2F0dHIuZGF0YS1jeV09XCJvcHRpb24uY3lwcmVzc190YWdcIiBbY2xhc3Muc2VsZWN0ZWRdPVwib3B0aW9uID09PSBzZWxlY3RlZE9wdGlvblwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpbmVcIiBbY2xhc3Muc2VsZWN0ZWRdPVwiKHNpemUgPT09ICd4bCcgfHwgc2l6ZSA9PSAnbGcnKSAmJiAgb3B0aW9uID09PSBzZWxlY3RlZE9wdGlvblwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoci1sYWJlbCBzbS1yZWd1bGFyXCIgW2NsYXNzLmRpc2FibGVkXT1cIm9wdGlvbi5kaXNhYmxlZFwiIFtjbGFzcy5zZWxlY3RlZF09XCJvcHRpb24gPT09IHNlbGVjdGVkT3B0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm9wdGlvbi5saW5rIHx8IHVuZGVmaW5lZFwiIChjbGljayk9XCJzZWxlY3RPcHRpb24ob3B0aW9uKVwiPnt7b3B0aW9uLnRleHR9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgPHNlY3Rpb24gKm5nSWY9XCIoc2Vjb25kYXJ5QWN0aW9ucyB8fCB1c2VySW5mbykgJiYgKHNpemUgPT09ICd4bCcgfHwgc2l6ZSA9PT0gJ2xnJylcIiBjbGFzcz1cIm1lbnUtZm9vdGVyIGVsZXZhdGlvbi14c1wiPlxuICAgICAgPHNlY3Rpb24gY2xhc3M9XCJmb290ZXItY29udGVudFwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwic2Vjb25kYXJ5QWN0aW9uc1wiIGNsYXNzPVwic2Vjb25kYXJ5LWFjdGlvbnNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uXCIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBzZWNvbmRhcnlBY3Rpb25zXCIgKGNsaWNrKT1cImFjdGlvbi5jYWxsYmFjaygpXCI+XG4gICAgICAgICAgICA8Z3Jhdml0eS1pY29uICpuZ0lmPVwiYWN0aW9uLmljb24gIT09ICcnXCIgW2ljb25OYW1lXT1cImFjdGlvbi5pY29uXCIgW2ljb25TaXplXT1cIidtZC0xNidcIi8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj57e2FjdGlvbi50ZXh0fX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxociAqbmdJZj1cInNlY29uZGFyeUFjdGlvbnMgJiYgdXNlckluZm9cIiBjbGFzcz1cInNlcGFyYXRvci1saW5lXCI+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInVzZXJJbmZvXCIgY2xhc3M9XCJ1c2VyLWluZm8tbGlzdFwiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHVzZXJJbmZvIG9mIHVzZXJJbmZvXCIgY2xhc3M9XCJ1c2VyLWluZm9cIj5cbiAgICAgICAgICAgIDxncmF2aXR5LWljb24gKm5nSWY9XCJ1c2VySW5mby5pY29uICE9PSAnJ1wiIFtpY29uTmFtZV09XCJ1c2VySW5mby5pY29uXCIgW2ljb25TaXplXT1cIidzbS0xMidcIi8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj57e3VzZXJJbmZvLmluZm99fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgICA8IS0tIC0gLSAtIC0gLSAtIC0gLSAtIC0gIE1vYmlsZSBSZXNvbHV0aW9ucyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0tPlxuXG4gICAgPHNlY3Rpb24gKm5nSWY9XCIoY2FyZEJ1dHRvbnMgfHwgdXNlckluZm8pICYmIChzaXplID09PSAnbWQnIHx8IHNpemUgPT09ICdzbScpXCIgY2xhc3M9XCJtZW51LWZvb3Rlci1tb2JpbGVcIj5cbiAgICAgIDxzZWN0aW9uIGNsYXNzPVwiZm9vdGVyLWNvbnRlbnRcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImNhcmRCdXR0b25zXCIgY2xhc3M9XCJzZWNvbmRhcnktYWN0aW9uc1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJ1dHRvbnNcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJ1dHRvbnMtcm93XCIgKm5nRm9yPVwibGV0IHJvdyBvZiBnZXRDYXJkQnV0dG9uc1Jvd3MoKVwiPlxuICAgICAgICAgICAgICA8Z3Jhdml0eS1jYXJkLWJ1dHRvbiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIHJvd1wiIFt0eXBlXT1cIidzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwiYnV0dG9uLmNhbGxiYWNrKCk7IHNlbGVjdGVkLmVtaXQoKVwiIFtvcmllbnRhdGlvbl09XCIndnJ0LWNlbnRlcidcIiBbaWNvbk5hbWVdPVwiYnV0dG9uLmljb25cIiBbbGFiZWxdPVwiYnV0dG9uLnRleHRcIi8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8Z3Jhdml0eS1idXR0b24gKm5nSWY9XCJtYWluRm9vdGVyQWN0aW9uXCIgW3NpemVdPVwiJ21kJ1wiIFt0eXBlXT1cIid0ZXJ0aWFyeSdcIiBbaWNvbk5hbWVdPVwibWFpbkZvb3RlckFjdGlvbi5pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25Qb3NpdGlvbl09XCInbGVmdCdcIiAoY2xpY2spPVwibWFpbkZvb3RlckFjdGlvbi5jYWxsYmFjaygpXCI+IHt7bWFpbkZvb3RlckFjdGlvbi50ZXh0fX0gPC9ncmF2aXR5LWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJ1c2VySW5mb1wiIGNsYXNzPVwidXNlci1pbmZvLWxpc3RcIj5cbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB1c2VySW5mbyBvZiB1c2VySW5mb1wiIGNsYXNzPVwidXNlci1pbmZvXCI+XG4gICAgICAgICAgICA8Z3Jhdml0eS1pY29uIFtpY29uU2l6ZV09XCInc20tMTInXCIgW2ljb25OYW1lXT1cInVzZXJJbmZvLmljb25cIi8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj57e3VzZXJJbmZvLmluZm99fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9zZWN0aW9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2xheW91dC9ncmF2aXR5LW1lbnUvZ3Jhdml0eS1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2xheW91dC9ncmF2aXR5LW1lbnUvZ3Jhdml0eS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFReEgsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQVNpQixXQUFNLEdBQVksS0FBSyxDQUFDO1FBQ3hCLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBRXZCLHlCQUFvQixHQUFXLENBQUMsQ0FBQztRQUVqQyxTQUFJLEdBQXFDLElBQUksQ0FBQztRQUM5QyxxQkFBZ0IsR0FBK0QsSUFBSSxDQUFDO1FBRW5GLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXhDLFlBQU8sR0FBRyxLQUFLLENBQUM7S0F5RHZCO0lBckRBLGVBQWU7UUFDZCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUV2QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRTtZQUM3QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFdBQVc7UUFDVixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNqQztJQUNGLENBQUM7SUFFTSxZQUFZLENBQUMsTUFBa0I7UUFDckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sU0FBUztRQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFrQjtRQUN6QyxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNyQyxNQUFNLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztZQUNyQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzNDO2FBQU07WUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztZQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3JCO0lBQ0YsQ0FBQztJQUVPLGNBQWM7UUFDckIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7UUFDdkMsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO1FBQ3BELEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQjtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQy9ELE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNoQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM1RSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztTQUNwRTtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2IsQ0FBQzsrR0F6RVcsb0JBQW9CO21HQUFwQixvQkFBb0IsNmVDUmpDLDJtSkF3RkE7OzRGRGhGYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0MsY0FBYzs4QkFLUixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUVXLEtBQUs7c0JBQXJCLE1BQU07Z0JBQ1UsUUFBUTtzQkFBeEIsTUFBTTtnQkFFaUMsUUFBUTtzQkFBL0MsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01lbnVIZWFkZXIsIE1lbnVPcHRpb24sIFNlY29uZGFyeUFjdGlvbnMsIFVzZXJJbmZvfSBmcm9tIFwiLi4vLi4vbW9kZWwvZ3Jhdml0eS1tZW51LWl0ZW1zLm1vZGVsXCI7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2dyYXZpdHktbWVudScsXG5cdHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9ncmF2aXR5LW1lbnUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cdEBJbnB1dCgpIHB1YmxpYyBsb2dvVXJsOiBzdHJpbmc7XG5cdEBJbnB1dCgpIHB1YmxpYyBpdGVtczogTWVudUhlYWRlcltdO1xuXHRASW5wdXQoKSBwdWJsaWMgdXNlckluZm86IFVzZXJJbmZvW107XG5cdEBJbnB1dCgpIHB1YmxpYyBpc09wZW46IGJvb2xlYW4gPSBmYWxzZTtcblx0QElucHV0KCkgcHVibGljIHNob3dDbG9zZUJ1dHRvbiA9IHRydWU7XG5cdEBJbnB1dCgpIHB1YmxpYyBjYXJkQnV0dG9uczogU2Vjb25kYXJ5QWN0aW9uc1tdO1xuXHRASW5wdXQoKSBwdWJsaWMgbWF4Q2FyZEJ1dHRvbnNQZXJSb3c6IG51bWJlciA9IDM7XG5cdEBJbnB1dCgpIHB1YmxpYyBzZWNvbmRhcnlBY3Rpb25zOiBTZWNvbmRhcnlBY3Rpb25zW107XG5cdEBJbnB1dCgpIHB1YmxpYyBzaXplOiAneHMnIHwgJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJyA9ICd4bCc7XG5cdEBJbnB1dCgpIHB1YmxpYyBtYWluRm9vdGVyQWN0aW9uOiB7aWNvbjogc3RyaW5nOyB0ZXh0OiBzdHJpbmc7IGNhbGxiYWNrPzogKCkgPT4gdm9pZH0gfCBudWxsID0gbnVsbDtcblxuXHRAT3V0cHV0KCkgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXHRAT3V0cHV0KCkgcHVibGljIHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG5cdEBWaWV3Q2hpbGQoJ21lbnVCb2R5Jywge3N0YXRpYzogZmFsc2V9KSBtZW51Qm9keSE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG5cdHB1YmxpYyBjbG9zaW5nID0gZmFsc2U7XG5cdHB1YmxpYyBzZWxlY3RlZE9wdGlvbjogTWVudU9wdGlvbjtcblx0cHJpdmF0ZSByZXNpemVPYnNlcnZlciE6IFJlc2l6ZU9ic2VydmVyO1xuXG5cdG5nQWZ0ZXJWaWV3SW5pdCgpIHtcblx0XHRjb25zdCBlbCA9IHRoaXMubWVudUJvZHkubmF0aXZlRWxlbWVudDtcblxuXHRcdHRoaXMucmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuXHRcdFx0dGhpcy51cGRhdGVPdmVyZmxvdygpO1xuXHRcdH0pO1xuXG5cdFx0dGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKGVsKTtcblx0XHR0aGlzLnVwZGF0ZU92ZXJmbG93KCk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHRpZiAodGhpcy5yZXNpemVPYnNlcnZlcikge1xuXHRcdFx0dGhpcy5yZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XG5cdFx0fVxuXHR9XG5cblx0cHVibGljIHNlbGVjdE9wdGlvbihvcHRpb246IE1lbnVPcHRpb24pIHtcblx0XHR0aGlzLnNlbGVjdGVkT3B0aW9uID0gb3B0aW9uO1xuXHRcdHRoaXMuc2VsZWN0ZWQuZW1pdCgpO1xuXHR9XG5cblx0cHVibGljIGNsb3NlTWVudSgpIHtcblx0XHR0aGlzLmNsb3NlLmVtaXQoKTtcblx0XHR0aGlzLmNsb3NpbmcgPSB0cnVlO1xuXHRcdHNldFRpbWVvdXQoKCkgPT4geyB0aGlzLmNsb3NpbmcgPSBmYWxzZTsgfSwgMTAwKTtcblx0fVxuXG5cdHB1YmxpYyB0b2dnbGVNZW51SGVhZGVyKGhlYWRlcjogTWVudUhlYWRlcikge1xuXHRcdGlmIChoZWFkZXIuaGVhZGVyT3B0aW9ucz8ubGVuZ3RoID4gMCkge1xuXHRcdFx0aGVhZGVyLmNvbGxhcHNlZCA9ICFoZWFkZXIuY29sbGFwc2VkO1xuXHRcdFx0c2V0VGltZW91dCgoKSA9PiB0aGlzLnVwZGF0ZU92ZXJmbG93KCksIDApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLnNlbGVjdGVkT3B0aW9uID0gbnVsbDtcblx0XHRcdHRoaXMuc2VsZWN0ZWQuZW1pdCgpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgdXBkYXRlT3ZlcmZsb3coKTogdm9pZCB7XG5cdFx0Y29uc3QgZWwgPSB0aGlzLm1lbnVCb2R5Lm5hdGl2ZUVsZW1lbnQ7XG5cdFx0Y29uc3QgaGFzU2Nyb2xsID0gZWwuc2Nyb2xsSGVpZ2h0ID4gZWwuY2xpZW50SGVpZ2h0O1xuXHRcdGVsLmNsYXNzTGlzdC50b2dnbGUoJ2hhcy1zY3JvbGwnLCBoYXNTY3JvbGwpO1xuXHR9XG5cblx0cHVibGljIGdldENhcmRCdXR0b25zUm93cygpOiBhbnlbXVtdIHtcblx0XHRpZiAoIXRoaXMuY2FyZEJ1dHRvbnMgfHwgIXRoaXMubWF4Q2FyZEJ1dHRvbnNQZXJSb3cpIHJldHVybiBbXTtcblx0XHRjb25zdCByb3dzID0gW107XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmNhcmRCdXR0b25zLmxlbmd0aDsgaSArPSB0aGlzLm1heENhcmRCdXR0b25zUGVyUm93KSB7XG5cdFx0XHRyb3dzLnB1c2godGhpcy5jYXJkQnV0dG9ucy5zbGljZShpLCBpICsgdGhpcy5tYXhDYXJkQnV0dG9uc1BlclJvdykpO1xuXHRcdH1cblxuXHRcdHJldHVybiByb3dzO1xuXHR9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ3Jhdml0eS1tZW51IHt7c2l6ZX19XCIgW2NsYXNzLm9wZW5dPVwiaXNPcGVuXCIgW2NsYXNzLmNsb3NpbmddPVwiY2xvc2luZ1wiPlxuICA8ZGl2IGNsYXNzPVwibWVudS1sb2dvXCI+XG4gICAgPHN2Zy1pY29uICpuZ0lmPVwibG9nb1VybFwiIFtzcmNdPVwibG9nb1VybFwiIC8+XG4gICAgPGdyYXZpdHktaWNvbiAqbmdJZj1cIihzaXplID09PSAnbWQnIHx8IHNpemUgPT09ICdzbScpICYmIHNob3dDbG9zZUJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBbaWNvblNpemVdPVwiJ2xnLTI0J1wiIFtpY29uTmFtZV09XCIndW5zdWNjZXNzJ1wiIChjbGljayk9XCJjbG9zZU1lbnUoKVwiLz5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm1lbnUtY29udGVudFwiPlxuICAgIDxzZWN0aW9uICNtZW51Qm9keSBjbGFzcz1cIm1lbnUtYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtc2VjdGlvblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGV2ZWxzXCIgKm5nRm9yPVwibGV0IGhlYWRlciBvZiBpdGVtc1wiPlxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiZmlyc3QtbGV2ZWxcIiBbY2xhc3MuaXMtb3Blbl09XCIhaGVhZGVyLmNvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiaGVhZGVyLmxpbmsgfHwgdW5kZWZpbmVkXCIgKGNsaWNrKT1cInRvZ2dsZU1lbnVIZWFkZXIoaGVhZGVyKVwiPlxuICAgICAgICAgICAgICA8cCBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj5cbiAgICAgICAgICAgICAgICA8Z3Jhdml0eS1pY29uICpuZ0lmPVwiaGVhZGVyLmljb24gIT09ICcnXCIgW2ljb25OYW1lXT1cImhlYWRlci5pY29uXCIgW2ljb25TaXplXT1cIidtZC0xNidcIi8+XG4gICAgICAgICAgICAgICAge3toZWFkZXIudGV4dH19XG4gICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvZ2dsZVwiPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlci5iYWRnZWRcIiBjbGFzcz1cImJhZGdlXCI+PC9zcGFuPlxuICAgICAgICAgICAgICA8Z3Jhdml0eS1pY29uICpuZ0lmPVwiaGVhZGVyLmhlYWRlck9wdGlvbnM/Lmxlbmd0aCA+IDBcIiBbaWNvblNpemVdPVwiJ3NtLTEyJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25OYW1lXT1cImhlYWRlci5jb2xsYXBzZWQgPyAnYXJyb3ctZG93bicgOiAnYXJyb3ctdXAnXCIvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCIhaGVhZGVyLmNvbGxhcHNlZCAmJiBoZWFkZXIuaGVhZGVyT3B0aW9ucz8ubGVuZ3RoID4gMFwiIGNsYXNzPVwic2Vjb25kLWxldmVsXCIgW0BmYWRlU2xpZGVdPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvbnMtbGlzdFwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgaGVhZGVyLmhlYWRlck9wdGlvbnNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3B0aW9uXCIgW2F0dHIuZGF0YS1jeV09XCJvcHRpb24uY3lwcmVzc190YWdcIiBbY2xhc3Muc2VsZWN0ZWRdPVwib3B0aW9uID09PSBzZWxlY3RlZE9wdGlvblwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpbmVcIiBbY2xhc3Muc2VsZWN0ZWRdPVwiKHNpemUgPT09ICd4bCcgfHwgc2l6ZSA9PSAnbGcnKSAmJiAgb3B0aW9uID09PSBzZWxlY3RlZE9wdGlvblwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwiKHNpemUgPT09ICdzbScgfHwgc2l6ZSA9PT0gJ21kJykgPyAnaHItbGFiZWwgbWQtcmVndWxhcicgOiAnaHItbGFiZWwgc20tcmVndWxhcidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIm9wdGlvbi5kaXNhYmxlZFwiIFtjbGFzcy5zZWxlY3RlZF09XCJvcHRpb24gPT09IHNlbGVjdGVkT3B0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm9wdGlvbi5saW5rIHx8IHVuZGVmaW5lZFwiIChjbGljayk9XCJzZWxlY3RPcHRpb24ob3B0aW9uKVwiPlxuICAgICAgICAgICAgICAgICAgICB7e29wdGlvbi50ZXh0fX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgPHNlY3Rpb24gKm5nSWY9XCIoc2Vjb25kYXJ5QWN0aW9ucyB8fCB1c2VySW5mbykgJiYgKHNpemUgPT09ICd4bCcgfHwgc2l6ZSA9PT0gJ2xnJylcIiBjbGFzcz1cIm1lbnUtZm9vdGVyIGVsZXZhdGlvbi14c1wiPlxuICAgICAgPHNlY3Rpb24gY2xhc3M9XCJmb290ZXItY29udGVudFwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwic2Vjb25kYXJ5QWN0aW9uc1wiIGNsYXNzPVwic2Vjb25kYXJ5LWFjdGlvbnNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uXCIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBzZWNvbmRhcnlBY3Rpb25zXCIgKGNsaWNrKT1cImFjdGlvbi5jYWxsYmFjaygpXCI+XG4gICAgICAgICAgICA8Z3Jhdml0eS1pY29uICpuZ0lmPVwiYWN0aW9uLmljb24gIT09ICcnXCIgW2ljb25OYW1lXT1cImFjdGlvbi5pY29uXCIgW2ljb25TaXplXT1cIidtZC0xNidcIi8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj57e2FjdGlvbi50ZXh0fX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxociAqbmdJZj1cInNlY29uZGFyeUFjdGlvbnMgJiYgdXNlckluZm9cIiBjbGFzcz1cInNlcGFyYXRvci1saW5lXCI+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInVzZXJJbmZvXCIgY2xhc3M9XCJ1c2VyLWluZm8tbGlzdFwiPlxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHVzZXJJbmZvIG9mIHVzZXJJbmZvXCIgY2xhc3M9XCJ1c2VyLWluZm9cIj5cbiAgICAgICAgICAgIDxncmF2aXR5LWljb24gKm5nSWY9XCJ1c2VySW5mby5pY29uICE9PSAnJ1wiIFtpY29uTmFtZV09XCJ1c2VySW5mby5pY29uXCIgW2ljb25TaXplXT1cIidzbS0xMidcIi8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj57e3VzZXJJbmZvLmluZm99fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgICA8IS0tIC0gLSAtIC0gLSAtIC0gLSAtIC0gIE1vYmlsZSBSZXNvbHV0aW9ucyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0tPlxuXG4gICAgPHNlY3Rpb24gKm5nSWY9XCIoY2FyZEJ1dHRvbnMgfHwgdXNlckluZm8pICYmIChzaXplID09PSAnbWQnIHx8IHNpemUgPT09ICdzbScpXCIgY2xhc3M9XCJtZW51LWZvb3Rlci1tb2JpbGVcIj5cbiAgICAgIDxzZWN0aW9uIGNsYXNzPVwiZm9vdGVyLWNvbnRlbnRcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImNhcmRCdXR0b25zXCIgY2xhc3M9XCJzZWNvbmRhcnktYWN0aW9uc1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJ1dHRvbnNcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJ1dHRvbnMtcm93XCIgKm5nRm9yPVwibGV0IHJvdyBvZiBnZXRDYXJkQnV0dG9uc1Jvd3MoKVwiPlxuICAgICAgICAgICAgICA8Z3Jhdml0eS1jYXJkLWJ1dHRvbiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIHJvd1wiIFt0eXBlXT1cIidzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwiYnV0dG9uLmNhbGxiYWNrKCk7IHNlbGVjdGVkLmVtaXQoKVwiIFtvcmllbnRhdGlvbl09XCIndnJ0LWNlbnRlcidcIiBbaWNvbk5hbWVdPVwiYnV0dG9uLmljb25cIiBbbGFiZWxdPVwiYnV0dG9uLnRleHRcIi8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8Z3Jhdml0eS1idXR0b24gKm5nSWY9XCJtYWluRm9vdGVyQWN0aW9uXCIgW3NpemVdPVwiJ21kJ1wiIFt0eXBlXT1cIid0ZXJ0aWFyeSdcIiBbaWNvbk5hbWVdPVwibWFpbkZvb3RlckFjdGlvbi5pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25Qb3NpdGlvbl09XCInbGVmdCdcIiAoY2xpY2spPVwibWFpbkZvb3RlckFjdGlvbi5jYWxsYmFjaygpXCI+IHt7bWFpbkZvb3RlckFjdGlvbi50ZXh0fX0gPC9ncmF2aXR5LWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJ1c2VySW5mb1wiIGNsYXNzPVwidXNlci1pbmZvLWxpc3RcIj5cbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB1c2VySW5mbyBvZiB1c2VySW5mb1wiIGNsYXNzPVwidXNlci1pbmZvXCI+XG4gICAgICAgICAgICA8Z3Jhdml0eS1pY29uIFtpY29uU2l6ZV09XCInc20tMTInXCIgW2ljb25OYW1lXT1cInVzZXJJbmZvLmljb25cIi8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXJcIj57e3VzZXJJbmZvLmluZm99fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9zZWN0aW9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=
|