ngx-vector-components 5.173.0 → 6.0.1
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/CHANGELOG.md +2986 -2974
- package/README.md +35 -35
- package/assets/icons/chevron_down_icon.svg +3 -3
- package/assets/icons/home_menu_icon.svg +3 -3
- package/assets/icons/logout_icon.svg +9 -9
- package/assets/icons/menu_footer_icon.svg +3 -3
- package/assets/icons/menu_hamburguer_icon.svg +3 -3
- package/assets/icons/terms_of_use_icon.svg +9 -9
- package/assets/icons/vector_admin_icon.svg +4 -4
- package/assets/icons/vector_fintech_icon.svg +3 -3
- package/assets/icons/vector_logtech_icon.svg +6 -6
- package/assets/icons/vector_marketplace_icon.svg +3 -3
- package/assets/images/bunge_logo.svg +23 -23
- package/assets/images/cofco_logo.svg +117 -117
- package/assets/images/emote_bad.svg +6 -6
- package/assets/images/emote_cool.svg +5 -5
- package/assets/images/emote_nice.svg +5 -5
- package/assets/images/success_sign.svg +4 -4
- package/assets/images/vector-logo-horizontal-inverse-color.svg +13 -13
- package/assets/images/vector_logo_horizontal.svg +13 -13
- package/assets/images/warn_sign.svg +4 -4
- package/assets/styles/_fonts.scss +114 -114
- package/assets/styles/_mixins.scss +7 -7
- package/assets/styles/_primeng-custom-theme.scss +1858 -1302
- package/assets/styles/_spinner.scss +36 -35
- package/assets/styles/_styles.scss +134 -115
- package/assets/styles/_variables.scss +61 -27
- package/fesm2022/ngx-vector-components.mjs +396 -273
- package/fesm2022/ngx-vector-components.mjs.map +1 -1
- package/lib/components/drawer/drawer.component.d.ts +21 -0
- package/lib/components/drawer/drawer.module.d.ts +9 -0
- package/lib/components/drawer/index.d.ts +2 -0
- package/lib/components/fields/fields.module.d.ts +5 -5
- package/lib/components/fields/input-switch-field/input-switch-field.component.d.ts +3 -2
- package/lib/components/fields/select-button-field/select-button-field.component.d.ts +4 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/config/index.d.ts +14 -0
- package/package.json +13 -14
- package/public-api.d.ts +1 -0
- package/esm2022/lib/components/badge/badge.component.mjs +0 -39
- package/esm2022/lib/components/badge/badge.module.mjs +0 -19
- package/esm2022/lib/components/badge/index.mjs +0 -3
- package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +0 -74
- package/esm2022/lib/components/breadcrumb/breadcrumb.module.mjs +0 -18
- package/esm2022/lib/components/breadcrumb/index.mjs +0 -3
- package/esm2022/lib/components/crud-base/crud-base.component.mjs +0 -47
- package/esm2022/lib/components/crud-base/index.mjs +0 -2
- package/esm2022/lib/components/crud-footer/crud-footer.component.mjs +0 -40
- package/esm2022/lib/components/crud-footer/crud-footer.module.mjs +0 -20
- package/esm2022/lib/components/crud-footer/index.mjs +0 -3
- package/esm2022/lib/components/crud-header/crud-header.component.mjs +0 -30
- package/esm2022/lib/components/crud-header/crud-header.module.mjs +0 -19
- package/esm2022/lib/components/crud-header/index.mjs +0 -3
- package/esm2022/lib/components/crud-history/crud-history.component.mjs +0 -100
- package/esm2022/lib/components/crud-history/crud-history.module.mjs +0 -21
- package/esm2022/lib/components/crud-history/index.mjs +0 -3
- package/esm2022/lib/components/fields/button/button.component.mjs +0 -48
- package/esm2022/lib/components/fields/button/index.mjs +0 -2
- package/esm2022/lib/components/fields/calendar-field/calendar-field.component.mjs +0 -107
- package/esm2022/lib/components/fields/calendar-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/checkbox-field/checkbox-field.component.mjs +0 -62
- package/esm2022/lib/components/fields/checkbox-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/currency-field/currency-field.component.mjs +0 -103
- package/esm2022/lib/components/fields/currency-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/data-table/data-table.component.mjs +0 -454
- package/esm2022/lib/components/fields/data-table/index.mjs +0 -2
- package/esm2022/lib/components/fields/dropdown-field/dropdown-field.component.mjs +0 -308
- package/esm2022/lib/components/fields/dropdown-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/field-error-message/field-error-message.component.mjs +0 -35
- package/esm2022/lib/components/fields/field-error-message/index.mjs +0 -2
- package/esm2022/lib/components/fields/fields.module.mjs +0 -229
- package/esm2022/lib/components/fields/filters/filters.component.mjs +0 -212
- package/esm2022/lib/components/fields/filters/index.mjs +0 -2
- package/esm2022/lib/components/fields/index.mjs +0 -21
- package/esm2022/lib/components/fields/input-number-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/input-number-field/input-number-field.component.mjs +0 -88
- package/esm2022/lib/components/fields/input-otp/index.mjs +0 -2
- package/esm2022/lib/components/fields/input-otp/input-otp.component.mjs +0 -50
- package/esm2022/lib/components/fields/input-switch-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/input-switch-field/input-switch-field.component.mjs +0 -21
- package/esm2022/lib/components/fields/multiselect-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/multiselect-field/multiselect-field.component.mjs +0 -315
- package/esm2022/lib/components/fields/percentage-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/percentage-field/percentage-field.component.mjs +0 -54
- package/esm2022/lib/components/fields/radio-button-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/radio-button-field/radio-button-field.component.mjs +0 -62
- package/esm2022/lib/components/fields/range-value/index.mjs +0 -2
- package/esm2022/lib/components/fields/range-value/range-value.component.mjs +0 -72
- package/esm2022/lib/components/fields/search-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/search-field/search-field.component.mjs +0 -33
- package/esm2022/lib/components/fields/select-button-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/select-button-field/select-button-field.component.mjs +0 -23
- package/esm2022/lib/components/fields/text-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/text-field/text-field.component.mjs +0 -277
- package/esm2022/lib/components/fields/textarea-field/index.mjs +0 -2
- package/esm2022/lib/components/fields/textarea-field/textarea-field.component.mjs +0 -81
- package/esm2022/lib/components/generic-error-modal/generic-error-modal.component.mjs +0 -33
- package/esm2022/lib/components/generic-error-modal/generic-error-modal.module.mjs +0 -20
- package/esm2022/lib/components/generic-error-modal/index.mjs +0 -3
- package/esm2022/lib/components/generic-modal/generic-modal.component.mjs +0 -66
- package/esm2022/lib/components/generic-modal/generic-modal.module.mjs +0 -20
- package/esm2022/lib/components/generic-modal/index.mjs +0 -3
- package/esm2022/lib/components/index.mjs +0 -15
- package/esm2022/lib/components/menu/index.mjs +0 -4
- package/esm2022/lib/components/menu/menu.component.mjs +0 -306
- package/esm2022/lib/components/menu/menu.module.mjs +0 -20
- package/esm2022/lib/components/menu/sub-menus-list/sub-menus-list.component.mjs +0 -41
- package/esm2022/lib/components/panel/index.mjs +0 -3
- package/esm2022/lib/components/panel/panel.component.mjs +0 -15
- package/esm2022/lib/components/panel/panel.module.mjs +0 -19
- package/esm2022/lib/components/score/index.mjs +0 -3
- package/esm2022/lib/components/score/score.component.mjs +0 -17
- package/esm2022/lib/components/score/score.module.mjs +0 -16
- package/esm2022/lib/components/stepper/index.mjs +0 -3
- package/esm2022/lib/components/stepper/stepper.component.mjs +0 -47
- package/esm2022/lib/components/stepper/stepper.module.mjs +0 -19
- package/esm2022/lib/components/top-bar/index.mjs +0 -3
- package/esm2022/lib/components/top-bar/top-bar.component.mjs +0 -158
- package/esm2022/lib/components/top-bar/top-bar.module.mjs +0 -21
- package/esm2022/lib/guards/crud-list-has-items.guard.mjs +0 -11
- package/esm2022/lib/guards/get-token-by-guid.guard.mjs +0 -41
- package/esm2022/lib/guards/has-permission.guard.mjs +0 -15
- package/esm2022/lib/guards/index.mjs +0 -6
- package/esm2022/lib/guards/role.guard.mjs +0 -14
- package/esm2022/lib/guards/token-is-present.guard.mjs +0 -14
- package/esm2022/lib/injections/index.mjs +0 -5
- package/esm2022/lib/interceptors/http-interceptor.mjs +0 -186
- package/esm2022/lib/interceptors/index.mjs +0 -2
- package/esm2022/lib/models/app-name.enum.mjs +0 -10
- package/esm2022/lib/models/boolean-type.enum.mjs +0 -6
- package/esm2022/lib/models/crud-history.model.mjs +0 -3
- package/esm2022/lib/models/crud-mode.enum.mjs +0 -7
- package/esm2022/lib/models/currency.enum.mjs +0 -7
- package/esm2022/lib/models/data-table.model.mjs +0 -23
- package/esm2022/lib/models/document-type.enum.mjs +0 -6
- package/esm2022/lib/models/filters.model.mjs +0 -2
- package/esm2022/lib/models/generic-modal.model.mjs +0 -2
- package/esm2022/lib/models/http-response.model.mjs +0 -2
- package/esm2022/lib/models/index.mjs +0 -19
- package/esm2022/lib/models/ip-info.enum.mjs +0 -2
- package/esm2022/lib/models/list-item.model.mjs +0 -2
- package/esm2022/lib/models/locale.enum.mjs +0 -7
- package/esm2022/lib/models/menu-item.model.mjs +0 -2
- package/esm2022/lib/models/message-status.enum.mjs +0 -8
- package/esm2022/lib/models/profile.model.mjs +0 -712
- package/esm2022/lib/models/role.enum.mjs +0 -5
- package/esm2022/lib/models/status.enum.mjs +0 -9
- package/esm2022/lib/models/topbar.model.mjs +0 -2
- package/esm2022/lib/models/vector-app.model.mjs +0 -2
- package/esm2022/lib/models/vector-notification.model.mjs +0 -2
- package/esm2022/lib/models/view.enum.mjs +0 -9
- package/esm2022/lib/pipes/currency-brl.pipe.mjs +0 -18
- package/esm2022/lib/pipes/format-document.pipe.mjs +0 -17
- package/esm2022/lib/pipes/index.mjs +0 -9
- package/esm2022/lib/pipes/mask.pipe.mjs +0 -21
- package/esm2022/lib/pipes/not-hidden.pipe.mjs +0 -16
- package/esm2022/lib/pipes/only-active.pipe.mjs +0 -16
- package/esm2022/lib/pipes/pipes.module.mjs +0 -50
- package/esm2022/lib/pipes/remove-last-child.pipe.mjs +0 -18
- package/esm2022/lib/pipes/unread-notifications.pipe.mjs +0 -15
- package/esm2022/lib/resolvers/get-selected-crud-item.resolver.mjs +0 -17
- package/esm2022/lib/resolvers/index.mjs +0 -2
- package/esm2022/lib/services/auth.service.mjs +0 -78
- package/esm2022/lib/services/base-dropdown.mjs +0 -2
- package/esm2022/lib/services/breadcrumb.service.mjs +0 -22
- package/esm2022/lib/services/crud-base.service.mjs +0 -14
- package/esm2022/lib/services/enum.service.mjs +0 -43
- package/esm2022/lib/services/error-message.service.mjs +0 -16
- package/esm2022/lib/services/geolocation.service.mjs +0 -23
- package/esm2022/lib/services/index.mjs +0 -14
- package/esm2022/lib/services/loading.service.mjs +0 -15
- package/esm2022/lib/services/menu.service.mjs +0 -154
- package/esm2022/lib/services/modal.service.mjs +0 -15
- package/esm2022/lib/services/notifications.service.mjs +0 -64
- package/esm2022/lib/services/profile.service.mjs +0 -115
- package/esm2022/lib/services/storage.service.mjs +0 -104
- package/esm2022/lib/shared/shared.module.mjs +0 -19
- package/esm2022/lib/utils/cpf-cnpj-validator.util.mjs +0 -109
- package/esm2022/lib/utils/file.util.mjs +0 -15
- package/esm2022/lib/utils/index.mjs +0 -8
- package/esm2022/lib/utils/mask.util.mjs +0 -82
- package/esm2022/lib/utils/object.util.mjs +0 -27
- package/esm2022/lib/utils/string.util.mjs +0 -52
- package/esm2022/lib/utils/validation.util.mjs +0 -279
- package/esm2022/lib/utils/window.util.mjs +0 -9
- package/esm2022/ngx-vector-components.mjs +0 -5
- package/esm2022/public-api.mjs +0 -10
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
export class SubMenusListComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.showList = false;
|
|
7
|
-
this.childLevel = 1;
|
|
8
|
-
this.submenuSelectedChange = new EventEmitter();
|
|
9
|
-
}
|
|
10
|
-
submenuClick(option) {
|
|
11
|
-
if (!option.alwaysOpen) {
|
|
12
|
-
if (this.submenuSelected?.id === option.id) {
|
|
13
|
-
this.submenuSelected = undefined;
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
this.submenuSelected = option.children?.length ? option : undefined;
|
|
17
|
-
}
|
|
18
|
-
this.submenuSelectedChange.emit(option);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
get paddingLeft() {
|
|
22
|
-
return this.childLevel * 10 + 'px';
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SubMenusListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SubMenusListComponent, selector: "vector-sub-menus-list", inputs: { showList: "showList", options: "options", childLevel: "childLevel", submenuSelected: "submenuSelected" }, outputs: { submenuSelectedChange: "submenuSelectedChange" }, ngImport: i0, template: "<div class=\"sub-menu-container\">\r\n <ul *ngIf=\"showList\" class=\"sub-menu\">\r\n <div *ngFor=\"let submenuItem of options\">\r\n <li class=\"sub-menu-item\" [ngStyle]=\"{ 'padding-left': paddingLeft }\" (click)=\"submenuClick(submenuItem)\">\r\n <div\r\n class=\"current-item\"\r\n [ngClass]=\"{\r\n 'active-menu': submenuSelected?.id === submenuItem.id,\r\n 'always-open': !!submenuItem.alwaysOpen,\r\n 'last-child': !submenuItem.children?.length\r\n }\"\r\n >\r\n <div *ngIf=\"submenuItem.icon\" class=\"icon-container\">\r\n <i [class]=\"submenuItem.icon\"></i>\r\n </div>\r\n <span class=\"menu-label\">{{ submenuItem.label }}</span>\r\n <i\r\n *ngIf=\"submenuItem.children?.length && !submenuItem.alwaysOpen\"\r\n class=\"fas angle-icon\"\r\n [ngClass]=\"{\r\n 'fa-angle-down': submenuSelected?.id !== submenuItem.id,\r\n 'fa-angle-up': submenuSelected?.id === submenuItem.id\r\n }\"\r\n ></i>\r\n </div>\r\n </li>\r\n <vector-sub-menus-list\r\n *ngIf=\"submenuItem?.children\"\r\n [options]=\"submenuItem?.children\"\r\n [showList]=\"submenuItem?.id === submenuSelected?.id || !!submenuItem?.alwaysOpen\"\r\n [childLevel]=\"childLevel + 1\"\r\n (submenuSelectedChange)=\"submenuClick($event)\"\r\n ></vector-sub-menus-list>\r\n </div>\r\n </ul>\r\n</div>\r\n", styles: [".angle-icon{position:absolute;right:10px}.menu-icon{filter:brightness(0) saturate(100%) invert(14%) sepia(87%) saturate(1218%) hue-rotate(233deg) brightness(88%) contrast(90%);width:20px;height:20px}.icon-container{width:20px;height:20px;position:relative}.icon-container .menu-icon{display:flex;justify-content:center;align-items:center;font-size:1.4em}.icon-container .menu-notifications-count{padding:0 4.5px;background-color:var(--error-color);border-radius:10px;position:absolute;top:-4px;right:-4px;font-size:8px}.menu-label{color:var(--theme-dark);font-weight:600;text-decoration:none;padding-bottom:1px;padding-right:24px;margin-left:20px;min-width:170px;white-space:normal;overflow:visible}.active-menu:not(.always-open){background-color:var(--gray-light)}.sub-menu-container .sub-menu{list-style:none;display:contents}.sub-menu-container .sub-menu .sub-menu-item{animation:showSubMenu ease-in-out .1s;animation-fill-mode:both}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(n){animation-delay:50ms}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(2n){animation-delay:.1s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(3n){animation-delay:.15s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(4n){animation-delay:.2s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(5n){animation-delay:.25s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(6n){animation-delay:.3s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(7n){animation-delay:.35s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(8n){animation-delay:.4s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(9n){animation-delay:.45s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(10n){animation-delay:.5s}.sub-menu-container .sub-menu .sub-menu-item .current-item{min-height:40px;display:flex;flex-direction:row;align-items:center;transition:background-color ease-in-out .1s;z-index:2;overflow:hidden;padding:0 10px;border-radius:15px;margin:5px 0;position:relative}.sub-menu-container .sub-menu .sub-menu-item .current-item:not(.always-open){cursor:pointer}.sub-menu-container .sub-menu .sub-menu-item .current-item:hover,.sub-menu-container .sub-menu .sub-menu-item .current-item.active{background-color:var(--gray-light)}.sub-menu-container .sub-menu .sub-menu-item .current-item.active span,.sub-menu-container .sub-menu .sub-menu-item .current-item.active i{color:#fff}@keyframes showSubMenu{0%{transform:translate(-100%)}to{transform:translate(0)}}.sub-menu-container .sub-menu .sub-menu-item .last-child .menu-label{font-weight:400}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: SubMenusListComponent, selector: "vector-sub-menus-list", inputs: ["showList", "options", "childLevel", "submenuSelected"], outputs: ["submenuSelectedChange"] }] }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SubMenusListComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{ selector: 'vector-sub-menus-list', template: "<div class=\"sub-menu-container\">\r\n <ul *ngIf=\"showList\" class=\"sub-menu\">\r\n <div *ngFor=\"let submenuItem of options\">\r\n <li class=\"sub-menu-item\" [ngStyle]=\"{ 'padding-left': paddingLeft }\" (click)=\"submenuClick(submenuItem)\">\r\n <div\r\n class=\"current-item\"\r\n [ngClass]=\"{\r\n 'active-menu': submenuSelected?.id === submenuItem.id,\r\n 'always-open': !!submenuItem.alwaysOpen,\r\n 'last-child': !submenuItem.children?.length\r\n }\"\r\n >\r\n <div *ngIf=\"submenuItem.icon\" class=\"icon-container\">\r\n <i [class]=\"submenuItem.icon\"></i>\r\n </div>\r\n <span class=\"menu-label\">{{ submenuItem.label }}</span>\r\n <i\r\n *ngIf=\"submenuItem.children?.length && !submenuItem.alwaysOpen\"\r\n class=\"fas angle-icon\"\r\n [ngClass]=\"{\r\n 'fa-angle-down': submenuSelected?.id !== submenuItem.id,\r\n 'fa-angle-up': submenuSelected?.id === submenuItem.id\r\n }\"\r\n ></i>\r\n </div>\r\n </li>\r\n <vector-sub-menus-list\r\n *ngIf=\"submenuItem?.children\"\r\n [options]=\"submenuItem?.children\"\r\n [showList]=\"submenuItem?.id === submenuSelected?.id || !!submenuItem?.alwaysOpen\"\r\n [childLevel]=\"childLevel + 1\"\r\n (submenuSelectedChange)=\"submenuClick($event)\"\r\n ></vector-sub-menus-list>\r\n </div>\r\n </ul>\r\n</div>\r\n", styles: [".angle-icon{position:absolute;right:10px}.menu-icon{filter:brightness(0) saturate(100%) invert(14%) sepia(87%) saturate(1218%) hue-rotate(233deg) brightness(88%) contrast(90%);width:20px;height:20px}.icon-container{width:20px;height:20px;position:relative}.icon-container .menu-icon{display:flex;justify-content:center;align-items:center;font-size:1.4em}.icon-container .menu-notifications-count{padding:0 4.5px;background-color:var(--error-color);border-radius:10px;position:absolute;top:-4px;right:-4px;font-size:8px}.menu-label{color:var(--theme-dark);font-weight:600;text-decoration:none;padding-bottom:1px;padding-right:24px;margin-left:20px;min-width:170px;white-space:normal;overflow:visible}.active-menu:not(.always-open){background-color:var(--gray-light)}.sub-menu-container .sub-menu{list-style:none;display:contents}.sub-menu-container .sub-menu .sub-menu-item{animation:showSubMenu ease-in-out .1s;animation-fill-mode:both}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(n){animation-delay:50ms}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(2n){animation-delay:.1s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(3n){animation-delay:.15s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(4n){animation-delay:.2s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(5n){animation-delay:.25s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(6n){animation-delay:.3s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(7n){animation-delay:.35s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(8n){animation-delay:.4s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(9n){animation-delay:.45s}.sub-menu-container .sub-menu .sub-menu-item:not(:first-child):nth-child(10n){animation-delay:.5s}.sub-menu-container .sub-menu .sub-menu-item .current-item{min-height:40px;display:flex;flex-direction:row;align-items:center;transition:background-color ease-in-out .1s;z-index:2;overflow:hidden;padding:0 10px;border-radius:15px;margin:5px 0;position:relative}.sub-menu-container .sub-menu .sub-menu-item .current-item:not(.always-open){cursor:pointer}.sub-menu-container .sub-menu .sub-menu-item .current-item:hover,.sub-menu-container .sub-menu .sub-menu-item .current-item.active{background-color:var(--gray-light)}.sub-menu-container .sub-menu .sub-menu-item .current-item.active span,.sub-menu-container .sub-menu .sub-menu-item .current-item.active i{color:#fff}@keyframes showSubMenu{0%{transform:translate(-100%)}to{transform:translate(0)}}.sub-menu-container .sub-menu .sub-menu-item .last-child .menu-label{font-weight:400}\n"] }]
|
|
30
|
-
}], propDecorators: { showList: [{
|
|
31
|
-
type: Input
|
|
32
|
-
}], options: [{
|
|
33
|
-
type: Input
|
|
34
|
-
}], childLevel: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}], submenuSelected: [{
|
|
37
|
-
type: Input
|
|
38
|
-
}], submenuSelectedChange: [{
|
|
39
|
-
type: Output
|
|
40
|
-
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLW1lbnVzLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tZW51L3N1Yi1tZW51cy1saXN0L3N1Yi1tZW51cy1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9zdWItbWVudXMtbGlzdC9zdWItbWVudXMtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRdkUsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQU9TLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFJakIsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUlmLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7S0FnQjdEO0lBZFEsWUFBWSxDQUFDLE1BQWdCO1FBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFO1lBQ3RCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLEtBQUssTUFBTSxDQUFDLEVBQUUsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUM7YUFDbEM7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7YUFDckU7WUFDRCxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQztJQUNyQyxDQUFDOytHQXpCVSxxQkFBcUI7bUdBQXJCLHFCQUFxQiw4T0NSbEMscWdEQW9DQSx5b0dENUJhLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSx1QkFBdUI7OEJBTTFCLFFBQVE7c0JBRGQsS0FBSztnQkFHQyxPQUFPO3NCQURiLEtBQUs7Z0JBR0MsVUFBVTtzQkFEaEIsS0FBSztnQkFHQyxlQUFlO3NCQURyQixLQUFLO2dCQUdDLHFCQUFxQjtzQkFEM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmVjdG9yLXN1Yi1tZW51cy1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3ViLW1lbnVzLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N1Yi1tZW51cy1saXN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdWJNZW51c0xpc3RDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dMaXN0ID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgb3B0aW9uczogTWVudUl0ZW1bXSB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjaGlsZExldmVsID0gMTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdWJtZW51U2VsZWN0ZWQ6IE1lbnVJdGVtIHwgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBzdWJtZW51U2VsZWN0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE1lbnVJdGVtPigpO1xyXG5cclxuICBwdWJsaWMgc3VibWVudUNsaWNrKG9wdGlvbjogTWVudUl0ZW0pIHtcclxuICAgIGlmICghb3B0aW9uLmFsd2F5c09wZW4pIHtcclxuICAgICAgaWYgKHRoaXMuc3VibWVudVNlbGVjdGVkPy5pZCA9PT0gb3B0aW9uLmlkKSB7XHJcbiAgICAgICAgdGhpcy5zdWJtZW51U2VsZWN0ZWQgPSB1bmRlZmluZWQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zdWJtZW51U2VsZWN0ZWQgPSBvcHRpb24uY2hpbGRyZW4/Lmxlbmd0aCA/IG9wdGlvbiA6IHVuZGVmaW5lZDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN1Ym1lbnVTZWxlY3RlZENoYW5nZS5lbWl0KG9wdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHBhZGRpbmdMZWZ0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hpbGRMZXZlbCAqIDEwICsgJ3B4JztcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInN1Yi1tZW51LWNvbnRhaW5lclwiPlxyXG4gIDx1bCAqbmdJZj1cInNob3dMaXN0XCIgY2xhc3M9XCJzdWItbWVudVwiPlxyXG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgc3VibWVudUl0ZW0gb2Ygb3B0aW9uc1wiPlxyXG4gICAgICA8bGkgY2xhc3M9XCJzdWItbWVudS1pdGVtXCIgW25nU3R5bGVdPVwieyAncGFkZGluZy1sZWZ0JzogcGFkZGluZ0xlZnQgfVwiIChjbGljayk9XCJzdWJtZW51Q2xpY2soc3VibWVudUl0ZW0pXCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJjdXJyZW50LWl0ZW1cIlxyXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAnYWN0aXZlLW1lbnUnOiBzdWJtZW51U2VsZWN0ZWQ/LmlkID09PSBzdWJtZW51SXRlbS5pZCxcclxuICAgICAgICAgICAgJ2Fsd2F5cy1vcGVuJzogISFzdWJtZW51SXRlbS5hbHdheXNPcGVuLFxyXG4gICAgICAgICAgICAnbGFzdC1jaGlsZCc6ICFzdWJtZW51SXRlbS5jaGlsZHJlbj8ubGVuZ3RoXHJcbiAgICAgICAgICB9XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwic3VibWVudUl0ZW0uaWNvblwiIGNsYXNzPVwiaWNvbi1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPGkgW2NsYXNzXT1cInN1Ym1lbnVJdGVtLmljb25cIj48L2k+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWVudS1sYWJlbFwiPnt7IHN1Ym1lbnVJdGVtLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgICAgICAgPGlcclxuICAgICAgICAgICAgKm5nSWY9XCJzdWJtZW51SXRlbS5jaGlsZHJlbj8ubGVuZ3RoICYmICFzdWJtZW51SXRlbS5hbHdheXNPcGVuXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmYXMgYW5nbGUtaWNvblwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAnZmEtYW5nbGUtZG93bic6IHN1Ym1lbnVTZWxlY3RlZD8uaWQgIT09IHN1Ym1lbnVJdGVtLmlkLFxyXG4gICAgICAgICAgICAgICdmYS1hbmdsZS11cCc6IHN1Ym1lbnVTZWxlY3RlZD8uaWQgPT09IHN1Ym1lbnVJdGVtLmlkXHJcbiAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgPjwvaT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9saT5cclxuICAgICAgPHZlY3Rvci1zdWItbWVudXMtbGlzdFxyXG4gICAgICAgICpuZ0lmPVwic3VibWVudUl0ZW0/LmNoaWxkcmVuXCJcclxuICAgICAgICBbb3B0aW9uc109XCJzdWJtZW51SXRlbT8uY2hpbGRyZW5cIlxyXG4gICAgICAgIFtzaG93TGlzdF09XCJzdWJtZW51SXRlbT8uaWQgPT09IHN1Ym1lbnVTZWxlY3RlZD8uaWQgfHwgISFzdWJtZW51SXRlbT8uYWx3YXlzT3BlblwiXHJcbiAgICAgICAgW2NoaWxkTGV2ZWxdPVwiY2hpbGRMZXZlbCArIDFcIlxyXG4gICAgICAgIChzdWJtZW51U2VsZWN0ZWRDaGFuZ2UpPVwic3VibWVudUNsaWNrKCRldmVudClcIlxyXG4gICAgICA+PC92ZWN0b3Itc3ViLW1lbnVzLWxpc3Q+XHJcbiAgICA8L2Rpdj5cclxuICA8L3VsPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './panel.component';
|
|
2
|
-
export * from './panel.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3BhbmVsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGFuZWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9wYW5lbC5tb2R1bGUnO1xyXG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "primeng/panel";
|
|
4
|
-
import * as i2 from "primeng/api";
|
|
5
|
-
export class PanelComponent {
|
|
6
|
-
constructor() { }
|
|
7
|
-
ngOnInit() { }
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PanelComponent, selector: "vector-panel", ngImport: i0, template: "<p-panel [showHeader]=\"false\">\r\n <ng-template pTemplate=\"content\">\r\n <div class=\"shadow-3\"><ng-content></ng-content></div></ng-template\r\n></p-panel>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PanelComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'vector-panel', template: "<p-panel [showHeader]=\"false\">\r\n <ng-template pTemplate=\"content\">\r\n <div class=\"shadow-3\"><ng-content></ng-content></div></ng-template\r\n></p-panel>\r\n" }]
|
|
14
|
-
}], ctorParameters: () => [] });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9wYW5lbC9wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3BhbmVsL3BhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPbEQsTUFBTSxPQUFPLGNBQWM7SUFDekIsZ0JBQWUsQ0FBQztJQUVoQixRQUFRLEtBQVUsQ0FBQzsrR0FIUixjQUFjO21HQUFkLGNBQWMsb0RDUDNCLDBLQUlBOzs0RkRHYSxjQUFjO2tCQUwxQixTQUFTOytCQUNFLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd2ZWN0b3ItcGFuZWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYW5lbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGFuZWwuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhbmVsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxufVxyXG4iLCI8cC1wYW5lbCBbc2hvd0hlYWRlcl09XCJmYWxzZVwiPlxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2hhZG93LTNcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+PC9uZy10ZW1wbGF0ZVxyXG4+PC9wLXBhbmVsPlxyXG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { PanelModule as PrimeNgPanel } from 'primeng/panel';
|
|
3
|
-
import { SharedModule } from '../../shared/shared.module';
|
|
4
|
-
import { PanelComponent } from './panel.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class PanelModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: PanelModule, declarations: [PanelComponent], imports: [SharedModule, PrimeNgPanel], exports: [PanelComponent] }); }
|
|
9
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PanelModule, imports: [SharedModule, PrimeNgPanel] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PanelModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
declarations: [PanelComponent],
|
|
15
|
-
exports: [PanelComponent],
|
|
16
|
-
imports: [SharedModule, PrimeNgPanel],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9wYW5lbC9wYW5lbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxJQUFJLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQU9uRCxNQUFNLE9BQU8sV0FBVzsrR0FBWCxXQUFXO2dIQUFYLFdBQVcsaUJBSlAsY0FBYyxhQUVuQixZQUFZLEVBQUUsWUFBWSxhQUQxQixjQUFjO2dIQUdiLFdBQVcsWUFGWixZQUFZLEVBQUUsWUFBWTs7NEZBRXpCLFdBQVc7a0JBTHZCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxDQUFDO29CQUM5QixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQ3pCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUGFuZWxNb2R1bGUgYXMgUHJpbWVOZ1BhbmVsIH0gZnJvbSAncHJpbWVuZy9wYW5lbCc7XHJcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcclxuaW1wb3J0IHsgUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3BhbmVsLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1BhbmVsQ29tcG9uZW50XSxcclxuICBleHBvcnRzOiBbUGFuZWxDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtTaGFyZWRNb2R1bGUsIFByaW1lTmdQYW5lbF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYW5lbE1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './score.component';
|
|
2
|
-
export * from './score.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Njb3JlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2NvcmUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zY29yZS5tb2R1bGUnO1xyXG4iXX0=
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class ScoreComponent {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.score = 0;
|
|
6
|
-
}
|
|
7
|
-
ngOnInit() { }
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ScoreComponent, selector: "vector-score", inputs: { score: "score" }, ngImport: i0, template: "<div class=\"container\">\r\n <span class=\"score\">{{ score }}</span>\r\n <em class=\"fas fa-star star\"></em>\r\n</div>\r\n", styles: [".container{display:flex;align-items:center;gap:5px}.container .star{color:var(--theme-primary)}\n"] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScoreComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'vector-score', template: "<div class=\"container\">\r\n <span class=\"score\">{{ score }}</span>\r\n <em class=\"fas fa-star star\"></em>\r\n</div>\r\n", styles: [".container{display:flex;align-items:center;gap:5px}.container .star{color:var(--theme-primary)}\n"] }]
|
|
14
|
-
}], ctorParameters: () => [], propDecorators: { score: [{
|
|
15
|
-
type: Input
|
|
16
|
-
}] } });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zY29yZS9zY29yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Njb3JlL3Njb3JlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQU96RCxNQUFNLE9BQU8sY0FBYztJQUl6QjtRQUZPLFVBQUssR0FBVyxDQUFDLENBQUM7SUFFVixDQUFDO0lBRWhCLFFBQVEsS0FBVSxDQUFDOytHQU5SLGNBQWM7bUdBQWQsY0FBYyxnRkNQM0IsaUlBSUE7OzRGREdhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsY0FBYzt3REFNakIsS0FBSztzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3ZlY3Rvci1zY29yZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Njb3JlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zY29yZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2NvcmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNjb3JlOiBudW1iZXIgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgPHNwYW4gY2xhc3M9XCJzY29yZVwiPnt7IHNjb3JlIH19PC9zcGFuPlxyXG4gIDxlbSBjbGFzcz1cImZhcyBmYS1zdGFyIHN0YXJcIj48L2VtPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { ScoreComponent } from './score.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class ScoreModule {
|
|
5
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: ScoreModule, declarations: [ScoreComponent], exports: [ScoreComponent] }); }
|
|
7
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScoreModule }); }
|
|
8
|
-
}
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScoreModule, decorators: [{
|
|
10
|
-
type: NgModule,
|
|
11
|
-
args: [{
|
|
12
|
-
declarations: [ScoreComponent],
|
|
13
|
-
exports: [ScoreComponent],
|
|
14
|
-
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zY29yZS9zY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTW5ELE1BQU0sT0FBTyxXQUFXOytHQUFYLFdBQVc7Z0hBQVgsV0FBVyxpQkFIUCxjQUFjLGFBQ25CLGNBQWM7Z0hBRWIsV0FBVzs7NEZBQVgsV0FBVztrQkFKdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQzlCLE9BQU8sRUFBRSxDQUFDLGNBQWMsQ0FBQztpQkFDMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTY29yZUNvbXBvbmVudCB9IGZyb20gJy4vc2NvcmUuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbU2NvcmVDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtTY29yZUNvbXBvbmVudF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY29yZU1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './stepper.component';
|
|
2
|
-
export * from './stepper.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3N0ZXBwZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zdGVwcGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3RlcHBlci5tb2R1bGUnO1xyXG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "primeng/steps";
|
|
4
|
-
export class StepperComponent {
|
|
5
|
-
constructor(elementRef) {
|
|
6
|
-
this.elementRef = elementRef;
|
|
7
|
-
this.steps = [];
|
|
8
|
-
this.navigable = false;
|
|
9
|
-
this.activeIndex = 0;
|
|
10
|
-
this.activeIndexChange = new EventEmitter();
|
|
11
|
-
}
|
|
12
|
-
ngAfterViewInit() {
|
|
13
|
-
const stepsNumbers = this.elementRef.nativeElement.getElementsByClassName('p-steps-number');
|
|
14
|
-
let index = 0;
|
|
15
|
-
for (let element of stepsNumbers) {
|
|
16
|
-
const step = this.steps[index];
|
|
17
|
-
if (step.styleClass === 'checked') {
|
|
18
|
-
element.innerHTML = `<span class="fas fa-check"></span>`;
|
|
19
|
-
}
|
|
20
|
-
if (step.icon) {
|
|
21
|
-
element.innerHTML = `<span class="${step.icon}"></span>`;
|
|
22
|
-
}
|
|
23
|
-
if (step.disabled) {
|
|
24
|
-
element.classList.add('disabled');
|
|
25
|
-
}
|
|
26
|
-
index++;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
onActiveIndexChange(index) {
|
|
30
|
-
this.activeIndexChange.emit(index);
|
|
31
|
-
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: StepperComponent, selector: "vector-stepper", inputs: { steps: "steps", navigable: "navigable", activeIndex: "activeIndex" }, outputs: { activeIndexChange: "activeIndexChange" }, ngImport: i0, template: "<div class=\"wrapper\">\r\n <p-steps\r\n [model]=\"steps\"\r\n [readonly]=\"!navigable\"\r\n [activeIndex]=\"activeIndex\"\r\n (activeIndexChange)=\"onActiveIndexChange($event)\"\r\n >\r\n ></p-steps\r\n >\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.Steps, selector: "p-steps", inputs: ["activeIndex", "model", "readonly", "style", "styleClass", "exact"], outputs: ["activeIndexChange"] }] }); }
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{ selector: 'vector-stepper', template: "<div class=\"wrapper\">\r\n <p-steps\r\n [model]=\"steps\"\r\n [readonly]=\"!navigable\"\r\n [activeIndex]=\"activeIndex\"\r\n (activeIndexChange)=\"onActiveIndexChange($event)\"\r\n >\r\n ></p-steps\r\n >\r\n</div>\r\n" }]
|
|
38
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { steps: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}], navigable: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], activeIndex: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], activeIndexChange: [{
|
|
45
|
-
type: Output
|
|
46
|
-
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWxHLE1BQU0sT0FBTyxnQkFBZ0I7SUFVM0IsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQVJuQyxVQUFLLEdBQWUsRUFBRSxDQUFDO1FBRXZCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFFaEIsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUVULENBQUM7SUFFOUMsZUFBZTtRQUNiLE1BQU0sWUFBWSxHQUFzQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQy9HLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLEtBQUssSUFBSSxPQUFPLElBQUksWUFBWSxFQUFFO1lBQ2hDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0IsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtnQkFDakMsT0FBTyxDQUFDLFNBQVMsR0FBRyxvQ0FBb0MsQ0FBQzthQUMxRDtZQUNELElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDYixPQUFPLENBQUMsU0FBUyxHQUFHLGdCQUFnQixJQUFJLENBQUMsSUFBSSxXQUFXLENBQUM7YUFDMUQ7WUFDRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ25DO1lBQ0QsS0FBSyxFQUFFLENBQUM7U0FDVDtJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzsrR0FoQ1UsZ0JBQWdCO21HQUFoQixnQkFBZ0IsMkxDUjdCLCtPQVVBOzs0RkRGYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsZ0JBQWdCOytFQU1uQixLQUFLO3NCQURYLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLO2dCQUdDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBR0MsaUJBQWlCO3NCQUR2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3ZlY3Rvci1zdGVwcGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3RlcHBlci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RlcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHN0ZXBzOiBNZW51SXRlbVtdID0gW107XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgbmF2aWdhYmxlID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWN0aXZlSW5kZXggPSAwO1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBhY3RpdmVJbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHN0ZXBzTnVtYmVyczogSFRNTFNwYW5FbGVtZW50W10gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdwLXN0ZXBzLW51bWJlcicpO1xyXG4gICAgbGV0IGluZGV4ID0gMDtcclxuICAgIGZvciAobGV0IGVsZW1lbnQgb2Ygc3RlcHNOdW1iZXJzKSB7XHJcbiAgICAgIGNvbnN0IHN0ZXAgPSB0aGlzLnN0ZXBzW2luZGV4XTtcclxuICAgICAgaWYgKHN0ZXAuc3R5bGVDbGFzcyA9PT0gJ2NoZWNrZWQnKSB7XHJcbiAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgPSBgPHNwYW4gY2xhc3M9XCJmYXMgZmEtY2hlY2tcIj48L3NwYW4+YDtcclxuICAgICAgfVxyXG4gICAgICBpZiAoc3RlcC5pY29uKSB7XHJcbiAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgPSBgPHNwYW4gY2xhc3M9XCIke3N0ZXAuaWNvbn1cIj48L3NwYW4+YDtcclxuICAgICAgfVxyXG4gICAgICBpZiAoc3RlcC5kaXNhYmxlZCkge1xyXG4gICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnZGlzYWJsZWQnKTtcclxuICAgICAgfVxyXG4gICAgICBpbmRleCsrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25BY3RpdmVJbmRleENoYW5nZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmFjdGl2ZUluZGV4Q2hhbmdlLmVtaXQoaW5kZXgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gIDxwLXN0ZXBzXHJcbiAgICBbbW9kZWxdPVwic3RlcHNcIlxyXG4gICAgW3JlYWRvbmx5XT1cIiFuYXZpZ2FibGVcIlxyXG4gICAgW2FjdGl2ZUluZGV4XT1cImFjdGl2ZUluZGV4XCJcclxuICAgIChhY3RpdmVJbmRleENoYW5nZSk9XCJvbkFjdGl2ZUluZGV4Q2hhbmdlKCRldmVudClcIlxyXG4gID5cclxuICAgID48L3Atc3RlcHNcclxuICA+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { StepsModule } from 'primeng/steps';
|
|
3
|
-
import { SharedModule } from '../../shared/shared.module';
|
|
4
|
-
import { StepperComponent } from './stepper.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class StepperModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: StepperModule, declarations: [StepperComponent], imports: [SharedModule, StepsModule], exports: [StepperComponent] }); }
|
|
9
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperModule, imports: [SharedModule, StepsModule] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StepperModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
declarations: [StepperComponent],
|
|
15
|
-
exports: [StepperComponent],
|
|
16
|
-
imports: [SharedModule, StepsModule],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3N0ZXBwZXIvc3RlcHBlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPdkQsTUFBTSxPQUFPLGFBQWE7K0dBQWIsYUFBYTtnSEFBYixhQUFhLGlCQUpULGdCQUFnQixhQUVyQixZQUFZLEVBQUUsV0FBVyxhQUR6QixnQkFBZ0I7Z0hBR2YsYUFBYSxZQUZkLFlBQVksRUFBRSxXQUFXOzs0RkFFeEIsYUFBYTtrQkFMekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RlcHNNb2R1bGUgfSBmcm9tICdwcmltZW5nL3N0ZXBzJztcclxuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTdGVwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zdGVwcGVyLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1N0ZXBwZXJDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtTdGVwcGVyQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlLCBTdGVwc01vZHVsZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdGVwcGVyTW9kdWxlIHt9XHJcbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './top-bar.component';
|
|
2
|
-
export * from './top-bar.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3RvcC1iYXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90b3AtYmFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdG9wLWJhci5tb2R1bGUnO1xyXG4iXX0=
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { Subscription } from 'rxjs';
|
|
3
|
-
import { Role } from '../../models';
|
|
4
|
-
import { MaskUtil, WindowUtil } from '../../utils';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../services";
|
|
7
|
-
import * as i2 from "@angular/router";
|
|
8
|
-
import * as i3 from "../../services/notifications.service";
|
|
9
|
-
import * as i4 from "@angular/common";
|
|
10
|
-
import * as i5 from "primeng/tooltip";
|
|
11
|
-
import * as i6 from "primeng/overlaypanel";
|
|
12
|
-
import * as i7 from "primeng/api";
|
|
13
|
-
import * as i8 from "../../pipes/format-document.pipe";
|
|
14
|
-
import * as i9 from "../../pipes/unread-notifications.pipe";
|
|
15
|
-
import * as i10 from "@ngx-translate/core";
|
|
16
|
-
export class TopBarComponent {
|
|
17
|
-
constructor(menuService, authService, router, profileService, storageService, notificationsService, errorMessageService) {
|
|
18
|
-
this.menuService = menuService;
|
|
19
|
-
this.authService = authService;
|
|
20
|
-
this.router = router;
|
|
21
|
-
this.profileService = profileService;
|
|
22
|
-
this.storageService = storageService;
|
|
23
|
-
this.notificationsService = notificationsService;
|
|
24
|
-
this.errorMessageService = errorMessageService;
|
|
25
|
-
this.hideElements = false;
|
|
26
|
-
this.openedMenu = false;
|
|
27
|
-
this.openedChangeAccountMenu = false;
|
|
28
|
-
this.showNotifications = false;
|
|
29
|
-
this.doingOnboarding = false;
|
|
30
|
-
this.currentAccount = {};
|
|
31
|
-
this.isAdmin = false;
|
|
32
|
-
this.otherAccounts = [];
|
|
33
|
-
this.maskUtil = MaskUtil;
|
|
34
|
-
this.fintech = false;
|
|
35
|
-
this.showHelpCentral = false;
|
|
36
|
-
this.showProfile = false;
|
|
37
|
-
this.helpCentralIcons = [
|
|
38
|
-
{
|
|
39
|
-
icon: 'fab fa-whatsapp',
|
|
40
|
-
url: 'https://api.whatsapp.com/send?phone=5521971551188&text=ol%C3%A1',
|
|
41
|
-
active: true,
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
icon: 'pi pi-phone',
|
|
45
|
-
url: 'tel:552120423017',
|
|
46
|
-
active: true,
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
icon: 'far fa-envelope',
|
|
50
|
-
url: 'mailto:suporte@vectorapp.com.br',
|
|
51
|
-
active: true,
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
icon: 'far fa-question-circle',
|
|
55
|
-
url: '',
|
|
56
|
-
active: false,
|
|
57
|
-
},
|
|
58
|
-
];
|
|
59
|
-
this.onClick = new EventEmitter();
|
|
60
|
-
this.notificationsList = [];
|
|
61
|
-
this.subscription = new Subscription();
|
|
62
|
-
}
|
|
63
|
-
ngOnInit() {
|
|
64
|
-
this.subscription.add(this.profileService.profileFirstName$.subscribe((value) => {
|
|
65
|
-
this.vectorFirstName = value;
|
|
66
|
-
}));
|
|
67
|
-
this.subscription.add(this.menuService.menuOpened$.subscribe((hasOpened) => {
|
|
68
|
-
this.hideElements = hasOpened;
|
|
69
|
-
}));
|
|
70
|
-
if (this.accountService) {
|
|
71
|
-
this.subscription.add(this.accountService.currentAccount$.subscribe((account) => {
|
|
72
|
-
this.currentAccount = account;
|
|
73
|
-
if (this.currentAccount) {
|
|
74
|
-
const str = `${this.currentAccount.accountNumber}`;
|
|
75
|
-
const len = str.length;
|
|
76
|
-
const accountWithHyfen = str.substring(0, len - 1) + '-' + str.substring(len - 1);
|
|
77
|
-
this.currentAccount.accountNumber = accountWithHyfen;
|
|
78
|
-
}
|
|
79
|
-
}));
|
|
80
|
-
this.subscription.add(this.accountService?.userAccounts$.subscribe((accounts) => {
|
|
81
|
-
this.otherAccounts = accounts?.filter((acc) => acc.uuid !== this.currentAccount?.uuid) || [];
|
|
82
|
-
}));
|
|
83
|
-
this.subscription.add(this.accountService.onOnboarding$.subscribe((onOnboarding) => {
|
|
84
|
-
setTimeout(() => {
|
|
85
|
-
this.doingOnboarding = onOnboarding;
|
|
86
|
-
});
|
|
87
|
-
}));
|
|
88
|
-
}
|
|
89
|
-
this.subscription.add(this.authService.role$.subscribe((role) => {
|
|
90
|
-
this.isAdmin = role === Role.ADMIN;
|
|
91
|
-
}));
|
|
92
|
-
this.subscription.add(this.notificationsService.notifications$.subscribe((notifications) => {
|
|
93
|
-
this.notificationsList = notifications;
|
|
94
|
-
}));
|
|
95
|
-
}
|
|
96
|
-
ngOnDestroy() {
|
|
97
|
-
this.subscription.unsubscribe();
|
|
98
|
-
}
|
|
99
|
-
toggleMenu() {
|
|
100
|
-
this.menuService.toggleMenu$.next();
|
|
101
|
-
}
|
|
102
|
-
logout() {
|
|
103
|
-
this.authService.logout();
|
|
104
|
-
}
|
|
105
|
-
isDesktop() {
|
|
106
|
-
return WindowUtil.isDesktop();
|
|
107
|
-
}
|
|
108
|
-
changeAccount(newAccount) {
|
|
109
|
-
if (newAccount.isBlocked) {
|
|
110
|
-
this.errorMessageService.genericModalErrorMessage$.next('Entre em contato com a central de atendimento');
|
|
111
|
-
return;
|
|
112
|
-
}
|
|
113
|
-
this.storageService.set('linkedCnpj', newAccount.customerDocument);
|
|
114
|
-
this.accountService.currentAccount$.next(newAccount);
|
|
115
|
-
window.location.reload();
|
|
116
|
-
}
|
|
117
|
-
goToTermsOfUse() {
|
|
118
|
-
this.accountService.termsOfUse$.next();
|
|
119
|
-
}
|
|
120
|
-
goToPasswordChange() {
|
|
121
|
-
this.router.navigate(['password', 'recover'], { queryParams: { change: true } });
|
|
122
|
-
}
|
|
123
|
-
goToProfile() {
|
|
124
|
-
const userId = this.storageService.getUserId();
|
|
125
|
-
if (userId) {
|
|
126
|
-
this.router.navigate(['admin', 'user', 'detail', userId]);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
goToTariff() {
|
|
130
|
-
this.router.navigate(['fintech/under-construction']);
|
|
131
|
-
}
|
|
132
|
-
goToOnboarding() {
|
|
133
|
-
this.router.navigate(['onboarding', 'attorney-information']);
|
|
134
|
-
}
|
|
135
|
-
handleClick(notification) {
|
|
136
|
-
if (notification?.link) {
|
|
137
|
-
this.router.navigateByUrl(notification.link);
|
|
138
|
-
}
|
|
139
|
-
this.onClick.emit(notification?.link || '');
|
|
140
|
-
}
|
|
141
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopBarComponent, deps: [{ token: i1.MenuService }, { token: i1.AuthService }, { token: i2.Router }, { token: i1.ProfileService }, { token: i1.StorageService }, { token: i3.NotificationsService }, { token: i1.ErrorMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
142
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: TopBarComponent, selector: "vector-top-bar", inputs: { fintech: "fintech", accountService: "accountService", showHelpCentral: "showHelpCentral", showProfile: "showProfile" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"top-bar-container\">\r\n <div id=\"menu-toggle\" class=\"menu-toggle\" (click)=\"toggleMenu()\">\r\n <div class=\"menu-icon\"></div>\r\n </div>\r\n\r\n <div class=\"left-items-container\" *ngIf=\"fintech && isDesktop() && !doingOnboarding && !isAdmin\">\r\n <span>Banco {{ currentAccount?.bankCode }}</span>\r\n <span class=\"separator\"></span>\r\n <span>AG {{ currentAccount?.agency }}</span>\r\n <span class=\"separator\"></span>\r\n <span>CC {{ currentAccount?.accountNumber }}</span>\r\n <span class=\"separator\"></span>\r\n <span\r\n >{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}\r\n {{ maskUtil.formatDocument(currentAccount?.document) }}</span\r\n >\r\n <ng-container>\r\n <span class=\"separator\"></span>\r\n <div class=\"change-account-button cursor-pointer\" (click)=\"changeAccountMenu.toggle($event)\">\r\n <span class=\"mr-2\">Alternar conta</span>\r\n <span\r\n class=\"fas\"\r\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\r\n ></span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"right-items-container\" [ngClass]=\"{ 'hidden-items': hideElements }\" *ngIf=\"!isAdmin && !doingOnboarding\">\r\n <div class=\"help-central\" *ngIf=\"showHelpCentral\">\r\n <span>{{ 'app.label.help_central' | translate }}:</span>\r\n <ng-container *ngFor=\"let item of helpCentralIcons\">\r\n <a target=\"_blank\" [ngClass]=\"{ hidden: !item.active }\" [attr.href]=\"item.url\">\r\n <i [class]=\"item.icon\"></i>\r\n </a>\r\n </ng-container>\r\n </div>\r\n\r\n <span *ngIf=\"!fintech\" (click)=\"notifications.toggle($event)\" class=\"fas fa-bell notifications-icon\">\r\n <span *ngIf=\"(notificationsList | unreadNotifications).length\" class=\"notifications-indicator\"> </span>\r\n </span>\r\n\r\n <span class=\"separator\"></span>\r\n <div\r\n #menuContainer\r\n class=\"menu-container\"\r\n (click)=\"menu.toggle($event)\"\r\n pTooltip=\"Enter your username\"\r\n tooltipPosition=\"bottom\"\r\n tooltipEvent=\"click\"\r\n >\r\n <span class=\"user-name\">{{ currentAccount?.name || vectorFirstName || '' }}</span>\r\n <span class=\"fas\" [ngClass]=\"{ 'fa-angle-down': !openedMenu, 'fa-angle-up': openedMenu }\"></span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<p-overlayPanel #menu (onHide)=\"openedMenu = false\" (onShow)=\"openedMenu = true\" styleClass=\"background-white\">\r\n <ng-template pTemplate>\r\n <div class=\"account-info\" *ngIf=\"!isDesktop()\">\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>Banco: </span>\r\n <span class=\"account-info-value\">{{ currentAccount?.bank }}</span>\r\n </div>\r\n\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>AG: </span>\r\n <span class=\"account-info-value\">{{ currentAccount?.agency }}</span>\r\n </div>\r\n </div>\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>CC: </span>\r\n <span class=\"account-info-value\">{{ currentAccount?.accountNumber }}</span>\r\n </div>\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\r\n <span class=\"account-info-value\"> {{ maskUtil.formatDocument(currentAccount?.document) }}</span>\r\n </div>\r\n </div>\r\n <div class=\"change-account-mobile\" (click)=\"changeAccountMenu.toggle($event)\" *ngIf=\"otherAccounts?.length\">\r\n <span class=\"change-account-mobile-label\">Alternar conta</span>\r\n <span\r\n class=\"fas\"\r\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\r\n ></span>\r\n </div>\r\n </div>\r\n <ul class=\"user-menu\">\r\n <li *ngIf=\"fintech\" (click)=\"goToTermsOfUse(); menu.hide()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-file-contract\"></i></span>\r\n <span>Termos de Uso</span>\r\n </li>\r\n <li *ngIf=\"fintech\" (click)=\"goToPasswordChange(); menu.hide()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-key\"></i></span>\r\n <span>Alterar Senha</span>\r\n </li>\r\n <li *ngIf=\"showProfile\" (click)=\"goToProfile(); menu.hide()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-user\"></i></span>\r\n <span>Perfil</span>\r\n </li>\r\n <li (click)=\"logout()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-sign-out-alt\"></i></span>\r\n <span>Sair</span>\r\n </li>\r\n </ul>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel #changeAccountMenu (onHide)=\"openedChangeAccountMenu = false\" (onShow)=\"openedChangeAccountMenu = true\">\r\n <ng-template pTemplate>\r\n <div\r\n *ngFor=\"let account of otherAccounts\"\r\n class=\"account-info change-account-info\"\r\n (click)=\"changeAccount(account)\"\r\n >\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>Banco: </span>\r\n <span class=\"account-info-value\">{{ account?.bank }}</span>\r\n </div>\r\n\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>AG: </span>\r\n <span class=\"account-info-value\">{{ account?.agency }}</span>\r\n </div>\r\n </div>\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>CC: </span>\r\n <span class=\"account-info-value\">{{ account?.accountNumber }}</span>\r\n </div>\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>{{ account?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\r\n <span class=\"account-info-value\"> {{ account?.document | formatDocument }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div>\r\n <hr />\r\n <p class=\"text-center add-account\" (click)=\"goToOnboarding(); changeAccountMenu.hide()\">\r\n Adicionar uma nova conta\r\n </p>\r\n </div>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel\r\n #notifications\r\n (onHide)=\"showNotifications = false\"\r\n (onShow)=\"showNotifications = true\"\r\n styleClass=\"background-white\"\r\n>\r\n <ng-template pTemplate>\r\n <div class=\"notifications-header\">\r\n <div class=\"notifications-vector-logo\"></div>\r\n <span class=\"notifications-title\">\r\n {{ 'app.label.notifications' | translate }}\r\n </span>\r\n </div>\r\n <ul class=\"notifications-list\">\r\n @for (notification of notificationsList; track $index) {\r\n <li (click)=\"handleClick(notification); notifications.hide()\" class=\"notification-item\">\r\n <span class=\"notification-title\">\r\n {{ notification.title }}\r\n @if (!notification.wasRead) {\r\n <span class=\"notification-item-indicator\"></span>\r\n }\r\n </span>\r\n @if (notification.description) {\r\n <span>{{ notification.description }}</span>\r\n <em class=\"fas fa-chevron-right\"></em>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n </ng-template>\r\n</p-overlayPanel>\r\n", styles: [".fas{color:#fff}.top-bar-container{height:81px;background-color:var(--theme-light);display:flex;flex:1;align-items:center;padding:15px;color:#fff;font-size:1em;font-weight:600;box-shadow:2px 2px 4px #00000029}.top-bar-container .menu-toggle{cursor:pointer;margin-right:10px;padding:8px}.top-bar-container .menu-toggle .menu-icon{background:url('data:image/svg+xml,<svg width=\"21\" height=\"14\" viewBox=\"0 0 21 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M0 13.846H15V11.538H0V13.846ZM0 8.077H11.538V5.769H0V8.077ZM0 0V2.308H15V0H0ZM20.769 11.065L16.638 6.923L20.769 2.781L19.142 1.154L13.373 6.923L19.142 12.692L20.769 11.065Z\" fill=\"white\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:cover;width:20.77px;height:13.85px}.top-bar-container .menu-toggle span{font-size:1.3em}.top-bar-container .left-items-container{display:flex;align-items:center;flex-direction:row}.top-bar-container .right-items-container{flex:1;display:flex;flex-direction:row;justify-content:flex-end;align-items:center}.top-bar-container .right-items-container .help-central{display:flex;align-items:center;gap:20px;font-size:1rem;margin-right:35px}.top-bar-container .right-items-container .help-central em{font-size:1.3rem}.top-bar-container .right-items-container .help-central a{outline:none;border:none;text-decoration:none;color:transparent}.top-bar-container .right-items-container .help-central a i{color:#fff;font-size:1.1em}.top-bar-container .right-items-container .help-central a i:hover{color:#7de5ec}@media screen and (max-width: 441px){.top-bar-container .right-items-container .help-central span{display:none}.top-bar-container .right-items-container .help-central em{font-size:1rem}}.top-bar-container .right-items-container .menu-container{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;cursor:pointer}.top-bar-container .right-items-container .menu-container .user-name{margin-right:15px}.top-bar-container .right-items-container .notifications-icon{position:relative;cursor:pointer}.top-bar-container .right-items-container .notifications-indicator{position:absolute;right:-8px;top:-8px;width:12px;height:12px;border-radius:50%;background-color:var(--error-color)}.separator{height:100%;margin-left:15px;margin-right:15px}.separator:after{content:\"\";height:100%;border-right:2px solid #ffffff}.account-info{display:flex;flex-direction:column;background-color:var(--theme-primary);border-radius:var(--border-radius);color:#fff;padding:5px;width:300px}.account-info .account-info-row{display:flex;flex-direction:row;align-items:center}.account-info .account-info-row .account-info-item{flex:1}.account-info .account-info-row .account-info-item:first-child{flex:.6}.account-info .account-info-row .account-info-item .account-info-value{font-weight:200}.account-info .change-account-mobile{font-size:.8em;align-items:center;display:flex}.account-info .change-account-mobile .change-account-mobile-label{margin-right:5px}.change-account-info{background-color:unset;cursor:pointer}.change-account-info:hover{background-color:var(--theme-primary)}.user-menu{padding:0;margin:0;list-style:none;color:var(--theme-medium)}.user-menu li{display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px 16px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:5px;transition:background-color .15s ease,color .15s ease}.user-menu li:hover,.user-menu li:focus{background-color:var(--theme-medium);color:#fff;outline:none}.user-menu li:hover .user-menu-icon i,.user-menu li:focus .user-menu-icon i{color:#fff}.user-menu li .user-menu-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px}.user-menu li .user-menu-icon i{color:var(--theme-medium);font-size:1.1em;transition:color .15s ease}.add-account{color:#fff;font-size:1.1em;padding:10px;margin:0;font-weight:400;letter-spacing:.25px;cursor:pointer}@media screen and (max-width: 441px){.hidden-items{display:none!important}}.notifications-header{display:flex;align-items:center;gap:8px}.notifications-header .notifications-vector-logo{background-image:url(/assets/images/vector_logo_horizontal.svg);background-repeat:no-repeat;background-position:right;background-size:cover;height:12px;width:30px}.notifications-header .notifications-title{text-transform:uppercase;color:var(--gray-dark);font-weight:600}::ng-deep .p-overlaypanel.background-white{border-radius:8px!important;background-color:#fff!important;border:1px solid #d9dbe9!important;box-shadow:0 1px 2px #1f29371a,0 2px 4px #1f29371a,0 4px 8px #1f29371a,0 8px 16px #1f29371a!important;padding:3px!important}::ng-deep .p-overlaypanel.background-white:before,::ng-deep .p-overlaypanel.background-white:after{display:none!important}::ng-deep .p-overlaypanel.background-white .p-overlaypanel-content{padding:8px 0!important}.notifications-list{max-height:400px;overflow:auto;margin-top:10px}.notifications-list .notification-item{cursor:pointer;position:relative;padding:5px 10px;border-radius:5px;text-align:center;transition:background-color .15s ease,color .15s ease}.notifications-list .notification-item:hover,.notifications-list .notification-item:focus{background-color:var(--theme-medium)!important;color:#fff;outline:none}.notifications-list .notification-item:hover .notification-title,.notifications-list .notification-item:focus .notification-title{color:#fff}.notifications-list .notification-item:hover em,.notifications-list .notification-item:focus em{color:#fff}.notifications-list .notification-item .notification-title{font-weight:600;text-transform:uppercase;position:relative;display:inline-block;color:var(--theme-medium)}.notifications-list .notification-item .notification-title .notification-item-indicator{position:absolute;top:-4px;right:-12px;width:8px;height:8px;border-radius:50%;background-color:var(--error-color);margin:0}.notifications-list .notification-item span{font-weight:500;margin-right:20px}.notifications-list .notification-item em{position:absolute;right:10px;bottom:10px;color:var(--theme-primary)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i6.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: i8.FormatDocumentPipe, name: "formatDocument" }, { kind: "pipe", type: i9.UnreadNotificationsPipe, name: "unreadNotifications" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] }); }
|
|
143
|
-
}
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopBarComponent, decorators: [{
|
|
145
|
-
type: Component,
|
|
146
|
-
args: [{ selector: 'vector-top-bar', template: "<div class=\"top-bar-container\">\r\n <div id=\"menu-toggle\" class=\"menu-toggle\" (click)=\"toggleMenu()\">\r\n <div class=\"menu-icon\"></div>\r\n </div>\r\n\r\n <div class=\"left-items-container\" *ngIf=\"fintech && isDesktop() && !doingOnboarding && !isAdmin\">\r\n <span>Banco {{ currentAccount?.bankCode }}</span>\r\n <span class=\"separator\"></span>\r\n <span>AG {{ currentAccount?.agency }}</span>\r\n <span class=\"separator\"></span>\r\n <span>CC {{ currentAccount?.accountNumber }}</span>\r\n <span class=\"separator\"></span>\r\n <span\r\n >{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}\r\n {{ maskUtil.formatDocument(currentAccount?.document) }}</span\r\n >\r\n <ng-container>\r\n <span class=\"separator\"></span>\r\n <div class=\"change-account-button cursor-pointer\" (click)=\"changeAccountMenu.toggle($event)\">\r\n <span class=\"mr-2\">Alternar conta</span>\r\n <span\r\n class=\"fas\"\r\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\r\n ></span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"right-items-container\" [ngClass]=\"{ 'hidden-items': hideElements }\" *ngIf=\"!isAdmin && !doingOnboarding\">\r\n <div class=\"help-central\" *ngIf=\"showHelpCentral\">\r\n <span>{{ 'app.label.help_central' | translate }}:</span>\r\n <ng-container *ngFor=\"let item of helpCentralIcons\">\r\n <a target=\"_blank\" [ngClass]=\"{ hidden: !item.active }\" [attr.href]=\"item.url\">\r\n <i [class]=\"item.icon\"></i>\r\n </a>\r\n </ng-container>\r\n </div>\r\n\r\n <span *ngIf=\"!fintech\" (click)=\"notifications.toggle($event)\" class=\"fas fa-bell notifications-icon\">\r\n <span *ngIf=\"(notificationsList | unreadNotifications).length\" class=\"notifications-indicator\"> </span>\r\n </span>\r\n\r\n <span class=\"separator\"></span>\r\n <div\r\n #menuContainer\r\n class=\"menu-container\"\r\n (click)=\"menu.toggle($event)\"\r\n pTooltip=\"Enter your username\"\r\n tooltipPosition=\"bottom\"\r\n tooltipEvent=\"click\"\r\n >\r\n <span class=\"user-name\">{{ currentAccount?.name || vectorFirstName || '' }}</span>\r\n <span class=\"fas\" [ngClass]=\"{ 'fa-angle-down': !openedMenu, 'fa-angle-up': openedMenu }\"></span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<p-overlayPanel #menu (onHide)=\"openedMenu = false\" (onShow)=\"openedMenu = true\" styleClass=\"background-white\">\r\n <ng-template pTemplate>\r\n <div class=\"account-info\" *ngIf=\"!isDesktop()\">\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>Banco: </span>\r\n <span class=\"account-info-value\">{{ currentAccount?.bank }}</span>\r\n </div>\r\n\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>AG: </span>\r\n <span class=\"account-info-value\">{{ currentAccount?.agency }}</span>\r\n </div>\r\n </div>\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>CC: </span>\r\n <span class=\"account-info-value\">{{ currentAccount?.accountNumber }}</span>\r\n </div>\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\r\n <span class=\"account-info-value\"> {{ maskUtil.formatDocument(currentAccount?.document) }}</span>\r\n </div>\r\n </div>\r\n <div class=\"change-account-mobile\" (click)=\"changeAccountMenu.toggle($event)\" *ngIf=\"otherAccounts?.length\">\r\n <span class=\"change-account-mobile-label\">Alternar conta</span>\r\n <span\r\n class=\"fas\"\r\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\r\n ></span>\r\n </div>\r\n </div>\r\n <ul class=\"user-menu\">\r\n <li *ngIf=\"fintech\" (click)=\"goToTermsOfUse(); menu.hide()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-file-contract\"></i></span>\r\n <span>Termos de Uso</span>\r\n </li>\r\n <li *ngIf=\"fintech\" (click)=\"goToPasswordChange(); menu.hide()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-key\"></i></span>\r\n <span>Alterar Senha</span>\r\n </li>\r\n <li *ngIf=\"showProfile\" (click)=\"goToProfile(); menu.hide()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-user\"></i></span>\r\n <span>Perfil</span>\r\n </li>\r\n <li (click)=\"logout()\">\r\n <span class=\"user-menu-icon\"><i class=\"fas fa-sign-out-alt\"></i></span>\r\n <span>Sair</span>\r\n </li>\r\n </ul>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel #changeAccountMenu (onHide)=\"openedChangeAccountMenu = false\" (onShow)=\"openedChangeAccountMenu = true\">\r\n <ng-template pTemplate>\r\n <div\r\n *ngFor=\"let account of otherAccounts\"\r\n class=\"account-info change-account-info\"\r\n (click)=\"changeAccount(account)\"\r\n >\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>Banco: </span>\r\n <span class=\"account-info-value\">{{ account?.bank }}</span>\r\n </div>\r\n\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>AG: </span>\r\n <span class=\"account-info-value\">{{ account?.agency }}</span>\r\n </div>\r\n </div>\r\n <div class=\"account-info-row\">\r\n <div class=\"account-info-item\">\r\n <span>CC: </span>\r\n <span class=\"account-info-value\">{{ account?.accountNumber }}</span>\r\n </div>\r\n <span class=\"separator\"></span>\r\n <div class=\"account-info-item\">\r\n <span>{{ account?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\r\n <span class=\"account-info-value\"> {{ account?.document | formatDocument }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div>\r\n <hr />\r\n <p class=\"text-center add-account\" (click)=\"goToOnboarding(); changeAccountMenu.hide()\">\r\n Adicionar uma nova conta\r\n </p>\r\n </div>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel\r\n #notifications\r\n (onHide)=\"showNotifications = false\"\r\n (onShow)=\"showNotifications = true\"\r\n styleClass=\"background-white\"\r\n>\r\n <ng-template pTemplate>\r\n <div class=\"notifications-header\">\r\n <div class=\"notifications-vector-logo\"></div>\r\n <span class=\"notifications-title\">\r\n {{ 'app.label.notifications' | translate }}\r\n </span>\r\n </div>\r\n <ul class=\"notifications-list\">\r\n @for (notification of notificationsList; track $index) {\r\n <li (click)=\"handleClick(notification); notifications.hide()\" class=\"notification-item\">\r\n <span class=\"notification-title\">\r\n {{ notification.title }}\r\n @if (!notification.wasRead) {\r\n <span class=\"notification-item-indicator\"></span>\r\n }\r\n </span>\r\n @if (notification.description) {\r\n <span>{{ notification.description }}</span>\r\n <em class=\"fas fa-chevron-right\"></em>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n </ng-template>\r\n</p-overlayPanel>\r\n", styles: [".fas{color:#fff}.top-bar-container{height:81px;background-color:var(--theme-light);display:flex;flex:1;align-items:center;padding:15px;color:#fff;font-size:1em;font-weight:600;box-shadow:2px 2px 4px #00000029}.top-bar-container .menu-toggle{cursor:pointer;margin-right:10px;padding:8px}.top-bar-container .menu-toggle .menu-icon{background:url('data:image/svg+xml,<svg width=\"21\" height=\"14\" viewBox=\"0 0 21 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M0 13.846H15V11.538H0V13.846ZM0 8.077H11.538V5.769H0V8.077ZM0 0V2.308H15V0H0ZM20.769 11.065L16.638 6.923L20.769 2.781L19.142 1.154L13.373 6.923L19.142 12.692L20.769 11.065Z\" fill=\"white\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:cover;width:20.77px;height:13.85px}.top-bar-container .menu-toggle span{font-size:1.3em}.top-bar-container .left-items-container{display:flex;align-items:center;flex-direction:row}.top-bar-container .right-items-container{flex:1;display:flex;flex-direction:row;justify-content:flex-end;align-items:center}.top-bar-container .right-items-container .help-central{display:flex;align-items:center;gap:20px;font-size:1rem;margin-right:35px}.top-bar-container .right-items-container .help-central em{font-size:1.3rem}.top-bar-container .right-items-container .help-central a{outline:none;border:none;text-decoration:none;color:transparent}.top-bar-container .right-items-container .help-central a i{color:#fff;font-size:1.1em}.top-bar-container .right-items-container .help-central a i:hover{color:#7de5ec}@media screen and (max-width: 441px){.top-bar-container .right-items-container .help-central span{display:none}.top-bar-container .right-items-container .help-central em{font-size:1rem}}.top-bar-container .right-items-container .menu-container{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;cursor:pointer}.top-bar-container .right-items-container .menu-container .user-name{margin-right:15px}.top-bar-container .right-items-container .notifications-icon{position:relative;cursor:pointer}.top-bar-container .right-items-container .notifications-indicator{position:absolute;right:-8px;top:-8px;width:12px;height:12px;border-radius:50%;background-color:var(--error-color)}.separator{height:100%;margin-left:15px;margin-right:15px}.separator:after{content:\"\";height:100%;border-right:2px solid #ffffff}.account-info{display:flex;flex-direction:column;background-color:var(--theme-primary);border-radius:var(--border-radius);color:#fff;padding:5px;width:300px}.account-info .account-info-row{display:flex;flex-direction:row;align-items:center}.account-info .account-info-row .account-info-item{flex:1}.account-info .account-info-row .account-info-item:first-child{flex:.6}.account-info .account-info-row .account-info-item .account-info-value{font-weight:200}.account-info .change-account-mobile{font-size:.8em;align-items:center;display:flex}.account-info .change-account-mobile .change-account-mobile-label{margin-right:5px}.change-account-info{background-color:unset;cursor:pointer}.change-account-info:hover{background-color:var(--theme-primary)}.user-menu{padding:0;margin:0;list-style:none;color:var(--theme-medium)}.user-menu li{display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px 16px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:5px;transition:background-color .15s ease,color .15s ease}.user-menu li:hover,.user-menu li:focus{background-color:var(--theme-medium);color:#fff;outline:none}.user-menu li:hover .user-menu-icon i,.user-menu li:focus .user-menu-icon i{color:#fff}.user-menu li .user-menu-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px}.user-menu li .user-menu-icon i{color:var(--theme-medium);font-size:1.1em;transition:color .15s ease}.add-account{color:#fff;font-size:1.1em;padding:10px;margin:0;font-weight:400;letter-spacing:.25px;cursor:pointer}@media screen and (max-width: 441px){.hidden-items{display:none!important}}.notifications-header{display:flex;align-items:center;gap:8px}.notifications-header .notifications-vector-logo{background-image:url(/assets/images/vector_logo_horizontal.svg);background-repeat:no-repeat;background-position:right;background-size:cover;height:12px;width:30px}.notifications-header .notifications-title{text-transform:uppercase;color:var(--gray-dark);font-weight:600}::ng-deep .p-overlaypanel.background-white{border-radius:8px!important;background-color:#fff!important;border:1px solid #d9dbe9!important;box-shadow:0 1px 2px #1f29371a,0 2px 4px #1f29371a,0 4px 8px #1f29371a,0 8px 16px #1f29371a!important;padding:3px!important}::ng-deep .p-overlaypanel.background-white:before,::ng-deep .p-overlaypanel.background-white:after{display:none!important}::ng-deep .p-overlaypanel.background-white .p-overlaypanel-content{padding:8px 0!important}.notifications-list{max-height:400px;overflow:auto;margin-top:10px}.notifications-list .notification-item{cursor:pointer;position:relative;padding:5px 10px;border-radius:5px;text-align:center;transition:background-color .15s ease,color .15s ease}.notifications-list .notification-item:hover,.notifications-list .notification-item:focus{background-color:var(--theme-medium)!important;color:#fff;outline:none}.notifications-list .notification-item:hover .notification-title,.notifications-list .notification-item:focus .notification-title{color:#fff}.notifications-list .notification-item:hover em,.notifications-list .notification-item:focus em{color:#fff}.notifications-list .notification-item .notification-title{font-weight:600;text-transform:uppercase;position:relative;display:inline-block;color:var(--theme-medium)}.notifications-list .notification-item .notification-title .notification-item-indicator{position:absolute;top:-4px;right:-12px;width:8px;height:8px;border-radius:50%;background-color:var(--error-color);margin:0}.notifications-list .notification-item span{font-weight:500;margin-right:20px}.notifications-list .notification-item em{position:absolute;right:10px;bottom:10px;color:var(--theme-primary)}\n"] }]
|
|
147
|
-
}], ctorParameters: () => [{ type: i1.MenuService }, { type: i1.AuthService }, { type: i2.Router }, { type: i1.ProfileService }, { type: i1.StorageService }, { type: i3.NotificationsService }, { type: i1.ErrorMessageService }], propDecorators: { fintech: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], accountService: [{
|
|
150
|
-
type: Input
|
|
151
|
-
}], showHelpCentral: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}], showProfile: [{
|
|
154
|
-
type: Input
|
|
155
|
-
}], onClick: [{
|
|
156
|
-
type: Output
|
|
157
|
-
}] } });
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3RvcC1iYXIvdG9wLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3RvcC1iYXIvdG9wLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQXNCLE1BQU0sY0FBYyxDQUFDO0FBSXhELE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7Ozs7QUFPbkQsTUFBTSxPQUFPLGVBQWU7SUFrRDFCLFlBQ1UsV0FBd0IsRUFDeEIsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGNBQThCLEVBQzlCLGNBQThCLEVBQzlCLG9CQUEwQyxFQUMxQyxtQkFBd0M7UUFOeEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBeEQzQyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLDRCQUF1QixHQUFHLEtBQUssQ0FB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QyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7K0dBeEtVLGVBQWU7bUdBQWYsZUFBZSx5TkNkNUIsOGlQQXVMQTs7NEZEekthLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsZ0JBQWdCOzhQQWtCbkIsT0FBTztzQkFEYixLQUFLO2dCQUdDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBR0MsZUFBZTtzQkFEckIsS0FBSztnQkFHQyxXQUFXO3NCQURqQixLQUFLO2dCQXlCSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb2xlLCBWZWN0b3JOb3RpZmljYXRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBIZWxwQ2VudHJhbEljb25PcHRpb25zVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscy90b3BiYXIubW9kZWwnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSwgRXJyb3JNZXNzYWdlU2VydmljZSwgTWVudVNlcnZpY2UsIFByb2ZpbGVTZXJ2aWNlLCBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub3RpZmljYXRpb25zLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXNrVXRpbCwgV2luZG93VXRpbCB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndmVjdG9yLXRvcC1iYXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90b3AtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90b3AtYmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb3BCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIGhpZGVFbGVtZW50cyA9IGZhbHNlO1xyXG4gIHB1YmxpYyBvcGVuZWRNZW51ID0gZmFsc2U7XHJcbiAgcHVibGljIG9wZW5lZENoYW5nZUFjY291bnRNZW51ID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dOb3RpZmljYXRpb25zID0gZmFsc2U7XHJcbiAgcHVibGljIGRvaW5nT25ib2FyZGluZyA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgdmVjdG9yRmlyc3ROYW1lOiBhbnk7XHJcbiAgcHVibGljIGN1cnJlbnRBY2NvdW50OiBhbnkgPSB7fTtcclxuICBwdWJsaWMgaXNBZG1pbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBvdGhlckFjY291bnRzOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBtYXNrVXRpbCA9IE1hc2tVdGlsO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmaW50ZWNoOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWNjb3VudFNlcnZpY2U6IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93SGVscENlbnRyYWwgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93UHJvZmlsZSA9IGZhbHNlO1xyXG4gIHB1YmxpYyBoZWxwQ2VudHJhbEljb25zOiBIZWxwQ2VudHJhbEljb25PcHRpb25zVHlwZVtdID0gW1xyXG4gICAge1xyXG4gICAgICBpY29uOiAnZmFiIGZhLXdoYXRzYXBwJyxcclxuICAgICAgdXJsOiAnaHR0cHM6Ly9hcGkud2hhdHNhcHAuY29tL3NlbmQ/cGhvbmU9NTUyMTk3MTU1MTE4OCZ0ZXh0PW9sJUMzJUExJyxcclxuICAgICAgYWN0aXZlOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgaWNvbjogJ3BpIHBpLXBob25lJyxcclxuICAgICAgdXJsOiAndGVsOjU1MjEyMDQyMzAxNycsXHJcbiAgICAgIGFjdGl2ZTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGljb246ICdmYXIgZmEtZW52ZWxvcGUnLFxyXG4gICAgICB1cmw6ICdtYWlsdG86c3Vwb3J0ZUB2ZWN0b3JhcHAuY29tLmJyJyxcclxuICAgICAgYWN0aXZlOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgaWNvbjogJ2ZhciBmYS1xdWVzdGlvbi1jaXJjbGUnLFxyXG4gICAgICB1cmw6ICcnLFxyXG4gICAgICBhY3RpdmU6IGZhbHNlLFxyXG4gICAgfSxcclxuICBdO1xyXG5cclxuICBAT3V0cHV0KCkgb25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBwdWJsaWMgbm90aWZpY2F0aW9uc0xpc3Q6IFZlY3Rvck5vdGlmaWNhdGlvbltdID0gW107XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbWVudVNlcnZpY2U6IE1lbnVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBwcm9maWxlU2VydmljZTogUHJvZmlsZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgbm90aWZpY2F0aW9uc1NlcnZpY2U6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBlcnJvck1lc3NhZ2VTZXJ2aWNlOiBFcnJvck1lc3NhZ2VTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcclxuICAgICAgdGhpcy5wcm9maWxlU2VydmljZS5wcm9maWxlRmlyc3ROYW1lJC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgdGhpcy52ZWN0b3JGaXJzdE5hbWUgPSB2YWx1ZTtcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxyXG4gICAgICB0aGlzLm1lbnVTZXJ2aWNlLm1lbnVPcGVuZWQkLnN1YnNjcmliZSgoaGFzT3BlbmVkKSA9PiB7XHJcbiAgICAgICAgdGhpcy5oaWRlRWxlbWVudHMgPSBoYXNPcGVuZWQ7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG5cclxuICAgIGlmICh0aGlzLmFjY291bnRTZXJ2aWNlKSB7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcclxuICAgICAgICB0aGlzLmFjY291bnRTZXJ2aWNlLmN1cnJlbnRBY2NvdW50JC5zdWJzY3JpYmUoKGFjY291bnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jdXJyZW50QWNjb3VudCA9IGFjY291bnQ7XHJcbiAgICAgICAgICBpZiAodGhpcy5jdXJyZW50QWNjb3VudCkge1xyXG4gICAgICAgICAgICBjb25zdCBzdHIgPSBgJHt0aGlzLmN1cnJlbnRBY2NvdW50LmFjY291bnROdW1iZXJ9YDtcclxuICAgICAgICAgICAgY29uc3QgbGVuID0gc3RyLmxlbmd0aDtcclxuICAgICAgICAgICAgY29uc3QgYWNjb3VudFdpdGhIeWZlbiA9IHN0ci5zdWJzdHJpbmcoMCwgbGVuIC0gMSkgKyAnLScgKyBzdHIuc3Vic3RyaW5nKGxlbiAtIDEpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRBY2NvdW50LmFjY291bnROdW1iZXIgPSBhY2NvdW50V2l0aEh5ZmVuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcblxyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXHJcbiAgICAgICAgdGhpcy5hY2NvdW50U2VydmljZT8udXNlckFjY291bnRzJC5zdWJzY3JpYmUoKGFjY291bnRzOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMub3RoZXJBY2NvdW50cyA9IGFjY291bnRzPy5maWx0ZXIoKGFjYzogYW55KSA9PiBhY2MudXVpZCAhPT0gdGhpcy5jdXJyZW50QWNjb3VudD8udXVpZCkgfHwgW107XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuXHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcclxuICAgICAgICB0aGlzLmFjY291bnRTZXJ2aWNlLm9uT25ib2FyZGluZyQuc3Vic2NyaWJlKChvbk9uYm9hcmRpbmc6IGFueSkgPT4ge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZG9pbmdPbmJvYXJkaW5nID0gb25PbmJvYXJkaW5nO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2Uucm9sZSQuc3Vic2NyaWJlKChyb2xlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0FkbWluID0gcm9sZSA9PT0gUm9sZS5BRE1JTjtcclxuICAgICAgfSlcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxyXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLm5vdGlmaWNhdGlvbnMkLnN1YnNjcmliZSgobm90aWZpY2F0aW9ucykgPT4ge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uc0xpc3QgPSBub3RpZmljYXRpb25zO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVNZW51KCkge1xyXG4gICAgdGhpcy5tZW51U2VydmljZS50b2dnbGVNZW51JC5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9nb3V0KCkge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dvdXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpc0Rlc2t0b3AoKSB7XHJcbiAgICByZXR1cm4gV2luZG93VXRpbC5pc0Rlc2t0b3AoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VBY2NvdW50KG5ld0FjY291bnQ6IGFueSkge1xyXG4gICAgaWYgKG5ld0FjY291bnQuaXNCbG9ja2VkKSB7XHJcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlU2VydmljZS5nZW5lcmljTW9kYWxFcnJvck1lc3NhZ2UkLm5leHQoJ0VudHJlIGVtIGNvbnRhdG8gY29tIGEgY2VudHJhbCBkZSBhdGVuZGltZW50bycpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXQoJ2xpbmtlZENucGonLCBuZXdBY2NvdW50LmN1c3RvbWVyRG9jdW1lbnQpO1xyXG4gICAgdGhpcy5hY2NvdW50U2VydmljZS5jdXJyZW50QWNjb3VudCQubmV4dChuZXdBY2NvdW50KTtcclxuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnb1RvVGVybXNPZlVzZSgpIHtcclxuICAgIHRoaXMuYWNjb3VudFNlcnZpY2UudGVybXNPZlVzZSQubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdvVG9QYXNzd29yZENoYW5nZSgpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsncGFzc3dvcmQnLCAncmVjb3ZlciddLCB7IHF1ZXJ5UGFyYW1zOiB7IGNoYW5nZTogdHJ1ZSB9IH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdvVG9Qcm9maWxlKCkge1xyXG4gICAgY29uc3QgdXNlcklkID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRVc2VySWQoKTtcclxuICAgIGlmICh1c2VySWQpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydhZG1pbicsICd1c2VyJywgJ2RldGFpbCcsIHVzZXJJZF0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdvVG9UYXJpZmYoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ2ZpbnRlY2gvdW5kZXItY29uc3RydWN0aW9uJ10pO1xyXG4gIH1cclxuICBwdWJsaWMgZ29Ub09uYm9hcmRpbmcoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ29uYm9hcmRpbmcnLCAnYXR0b3JuZXktaW5mb3JtYXRpb24nXSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2xpY2sobm90aWZpY2F0aW9uOiBWZWN0b3JOb3RpZmljYXRpb24pIHtcclxuICAgIGlmIChub3RpZmljYXRpb24/LmxpbmspIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChub3RpZmljYXRpb24ubGluayk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2xpY2suZW1pdChub3RpZmljYXRpb24/LmxpbmsgfHwgJycpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidG9wLWJhci1jb250YWluZXJcIj5cclxuICA8ZGl2IGlkPVwibWVudS10b2dnbGVcIiBjbGFzcz1cIm1lbnUtdG9nZ2xlXCIgKGNsaWNrKT1cInRvZ2dsZU1lbnUoKVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1lbnUtaWNvblwiPjwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibGVmdC1pdGVtcy1jb250YWluZXJcIiAqbmdJZj1cImZpbnRlY2ggJiYgaXNEZXNrdG9wKCkgJiYgIWRvaW5nT25ib2FyZGluZyAmJiAhaXNBZG1pblwiPlxyXG4gICAgPHNwYW4+QmFuY28ge3sgY3VycmVudEFjY291bnQ/LmJhbmtDb2RlIH19PC9zcGFuPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJzZXBhcmF0b3JcIj48L3NwYW4+XHJcbiAgICA8c3Bhbj5BRyB7eyBjdXJyZW50QWNjb3VudD8uYWdlbmN5IH19PC9zcGFuPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJzZXBhcmF0b3JcIj48L3NwYW4+XHJcbiAgICA8c3Bhbj5DQyB7eyBjdXJyZW50QWNjb3VudD8uYWNjb3VudE51bWJlciB9fTwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwic2VwYXJhdG9yXCI+PC9zcGFuPlxyXG4gICAgPHNwYW5cclxuICAgICAgPnt7IGN1cnJlbnRBY2NvdW50Py5hY2NvdW50VHlwZSA9PT0gJ0NVUlJFTlRfQUNDT1VOVF9QRicgPyAnQ1BGJyA6ICdDTlBKJyB9fVxyXG4gICAgICB7eyBtYXNrVXRpbC5mb3JtYXREb2N1bWVudChjdXJyZW50QWNjb3VudD8uZG9jdW1lbnQpIH19PC9zcGFuXHJcbiAgICA+XHJcbiAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInNlcGFyYXRvclwiPjwvc3Bhbj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNoYW5nZS1hY2NvdW50LWJ1dHRvbiBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJjaGFuZ2VBY2NvdW50TWVudS50b2dnbGUoJGV2ZW50KVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXItMlwiPkFsdGVybmFyIGNvbnRhPC9zcGFuPlxyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICBjbGFzcz1cImZhc1wiXHJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7ICdmYS1hbmdsZS1kb3duJzogIW9wZW5lZENoYW5nZUFjY291bnRNZW51LCAnZmEtYW5nbGUtdXAnOiBvcGVuZWRDaGFuZ2VBY2NvdW50TWVudSB9XCJcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwicmlnaHQtaXRlbXMtY29udGFpbmVyXCIgW25nQ2xhc3NdPVwieyAnaGlkZGVuLWl0ZW1zJzogaGlkZUVsZW1lbnRzIH1cIiAqbmdJZj1cIiFpc0FkbWluICYmICFkb2luZ09uYm9hcmRpbmdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWxwLWNlbnRyYWxcIiAqbmdJZj1cInNob3dIZWxwQ2VudHJhbFwiPlxyXG4gICAgICA8c3Bhbj57eyAnYXBwLmxhYmVsLmhlbHBfY2VudHJhbCcgfCB0cmFuc2xhdGUgfX06PC9zcGFuPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGhlbHBDZW50cmFsSWNvbnNcIj5cclxuICAgICAgICA8YSB0YXJnZXQ9XCJfYmxhbmtcIiBbbmdDbGFzc109XCJ7IGhpZGRlbjogIWl0ZW0uYWN0aXZlIH1cIiBbYXR0ci5ocmVmXT1cIml0ZW0udXJsXCI+XHJcbiAgICAgICAgICA8aSBbY2xhc3NdPVwiaXRlbS5pY29uXCI+PC9pPlxyXG4gICAgICAgIDwvYT5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8c3BhbiAqbmdJZj1cIiFmaW50ZWNoXCIgKGNsaWNrKT1cIm5vdGlmaWNhdGlvbnMudG9nZ2xlKCRldmVudClcIiBjbGFzcz1cImZhcyBmYS1iZWxsIG5vdGlmaWNhdGlvbnMtaWNvblwiPlxyXG4gICAgICA8c3BhbiAqbmdJZj1cIihub3RpZmljYXRpb25zTGlzdCB8IHVucmVhZE5vdGlmaWNhdGlvbnMpLmxlbmd0aFwiIGNsYXNzPVwibm90aWZpY2F0aW9ucy1pbmRpY2F0b3JcIj4gPC9zcGFuPlxyXG4gICAgPC9zcGFuPlxyXG5cclxuICAgIDxzcGFuIGNsYXNzPVwic2VwYXJhdG9yXCI+PC9zcGFuPlxyXG4gICAgPGRpdlxyXG4gICAgICAjbWVudUNvbnRhaW5lclxyXG4gICAgICBjbGFzcz1cIm1lbnUtY29udGFpbmVyXCJcclxuICAgICAgKGNsaWNrKT1cIm1lbnUudG9nZ2xlKCRldmVudClcIlxyXG4gICAgICBwVG9vbHRpcD1cIkVudGVyIHlvdXIgdXNlcm5hbWVcIlxyXG4gICAgICB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIlxyXG4gICAgICB0b29sdGlwRXZlbnQ9XCJjbGlja1wiXHJcbiAgICA+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidXNlci1uYW1lXCI+e3sgY3VycmVudEFjY291bnQ/Lm5hbWUgfHwgdmVjdG9yRmlyc3ROYW1lIHx8ICcnIH19PC9zcGFuPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImZhc1wiIFtuZ0NsYXNzXT1cInsgJ2ZhLWFuZ2xlLWRvd24nOiAhb3BlbmVkTWVudSwgJ2ZhLWFuZ2xlLXVwJzogb3BlbmVkTWVudSB9XCI+PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPHAtb3ZlcmxheVBhbmVsICNtZW51IChvbkhpZGUpPVwib3BlbmVkTWVudSA9IGZhbHNlXCIgKG9uU2hvdyk9XCJvcGVuZWRNZW51ID0gdHJ1ZVwiIHN0eWxlQ2xhc3M9XCJiYWNrZ3JvdW5kLXdoaXRlXCI+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT5cclxuICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm9cIiAqbmdJZj1cIiFpc0Rlc2t0b3AoKVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYWNjb3VudC1pbmZvLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm8taXRlbVwiPlxyXG4gICAgICAgICAgPHNwYW4+QmFuY286IDwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWNjb3VudC1pbmZvLXZhbHVlXCI+e3sgY3VycmVudEFjY291bnQ/LmJhbmsgfX08L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2VwYXJhdG9yXCI+PC9zcGFuPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm8taXRlbVwiPlxyXG4gICAgICAgICAgPHNwYW4+QUc6IDwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWNjb3VudC1pbmZvLXZhbHVlXCI+e3sgY3VycmVudEFjY291bnQ/LmFnZW5jeSB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm8tcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjY291bnQtaW5mby1pdGVtXCI+XHJcbiAgICAgICAgICA8c3Bhbj5DQzogPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJhY2NvdW50LWluZm8tdmFsdWVcIj57eyBjdXJyZW50QWNjb3VudD8uYWNjb3VudE51bWJlciB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInNlcGFyYXRvclwiPjwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWNjb3VudC1pbmZvLWl0ZW1cIj5cclxuICAgICAgICAgIDxzcGFuPnt7IGN1cnJlbnRBY2NvdW50Py5hY2NvdW50VHlwZSA9PT0gJ0NVUlJFTlRfQUNDT1VOVF9QRicgPyAnQ1BGJyA6ICdDTlBKJyB9fTogPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJhY2NvdW50LWluZm8tdmFsdWVcIj4ge3sgbWFza1V0aWwuZm9ybWF0RG9jdW1lbnQoY3VycmVudEFjY291bnQ/LmRvY3VtZW50KSB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjaGFuZ2UtYWNjb3VudC1tb2JpbGVcIiAoY2xpY2spPVwiY2hhbmdlQWNjb3VudE1lbnUudG9nZ2xlKCRldmVudClcIiAqbmdJZj1cIm90aGVyQWNjb3VudHM/Lmxlbmd0aFwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY2hhbmdlLWFjY291bnQtbW9iaWxlLWxhYmVsXCI+QWx0ZXJuYXIgY29udGE8L3NwYW4+XHJcbiAgICAgICAgPHNwYW5cclxuICAgICAgICAgIGNsYXNzPVwiZmFzXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2ZhLWFuZ2xlLWRvd24nOiAhb3BlbmVkQ2hhbmdlQWNjb3VudE1lbnUsICdmYS1hbmdsZS11cCc6IG9wZW5lZENoYW5nZUFjY291bnRNZW51IH1cIlxyXG4gICAgICAgID48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8dWwgY2xhc3M9XCJ1c2VyLW1lbnVcIj5cclxuICAgICAgPGxpICpuZ0lmPVwiZmludGVjaFwiIChjbGljayk9XCJnb1RvVGVybXNPZlVzZSgpOyBtZW51LmhpZGUoKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidXNlci1tZW51LWljb25cIj48aSBjbGFzcz1cImZhcyBmYS1maWxlLWNvbnRyYWN0XCI+PC9pPjwvc3Bhbj5cclxuICAgICAgICA8c3Bhbj5UZXJtb3MgZGUgVXNvPC9zcGFuPlxyXG4gICAgICA8L2xpPlxyXG4gICAgICA8bGkgKm5nSWY9XCJmaW50ZWNoXCIgKGNsaWNrKT1cImdvVG9QYXNzd29yZENoYW5nZSgpOyBtZW51LmhpZGUoKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidXNlci1tZW51LWljb25cIj48aSBjbGFzcz1cImZhcyBmYS1rZXlcIj48L2k+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuPkFsdGVyYXIgU2VuaGE8L3NwYW4+XHJcbiAgICAgIDwvbGk+XHJcbiAgICAgIDxsaSAqbmdJZj1cInNob3dQcm9maWxlXCIgKGNsaWNrKT1cImdvVG9Qcm9maWxlKCk7IG1lbnUuaGlkZSgpXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ1c2VyLW1lbnUtaWNvblwiPjxpIGNsYXNzPVwiZmFzIGZhLXVzZXJcIj48L2k+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuPlBlcmZpbDwvc3Bhbj5cclxuICAgICAgPC9saT5cclxuICAgICAgPGxpIChjbGljayk9XCJsb2dvdXQoKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidXNlci1tZW51LWljb25cIj48aSBjbGFzcz1cImZhcyBmYS1zaWduLW91dC1hbHRcIj48L2k+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuPlNhaXI8L3NwYW4+XHJcbiAgICAgIDwvbGk+XHJcbiAgICA8L3VsPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC1vdmVybGF5UGFuZWw+XHJcblxyXG48cC1vdmVybGF5UGFuZWwgI2NoYW5nZUFjY291bnRNZW51IChvbkhpZGUpPVwib3BlbmVkQ2hhbmdlQWNjb3VudE1lbnUgPSBmYWxzZVwiIChvblNob3cpPVwib3BlbmVkQ2hhbmdlQWNjb3VudE1lbnUgPSB0cnVlXCI+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT5cclxuICAgIDxkaXZcclxuICAgICAgKm5nRm9yPVwibGV0IGFjY291bnQgb2Ygb3RoZXJBY2NvdW50c1wiXHJcbiAgICAgIGNsYXNzPVwiYWNjb3VudC1pbmZvIGNoYW5nZS1hY2NvdW50LWluZm9cIlxyXG4gICAgICAoY2xpY2spPVwiY2hhbmdlQWNjb3VudChhY2NvdW50KVwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm8tcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjY291bnQtaW5mby1pdGVtXCI+XHJcbiAgICAgICAgICA8c3Bhbj5CYW5jbzogPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJhY2NvdW50LWluZm8tdmFsdWVcIj57eyBhY2NvdW50Py5iYW5rIH19PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInNlcGFyYXRvclwiPjwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWNjb3VudC1pbmZvLWl0ZW1cIj5cclxuICAgICAgICAgIDxzcGFuPkFHOiA8L3NwYW4+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImFjY291bnQtaW5mby12YWx1ZVwiPnt7IGFjY291bnQ/LmFnZW5jeSB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm8tcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjY291bnQtaW5mby1pdGVtXCI+XHJcbiAgICAgICAgICA8c3Bhbj5DQzogPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJhY2NvdW50LWluZm8tdmFsdWVcIj57eyBhY2NvdW50Py5hY2NvdW50TnVtYmVyIH19PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2VwYXJhdG9yXCI+PC9zcGFuPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY2NvdW50LWluZm8taXRlbVwiPlxyXG4gICAgICAgICAgPHNwYW4+e3sgYWNjb3VudD8uYWNjb3VudFR5cGUgPT09ICdDVVJSRU5UX0FDQ09VTlRfUEYnID8gJ0NQRicgOiAnQ05QSicgfX06IDwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWNjb3VudC1pbmZvLXZhbHVlXCI+IHt7IGFjY291bnQ/LmRvY3VtZW50IHwgZm9ybWF0RG9jdW1lbnQgfX08L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2PlxyXG4gICAgICA8aHIgLz5cclxuICAgICAgPHAgY2xhc3M9XCJ0ZXh0LWNlbnRlciBhZGQtYWNjb3VudFwiIChjbGljayk9XCJnb1RvT25ib2FyZGluZygpOyBjaGFuZ2VBY2NvdW50TWVudS5oaWRlKClcIj5cclxuICAgICAgICBBZGljaW9uYXIgdW1hIG5vdmEgY29udGFcclxuICAgICAgPC9wPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9wLW92ZXJsYXlQYW5lbD5cclxuXHJcbjxwLW92ZXJsYXlQYW5lbFxyXG4gICNub3RpZmljYXRpb25zXHJcbiAgKG9uSGlkZSk9XCJzaG93Tm90aWZpY2F0aW9ucyA9IGZhbHNlXCJcclxuICAob25TaG93KT1cInNob3dOb3RpZmljYXRpb25zID0gdHJ1ZVwiXHJcbiAgc3R5bGVDbGFzcz1cImJhY2tncm91bmQtd2hpdGVcIlxyXG4+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT5cclxuICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb25zLWhlYWRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9ucy12ZWN0b3ItbG9nb1wiPjwvZGl2PlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtdGl0bGVcIj5cclxuICAgICAgICB7eyAnYXBwLmxhYmVsLm5vdGlmaWNhdGlvbnMnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPHVsIGNsYXNzPVwibm90aWZpY2F0aW9ucy1saXN0XCI+XHJcbiAgICAgIEBmb3IgKG5vdGlmaWNhdGlvbiBvZiBub3RpZmljYXRpb25zTGlzdDsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgPGxpIChjbGljayk9XCJoYW5kbGVDbGljayhub3RpZmljYXRpb24pOyBub3RpZmljYXRpb25zLmhpZGUoKVwiIGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW1cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm90aWZpY2F0aW9uLXRpdGxlXCI+XHJcbiAgICAgICAgICAgIHt7IG5vdGlmaWNhdGlvbi50aXRsZSB9fVxyXG4gICAgICAgICAgICBAaWYgKCFub3RpZmljYXRpb24ud2FzUmVhZCkge1xyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW0taW5kaWNhdG9yXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICBAaWYgKG5vdGlmaWNhdGlvbi5kZXNjcmlwdGlvbikge1xyXG4gICAgICAgICAgICA8c3Bhbj57eyBub3RpZmljYXRpb24uZGVzY3JpcHRpb24gfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDxlbSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLXJpZ2h0XCI+PC9lbT5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2xpPlxyXG4gICAgICB9XHJcbiAgICA8L3VsPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC1vdmVybGF5UGFuZWw+XHJcbiJdfQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
3
|
-
import { OverlayPanelModule } from 'primeng/overlaypanel';
|
|
4
|
-
import { SharedModule } from '../../shared/shared.module';
|
|
5
|
-
import { MenuModule } from '../menu';
|
|
6
|
-
import { TopBarComponent } from './top-bar.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class TopBarModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: TopBarModule, declarations: [TopBarComponent], imports: [SharedModule, OverlayPanelModule, TranslateModule, MenuModule], exports: [TopBarComponent] }); }
|
|
11
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopBarModule, imports: [SharedModule, OverlayPanelModule, TranslateModule, MenuModule] }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopBarModule, decorators: [{
|
|
14
|
-
type: NgModule,
|
|
15
|
-
args: [{
|
|
16
|
-
declarations: [TopBarComponent],
|
|
17
|
-
exports: [TopBarComponent],
|
|
18
|
-
imports: [SharedModule, OverlayPanelModule, TranslateModule, MenuModule],
|
|
19
|
-
}]
|
|
20
|
-
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLWJhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3RvcC1iYXIvdG9wLWJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU90RCxNQUFNLE9BQU8sWUFBWTsrR0FBWixZQUFZO2dIQUFaLFlBQVksaUJBSlIsZUFBZSxhQUVwQixZQUFZLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLFVBQVUsYUFEN0QsZUFBZTtnSEFHZCxZQUFZLFlBRmIsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxVQUFVOzs0RkFFNUQsWUFBWTtrQkFMeEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQy9CLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDMUIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxVQUFVLENBQUM7aUJBQ3pFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlQYW5lbE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvb3ZlcmxheXBhbmVsJztcclxuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBNZW51TW9kdWxlIH0gZnJvbSAnLi4vbWVudSc7XHJcbmltcG9ydCB7IFRvcEJhckNvbXBvbmVudCB9IGZyb20gJy4vdG9wLWJhci5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtUb3BCYXJDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtUb3BCYXJDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtTaGFyZWRNb2R1bGUsIE92ZXJsYXlQYW5lbE1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBNZW51TW9kdWxlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvcEJhck1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { inject } from '@angular/core';
|
|
2
|
-
export const crudListHasItemsGuard = (routeSnapshot) => {
|
|
3
|
-
const serviceType = routeSnapshot.data['service'];
|
|
4
|
-
if (!serviceType) {
|
|
5
|
-
console.error('You forgot to add the service declaration to route "data" property.');
|
|
6
|
-
return false;
|
|
7
|
-
}
|
|
8
|
-
const service = inject(serviceType);
|
|
9
|
-
return !!(service.dataset$.value?.data?.length || service.flatUnpagedDataset$.value?.length);
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1saXN0LWhhcy1pdGVtcy5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12ZWN0b3ItY29tcG9uZW50cy9zcmMvbGliL2d1YXJkcy9jcnVkLWxpc3QtaGFzLWl0ZW1zLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkMsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxhQUFxQyxFQUFFLEVBQUU7SUFDN0UsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRCxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUNyRixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsTUFBTSxPQUFPLEdBQXVCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4RCxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLElBQUksT0FBTyxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMvRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5leHBvcnQgY29uc3QgY3J1ZExpc3RIYXNJdGVtc0d1YXJkID0gKHJvdXRlU25hcHNob3Q6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpID0+IHtcclxuICBjb25zdCBzZXJ2aWNlVHlwZSA9IHJvdXRlU25hcHNob3QuZGF0YVsnc2VydmljZSddO1xyXG4gIGlmICghc2VydmljZVR5cGUpIHtcclxuICAgIGNvbnNvbGUuZXJyb3IoJ1lvdSBmb3Jnb3QgdG8gYWRkIHRoZSBzZXJ2aWNlIGRlY2xhcmF0aW9uIHRvIHJvdXRlIFwiZGF0YVwiIHByb3BlcnR5LicpO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBjb25zdCBzZXJ2aWNlOiB0eXBlb2Ygc2VydmljZVR5cGUgPSBpbmplY3Qoc2VydmljZVR5cGUpO1xyXG4gIHJldHVybiAhIShzZXJ2aWNlLmRhdGFzZXQkLnZhbHVlPy5kYXRhPy5sZW5ndGggfHwgc2VydmljZS5mbGF0VW5wYWdlZERhdGFzZXQkLnZhbHVlPy5sZW5ndGgpO1xyXG59O1xyXG4iXX0=
|