@indice/ng-components 0.2.167 → 0.2.169
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/README.md +4 -4
- package/{_styles.css → _styles.scss} +4249 -4273
- package/esm2020/lib/controls/advanced-search/advanced-search.component.mjs +13 -7
- package/esm2020/lib/controls/advanced-search/models.mjs +1 -1
- package/esm2020/lib/controls/avatar-initials/avatar-initials.component.mjs +5 -5
- package/esm2020/lib/controls/breadcrumb/breadcrumb-item.mjs +14 -0
- package/esm2020/lib/controls/breadcrumb/breadcrumb.component.mjs +26 -0
- package/esm2020/lib/controls/collapsible-panel/collapsible-panel.component.mjs +5 -5
- package/esm2020/lib/controls/combobox/combobox.component.mjs +33 -13
- package/esm2020/lib/controls/date-picker/date-picker.component.mjs +6 -6
- package/esm2020/lib/controls/drop-down-menu/drop-down-menu.component.mjs +9 -5
- package/esm2020/lib/controls/kpi-tile/kpi-tile.component.mjs +9 -5
- package/esm2020/lib/controls/language-selection/language-selection.component.mjs +5 -5
- package/esm2020/lib/controls/list-view/list-column.component.mjs +4 -4
- package/esm2020/lib/controls/list-view/list-details-section.component.mjs +4 -4
- package/esm2020/lib/controls/list-view/list-tile.component.mjs +4 -4
- package/esm2020/lib/controls/list-view/list-view-empty-state.component.mjs +5 -5
- package/esm2020/lib/controls/list-view/list-view.component.mjs +8 -8
- package/esm2020/lib/controls/nav-links-list/nav-links-list.component.mjs +13 -5
- package/esm2020/lib/controls/notifications-indicator/notifications-indicator.component.mjs +5 -5
- package/esm2020/lib/controls/pager/pager.component.mjs +5 -5
- package/esm2020/lib/controls/side-pane/side-pane.component.mjs +5 -5
- package/esm2020/lib/controls/skeleton-loader/skeleton-loader.component.mjs +5 -5
- package/esm2020/lib/controls/stepper/lib-step-info.directive.mjs +4 -4
- package/esm2020/lib/controls/stepper/lib-step-label.directive.mjs +5 -5
- package/esm2020/lib/controls/stepper/lib-step.component.mjs +11 -11
- package/esm2020/lib/controls/stepper/lib-stepper.component.mjs +6 -6
- package/esm2020/lib/controls/stepper/types/step-selected-event.mjs +1 -1
- package/esm2020/lib/controls/stepper/types/stepper-type.mjs +1 -1
- package/esm2020/lib/controls/tabs/lib-tab-group.component.mjs +20 -14
- package/esm2020/lib/controls/tabs/lib-tab-label.directive.mjs +16 -0
- package/esm2020/lib/controls/tabs/lib-tab.component.mjs +21 -14
- package/esm2020/lib/controls/toaster/toaster-container.component.mjs +5 -5
- package/esm2020/lib/controls/toaster/toaster.component.mjs +5 -5
- package/esm2020/lib/controls/toggle/toggle.component.mjs +6 -6
- package/esm2020/lib/controls/toggle-button/toggle-button.component.mjs +87 -0
- package/esm2020/lib/controls/toggle-buttons-list/toggle-buttons-list.component.mjs +31 -0
- package/esm2020/lib/controls/user-profile-menu/user-profile-menu.component.mjs +5 -5
- package/esm2020/lib/directives/click-outside.directive.mjs +4 -4
- package/esm2020/lib/directives/dynamic-component-host.directive.mjs +4 -4
- package/esm2020/lib/helpers/base-list.component.mjs +4 -4
- package/esm2020/lib/icons.mjs +4 -2
- package/esm2020/lib/layouts/shell/shell-footer/shell-footer.component.mjs +5 -5
- package/esm2020/lib/layouts/shell/shell-header/shell-header.component.mjs +8 -8
- package/esm2020/lib/layouts/shell/shell-layout/shell-layout.component.mjs +41 -52
- package/esm2020/lib/layouts/shell/shell-sidebar/shell-sidebar.component.mjs +15 -8
- package/esm2020/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.mjs +7 -7
- package/esm2020/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.mjs +19 -14
- package/esm2020/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.mjs +8 -9
- package/esm2020/lib/layouts/views/form-layout/form-layout.component.mjs +5 -5
- package/esm2020/lib/layouts/views/model-view-layout/model-view-layout.component.mjs +14 -5
- package/esm2020/lib/layouts/views/side-view-layout/side-view-layout.component.mjs +5 -5
- package/esm2020/lib/layouts/views/view-layout/view-layout.component.mjs +5 -5
- package/esm2020/lib/ng-components.module.mjs +112 -107
- package/esm2020/lib/pages/auth/auth-callback/auth-callback.component.mjs +4 -4
- package/esm2020/lib/pages/auth/auth-renew/auth-renew.component.mjs +4 -4
- package/esm2020/lib/pages/auth/logged-out/logged-out.component.mjs +4 -4
- package/esm2020/lib/pages/http-status/error/error.component.mjs +5 -5
- package/esm2020/lib/pages/http-status/page-not-found/page-not-found.component.mjs +5 -5
- package/esm2020/lib/pages/http-status/unauthorized/unauthorized.component.mjs +5 -5
- package/esm2020/lib/pipes/address.pipe.mjs +4 -4
- package/esm2020/lib/pipes/duration-format.pipe.mjs +4 -4
- package/esm2020/lib/services/breadcrumb.service.mjs +174 -0
- package/esm2020/lib/services/component-loader/component-loader-options.class.mjs +1 -1
- package/esm2020/lib/services/component-loader/component-loader.class.mjs +2 -2
- package/esm2020/lib/services/component-loader/component-loader.factory.mjs +4 -4
- package/esm2020/lib/services/component-loader/content-ref.class.mjs +1 -1
- package/esm2020/lib/services/modal-service/modal-backdrop-component.mjs +4 -4
- package/esm2020/lib/services/modal-service/modal-container-component.mjs +15 -15
- package/esm2020/lib/services/modal-service/modal-options.class.mjs +4 -4
- package/esm2020/lib/services/modal-service/modal-service.mjs +4 -4
- package/esm2020/lib/services/modal-service/modal-styles.class.mjs +1 -1
- package/esm2020/lib/services/modal-service/modal.class.mjs +4 -4
- package/esm2020/lib/services/toaster.service.mjs +10 -8
- package/esm2020/lib/services/user-settings.service.mjs +35 -0
- package/esm2020/lib/services/utilities.service.mjs +47 -0
- package/esm2020/lib/tokens.mjs +1 -1
- package/esm2020/lib/types.mjs +12 -9
- package/esm2020/public-api.mjs +8 -1
- package/fesm2015/indice-ng-components.mjs +978 -496
- package/fesm2015/indice-ng-components.mjs.map +1 -1
- package/fesm2020/indice-ng-components.mjs +970 -501
- package/fesm2020/indice-ng-components.mjs.map +1 -1
- package/lib/controls/breadcrumb/breadcrumb-item.d.ts +7 -0
- package/lib/controls/breadcrumb/breadcrumb.component.d.ts +12 -0
- package/lib/controls/combobox/combobox.component.d.ts +10 -5
- package/lib/controls/drop-down-menu/drop-down-menu.component.d.ts +3 -2
- package/lib/controls/kpi-tile/kpi-tile.component.d.ts +2 -1
- package/lib/controls/list-view/list-view.component.d.ts +1 -1
- package/lib/controls/nav-links-list/nav-links-list.component.d.ts +3 -1
- package/lib/controls/pager/pager.component.d.ts +1 -1
- package/lib/controls/tabs/lib-tab-group.component.d.ts +3 -3
- package/lib/controls/tabs/lib-tab-label.directive.d.ts +8 -0
- package/lib/controls/tabs/lib-tab.component.d.ts +8 -6
- package/lib/controls/toggle-button/toggle-button.component.d.ts +25 -0
- package/lib/controls/toggle-buttons-list/toggle-buttons-list.component.d.ts +14 -0
- package/lib/icons.d.ts +2 -0
- package/lib/layouts/shell/shell-layout/shell-layout.component.d.ts +10 -13
- package/lib/layouts/shell/shell-sidebar/shell-sidebar.component.d.ts +5 -3
- package/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.d.ts +6 -3
- package/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.d.ts +1 -1
- package/lib/layouts/views/model-view-layout/model-view-layout.component.d.ts +5 -2
- package/lib/ng-components.module.d.ts +57 -53
- package/lib/services/breadcrumb.service.d.ts +29 -0
- package/lib/services/toaster.service.d.ts +2 -2
- package/lib/services/user-settings.service.d.ts +13 -0
- package/lib/services/utilities.service.d.ts +11 -0
- package/lib/types.d.ts +16 -12
- package/modal.css +157 -157
- package/package.json +1 -1
- package/public-api.d.ts +7 -0
|
@@ -8,9 +8,9 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
import * as i1 from "@angular/common";
|
|
9
9
|
import * as i2 from "@angular/router";
|
|
10
10
|
import * as i3 from "../../../directives/click-outside.directive";
|
|
11
|
-
import * as i4 from "../../../controls/
|
|
12
|
-
import * as i5 from "../../../controls/
|
|
13
|
-
import * as i6 from "../../../controls/
|
|
11
|
+
import * as i4 from "../../../controls/language-selection/language-selection.component";
|
|
12
|
+
import * as i5 from "../../../controls/nav-links-list/nav-links-list.component";
|
|
13
|
+
import * as i6 from "../../../controls/notifications-indicator/notifications-indicator.component";
|
|
14
14
|
import * as i7 from "../../../controls/user-profile-menu/user-profile-menu.component";
|
|
15
15
|
import * as i8 from "@indice/ng-auth";
|
|
16
16
|
export class ShellHeaderComponent {
|
|
@@ -89,11 +89,11 @@ export class ShellHeaderComponent {
|
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
|
-
ShellHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.
|
|
93
|
-
ShellHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.
|
|
94
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.
|
|
92
|
+
ShellHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellHeaderComponent, deps: [{ token: AuthService }, { token: Router }, { token: ActivatedRoute }, { token: SHELL_CONFIG }, { token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
|
|
93
|
+
ShellHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ShellHeaderComponent, selector: "lib-shell-header", inputs: { sectionLinksPath: ["section-links", "sectionLinksPath"], profileMenuVisible: ["profile-menu", "profileMenuVisible"], showUserNameOnHeader: ["show-userName", "showUserNameOnHeader"], showAlerts: ["show-alerts", "showAlerts"], showLangs: ["show-langs", "showLangs"], border: "border" }, ngImport: i0, template: "<nav>\r\n <div class=\"shell-header-paddings\">\r\n <div class=\"shell-header-border\">\r\n <div class=\"shell-header-menu-container\">\r\n <div class=\"shell-header-logo-container\">\r\n <div>\r\n <a href=\"#\" [routerLink]=\"['/']\"><img class=\"app-logo\" [src]=\"config.appLogo\" [alt]=\"config.appLogoAlt\" /></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"shell-header-link-container\">\r\n <div class=\"shell-header-link-container-inner\">\r\n <lib-nav-links-list\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link'\"\r\n [link-active-class]=\"'nav-link-active'\">\r\n </lib-nav-links-list>\r\n </div>\r\n </div>\r\n\r\n <div class=\"shell-header-md-visible\">\r\n\r\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\r\n\r\n <lib-nav-links-list\r\n [links]=\"links.profileActions\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'shell-header-menu-rounded-button'\"\r\n [link-active-class]=\"'shell-header-menu-rounded-button-active'\">\r\n </lib-nav-links-list>\r\n\r\n\r\n <!-- Profile dropdown -->\r\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\r\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\r\n </div>\r\n\r\n <!-- Notifications dropdown -->\r\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\r\n <lib-notifications-indicator></lib-notifications-indicator>\r\n </div>\r\n\r\n <!-- languages dropdown -->\r\n <div *ngIf=\"showLangs\" class=\"ml-4\">\r\n <lib-language-selection></lib-language-selection>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mobile-menu-button-container\">\r\n <!-- Mobile menu button -->\r\n <button type=\"button\"\r\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\r\n class=\"mobile-menu-button\"\r\n aria-controls=\"mobile-menu\"\r\n [attr.aria-expanded]=\"mobileMenuExpanded\">\r\n <span class=\"sr-only\">Open main menu</span>\r\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\"\r\n [class]=\"mobileMenuExpanded ? 'hidden':'block h-6 w-6'\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M4 6h16M4 12h16M4 18h16\" />\r\n </svg>\r\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\"\r\n [class]=\"mobileMenuExpanded ? 'block h-6 w-6':'hidden'\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M6 18L18 6M6 6l12 12\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Mobile menu, show/hide based on menu state. -->\r\n <div class=\"mobile-menu-container\" *ngIf=\"mobileMenuExpanded\" id=\"mobile-menu\">\r\n <lib-nav-links-list\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-mobile'\"\r\n [link-active-class]=\"'nav-link-mobile-active'\"\r\n [container-class]=\"'mobile-menu-link-container'\">\r\n </lib-nav-links-list>\r\n\r\n <div *ngIf=\"!user\">\r\n <a href=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\r\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\r\n </a>\r\n </div>\r\n\r\n <div class=\"mobile-menu-user-info-container\" *ngIf=\"user\">\r\n <div class=\"mobile-menu-user-info-container-inner\">\r\n <div class=\"flex-shrink-0\">\r\n <span class=\"mobile-menu-avatar-container\">\r\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\r\n </span>\r\n </div>\r\n <div class=\"ml-3\">\r\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\r\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\r\n </div>\r\n <!--\r\n <button class=\"mobile-menu-rounded-button\">\r\n <span class=\"sr-only\">View notifications</span>\r\n <svg class=\"mobile-menu-rounded-button-icon-style\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\r\n </svg>\r\n </button>\r\n -->\r\n </div>\r\n </div>\r\n\r\n <lib-nav-links-list\r\n [links]=\"links.profile\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-mobile'\"\r\n [link-active-class]=\"'nav-link-mobile-active'\"\r\n [container-class]=\"'mobile-menu-link-container'\">\r\n </lib-nav-links-list>\r\n </div>\r\n</nav>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "directive", type: i3.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { kind: "component", type: i4.LanguageSelectionComponent, selector: "lib-language-selection" }, { kind: "component", type: i5.NavLinksListComponent, selector: "lib-nav-links-list", inputs: ["links", "active-fragment", "link-class", "link-active-class", "container-class", "show-icons", "show-text", "large-icons"] }, { kind: "component", type: i6.NotificationsIndicatorComponent, selector: "lib-notifications-indicator" }, { kind: "component", type: i7.UserProfileMenuComponent, selector: "lib-user-profile-menu", inputs: ["show-user-name"] }] });
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellHeaderComponent, decorators: [{
|
|
95
95
|
type: Component,
|
|
96
|
-
args: [{ selector: 'lib-shell-header', template: "<nav>\n <div class=\"shell-header-paddings\">\n <div class=\"shell-header-border\">\n <div class=\"shell-header-menu-container\">\n <div class=\"shell-header-logo-container\">\n <div>\n <a href=\"#\" [routerLink]=\"['/']\"><img class=\"app-logo\" [src]=\"config.appLogo\" [alt]=\"config.appLogoAlt\" /></a>\n </div>\n </div>\n\n <div class=\"shell-header-link-container\">\n <div class=\"shell-header-link-container-inner\">\n <lib-nav-links-list\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link'\"\n [link-active-class]=\"'nav-link-active'\">\n </lib-nav-links-list>\n </div>\n </div>\n\n <div class=\"shell-header-md-visible\">\n\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\n\n <lib-nav-links-list\n [links]=\"links.profileActions\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'shell-header-menu-rounded-button'\"\n [link-active-class]=\"'shell-header-menu-rounded-button-active'\">\n </lib-nav-links-list>\n\n\n <!-- Profile dropdown -->\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\n </div>\n\n <!-- Notifications dropdown -->\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\n <lib-notifications-indicator></lib-notifications-indicator>\n </div>\n\n <!-- languages dropdown -->\n <div *ngIf=\"showLangs\" class=\"ml-4\">\n <lib-language-selection></lib-language-selection>\n </div>\n </div>\n </div>\n\n <div class=\"mobile-menu-button-container\">\n <!-- Mobile menu button -->\n <button type=\"button\"\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\n class=\"mobile-menu-button\"\n aria-controls=\"mobile-menu\"\n [attr.aria-expanded]=\"mobileMenuExpanded\">\n <span class=\"sr-only\">Open main menu</span>\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n [class]=\"mobileMenuExpanded ? 'hidden':'block h-6 w-6'\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M4 6h16M4 12h16M4 18h16\" />\n </svg>\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n [class]=\"mobileMenuExpanded ? 'block h-6 w-6':'hidden'\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M6 18L18 6M6 6l12 12\" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n <!-- Mobile menu, show/hide based on menu state. -->\n <div class=\"mobile-menu-container\" *ngIf=\"mobileMenuExpanded\" id=\"mobile-menu\">\n <lib-nav-links-list\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link-mobile'\"\n [link-active-class]=\"'nav-link-mobile-active'\"\n [container-class]=\"'mobile-menu-link-container'\">\n </lib-nav-links-list>\n\n <div *ngIf=\"!user\">\n <a href=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\n </a>\n </div>\n\n <div class=\"mobile-menu-user-info-container\" *ngIf=\"user\">\n <div class=\"mobile-menu-user-info-container-inner\">\n <div class=\"flex-shrink-0\">\n <span class=\"mobile-menu-avatar-container\">\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\n </span>\n </div>\n <div class=\"ml-3\">\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\n </div>\n <!--\n <button class=\"mobile-menu-rounded-button\">\n <span class=\"sr-only\">View notifications</span>\n <svg class=\"mobile-menu-rounded-button-icon-style\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\n </svg>\n </button>\n -->\n </div>\n </div>\n\n <lib-nav-links-list\n [links]=\"links.profile\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link-mobile'\"\n [link-active-class]=\"'nav-link-mobile-active'\"\n [container-class]=\"'mobile-menu-link-container'\">\n </lib-nav-links-list>\n </div>\n</nav>\n" }]
|
|
96
|
+
args: [{ selector: 'lib-shell-header', template: "<nav>\r\n <div class=\"shell-header-paddings\">\r\n <div class=\"shell-header-border\">\r\n <div class=\"shell-header-menu-container\">\r\n <div class=\"shell-header-logo-container\">\r\n <div>\r\n <a href=\"#\" [routerLink]=\"['/']\"><img class=\"app-logo\" [src]=\"config.appLogo\" [alt]=\"config.appLogoAlt\" /></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"shell-header-link-container\">\r\n <div class=\"shell-header-link-container-inner\">\r\n <lib-nav-links-list\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link'\"\r\n [link-active-class]=\"'nav-link-active'\">\r\n </lib-nav-links-list>\r\n </div>\r\n </div>\r\n\r\n <div class=\"shell-header-md-visible\">\r\n\r\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\r\n\r\n <lib-nav-links-list\r\n [links]=\"links.profileActions\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'shell-header-menu-rounded-button'\"\r\n [link-active-class]=\"'shell-header-menu-rounded-button-active'\">\r\n </lib-nav-links-list>\r\n\r\n\r\n <!-- Profile dropdown -->\r\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\r\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\r\n </div>\r\n\r\n <!-- Notifications dropdown -->\r\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\r\n <lib-notifications-indicator></lib-notifications-indicator>\r\n </div>\r\n\r\n <!-- languages dropdown -->\r\n <div *ngIf=\"showLangs\" class=\"ml-4\">\r\n <lib-language-selection></lib-language-selection>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mobile-menu-button-container\">\r\n <!-- Mobile menu button -->\r\n <button type=\"button\"\r\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\r\n class=\"mobile-menu-button\"\r\n aria-controls=\"mobile-menu\"\r\n [attr.aria-expanded]=\"mobileMenuExpanded\">\r\n <span class=\"sr-only\">Open main menu</span>\r\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\"\r\n [class]=\"mobileMenuExpanded ? 'hidden':'block h-6 w-6'\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M4 6h16M4 12h16M4 18h16\" />\r\n </svg>\r\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\"\r\n [class]=\"mobileMenuExpanded ? 'block h-6 w-6':'hidden'\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M6 18L18 6M6 6l12 12\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Mobile menu, show/hide based on menu state. -->\r\n <div class=\"mobile-menu-container\" *ngIf=\"mobileMenuExpanded\" id=\"mobile-menu\">\r\n <lib-nav-links-list\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-mobile'\"\r\n [link-active-class]=\"'nav-link-mobile-active'\"\r\n [container-class]=\"'mobile-menu-link-container'\">\r\n </lib-nav-links-list>\r\n\r\n <div *ngIf=\"!user\">\r\n <a href=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\r\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\r\n </a>\r\n </div>\r\n\r\n <div class=\"mobile-menu-user-info-container\" *ngIf=\"user\">\r\n <div class=\"mobile-menu-user-info-container-inner\">\r\n <div class=\"flex-shrink-0\">\r\n <span class=\"mobile-menu-avatar-container\">\r\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\r\n </span>\r\n </div>\r\n <div class=\"ml-3\">\r\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\r\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\r\n </div>\r\n <!--\r\n <button class=\"mobile-menu-rounded-button\">\r\n <span class=\"sr-only\">View notifications</span>\r\n <svg class=\"mobile-menu-rounded-button-icon-style\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\r\n </svg>\r\n </button>\r\n -->\r\n </div>\r\n </div>\r\n\r\n <lib-nav-links-list\r\n [links]=\"links.profile\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'nav-link-mobile'\"\r\n [link-active-class]=\"'nav-link-mobile-active'\"\r\n [container-class]=\"'mobile-menu-link-container'\">\r\n </lib-nav-links-list>\r\n </div>\r\n</nav>\r\n" }]
|
|
97
97
|
}], ctorParameters: function () { return [{ type: i8.AuthService, decorators: [{
|
|
98
98
|
type: Inject,
|
|
99
99
|
args: [AuthService]
|
|
@@ -127,4 +127,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
|
|
|
127
127
|
}], border: [{
|
|
128
128
|
type: Input
|
|
129
129
|
}] } });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtaGVhZGVyL3NoZWxsLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsY0FBYyxFQUFTLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUF5RCxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFRakYsTUFBTSxPQUFPLG9CQUFvQjtJQXVCL0IsWUFDaUMsV0FBd0IsRUFDN0IsTUFBYyxFQUNOLEtBQXFCLEVBQzFCLE1BQVcsRUFDZCxLQUFVO1FBSkwsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDN0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQUs7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBM0J0QywyQ0FBMkM7UUFDbkIscUJBQWdCLEdBQUcsTUFBTSxDQUFDO1FBQ2xE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Q0FBQyxJQUFTO1FBQzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekg7SUFDSCxDQUFDOztpSEFsRlUsb0JBQW9CLGtCQXdCckIsV0FBVyxhQUNYLE1BQU0sYUFDTixjQUFjLGFBQ2QsWUFBWSxhQUNaLFNBQVM7cUdBNUJSLG9CQUFvQiwrVkNoQmpDLHF5TEE4SUE7MkZEOUhhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFFRSxrQkFBa0I7OzBCQTJCekIsTUFBTTsyQkFBQyxXQUFXOzswQkFDbEIsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixNQUFNOzJCQUFDLGNBQWM7OzBCQUNyQixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFNBQVM7NENBMUJLLGdCQUFnQjtzQkFBdkMsS0FBSzt1QkFBQyxlQUFlO2dCQUVDLGtCQUFrQjtzQkFBeEMsS0FBSzt1QkFBQyxjQUFjO2dCQUVHLG9CQUFvQjtzQkFBM0MsS0FBSzt1QkFBQyxlQUFlO2dCQUVBLFVBQVU7c0JBQS9CLEtBQUs7dUJBQUMsYUFBYTtnQkFFQyxTQUFTO3NCQUE3QixLQUFLO3VCQUFDLFlBQVk7Z0JBQ1YsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2hlbGxMYXlvdXRUeXBlIH0gZnJvbSAnLi8uLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJ0BpbmRpY2UvbmctYXV0aCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBJbmplY3QsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnb2lkYy1jbGllbnQnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIEV2ZW50LCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIsIHNoYXJlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTmF2TGluayB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFQUF9MSU5LUywgU0hFTExfQ09ORklHIH0gZnJvbSAnLi4vLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgaXNPYnNlcnZhYmxlLCBvYnNlcnZhYmxlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaGVsbC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTaGVsbEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3NlY3Rpb24tbGlua3MnKSBzZWN0aW9uTGlua3NQYXRoID0gJ21haW4nO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgncHJvZmlsZS1tZW51JykgcHJvZmlsZU1lbnVWaXNpYmxlID0gdHJ1ZTtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3Nob3ctdXNlck5hbWUnKSBzaG93VXNlck5hbWVPbkhlYWRlcjogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgnc2hvdy1hbGVydHMnKSBzaG93QWxlcnRzOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdzaG93LWxhbmdzJykgc2hvd0xhbmdzOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGJvcmRlciA9IHRydWU7XG4gIHB1YmxpYyBzZWN0aW9uTGlua3M6IE9ic2VydmFibGU8TmF2TGlua1tdPiA9IG9mKFtdKTtcbiAgcHVibGljIG1vYmlsZU1lbnVFeHBhbmRlZCA9IGZhbHNlO1xuICBwdWJsaWMgdXNlck1lbnVFeHBhbmRlZCA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgcm91dGVTdWJqZWN0OiBPYnNlcnZhYmxlPEV2ZW50PjtcbiAgcHJvdGVjdGVkIHJvdXRlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwcm90ZWN0ZWQgdXNlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwcm90ZWN0ZWQgc3RhdHVzU3ViJDogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyB1c2VyOiBVc2VyIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyBhdmF0YXJOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIGFjdGl2ZUZyYWdtZW50OiBhbnkgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEF1dGhTZXJ2aWNlKSBwcm90ZWN0ZWQgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgIEBJbmplY3QoUm91dGVyKSBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXG4gICAgQEluamVjdChBY3RpdmF0ZWRSb3V0ZSkgcHJvdGVjdGVkIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBASW5qZWN0KFNIRUxMX0NPTkZJRykgcHVibGljIGNvbmZpZzogYW55LFxuICAgIEBJbmplY3QoQVBQX0xJTktTKSBwdWJsaWMgbGlua3M6IGFueSkge1xuICAgIHRoaXMucm91dGVTdWJqZWN0ID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlRnJhZ21lbnQgPSB0aGlzLnJvdXRlLmZyYWdtZW50LnBpcGUoc2hhcmUoKSk7XG4gICAgdGhpcy5zZWN0aW9uTGlua3MgPSB0aGlzLmxpbmtzW3RoaXMuc2VjdGlvbkxpbmtzUGF0aF0gYXMgT2JzZXJ2YWJsZTxOYXZMaW5rW10+O1xuICAgIHRoaXMucm91dGVyU3ViJCA9IHRoaXMucm91dGVTdWJqZWN0LnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIHRoaXMubW9iaWxlTWVudUV4cGFuZGVkID0gZmFsc2U7XG4gICAgICB0aGlzLnVzZXJNZW51RXhwYW5kZWQgPSBmYWxzZTtcbiAgICB9KTtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvYWRVc2VyKCkuc3Vic2NyaWJlKCh1c2VyKSA9PiB7XG4gICAgICB0aGlzLnNldEN1cnJlbnRVc2VyKHVzZXIpO1xuICAgIH0sIGVycm9yID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH0pO1xuICAgIC8vIERldGVjdCB1c2VyIGNoYW5nZXMgYW5kIGRpc3BsYXkgLyBvciBub3QgdXNlciBpbmZvIGFjY29yZGluZ2x5Li4uXG4gICAgdGhpcy51c2VyU3ViJCA9IHRoaXMuYXV0aFNlcnZpY2UudXNlciQuc3Vic2NyaWJlKCh1c2VyOiBhbnkpID0+IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdTaGVsbEhlYWRlckNvbXBvbmVudCB1c2VyIHN1YnNjcmlwdGlvbicpO1xuICAgICAgdGhpcy5zZXRDdXJyZW50VXNlcih1c2VyKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMucm91dGVyU3ViJCkge1xuICAgICAgdGhpcy5yb3V0ZXJTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIC8vIFRPRE86IGNoZWNrIGF1dGhlbnRpY2F0ZWQgdXNlciBoZXJlIGJlZm9yZSB3ZSBzdGFydCBwb2xsaW5nIHNlcnZlciBzdGF0dXNcbiAgICBpZiAodGhpcy5zdGF0dXNTdWIkKSB7XG4gICAgICB0aGlzLnN0YXR1c1N1YiQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudXNlclN1YiQpIHtcbiAgICAgIHRoaXMudXNlclN1YiQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dHlwZWRlZlxuICBwdWJsaWMgb25DbGlja091dHNpZGUoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnVzZXJNZW51RXhwYW5kZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzaWduaW4oZXZlbnQ6IGFueSB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIHRoaXMuYXV0aFNlcnZpY2Uuc2lnbmluUmVkaXJlY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q3VycmVudFVzZXIodXNlcjogYW55KTogdm9pZCB7XG4gICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICBpZiAodGhpcy51c2VyICYmIHRoaXMudXNlci5wcm9maWxlKSB7XG4gICAgICB0aGlzLmF2YXRhck5hbWUgPSBgJHt0aGlzLnVzZXIucHJvZmlsZS5naXZlbl9uYW1lPy5jaGFyQXQoMCl9JHt0aGlzLnVzZXIucHJvZmlsZS5mYW1pbHlfbmFtZT8uY2hhckF0KDApfWAudG9VcHBlckNhc2UoKTtcbiAgICB9XG4gIH1cblxufVxuXG4iLCI8bmF2PlxuICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLXBhZGRpbmdzXCI+XG4gICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1ib3JkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItbWVudS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1sb2dvLWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YSBocmVmPVwiI1wiIFtyb3V0ZXJMaW5rXT1cIlsnLyddXCI+PGltZyBjbGFzcz1cImFwcC1sb2dvXCIgW3NyY109XCJjb25maWcuYXBwTG9nb1wiIFthbHRdPVwiY29uZmlnLmFwcExvZ29BbHRcIiAvPjwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1saW5rLWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItbGluay1jb250YWluZXItaW5uZXJcIj5cbiAgICAgICAgICAgIDxsaWItbmF2LWxpbmtzLWxpc3RcbiAgICAgICAgICAgICAgW2xpbmtzXT1cInNlY3Rpb25MaW5rc1wiXG4gICAgICAgICAgICAgIFthY3RpdmUtZnJhZ21lbnRdPVwiYWN0aXZlRnJhZ21lbnRcIlxuICAgICAgICAgICAgICBbbGluay1jbGFzc109XCInbmF2LWxpbmsnXCJcbiAgICAgICAgICAgICAgW2xpbmstYWN0aXZlLWNsYXNzXT1cIiduYXYtbGluay1hY3RpdmUnXCI+XG4gICAgICAgICAgICA8L2xpYi1uYXYtbGlua3MtbGlzdD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1tZC12aXNpYmxlXCI+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLWxpbmtzLWZhci1jb250YWluZXJcIiAoY2xpY2tPdXRzaWRlKT1cIm9uQ2xpY2tPdXRzaWRlKCRldmVudClcIj5cblxuICAgICAgICAgICAgPGxpYi1uYXYtbGlua3MtbGlzdFxuICAgICAgICAgICAgICBbbGlua3NdPVwibGlua3MucHJvZmlsZUFjdGlvbnNcIlxuICAgICAgICAgICAgICBbYWN0aXZlLWZyYWdtZW50XT1cImFjdGl2ZUZyYWdtZW50XCJcbiAgICAgICAgICAgICAgW2xpbmstY2xhc3NdPVwiJ3NoZWxsLWhlYWRlci1tZW51LXJvdW5kZWQtYnV0dG9uJ1wiXG4gICAgICAgICAgICAgIFtsaW5rLWFjdGl2ZS1jbGFzc109XCInc2hlbGwtaGVhZGVyLW1lbnUtcm91bmRlZC1idXR0b24tYWN0aXZlJ1wiPlxuICAgICAgICAgICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XG5cblxuICAgICAgICAgICAgPCEtLSBQcm9maWxlIGRyb3Bkb3duIC0tPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInByb2ZpbGVNZW51VmlzaWJsZVwiIGNsYXNzPVwibWwtNFwiPlxuICAgICAgICAgICAgICA8bGliLXVzZXItcHJvZmlsZS1tZW51IFtzaG93LXVzZXItbmFtZV09XCJzaG93VXNlck5hbWVPbkhlYWRlclwiPjwvbGliLXVzZXItcHJvZmlsZS1tZW51PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwhLS0gTm90aWZpY2F0aW9ucyBkcm9wZG93biAtLT5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93QWxlcnRzICYmIHVzZXJcIiBjbGFzcz1cIm1sLTRcIj5cbiAgICAgICAgICAgICAgPGxpYi1ub3RpZmljYXRpb25zLWluZGljYXRvcj48L2xpYi1ub3RpZmljYXRpb25zLWluZGljYXRvcj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8IS0tIGxhbmd1YWdlcyBkcm9wZG93biAtLT5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93TGFuZ3NcIiBjbGFzcz1cIm1sLTRcIj5cbiAgICAgICAgICAgICAgPGxpYi1sYW5ndWFnZS1zZWxlY3Rpb24+PC9saWItbGFuZ3VhZ2Utc2VsZWN0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS1idXR0b24tY29udGFpbmVyXCI+XG4gICAgICAgICAgPCEtLSBNb2JpbGUgbWVudSBidXR0b24gLS0+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJtb2JpbGVNZW51RXhwYW5kZWQgPSAhbW9iaWxlTWVudUV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibW9iaWxlLW1lbnUtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJtb2JpbGUtbWVudVwiXG4gICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIm1vYmlsZU1lbnVFeHBhbmRlZFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+T3BlbiBtYWluIG1lbnU8L3NwYW4+XG4gICAgICAgICAgICA8IS0tSGVyb2ljb24gbmFtZTogb3V0bGluZS9tZW51ICBNZW51IG9wZW46IFwiaGlkZGVuXCIsIE1lbnUgY2xvc2VkOiBcImJsb2NrXCItLT5cbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzc109XCJtb2JpbGVNZW51RXhwYW5kZWQgPyAnaGlkZGVuJzonYmxvY2sgaC02IHctNidcIj5cbiAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNNCA2aDE2TTQgMTJoMTZNNCAxOGgxNlwiIC8+XG4gICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwhLS1IZXJvaWNvbiBuYW1lOiBvdXRsaW5lL3ggTWVudSBvcGVuOiBcImJsb2NrXCIsIE1lbnUgY2xvc2VkOiBcImhpZGRlblwiLS0+XG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICBbY2xhc3NdPVwibW9iaWxlTWVudUV4cGFuZGVkID8gJ2Jsb2NrIGgtNiB3LTYnOidoaWRkZW4nXCI+XG4gICAgICAgICAgICAgIDxwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIlxuICAgICAgICAgICAgICAgICAgICBkPVwiTTYgMThMMTggNk02IDZsMTIgMTJcIiAvPlxuICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8IS0tIE1vYmlsZSBtZW51LCBzaG93L2hpZGUgYmFzZWQgb24gbWVudSBzdGF0ZS4gLS0+XG4gIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS1jb250YWluZXJcIiAqbmdJZj1cIm1vYmlsZU1lbnVFeHBhbmRlZFwiIGlkPVwibW9iaWxlLW1lbnVcIj5cbiAgICA8bGliLW5hdi1saW5rcy1saXN0XG4gICAgICBbbGlua3NdPVwic2VjdGlvbkxpbmtzXCJcbiAgICAgIFthY3RpdmUtZnJhZ21lbnRdPVwiYWN0aXZlRnJhZ21lbnRcIlxuICAgICAgW2xpbmstY2xhc3NdPVwiJ25hdi1saW5rLW1vYmlsZSdcIlxuICAgICAgW2xpbmstYWN0aXZlLWNsYXNzXT1cIiduYXYtbGluay1tb2JpbGUtYWN0aXZlJ1wiXG4gICAgICBbY29udGFpbmVyLWNsYXNzXT1cIidtb2JpbGUtbWVudS1saW5rLWNvbnRhaW5lcidcIj5cbiAgICA8L2xpYi1uYXYtbGlua3MtbGlzdD5cblxuICAgIDxkaXYgKm5nSWY9XCIhdXNlclwiPlxuICAgICAgPGEgaHJlZj1cIiNcIiAoY2xpY2spPVwic2lnbmluKCRldmVudClcIiBjbGFzcz1cIm5hdi1saW5rLW1vYmlsZVwiPlxuICAgICAgICA8aSBjbGFzcz1cIm1zLUljb24gbXMtSWNvbi0tU2lnbmluIG1yLTJcIj48L2k+zqPPjc69zrTOtc+DzrdcbiAgICAgIDwvYT5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLWluZm8tY29udGFpbmVyXCIgKm5nSWY9XCJ1c2VyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibW9iaWxlLW1lbnUtdXNlci1pbmZvLWNvbnRhaW5lci1pbm5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibW9iaWxlLW1lbnUtYXZhdGFyLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtb2JpbGUtbWVudS1hdmF0YXItbmFtZVwiPnt7IHRoaXMuYXZhdGFyTmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWwtM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLW5hbWVcIj57eyB1c2VyLnByb2ZpbGUubmFtZSB9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLWVtYWlsXCI+e3sgdXNlci5wcm9maWxlLmVtYWlsIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJtb2JpbGUtbWVudS1yb3VuZGVkLWJ1dHRvblwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlZpZXcgbm90aWZpY2F0aW9uczwvc3Bhbj5cbiAgICAgICAgICA8c3ZnIGNsYXNzPVwibW9iaWxlLW1lbnUtcm91bmRlZC1idXR0b24taWNvbi1zdHlsZVwiXG4gICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMTUgMTdoNWwtMS40MDUtMS40MDVBMi4wMzIgMi4wMzIgMCAwMTE4IDE0LjE1OFYxMWE2LjAwMiA2LjAwMiAwIDAwLTQtNS42NTlWNWEyIDIgMCAxMC00IDB2LjM0MUM3LjY3IDYuMTY1IDYgOC4zODggNiAxMXYzLjE1OWMwIC41MzgtLjIxNCAxLjA1NS0uNTk1IDEuNDM2TDQgMTdoNW02IDB2MWEzIDMgMCAxMS02IDB2LTFtNiAwSDlcIiAvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgLS0+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxsaWItbmF2LWxpbmtzLWxpc3RcbiAgICAgICAgICBbbGlua3NdPVwibGlua3MucHJvZmlsZVwiXG4gICAgICAgICAgW2FjdGl2ZS1mcmFnbWVudF09XCJhY3RpdmVGcmFnbWVudFwiXG4gICAgICAgICAgW2xpbmstY2xhc3NdPVwiJ25hdi1saW5rLW1vYmlsZSdcIlxuICAgICAgICAgIFtsaW5rLWFjdGl2ZS1jbGFzc109XCInbmF2LWxpbmstbW9iaWxlLWFjdGl2ZSdcIlxuICAgICAgICAgIFtjb250YWluZXItY2xhc3NdPVwiJ21vYmlsZS1tZW51LWxpbmstY29udGFpbmVyJ1wiPlxuICAgICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XG4gIDwvZGl2PlxuPC9uYXY+XG4iXX0=
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtaGVhZGVyL3NoZWxsLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsY0FBYyxFQUFTLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUF5RCxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFRakYsTUFBTSxPQUFPLG9CQUFvQjtJQXVCL0IsWUFDaUMsV0FBd0IsRUFDN0IsTUFBYyxFQUNOLEtBQXFCLEVBQzFCLE1BQVcsRUFDZCxLQUFVO1FBSkwsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDN0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQUs7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBM0J0QywyQ0FBMkM7UUFDbkIscUJBQWdCLEdBQUcsTUFBTSxDQUFDO1FBQ2xELDJDQUEyQztRQUNwQix1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDakQsMkNBQTJDO1FBQ25CLHlCQUFvQixHQUF3QixLQUFLLENBQUM7UUFDMUUsMkNBQTJDO1FBQ3JCLGVBQVUsR0FBd0IsS0FBSyxDQUFDO1FBQzlELDJDQUEyQztRQUN0QixjQUFTLEdBQXdCLEtBQUssQ0FBQztRQUNuRCxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGlCQUFZLEdBQTBCLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3Qyx1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDM0IscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBRXRCLGVBQVUsR0FBd0IsSUFBSSxDQUFDO1FBQ3ZDLGFBQVEsR0FBd0IsSUFBSSxDQUFDO1FBQ3JDLGVBQVUsR0FBd0IsSUFBSSxDQUFDO1FBQzFDLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBQ3pCLGVBQVUsR0FBa0IsSUFBSSxDQUFDO1FBQ2pDLG1CQUFjLEdBQWUsSUFBSSxDQUFDO1FBUXZDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxZQUFZLGVBQWUsQ0FBQyxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQTBCLENBQUM7UUFDL0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3RELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFDaEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDN0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDVCxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDN0QseURBQXlEO1lBQ3pELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUVULElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQy9CO1FBQ0QsNEVBQTRFO1FBQzVFLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQy9CO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQzVCLGNBQWMsQ0FBQyxNQUFXO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUE2QjtRQUN6QyxJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN4QjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVPLGNBQWMsQ0FBQyxJQUFTO1FBQzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekg7SUFDSCxDQUFDOztpSEFsRlUsb0JBQW9CLGtCQXdCckIsV0FBVyxhQUNYLE1BQU0sYUFDTixjQUFjLGFBQ2QsWUFBWSxhQUNaLFNBQVM7cUdBNUJSLG9CQUFvQiwrVkNoQmpDLGlrTUE4SUE7MkZEOUhhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFFRSxrQkFBa0I7OzBCQTJCekIsTUFBTTsyQkFBQyxXQUFXOzswQkFDbEIsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixNQUFNOzJCQUFDLGNBQWM7OzBCQUNyQixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFNBQVM7NENBMUJLLGdCQUFnQjtzQkFBdkMsS0FBSzt1QkFBQyxlQUFlO2dCQUVDLGtCQUFrQjtzQkFBeEMsS0FBSzt1QkFBQyxjQUFjO2dCQUVHLG9CQUFvQjtzQkFBM0MsS0FBSzt1QkFBQyxlQUFlO2dCQUVBLFVBQVU7c0JBQS9CLEtBQUs7dUJBQUMsYUFBYTtnQkFFQyxTQUFTO3NCQUE3QixLQUFLO3VCQUFDLFlBQVk7Z0JBQ1YsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2hlbGxMYXlvdXRUeXBlIH0gZnJvbSAnLi8uLi8uLi8uLi90eXBlcyc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGluZGljZS9uZy1hdXRoJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgSW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnb2lkYy1jbGllbnQnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgRXZlbnQsIE5hdmlnYXRpb25TdGFydCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZmlsdGVyLCBzaGFyZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTmF2TGluayB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcclxuaW1wb3J0IHsgQVBQX0xJTktTLCBTSEVMTF9DT05GSUcgfSBmcm9tICcuLi8uLi8uLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGlzT2JzZXJ2YWJsZSwgb2JzZXJ2YWJsZSwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdsaWItc2hlbGwtaGVhZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2hlbGwtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNoZWxsSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcclxuICBASW5wdXQoJ3NlY3Rpb24tbGlua3MnKSBzZWN0aW9uTGlua3NQYXRoID0gJ21haW4nO1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcclxuICBASW5wdXQoJ3Byb2ZpbGUtbWVudScpIHByb2ZpbGVNZW51VmlzaWJsZSA9IHRydWU7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgnc2hvdy11c2VyTmFtZScpIHNob3dVc2VyTmFtZU9uSGVhZGVyOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgnc2hvdy1hbGVydHMnKSBzaG93QWxlcnRzOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxyXG4gIEBJbnB1dCgnc2hvdy1sYW5ncycpIHNob3dMYW5nczogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGJvcmRlciA9IHRydWU7XHJcbiAgcHVibGljIHNlY3Rpb25MaW5rczogT2JzZXJ2YWJsZTxOYXZMaW5rW10+ID0gb2YoW10pO1xyXG4gIHB1YmxpYyBtb2JpbGVNZW51RXhwYW5kZWQgPSBmYWxzZTtcclxuICBwdWJsaWMgdXNlck1lbnVFeHBhbmRlZCA9IGZhbHNlO1xyXG4gIHByb3RlY3RlZCByb3V0ZVN1YmplY3Q6IE9ic2VydmFibGU8RXZlbnQ+O1xyXG4gIHByb3RlY3RlZCByb3V0ZXJTdWIkOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcclxuICBwcm90ZWN0ZWQgdXNlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xyXG4gIHByb3RlY3RlZCBzdGF0dXNTdWIkOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcclxuICBwdWJsaWMgdXNlcjogVXNlciB8IG51bGwgPSBudWxsO1xyXG4gIHB1YmxpYyBhdmF0YXJOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBwdWJsaWMgYWN0aXZlRnJhZ21lbnQ6IGFueSB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoQXV0aFNlcnZpY2UpIHByb3RlY3RlZCBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBASW5qZWN0KFJvdXRlcikgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxyXG4gICAgQEluamVjdChBY3RpdmF0ZWRSb3V0ZSkgcHJvdGVjdGVkIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIEBJbmplY3QoU0hFTExfQ09ORklHKSBwdWJsaWMgY29uZmlnOiBhbnksXHJcbiAgICBASW5qZWN0KEFQUF9MSU5LUykgcHVibGljIGxpbmtzOiBhbnkpIHtcclxuICAgIHRoaXMucm91dGVTdWJqZWN0ID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVGcmFnbWVudCA9IHRoaXMucm91dGUuZnJhZ21lbnQucGlwZShzaGFyZSgpKTtcclxuICAgIHRoaXMuc2VjdGlvbkxpbmtzID0gdGhpcy5saW5rc1t0aGlzLnNlY3Rpb25MaW5rc1BhdGhdIGFzIE9ic2VydmFibGU8TmF2TGlua1tdPjtcclxuICAgIHRoaXMucm91dGVyU3ViJCA9IHRoaXMucm91dGVTdWJqZWN0LnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgdGhpcy5tb2JpbGVNZW51RXhwYW5kZWQgPSBmYWxzZTtcclxuICAgICAgdGhpcy51c2VyTWVudUV4cGFuZGVkID0gZmFsc2U7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9hZFVzZXIoKS5zdWJzY3JpYmUoKHVzZXIpID0+IHtcclxuICAgICAgdGhpcy5zZXRDdXJyZW50VXNlcih1c2VyKTtcclxuICAgIH0sIGVycm9yID0+IHtcclxuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgICB9KTtcclxuICAgIC8vIERldGVjdCB1c2VyIGNoYW5nZXMgYW5kIGRpc3BsYXkgLyBvciBub3QgdXNlciBpbmZvIGFjY29yZGluZ2x5Li4uXHJcbiAgICB0aGlzLnVzZXJTdWIkID0gdGhpcy5hdXRoU2VydmljZS51c2VyJC5zdWJzY3JpYmUoKHVzZXI6IGFueSkgPT4ge1xyXG4gICAgICAvLyBjb25zb2xlLmxvZygnU2hlbGxIZWFkZXJDb21wb25lbnQgdXNlciBzdWJzY3JpcHRpb24nKTtcclxuICAgICAgdGhpcy5zZXRDdXJyZW50VXNlcih1c2VyKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMucm91dGVyU3ViJCkge1xyXG4gICAgICB0aGlzLnJvdXRlclN1YiQudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIC8vIFRPRE86IGNoZWNrIGF1dGhlbnRpY2F0ZWQgdXNlciBoZXJlIGJlZm9yZSB3ZSBzdGFydCBwb2xsaW5nIHNlcnZlciBzdGF0dXNcclxuICAgIGlmICh0aGlzLnN0YXR1c1N1YiQpIHtcclxuICAgICAgdGhpcy5zdGF0dXNTdWIkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy51c2VyU3ViJCkge1xyXG4gICAgICB0aGlzLnVzZXJTdWIkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dHlwZWRlZlxyXG4gIHB1YmxpYyBvbkNsaWNrT3V0c2lkZSgkZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy51c2VyTWVudUV4cGFuZGVkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2lnbmluKGV2ZW50OiBhbnkgfCBudWxsIHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICAgIHRoaXMuYXV0aFNlcnZpY2Uuc2lnbmluUmVkaXJlY3QoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0Q3VycmVudFVzZXIodXNlcjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnVzZXIgPSB1c2VyO1xyXG4gICAgaWYgKHRoaXMudXNlciAmJiB0aGlzLnVzZXIucHJvZmlsZSkge1xyXG4gICAgICB0aGlzLmF2YXRhck5hbWUgPSBgJHt0aGlzLnVzZXIucHJvZmlsZS5naXZlbl9uYW1lPy5jaGFyQXQoMCl9JHt0aGlzLnVzZXIucHJvZmlsZS5mYW1pbHlfbmFtZT8uY2hhckF0KDApfWAudG9VcHBlckNhc2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4iLCI8bmF2PlxyXG4gIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItcGFkZGluZ3NcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItYm9yZGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItbWVudS1jb250YWluZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLWxvZ28tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8YSBocmVmPVwiI1wiIFtyb3V0ZXJMaW5rXT1cIlsnLyddXCI+PGltZyBjbGFzcz1cImFwcC1sb2dvXCIgW3NyY109XCJjb25maWcuYXBwTG9nb1wiIFthbHRdPVwiY29uZmlnLmFwcExvZ29BbHRcIiAvPjwvYT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLWxpbmstY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLWxpbmstY29udGFpbmVyLWlubmVyXCI+XHJcbiAgICAgICAgICAgIDxsaWItbmF2LWxpbmtzLWxpc3RcclxuICAgICAgICAgICAgICBbbGlua3NdPVwic2VjdGlvbkxpbmtzXCJcclxuICAgICAgICAgICAgICBbYWN0aXZlLWZyYWdtZW50XT1cImFjdGl2ZUZyYWdtZW50XCJcclxuICAgICAgICAgICAgICBbbGluay1jbGFzc109XCInbmF2LWxpbmsnXCJcclxuICAgICAgICAgICAgICBbbGluay1hY3RpdmUtY2xhc3NdPVwiJ25hdi1saW5rLWFjdGl2ZSdcIj5cclxuICAgICAgICAgICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1tZC12aXNpYmxlXCI+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1saW5rcy1mYXItY29udGFpbmVyXCIgKGNsaWNrT3V0c2lkZSk9XCJvbkNsaWNrT3V0c2lkZSgkZXZlbnQpXCI+XHJcblxyXG4gICAgICAgICAgICA8bGliLW5hdi1saW5rcy1saXN0XHJcbiAgICAgICAgICAgICAgW2xpbmtzXT1cImxpbmtzLnByb2ZpbGVBY3Rpb25zXCJcclxuICAgICAgICAgICAgICBbYWN0aXZlLWZyYWdtZW50XT1cImFjdGl2ZUZyYWdtZW50XCJcclxuICAgICAgICAgICAgICBbbGluay1jbGFzc109XCInc2hlbGwtaGVhZGVyLW1lbnUtcm91bmRlZC1idXR0b24nXCJcclxuICAgICAgICAgICAgICBbbGluay1hY3RpdmUtY2xhc3NdPVwiJ3NoZWxsLWhlYWRlci1tZW51LXJvdW5kZWQtYnV0dG9uLWFjdGl2ZSdcIj5cclxuICAgICAgICAgICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XHJcblxyXG5cclxuICAgICAgICAgICAgPCEtLSBQcm9maWxlIGRyb3Bkb3duIC0tPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicHJvZmlsZU1lbnVWaXNpYmxlXCIgY2xhc3M9XCJtbC00XCI+XHJcbiAgICAgICAgICAgICAgPGxpYi11c2VyLXByb2ZpbGUtbWVudSBbc2hvdy11c2VyLW5hbWVdPVwic2hvd1VzZXJOYW1lT25IZWFkZXJcIj48L2xpYi11c2VyLXByb2ZpbGUtbWVudT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8IS0tIE5vdGlmaWNhdGlvbnMgZHJvcGRvd24gLS0+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93QWxlcnRzICYmIHVzZXJcIiBjbGFzcz1cIm1sLTRcIj5cclxuICAgICAgICAgICAgICA8bGliLW5vdGlmaWNhdGlvbnMtaW5kaWNhdG9yPjwvbGliLW5vdGlmaWNhdGlvbnMtaW5kaWNhdG9yPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwhLS0gbGFuZ3VhZ2VzIGRyb3Bkb3duIC0tPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd0xhbmdzXCIgY2xhc3M9XCJtbC00XCI+XHJcbiAgICAgICAgICAgICAgPGxpYi1sYW5ndWFnZS1zZWxlY3Rpb24+PC9saWItbGFuZ3VhZ2Utc2VsZWN0aW9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9iaWxlLW1lbnUtYnV0dG9uLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgPCEtLSBNb2JpbGUgbWVudSBidXR0b24gLS0+XHJcbiAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwibW9iaWxlTWVudUV4cGFuZGVkID0gIW1vYmlsZU1lbnVFeHBhbmRlZFwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibW9iaWxlLW1lbnUtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz1cIm1vYmlsZS1tZW51XCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJtb2JpbGVNZW51RXhwYW5kZWRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+T3BlbiBtYWluIG1lbnU8L3NwYW4+XHJcbiAgICAgICAgICAgIDwhLS1IZXJvaWNvbiBuYW1lOiBvdXRsaW5lL21lbnUgIE1lbnUgb3BlbjogXCJoaWRkZW5cIiwgTWVudSBjbG9zZWQ6IFwiYmxvY2tcIi0tPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcclxuICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIm1vYmlsZU1lbnVFeHBhbmRlZCA/ICdoaWRkZW4nOidibG9jayBoLTYgdy02J1wiPlxyXG4gICAgICAgICAgICAgIDxwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCJcclxuICAgICAgICAgICAgICAgICAgICBkPVwiTTQgNmgxNk00IDEyaDE2TTQgMThoMTZcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgPCEtLUhlcm9pY29uIG5hbWU6IG91dGxpbmUveCBNZW51IG9wZW46IFwiYmxvY2tcIiwgTWVudSBjbG9zZWQ6IFwiaGlkZGVuXCItLT5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCJcclxuICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgIFtjbGFzc109XCJtb2JpbGVNZW51RXhwYW5kZWQgPyAnYmxvY2sgaC02IHctNic6J2hpZGRlbidcIj5cclxuICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgZD1cIk02IDE4TDE4IDZNNiA2bDEyIDEyXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8IS0tIE1vYmlsZSBtZW51LCBzaG93L2hpZGUgYmFzZWQgb24gbWVudSBzdGF0ZS4gLS0+XHJcbiAgPGRpdiBjbGFzcz1cIm1vYmlsZS1tZW51LWNvbnRhaW5lclwiICpuZ0lmPVwibW9iaWxlTWVudUV4cGFuZGVkXCIgaWQ9XCJtb2JpbGUtbWVudVwiPlxyXG4gICAgPGxpYi1uYXYtbGlua3MtbGlzdFxyXG4gICAgICBbbGlua3NdPVwic2VjdGlvbkxpbmtzXCJcclxuICAgICAgW2FjdGl2ZS1mcmFnbWVudF09XCJhY3RpdmVGcmFnbWVudFwiXHJcbiAgICAgIFtsaW5rLWNsYXNzXT1cIiduYXYtbGluay1tb2JpbGUnXCJcclxuICAgICAgW2xpbmstYWN0aXZlLWNsYXNzXT1cIiduYXYtbGluay1tb2JpbGUtYWN0aXZlJ1wiXHJcbiAgICAgIFtjb250YWluZXItY2xhc3NdPVwiJ21vYmlsZS1tZW51LWxpbmstY29udGFpbmVyJ1wiPlxyXG4gICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cIiF1c2VyXCI+XHJcbiAgICAgIDxhIGhyZWY9XCIjXCIgKGNsaWNrKT1cInNpZ25pbigkZXZlbnQpXCIgY2xhc3M9XCJuYXYtbGluay1tb2JpbGVcIj5cclxuICAgICAgICA8aSBjbGFzcz1cIm1zLUljb24gbXMtSWNvbi0tU2lnbmluIG1yLTJcIj48L2k+zqPPjc69zrTOtc+DzrdcclxuICAgICAgPC9hPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1tZW51LXVzZXItaW5mby1jb250YWluZXJcIiAqbmdJZj1cInVzZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1tZW51LXVzZXItaW5mby1jb250YWluZXItaW5uZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMFwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJtb2JpbGUtbWVudS1hdmF0YXItY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibW9iaWxlLW1lbnUtYXZhdGFyLW5hbWVcIj57eyB0aGlzLmF2YXRhck5hbWUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLW5hbWVcIj57eyB1c2VyLnByb2ZpbGUubmFtZSB9fTwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1tZW51LXVzZXItZW1haWxcIj57eyB1c2VyLnByb2ZpbGUuZW1haWwgfX08L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tXHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm1vYmlsZS1tZW51LXJvdW5kZWQtYnV0dG9uXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5WaWV3IG5vdGlmaWNhdGlvbnM8L3NwYW4+XHJcbiAgICAgICAgICA8c3ZnIGNsYXNzPVwibW9iaWxlLW1lbnUtcm91bmRlZC1idXR0b24taWNvbi1zdHlsZVwiXHJcbiAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMTUgMTdoNWwtMS40MDUtMS40MDVBMi4wMzIgMi4wMzIgMCAwMTE4IDE0LjE1OFYxMWE2LjAwMiA2LjAwMiAwIDAwLTQtNS42NTlWNWEyIDIgMCAxMC00IDB2LjM0MUM3LjY3IDYuMTY1IDYgOC4zODggNiAxMXYzLjE1OWMwIC41MzgtLjIxNCAxLjA1NS0uNTk1IDEuNDM2TDQgMTdoNW02IDB2MWEzIDMgMCAxMS02IDB2LTFtNiAwSDlcIiAvPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgLS0+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGxpYi1uYXYtbGlua3MtbGlzdFxyXG4gICAgICAgICAgW2xpbmtzXT1cImxpbmtzLnByb2ZpbGVcIlxyXG4gICAgICAgICAgW2FjdGl2ZS1mcmFnbWVudF09XCJhY3RpdmVGcmFnbWVudFwiXHJcbiAgICAgICAgICBbbGluay1jbGFzc109XCInbmF2LWxpbmstbW9iaWxlJ1wiXHJcbiAgICAgICAgICBbbGluay1hY3RpdmUtY2xhc3NdPVwiJ25hdi1saW5rLW1vYmlsZS1hY3RpdmUnXCJcclxuICAgICAgICAgIFtjb250YWluZXItY2xhc3NdPVwiJ21vYmlsZS1tZW51LWxpbmstY29udGFpbmVyJ1wiPlxyXG4gICAgICA8L2xpYi1uYXYtbGlua3MtbGlzdD5cclxuICA8L2Rpdj5cclxuPC9uYXY+XHJcbiJdfQ==
|
|
@@ -1,58 +1,50 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DefaultShellConfig } from './../../../types';
|
|
3
|
-
import { Component, Inject, ViewChildren } from '@angular/core';
|
|
4
|
-
import { DOCUMENT } from '@angular/common';
|
|
1
|
+
import { Component, Inject, ViewChildren, Input } from '@angular/core';
|
|
5
2
|
import { ActivationStart } from '@angular/router';
|
|
6
3
|
import { filter } from 'rxjs/operators';
|
|
4
|
+
import { SHELL_CONFIG } from './../../../tokens';
|
|
5
|
+
import { DefaultShellConfig } from './../../../types';
|
|
7
6
|
import { DynamicComponentHostDirective } from '../../../directives/dynamic-component-host.directive';
|
|
8
7
|
import * as i0 from "@angular/core";
|
|
9
8
|
import * as i1 from "@angular/router";
|
|
10
|
-
import * as i2 from "
|
|
11
|
-
import * as i3 from "
|
|
12
|
-
import * as i4 from "
|
|
13
|
-
import * as i5 from "
|
|
14
|
-
import * as i6 from "
|
|
15
|
-
import * as i7 from "
|
|
9
|
+
import * as i2 from "../../../services/component-loader/component-loader.factory";
|
|
10
|
+
import * as i3 from "@angular/common";
|
|
11
|
+
import * as i4 from "../shell-sidebar-layout/shell-sidebar-layout.component";
|
|
12
|
+
import * as i5 from "../shell-stacked-layout/shell-stacked-layout.component";
|
|
13
|
+
import * as i6 from "../../../controls/side-pane/side-pane.component";
|
|
14
|
+
import * as i7 from "../../../controls/toaster/toaster-container.component";
|
|
16
15
|
export class ShellLayoutComponent {
|
|
17
|
-
constructor(
|
|
18
|
-
this.
|
|
19
|
-
this.
|
|
20
|
-
this.
|
|
21
|
-
this.
|
|
22
|
-
this.
|
|
23
|
-
this.dynamicComponentHosts = null;
|
|
16
|
+
constructor(_router, _componentLoaderFactory, _config) {
|
|
17
|
+
this._router = _router;
|
|
18
|
+
this._componentLoaderFactory = _componentLoaderFactory;
|
|
19
|
+
this._config = _config;
|
|
20
|
+
this._dynamicComponentHosts = null;
|
|
21
|
+
this._routerSub$ = null;
|
|
24
22
|
this.showRightPaneSM = false;
|
|
25
|
-
this.routerSub$ = null;
|
|
26
23
|
this.activeConfig = new DefaultShellConfig();
|
|
27
24
|
this.loaded = false;
|
|
28
25
|
this.hideSidebar = false;
|
|
29
|
-
if (!
|
|
30
|
-
|
|
26
|
+
if (!_config) {
|
|
27
|
+
_config = new DefaultShellConfig();
|
|
31
28
|
}
|
|
32
|
-
this.activeConfig =
|
|
29
|
+
this.activeConfig = _config;
|
|
33
30
|
}
|
|
34
31
|
ngAfterViewChecked() {
|
|
35
32
|
setTimeout(() => { this.loaded = true; }, 200);
|
|
36
33
|
}
|
|
37
34
|
ngOnInit() {
|
|
38
|
-
this.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
// console.log('ShellLayoutComponent ActivationStart snapshot data shell params',
|
|
46
|
-
// (e as ActivationStart)?.snapshot.data.shell);
|
|
47
|
-
this.activeConfig = e?.snapshot.data.shell;
|
|
48
|
-
// console.log('ShellLayoutComponent activeConfig from route: ', this.activeConfig);
|
|
35
|
+
this._routerSub$ = this._router
|
|
36
|
+
.events
|
|
37
|
+
.pipe(filter((event) => event instanceof ActivationStart)).subscribe((event) => {
|
|
38
|
+
if (event?.snapshot) {
|
|
39
|
+
if (event?.snapshot?.data) {
|
|
40
|
+
if (event?.snapshot?.data.shell) {
|
|
41
|
+
this.activeConfig = event?.snapshot.data.shell;
|
|
49
42
|
if (this.activeConfig.customHeaderComponent) {
|
|
50
43
|
this.initCustomComponents();
|
|
51
44
|
}
|
|
52
45
|
}
|
|
53
46
|
else {
|
|
54
|
-
this.activeConfig = this.
|
|
55
|
-
// console.log('ShellLayoutComponent default activeConfig: ', this.activeConfig);
|
|
47
|
+
this.activeConfig = this._config ? this._config : new DefaultShellConfig();
|
|
56
48
|
}
|
|
57
49
|
}
|
|
58
50
|
}
|
|
@@ -62,40 +54,37 @@ export class ShellLayoutComponent {
|
|
|
62
54
|
this.initCustomComponents();
|
|
63
55
|
}
|
|
64
56
|
initCustomComponents() {
|
|
65
|
-
if (this.
|
|
66
|
-
this.loadCustomComponent(this.
|
|
67
|
-
// since you're not using it...
|
|
68
|
-
// this.loadCustomComponent(this.dynamicComponentHosts.find(_ => _.hostName === 'Footer'));
|
|
57
|
+
if (this._dynamicComponentHosts && this._dynamicComponentHosts.length > 0) {
|
|
58
|
+
this.loadCustomComponent(this._dynamicComponentHosts.find((_) => _.hostName === 'Header'));
|
|
69
59
|
}
|
|
70
60
|
}
|
|
71
61
|
ngOnDestroy() {
|
|
72
|
-
if (this.
|
|
73
|
-
this.
|
|
62
|
+
if (this._routerSub$) {
|
|
63
|
+
this._routerSub$.unsubscribe();
|
|
74
64
|
}
|
|
75
65
|
}
|
|
76
66
|
loadCustomComponent(host) {
|
|
77
67
|
if (host) {
|
|
78
68
|
const viewContainerRef = host.viewContainerRef;
|
|
79
69
|
if (viewContainerRef && this.activeConfig.customHeaderComponent) {
|
|
80
|
-
const clf = this.
|
|
81
|
-
|
|
70
|
+
const clf = this._componentLoaderFactory.createLoader(viewContainerRef);
|
|
71
|
+
clf.attach(this.activeConfig.customHeaderComponent).to(viewContainerRef.element).show();
|
|
82
72
|
}
|
|
83
73
|
}
|
|
84
74
|
}
|
|
85
75
|
}
|
|
86
|
-
ShellLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.
|
|
87
|
-
ShellLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.
|
|
88
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.
|
|
76
|
+
ShellLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellLayoutComponent, deps: [{ token: i1.Router }, { token: i2.ComponentLoaderFactory }, { token: SHELL_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
|
77
|
+
ShellLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ShellLayoutComponent, selector: "lib-shell-layout", inputs: { sidebarFooterTemplate: "sidebarFooterTemplate" }, viewQueries: [{ propertyName: "_dynamicComponentHosts", predicate: DynamicComponentHostDirective, descendants: true }], ngImport: i0, template: "<div [class.hidden]=\"!loaded\"\r\n [class.block]=\"loaded\">\r\n <!-- STACKED LAYOUT -->\r\n <div *ngIf=\"(activeConfig.layout === 'Stacked' || !activeConfig.layout)\"\r\n class=\"shell-container active-side-pane\">\r\n <lib-shell-stacked-layout [config]=\"activeConfig\"></lib-shell-stacked-layout>\r\n </div>\r\n <!-- SIDEBAR LAYOUT -->\r\n <div *ngIf=\"activeConfig.layout === 'Sidebar'\"\r\n class=\"sidebar shell-container active-side-pane\">\r\n <lib-shell-sidebar-layout [config]=\"activeConfig\"\r\n [sidebarFooterTemplate]=\"sidebarFooterTemplate\">\r\n </lib-shell-sidebar-layout>\r\n </div>\r\n <lib-side-pane #rightPane>\r\n <router-outlet name=\"rightpane\"\r\n (activate)=\"rightPane.onSidePaneActivated($event)\"\r\n (deactivate)=\"rightPane.onSidePaneDeactivated($event)\">\r\n </router-outlet>\r\n </lib-side-pane>\r\n <lib-toaster-container></lib-toaster-container>\r\n</div>", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i4.ShellSidebarLayoutComponent, selector: "lib-shell-sidebar-layout", inputs: ["config", "sidebarFooterTemplate"] }, { kind: "component", type: i5.ShellStackedLayoutComponent, selector: "lib-shell-stacked-layout", inputs: ["config"] }, { kind: "component", type: i6.SidePaneComponent, selector: "lib-side-pane", inputs: ["visible"], outputs: ["onComplete"] }, { kind: "component", type: i7.ToasterContainerComponent, selector: "lib-toaster-container" }] });
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellLayoutComponent, decorators: [{
|
|
89
79
|
type: Component,
|
|
90
|
-
args: [{ selector: 'lib-shell-layout', template: "<div [class.
|
|
91
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
92
|
-
type: Inject,
|
|
93
|
-
args: [DOCUMENT]
|
|
94
|
-
}] }, { type: i1.Router }, { type: i2.Location }, { type: undefined, decorators: [{
|
|
80
|
+
args: [{ selector: 'lib-shell-layout', template: "<div [class.hidden]=\"!loaded\"\r\n [class.block]=\"loaded\">\r\n <!-- STACKED LAYOUT -->\r\n <div *ngIf=\"(activeConfig.layout === 'Stacked' || !activeConfig.layout)\"\r\n class=\"shell-container active-side-pane\">\r\n <lib-shell-stacked-layout [config]=\"activeConfig\"></lib-shell-stacked-layout>\r\n </div>\r\n <!-- SIDEBAR LAYOUT -->\r\n <div *ngIf=\"activeConfig.layout === 'Sidebar'\"\r\n class=\"sidebar shell-container active-side-pane\">\r\n <lib-shell-sidebar-layout [config]=\"activeConfig\"\r\n [sidebarFooterTemplate]=\"sidebarFooterTemplate\">\r\n </lib-shell-sidebar-layout>\r\n </div>\r\n <lib-side-pane #rightPane>\r\n <router-outlet name=\"rightpane\"\r\n (activate)=\"rightPane.onSidePaneActivated($event)\"\r\n (deactivate)=\"rightPane.onSidePaneDeactivated($event)\">\r\n </router-outlet>\r\n </lib-side-pane>\r\n <lib-toaster-container></lib-toaster-container>\r\n</div>" }]
|
|
81
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.ComponentLoaderFactory }, { type: undefined, decorators: [{
|
|
95
82
|
type: Inject,
|
|
96
83
|
args: [SHELL_CONFIG]
|
|
97
|
-
}] }
|
|
84
|
+
}] }]; }, propDecorators: { _dynamicComponentHosts: [{
|
|
98
85
|
type: ViewChildren,
|
|
99
86
|
args: [DynamicComponentHostDirective]
|
|
87
|
+
}], sidebarFooterTemplate: [{
|
|
88
|
+
type: Input
|
|
100
89
|
}] } });
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWxheW91dC9zaGVsbC1sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtbGF5b3V0L3NoZWxsLWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFnQixrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BFLE9BQU8sRUFBaUIsU0FBUyxFQUFxQixNQUFNLEVBQUUsWUFBWSxFQUErQixNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUUsUUFBUSxFQUFZLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7O0FBU3JHLE1BQU0sT0FBTyxvQkFBb0I7SUFRL0IsWUFDNEIsUUFBYSxFQUMvQixNQUFjLEVBQ2QsUUFBa0IsRUFDSSxNQUFnQyxFQUN0RCxzQkFBOEM7UUFKNUIsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUMvQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNJLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBQ3RELDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFYeEQsMEJBQXFCLEdBQW9ELElBQUksQ0FBQztR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QUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQy9HO1NBQ0Y7SUFDSCxDQUFDOztpSEEzRVUsb0JBQW9CLGtCQVNyQixRQUFRLDJEQUdSLFlBQVk7cUdBWlgsb0JBQW9CLGtHQUNqQiw2QkFBNkIsZ0RDakI3Qyw0eUJBa0JNOzJGREZPLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFFRSxrQkFBa0I7OzBCQVl6QixNQUFNOzJCQUFDLFFBQVE7OzBCQUdmLE1BQU07MkJBQUMsWUFBWTtpRkFWdEIscUJBQXFCO3NCQURwQixZQUFZO3VCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNIRUxMX0NPTkZJRyB9IGZyb20gJy4vLi4vLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IElTaGVsbENvbmZpZywgRGVmYXVsdFNoZWxsQ29uZmlnIH0gZnJvbSAnLi8uLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBJbmplY3QsIFZpZXdDaGlsZHJlbiwgUXVlcnlMaXN0LCBBZnRlclZpZXdDaGVja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCwgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWN0aXZhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEhvc3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2R5bmFtaWMtY29tcG9uZW50LWhvc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbXBvbmVudExvYWRlckZhY3RvcnkgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jb21wb25lbnQtbG9hZGVyL2NvbXBvbmVudC1sb2FkZXIuZmFjdG9yeSc7XG5cblxuQENvbXBvbmVudCh7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdsaWItc2hlbGwtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NoZWxsLWxheW91dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNoZWxsTGF5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEFmdGVyVmlld0NoZWNrZWQge1xuICBAVmlld0NoaWxkcmVuKER5bmFtaWNDb21wb25lbnRIb3N0RGlyZWN0aXZlKVxuICBkeW5hbWljQ29tcG9uZW50SG9zdHM6IFF1ZXJ5TGlzdDxEeW5hbWljQ29tcG9uZW50SG9zdERpcmVjdGl2ZT4gfCBudWxsID0gbnVsbDtcbiAgcHVibGljIHNob3dSaWdodFBhbmVTTSA9IGZhbHNlO1xuICBwcml2YXRlIHJvdXRlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwdWJsaWMgYWN0aXZlQ29uZmlnOiBJU2hlbGxDb25maWcgPSBuZXcgRGVmYXVsdFNoZWxsQ29uZmlnKCk7XG4gIHB1YmxpYyBsb2FkZWQgPSBmYWxzZTtcbiAgcHVibGljIGhpZGVTaWRlYmFyID0gZmFsc2U7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uLFxuICAgIEBJbmplY3QoU0hFTExfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogSVNoZWxsQ29uZmlnIHwgdW5kZWZpbmVkLFxuICAgIHByaXZhdGUgY29tcG9uZW50TG9hZGVyRmFjdG9yeTogQ29tcG9uZW50TG9hZGVyRmFjdG9yeVxuICApIHtcbiAgICBpZiAoIWNvbmZpZykge1xuICAgICAgY29uZmlnID0gbmV3IERlZmF1bHRTaGVsbENvbmZpZygpO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZUNvbmZpZyA9IGNvbmZpZztcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5sb2FkZWQgPSB0cnVlOyB9LCAyMDApO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXJTdWIkID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBBY3RpdmF0aW9uU3RhcnQpKS5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdTaGVsbExheW91dENvbXBvbmVudCBBY3RpdmF0aW9uU3RhcnQnLCBlKTtcbiAgICAgIGlmICgoZSBhcyBBY3RpdmF0aW9uU3RhcnQpPy5zbmFwc2hvdCkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnU2hlbGxMYXlvdXRDb21wb25lbnQgQWN0aXZhdGlvblN0YXJ0IHNuYXBzaG90JywgKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3QpO1xuICAgICAgICBpZiAoKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3Q/LmRhdGEpIHtcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZygnU2hlbGxMYXlvdXRDb21wb25lbnQgQWN0aXZhdGlvblN0YXJ0IHNuYXBzaG90IGRhdGEnLCAoZSBhcyBBY3RpdmF0aW9uU3RhcnQpPy5zbmFwc2hvdC5kYXRhKTtcbiAgICAgICAgICBpZiAoKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3Q/LmRhdGEuc2hlbGwpIHtcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdTaGVsbExheW91dENvbXBvbmVudCBBY3RpdmF0aW9uU3RhcnQgc25hcHNob3QgZGF0YSBzaGVsbCBwYXJhbXMnLFxuICAgICAgICAgICAgLy8gKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3QuZGF0YS5zaGVsbCk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUNvbmZpZyA9IChlIGFzIEFjdGl2YXRpb25TdGFydCk/LnNuYXBzaG90LmRhdGEuc2hlbGwgYXMgSVNoZWxsQ29uZmlnO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ1NoZWxsTGF5b3V0Q29tcG9uZW50IGFjdGl2ZUNvbmZpZyBmcm9tIHJvdXRlOiAnLCB0aGlzLmFjdGl2ZUNvbmZpZyk7XG4gICAgICAgICAgICBpZiAodGhpcy5hY3RpdmVDb25maWcuY3VzdG9tSGVhZGVyQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgIHRoaXMuaW5pdEN1c3RvbUNvbXBvbmVudHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVDb25maWcgPSB0aGlzLmNvbmZpZyA/IHRoaXMuY29uZmlnIDogbmV3IERlZmF1bHRTaGVsbENvbmZpZygpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ1NoZWxsTGF5b3V0Q29tcG9uZW50IGRlZmF1bHQgYWN0aXZlQ29uZmlnOiAnLCB0aGlzLmFjdGl2ZUNvbmZpZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0Q3VzdG9tQ29tcG9uZW50cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q3VzdG9tQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5keW5hbWljQ29tcG9uZW50SG9zdHMgJiYgdGhpcy5keW5hbWljQ29tcG9uZW50SG9zdHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5sb2FkQ3VzdG9tQ29tcG9uZW50KHRoaXMuZHluYW1pY0NvbXBvbmVudEhvc3RzLmZpbmQoKF8pID0+IF8uaG9zdE5hbWUgPT09ICdIZWFkZXInKSk7XG4gICAgICAvLyBzaW5jZSB5b3UncmUgbm90IHVzaW5nIGl0Li4uXG4gICAgICAvLyB0aGlzLmxvYWRDdXN0b21Db21wb25lbnQodGhpcy5keW5hbWljQ29tcG9uZW50SG9zdHMuZmluZChfID0+IF8uaG9zdE5hbWUgPT09ICdGb290ZXInKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucm91dGVyU3ViJCkge1xuICAgICAgdGhpcy5yb3V0ZXJTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2FkQ3VzdG9tQ29tcG9uZW50KGhvc3Q6IER5bmFtaWNDb21wb25lbnRIb3N0RGlyZWN0aXZlIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKGhvc3QpIHtcbiAgICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWYgPSBob3N0LnZpZXdDb250YWluZXJSZWY7XG4gICAgICBpZiAodmlld0NvbnRhaW5lclJlZiAmJiB0aGlzLmFjdGl2ZUNvbmZpZy5jdXN0b21IZWFkZXJDb21wb25lbnQpIHtcbiAgICAgICAgY29uc3QgY2xmID0gdGhpcy5jb21wb25lbnRMb2FkZXJGYWN0b3J5LmNyZWF0ZUxvYWRlcih2aWV3Q29udGFpbmVyUmVmKTtcbiAgICAgICAgY29uc3QgaGVhZGVyQ29tcFJlZiA9IGNsZi5hdHRhY2godGhpcy5hY3RpdmVDb25maWcuY3VzdG9tSGVhZGVyQ29tcG9uZW50KS50byh2aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQpLnNob3coKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzLm5vbmVdPVwiIWxvYWRlZFwiIFtjbGFzcy5ibG9ja109XCJsb2FkZWRcIj5cblxuICA8IS0tIFNUQUNLRUQgTEFZT1VUIC0tPlxuICA8ZGl2ICpuZ0lmPVwiKGFjdGl2ZUNvbmZpZy5sYXlvdXQgPT09ICdTdGFja2VkJyB8fCAhYWN0aXZlQ29uZmlnLmxheW91dClcIiBjbGFzcz1cInNoZWxsLWNvbnRhaW5lciBhY3RpdmUtc2lkZS1wYW5lXCI+XG4gICAgPGxpYi1zaGVsbC1zdGFja2VkLWxheW91dCBbY29uZmlnXT1cImFjdGl2ZUNvbmZpZ1wiPjwvbGliLXNoZWxsLXN0YWNrZWQtbGF5b3V0PlxuICA8L2Rpdj5cblxuICA8IS0tIFNJREVCQVIgTEFZT1VUIC0tPlxuICA8ZGl2ICpuZ0lmPVwiYWN0aXZlQ29uZmlnLmxheW91dCA9PT0gJ1NpZGViYXInXCIgY2xhc3M9XCJzaWRlYmFyIHNoZWxsLWNvbnRhaW5lciBhY3RpdmUtc2lkZS1wYW5lXCI+XG4gICAgPGxpYi1zaGVsbC1zaWRlYmFyLWxheW91dCBbY29uZmlnXT1cImFjdGl2ZUNvbmZpZ1wiPjwvbGliLXNoZWxsLXNpZGViYXItbGF5b3V0PlxuICA8L2Rpdj5cblxuICA8bGliLXNpZGUtcGFuZSAjcmlnaHRQYW5lPlxuICAgIDxyb3V0ZXItb3V0bGV0IG5hbWU9XCJyaWdodHBhbmVcIiAoYWN0aXZhdGUpPVwicmlnaHRQYW5lLm9uU2lkZVBhbmVBY3RpdmF0ZWQoJGV2ZW50KVwiIChkZWFjdGl2YXRlKT1cInJpZ2h0UGFuZS5vblNpZGVQYW5lRGVhY3RpdmF0ZWQoJGV2ZW50KVwiPjwvcm91dGVyLW91dGxldD5cbiAgPC9saWItc2lkZS1wYW5lPlxuXG4gIDxsaWItdG9hc3Rlci1jb250YWluZXI+PC9saWItdG9hc3Rlci1jb250YWluZXI+XG5cbjwvZGl2PiJdfQ==
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWxheW91dC9zaGVsbC1sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtbGF5b3V0L3NoZWxsLWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBcUIsTUFBTSxFQUFFLFlBQVksRUFBNEMsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25KLE9BQU8sRUFBRSxlQUFlLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUcxRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7O0FBT3JHLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsWUFDVSxPQUFlLEVBQ2YsdUJBQStDLEVBQ3pCLE9BQWlDO1FBRnZELFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXdCO1FBQ3pCLFlBQU8sR0FBUCxPQUFPLENBQTBCO1FBTlosMkJBQXNCLEdBQW9ELElBQUksQ0FBQztRQUM1SCxnQkFBVyxHQUF3QixJQUFJLENBQUM7UUFjekMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBaUIsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ3RELFdBQU0sR0FB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QXFCO3NCQUFwQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgSW5qZWN0LCBWaWV3Q2hpbGRyZW4sIFF1ZXJ5TGlzdCwgQWZ0ZXJWaWV3Q2hlY2tlZCwgVGVtcGxhdGVSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2YXRpb25TdGFydCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFNIRUxMX0NPTkZJRyB9IGZyb20gJy4vLi4vLi4vLi4vdG9rZW5zJztcclxuaW1wb3J0IHsgSVNoZWxsQ29uZmlnLCBEZWZhdWx0U2hlbGxDb25maWcgfSBmcm9tICcuLy4uLy4uLy4uL3R5cGVzJztcclxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEhvc3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2R5bmFtaWMtY29tcG9uZW50LWhvc3QuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyRmFjdG9yeSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2NvbXBvbmVudC1sb2FkZXIvY29tcG9uZW50LWxvYWRlci5mYWN0b3J5JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLWxheW91dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NoZWxsLWxheW91dC5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGVsbExheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkIHtcclxuICBAVmlld0NoaWxkcmVuKER5bmFtaWNDb21wb25lbnRIb3N0RGlyZWN0aXZlKSBwcml2YXRlIF9keW5hbWljQ29tcG9uZW50SG9zdHM6IFF1ZXJ5TGlzdDxEeW5hbWljQ29tcG9uZW50SG9zdERpcmVjdGl2ZT4gfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIF9yb3V0ZXJTdWIkOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgX2NvbXBvbmVudExvYWRlckZhY3Rvcnk6IENvbXBvbmVudExvYWRlckZhY3RvcnksXHJcbiAgICBASW5qZWN0KFNIRUxMX0NPTkZJRykgcHJpdmF0ZSBfY29uZmlnOiBJU2hlbGxDb25maWcgfCB1bmRlZmluZWRcclxuICApIHtcclxuICAgIGlmICghX2NvbmZpZykge1xyXG4gICAgICBfY29uZmlnID0gbmV3IERlZmF1bHRTaGVsbENvbmZpZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hY3RpdmVDb25maWcgPSBfY29uZmlnO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNpZGViYXJGb290ZXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgcHVibGljIHNob3dSaWdodFBhbmVTTSA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhY3RpdmVDb25maWc6IElTaGVsbENvbmZpZyA9IG5ldyBEZWZhdWx0U2hlbGxDb25maWcoKTtcclxuICBwdWJsaWMgbG9hZGVkID0gZmFsc2U7XHJcbiAgcHVibGljIGhpZGVTaWRlYmFyID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5sb2FkZWQgPSB0cnVlOyB9LCAyMDApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcm91dGVyU3ViJCA9IHRoaXMuX3JvdXRlclxyXG4gICAgICAuZXZlbnRzXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgQWN0aXZhdGlvblN0YXJ0KVxyXG4gICAgICApLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoKGV2ZW50IGFzIEFjdGl2YXRpb25TdGFydCk/LnNuYXBzaG90KSB7XHJcbiAgICAgICAgICBpZiAoKGV2ZW50IGFzIEFjdGl2YXRpb25TdGFydCk/LnNuYXBzaG90Py5kYXRhKSB7XHJcbiAgICAgICAgICAgIGlmICgoZXZlbnQgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3Q/LmRhdGEuc2hlbGwpIHtcclxuICAgICAgICAgICAgICB0aGlzLmFjdGl2ZUNvbmZpZyA9IChldmVudCBhcyBBY3RpdmF0aW9uU3RhcnQpPy5zbmFwc2hvdC5kYXRhLnNoZWxsIGFzIElTaGVsbENvbmZpZztcclxuICAgICAgICAgICAgICBpZiAodGhpcy5hY3RpdmVDb25maWcuY3VzdG9tSGVhZGVyQ29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRDdXN0b21Db21wb25lbnRzKCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuYWN0aXZlQ29uZmlnID0gdGhpcy5fY29uZmlnID8gdGhpcy5fY29uZmlnIDogbmV3IERlZmF1bHRTaGVsbENvbmZpZygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaXRDdXN0b21Db21wb25lbnRzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRDdXN0b21Db21wb25lbnRzKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX2R5bmFtaWNDb21wb25lbnRIb3N0cyAmJiB0aGlzLl9keW5hbWljQ29tcG9uZW50SG9zdHMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmxvYWRDdXN0b21Db21wb25lbnQodGhpcy5fZHluYW1pY0NvbXBvbmVudEhvc3RzLmZpbmQoKF8pID0+IF8uaG9zdE5hbWUgPT09ICdIZWFkZXInKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5fcm91dGVyU3ViJCkge1xyXG4gICAgICB0aGlzLl9yb3V0ZXJTdWIkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRDdXN0b21Db21wb25lbnQoaG9zdDogRHluYW1pY0NvbXBvbmVudEhvc3REaXJlY3RpdmUgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgIGlmIChob3N0KSB7XHJcbiAgICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWYgPSBob3N0LnZpZXdDb250YWluZXJSZWY7XHJcbiAgICAgIGlmICh2aWV3Q29udGFpbmVyUmVmICYmIHRoaXMuYWN0aXZlQ29uZmlnLmN1c3RvbUhlYWRlckNvbXBvbmVudCkge1xyXG4gICAgICAgIGNvbnN0IGNsZiA9IHRoaXMuX2NvbXBvbmVudExvYWRlckZhY3RvcnkuY3JlYXRlTG9hZGVyKHZpZXdDb250YWluZXJSZWYpO1xyXG4gICAgICAgIGNsZi5hdHRhY2godGhpcy5hY3RpdmVDb25maWcuY3VzdG9tSGVhZGVyQ29tcG9uZW50KS50byh2aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQpLnNob3coKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtjbGFzcy5oaWRkZW5dPVwiIWxvYWRlZFwiXHJcbiAgICAgW2NsYXNzLmJsb2NrXT1cImxvYWRlZFwiPlxyXG4gIDwhLS0gU1RBQ0tFRCBMQVlPVVQgLS0+XHJcbiAgPGRpdiAqbmdJZj1cIihhY3RpdmVDb25maWcubGF5b3V0ID09PSAnU3RhY2tlZCcgfHwgIWFjdGl2ZUNvbmZpZy5sYXlvdXQpXCJcclxuICAgICAgIGNsYXNzPVwic2hlbGwtY29udGFpbmVyIGFjdGl2ZS1zaWRlLXBhbmVcIj5cclxuICAgIDxsaWItc2hlbGwtc3RhY2tlZC1sYXlvdXQgW2NvbmZpZ109XCJhY3RpdmVDb25maWdcIj48L2xpYi1zaGVsbC1zdGFja2VkLWxheW91dD5cclxuICA8L2Rpdj5cclxuICA8IS0tIFNJREVCQVIgTEFZT1VUIC0tPlxyXG4gIDxkaXYgKm5nSWY9XCJhY3RpdmVDb25maWcubGF5b3V0ID09PSAnU2lkZWJhcidcIlxyXG4gICAgICAgY2xhc3M9XCJzaWRlYmFyIHNoZWxsLWNvbnRhaW5lciBhY3RpdmUtc2lkZS1wYW5lXCI+XHJcbiAgICA8bGliLXNoZWxsLXNpZGViYXItbGF5b3V0IFtjb25maWddPVwiYWN0aXZlQ29uZmlnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NpZGViYXJGb290ZXJUZW1wbGF0ZV09XCJzaWRlYmFyRm9vdGVyVGVtcGxhdGVcIj5cclxuICAgIDwvbGliLXNoZWxsLXNpZGViYXItbGF5b3V0PlxyXG4gIDwvZGl2PlxyXG4gIDxsaWItc2lkZS1wYW5lICNyaWdodFBhbmU+XHJcbiAgICA8cm91dGVyLW91dGxldCBuYW1lPVwicmlnaHRwYW5lXCJcclxuICAgICAgICAgICAgICAgICAgIChhY3RpdmF0ZSk9XCJyaWdodFBhbmUub25TaWRlUGFuZUFjdGl2YXRlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgIChkZWFjdGl2YXRlKT1cInJpZ2h0UGFuZS5vblNpZGVQYW5lRGVhY3RpdmF0ZWQoJGV2ZW50KVwiPlxyXG4gICAgPC9yb3V0ZXItb3V0bGV0PlxyXG4gIDwvbGliLXNpZGUtcGFuZT5cclxuICA8bGliLXRvYXN0ZXItY29udGFpbmVyPjwvbGliLXRvYXN0ZXItY29udGFpbmVyPlxyXG48L2Rpdj4iXX0=
|
|
@@ -11,23 +11,27 @@ export class ShellSidebarComponent {
|
|
|
11
11
|
this.router = router;
|
|
12
12
|
this.route = route;
|
|
13
13
|
this.links = links;
|
|
14
|
-
// tslint:disable-next-line:no-input-rename
|
|
15
14
|
this.sectionLinksPath = 'main';
|
|
16
|
-
this.sectionLinks = of([]);
|
|
17
|
-
// tslint:disable-next-line:no-input-rename
|
|
18
15
|
this.shellConfig = undefined;
|
|
16
|
+
this.sticky = false;
|
|
17
|
+
this.sectionLinks = of([]);
|
|
19
18
|
this.activeFragment = null;
|
|
20
19
|
}
|
|
20
|
+
get activeNavLinkClass() {
|
|
21
|
+
const linkClasses = 'sidebar ' + (this.sticky ? 'nav-link-active-b' : 'nav-link-active-l') + ' group';
|
|
22
|
+
console.log('activeNavLinkClass getter ', linkClasses);
|
|
23
|
+
return linkClasses;
|
|
24
|
+
}
|
|
21
25
|
ngOnInit() {
|
|
22
26
|
this.activeFragment = this.route.fragment.pipe(share());
|
|
23
27
|
this.sectionLinks = this.links[this.sectionLinksPath];
|
|
24
28
|
}
|
|
25
29
|
}
|
|
26
|
-
ShellSidebarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.
|
|
27
|
-
ShellSidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.
|
|
30
|
+
ShellSidebarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellSidebarComponent, deps: [{ token: Router }, { token: ActivatedRoute }, { token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
ShellSidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ShellSidebarComponent, selector: "lib-shell-sidebar", inputs: { sectionLinksPath: ["section-links", "sectionLinksPath"], shellConfig: ["config", "shellConfig"], sticky: "sticky" }, ngImport: i0, template: "<!-- Sidebar component, swap this element with another sidebar if you like -->\r\n<div class=\"shell-sidebar-component-container\">\r\n <div class=\"shell-sidebar-component-links-container sidebar\">\r\n <lib-nav-links-list [show-icons]=\"true\"\r\n [show-text]=\"!sticky\"\r\n [large-icons]=\"sticky\"\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'sidebar nav-link group'\"\r\n [link-active-class]=\"'sidebar nav-link-active-b group'\">\r\n </lib-nav-links-list>\r\n </div>\r\n</div>", dependencies: [{ kind: "component", type: i1.NavLinksListComponent, selector: "lib-nav-links-list", inputs: ["links", "active-fragment", "link-class", "link-active-class", "container-class", "show-icons", "show-text", "large-icons"] }] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellSidebarComponent, decorators: [{
|
|
29
33
|
type: Component,
|
|
30
|
-
args: [{ selector: 'lib-shell-sidebar', template: "<!-- Sidebar component, swap this element with another sidebar if you like -->\n<div class=\"shell-sidebar-component-container\">\n
|
|
34
|
+
args: [{ selector: 'lib-shell-sidebar', template: "<!-- Sidebar component, swap this element with another sidebar if you like -->\r\n<div class=\"shell-sidebar-component-container\">\r\n <div class=\"shell-sidebar-component-links-container sidebar\">\r\n <lib-nav-links-list [show-icons]=\"true\"\r\n [show-text]=\"!sticky\"\r\n [large-icons]=\"sticky\"\r\n [links]=\"sectionLinks\"\r\n [active-fragment]=\"activeFragment\"\r\n [link-class]=\"'sidebar nav-link group'\"\r\n [link-active-class]=\"'sidebar nav-link-active-b group'\">\r\n </lib-nav-links-list>\r\n </div>\r\n</div>" }]
|
|
31
35
|
}], ctorParameters: function () { return [{ type: i2.Router, decorators: [{
|
|
32
36
|
type: Inject,
|
|
33
37
|
args: [Router]
|
|
@@ -43,5 +47,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
|
|
|
43
47
|
}], shellConfig: [{
|
|
44
48
|
type: Input,
|
|
45
49
|
args: ['config']
|
|
50
|
+
}], sticky: [{
|
|
51
|
+
type: Input,
|
|
52
|
+
args: ['sticky']
|
|
46
53
|
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtc2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvbGF5b3V0cy9zaGVsbC9zaGVsbC1zaWRlYmFyL3NoZWxsLXNpZGViYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtc2lkZWJhci9zaGVsbC1zaWRlYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU12QyxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLFlBQzRCLE1BQWMsRUFDTixLQUFxQixFQUM3QixLQUFVO1FBRlYsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzdCLFVBQUssR0FBTCxLQUFLLENBQUs7UUFHZCxxQkFBZ0IsR0FBRyxNQUFNLENBQUM7UUFDakMsZ0JBQVcsR0FBNkIsU0FBUyxDQUFDO1FBQ2xELFdBQU0sR0FBWSxLQUFLLENBQUM7UUFDbEMsaUJBQVksR0FBMEIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLG1CQUFjLEdBQWUsSUFBSSxDQUFDO0lBTnJDLENBQUM7SUFRTCxJQUFXLGtCQUFrQjtRQUMzQixNQUFNLFdBQVcsR0FBRyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsR0FBRyxRQUFRLENBQUM7UUFDdEcsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUN2RCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBMEIsQ0FBQztJQUNqRixDQUFDOztrSEF0QlUscUJBQXFCLGtCQUV0QixNQUFNLGFBQ04sY0FBYyxhQUNkLFNBQVM7c0dBSlIscUJBQXFCLHdMQ1psQyxvcUJBWU07MkZEQU8scUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLG1CQUFtQjs7MEJBSzFCLE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxjQUFjOzswQkFDckIsTUFBTTsyQkFBQyxTQUFTOzRDQUdLLGdCQUFnQjtzQkFBdkMsS0FBSzt1QkFBQyxlQUFlO2dCQUNMLFdBQVc7c0JBQTNCLEtBQUs7dUJBQUMsUUFBUTtnQkFDRSxNQUFNO3NCQUF0QixLQUFLO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJU2hlbGxDb25maWcsIE5hdkxpbmsgfSBmcm9tICcuLy4uLy4uLy4uL3R5cGVzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMvaW50ZXJuYWwvT2JzZXJ2YWJsZSc7XHJcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFQUF9MSU5LUyB9IGZyb20gJy4uLy4uLy4uL3Rva2Vucyc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBzaGFyZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLXNpZGViYXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaGVsbC1zaWRlYmFyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hlbGxTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoUm91dGVyKSBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBASW5qZWN0KEFjdGl2YXRlZFJvdXRlKSBwcm90ZWN0ZWQgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgQEluamVjdChBUFBfTElOS1MpIHB1YmxpYyBsaW5rczogYW55XHJcbiAgKSB7IH1cclxuXHJcbiAgQElucHV0KCdzZWN0aW9uLWxpbmtzJykgc2VjdGlvbkxpbmtzUGF0aCA9ICdtYWluJztcclxuICBASW5wdXQoJ2NvbmZpZycpIHNoZWxsQ29uZmlnOiBJU2hlbGxDb25maWcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCdzdGlja3knKSBzdGlja3k6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VjdGlvbkxpbmtzOiBPYnNlcnZhYmxlPE5hdkxpbmtbXT4gPSBvZihbXSk7XHJcbiAgcHVibGljIGFjdGl2ZUZyYWdtZW50OiBhbnkgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcHVibGljIGdldCBhY3RpdmVOYXZMaW5rQ2xhc3MoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGxpbmtDbGFzc2VzID0gJ3NpZGViYXIgJyArICh0aGlzLnN0aWNreSA/ICduYXYtbGluay1hY3RpdmUtYicgOiAnbmF2LWxpbmstYWN0aXZlLWwnKSArICcgZ3JvdXAnO1xyXG4gICAgY29uc29sZS5sb2coJ2FjdGl2ZU5hdkxpbmtDbGFzcyBnZXR0ZXIgJywgbGlua0NsYXNzZXMpO1xyXG4gICAgcmV0dXJuIGxpbmtDbGFzc2VzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVGcmFnbWVudCA9IHRoaXMucm91dGUuZnJhZ21lbnQucGlwZShzaGFyZSgpKTtcclxuICAgIHRoaXMuc2VjdGlvbkxpbmtzID0gdGhpcy5saW5rc1t0aGlzLnNlY3Rpb25MaW5rc1BhdGhdIGFzIE9ic2VydmFibGU8TmF2TGlua1tdPjtcclxuICB9XHJcbn1cclxuIiwiPCEtLSBTaWRlYmFyIGNvbXBvbmVudCwgc3dhcCB0aGlzIGVsZW1lbnQgd2l0aCBhbm90aGVyIHNpZGViYXIgaWYgeW91IGxpa2UgLS0+XHJcbjxkaXYgY2xhc3M9XCJzaGVsbC1zaWRlYmFyLWNvbXBvbmVudC1jb250YWluZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwic2hlbGwtc2lkZWJhci1jb21wb25lbnQtbGlua3MtY29udGFpbmVyIHNpZGViYXJcIj5cclxuICAgIDxsaWItbmF2LWxpbmtzLWxpc3QgW3Nob3ctaWNvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93LXRleHRdPVwiIXN0aWNreVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYXJnZS1pY29uc109XCJzdGlja3lcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGlua3NdPVwic2VjdGlvbkxpbmtzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2FjdGl2ZS1mcmFnbWVudF09XCJhY3RpdmVGcmFnbWVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rLWNsYXNzXT1cIidzaWRlYmFyIG5hdi1saW5rIGdyb3VwJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rLWFjdGl2ZS1jbGFzc109XCInc2lkZWJhciBuYXYtbGluay1hY3RpdmUtYiBncm91cCdcIj5cclxuICAgIDwvbGliLW5hdi1saW5rcy1saXN0PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -6,8 +6,8 @@ import { ShellHeaderComponent } from '../shell-header/shell-header.component';
|
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@angular/common";
|
|
8
8
|
import * as i2 from "../../../directives/click-outside.directive";
|
|
9
|
-
import * as i3 from "../../../controls/
|
|
10
|
-
import * as i4 from "../../../controls/
|
|
9
|
+
import * as i3 from "../../../controls/language-selection/language-selection.component";
|
|
10
|
+
import * as i4 from "../../../controls/notifications-indicator/notifications-indicator.component";
|
|
11
11
|
import * as i5 from "../../../controls/user-profile-menu/user-profile-menu.component";
|
|
12
12
|
import * as i6 from "@indice/ng-auth";
|
|
13
13
|
import * as i7 from "@angular/router";
|
|
@@ -21,11 +21,11 @@ export class ShellSidebarHeaderComponent extends ShellHeaderComponent {
|
|
|
21
21
|
this.links = links;
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
ShellSidebarHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.
|
|
25
|
-
ShellSidebarHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.
|
|
24
|
+
ShellSidebarHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellSidebarHeaderComponent, deps: [{ token: AuthService }, { token: Router }, { token: ActivatedRoute }, { token: SHELL_CONFIG }, { token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
+
ShellSidebarHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ShellSidebarHeaderComponent, selector: "lib-shell-sidebar-header", usesInheritance: true, ngImport: i0, template: "<div class=\"shell-header-paddings\">\r\n <div class=\"shell-header-border\">\r\n <div class=\"shell-header-menu-container\">\r\n <div class=\"shell-header-md-visible\">\r\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\r\n <!-- Profile dropdown -->\r\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\r\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\r\n </div>\r\n <!-- Notifications dropdown -->\r\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\r\n <lib-notifications-indicator></lib-notifications-indicator>\r\n </div>\r\n <!-- languages dropdown -->\r\n <div *ngIf=\"showLangs\" class=\"ml-4\">\r\n <lib-language-selection></lib-language-selection>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n \r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { kind: "component", type: i3.LanguageSelectionComponent, selector: "lib-language-selection" }, { kind: "component", type: i4.NotificationsIndicatorComponent, selector: "lib-notifications-indicator" }, { kind: "component", type: i5.UserProfileMenuComponent, selector: "lib-user-profile-menu", inputs: ["show-user-name"] }] });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShellSidebarHeaderComponent, decorators: [{
|
|
27
27
|
type: Component,
|
|
28
|
-
args: [{ selector: 'lib-shell-sidebar-header', template: "<div class=\"shell-header-paddings\">\n <div class=\"shell-header-border\">\n <div class=\"shell-header-menu-container\">\n <div class=\"shell-header-md-visible\">\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\n <!-- Profile dropdown -->\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\n </div>\n <!-- Notifications dropdown -->\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\n <lib-notifications-indicator></lib-notifications-indicator>\n </div>\n <!-- languages dropdown -->\n <div *ngIf=\"showLangs\" class=\"ml-4\">\n <lib-language-selection></lib-language-selection>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n \n" }]
|
|
28
|
+
args: [{ selector: 'lib-shell-sidebar-header', template: "<div class=\"shell-header-paddings\">\r\n <div class=\"shell-header-border\">\r\n <div class=\"shell-header-menu-container\">\r\n <div class=\"shell-header-md-visible\">\r\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\r\n <!-- Profile dropdown -->\r\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\r\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\r\n </div>\r\n <!-- Notifications dropdown -->\r\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\r\n <lib-notifications-indicator></lib-notifications-indicator>\r\n </div>\r\n <!-- languages dropdown -->\r\n <div *ngIf=\"showLangs\" class=\"ml-4\">\r\n <lib-language-selection></lib-language-selection>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n \r\n" }]
|
|
29
29
|
}], ctorParameters: function () { return [{ type: i6.AuthService, decorators: [{
|
|
30
30
|
type: Inject,
|
|
31
31
|
args: [AuthService]
|
|
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
|
|
|
42
42
|
type: Inject,
|
|
43
43
|
args: [APP_LINKS]
|
|
44
44
|
}] }]; } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtc2lkZWJhci1oZWFkZXIvc2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtc2lkZWJhci1oZWFkZXIvc2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQTBCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7OztBQU85RSxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsb0JBQW9CO0lBQ25FLFlBQTJDLFdBQXdCLEVBQ3pDLE1BQWMsRUFDTixLQUFxQixFQUMxQixNQUFXLEVBQ2QsS0FBVTtRQUNsQyxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBTFIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQUs7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFLO0lBRXBDLENBQUM7O3dIQVBVLDJCQUEyQixrQkFDbEIsV0FBVyxhQUN2QixNQUFNLGFBQ04sY0FBYyxhQUNkLFlBQVksYUFDWixTQUFTOzRHQUxOLDJCQUEyQix1RkNaeEMsaWtDQXVCQTsyRkRYYSwyQkFBMkI7a0JBSnZDLFNBQVM7K0JBQ0UsMEJBQTBCOzswQkFJdkIsTUFBTTsyQkFBQyxXQUFXOzswQkFDOUIsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixNQUFNOzJCQUFDLGNBQWM7OzBCQUNyQixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAaW5kaWNlL25nLWF1dGgnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIEV2ZW50LCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEFQUF9MSU5LUywgU0hFTExfQ09ORklHIH0gZnJvbSAnLi4vLi4vLi4vdG9rZW5zJztcclxuaW1wb3J0IHsgU2hlbGxIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9zaGVsbC1oZWFkZXIvc2hlbGwtaGVhZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNoZWxsTGF5b3V0VHlwZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLXNpZGViYXItaGVhZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGVsbFNpZGViYXJIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBTaGVsbEhlYWRlckNvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IoQEluamVjdChBdXRoU2VydmljZSkgcHJvdGVjdGVkIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICBASW5qZWN0KFJvdXRlcikgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxyXG4gIEBJbmplY3QoQWN0aXZhdGVkUm91dGUpIHByb3RlY3RlZCByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgQEluamVjdChTSEVMTF9DT05GSUcpIHB1YmxpYyBjb25maWc6IGFueSxcclxuICBASW5qZWN0KEFQUF9MSU5LUykgcHVibGljIGxpbmtzOiBhbnkpIHtcclxuICAgIHN1cGVyKGF1dGhTZXJ2aWNlLCByb3V0ZXIsIHJvdXRlLCBjb25maWcsIGxpbmtzKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItcGFkZGluZ3NcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItYm9yZGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1tZW51LWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLW1kLXZpc2libGVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItbGlua3MtZmFyLWNvbnRhaW5lclwiIChjbGlja091dHNpZGUpPVwib25DbGlja091dHNpZGUoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgPCEtLSBQcm9maWxlIGRyb3Bkb3duIC0tPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInByb2ZpbGVNZW51VmlzaWJsZVwiIGNsYXNzPVwibWwtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaWItdXNlci1wcm9maWxlLW1lbnUgW3Nob3ctdXNlci1uYW1lXT1cInNob3dVc2VyTmFtZU9uSGVhZGVyXCI+PC9saWItdXNlci1wcm9maWxlLW1lbnU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwhLS0gTm90aWZpY2F0aW9ucyBkcm9wZG93biAtLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93QWxlcnRzICYmIHVzZXJcIiBjbGFzcz1cIm1sLTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLW5vdGlmaWNhdGlvbnMtaW5kaWNhdG9yPjwvbGliLW5vdGlmaWNhdGlvbnMtaW5kaWNhdG9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8IS0tIGxhbmd1YWdlcyBkcm9wZG93biAtLT5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93TGFuZ3NcIiBjbGFzcz1cIm1sLTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLWxhbmd1YWdlLXNlbGVjdGlvbj48L2xpYi1sYW5ndWFnZS1zZWxlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuIFxyXG4iXX0=
|