ngx-vector-components 6.3.0 → 6.5.0
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 +3047 -3033
- 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 +1861 -1860
- package/assets/styles/_spinner.scss +36 -36
- package/assets/styles/_styles.scss +134 -134
- package/assets/styles/_variables.scss +61 -61
- package/fesm2022/ngx-vector-components.mjs +499 -90
- package/fesm2022/ngx-vector-components.mjs.map +1 -1
- package/lib/components/fields/fields.module.d.ts +29 -28
- package/lib/components/fields/index.d.ts +1 -0
- package/lib/components/fields/input-file/index.d.ts +1 -0
- package/lib/components/fields/input-file/input-file.component.d.ts +141 -0
- package/lib/models/profile.model.d.ts +1 -0
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { Input, Component, Pipe, NgModule, InjectionToken, Injectable, Inject, EventEmitter, Output, ViewChild, signal, ViewEncapsulation, HostBinding, HostListener, inject } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import * as
|
|
5
|
+
import * as i2 from 'primeng/tooltip';
|
|
6
6
|
import { TooltipModule } from 'primeng/tooltip';
|
|
7
7
|
import * as i1$2 from '@ngx-translate/core';
|
|
8
8
|
import { TranslateModule } from '@ngx-translate/core';
|
|
@@ -11,31 +11,28 @@ import * as i1$1 from '@angular/router';
|
|
|
11
11
|
import { NavigationEnd, Router } from '@angular/router';
|
|
12
12
|
import { BehaviorSubject, Subscription, Subject, of, firstValueFrom, throwError } from 'rxjs';
|
|
13
13
|
import * as i1$5 from '@angular/forms';
|
|
14
|
-
import { UntypedFormGroup, UntypedFormControl, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
15
|
-
import * as i2 from 'primeng/button';
|
|
14
|
+
import { UntypedFormGroup, UntypedFormControl, Validators, FormGroup, FormControl, FormArray, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
15
|
+
import * as i2$1 from 'primeng/button';
|
|
16
16
|
import { ButtonModule } from 'primeng/button';
|
|
17
17
|
import * as i5$1 from 'primeng/autocomplete';
|
|
18
18
|
import { AutoCompleteModule } from 'primeng/autocomplete';
|
|
19
|
+
import * as i3 from 'primeng/checkbox';
|
|
20
|
+
import { CheckboxModule } from 'primeng/checkbox';
|
|
19
21
|
import * as i4 from 'primeng/datepicker';
|
|
20
22
|
import { DatePickerModule } from 'primeng/datepicker';
|
|
21
|
-
import * as
|
|
22
|
-
import { CheckboxModule } from 'primeng/checkbox';
|
|
23
|
-
import * as i2$8 from 'primeng/dialog';
|
|
23
|
+
import * as i2$5 from 'primeng/dialog';
|
|
24
24
|
import { DialogModule } from 'primeng/dialog';
|
|
25
|
-
import * as
|
|
26
|
-
import { SelectModule } from 'primeng/select';
|
|
25
|
+
import * as i3$2 from 'primeng/fileupload';
|
|
27
26
|
import { FileUploadModule } from 'primeng/fileupload';
|
|
28
27
|
import * as i5 from 'primeng/inputmask';
|
|
29
28
|
import { InputMaskModule } from 'primeng/inputmask';
|
|
30
|
-
import * as i2$
|
|
29
|
+
import * as i2$3 from 'primeng/inputnumber';
|
|
31
30
|
import { InputNumber, InputNumberModule } from 'primeng/inputnumber';
|
|
32
|
-
import * as i2$
|
|
31
|
+
import * as i2$6 from 'primeng/inputotp';
|
|
33
32
|
import { InputOtpModule } from 'primeng/inputotp';
|
|
34
|
-
import * as i2$5 from 'primeng/toggleswitch';
|
|
35
|
-
import { ToggleSwitchModule } from 'primeng/toggleswitch';
|
|
36
33
|
import * as i4$1 from 'primeng/inputtext';
|
|
37
34
|
import { InputTextModule } from 'primeng/inputtext';
|
|
38
|
-
import * as i3$
|
|
35
|
+
import * as i3$1 from 'primeng/keyfilter';
|
|
39
36
|
import { KeyFilterModule } from 'primeng/keyfilter';
|
|
40
37
|
import * as i10 from 'primeng/menu';
|
|
41
38
|
import { MenuModule as MenuModule$1 } from 'primeng/menu';
|
|
@@ -43,31 +40,36 @@ import * as i4$2 from 'primeng/multiselect';
|
|
|
43
40
|
import { MultiSelectModule } from 'primeng/multiselect';
|
|
44
41
|
import * as i5$2 from 'primeng/radiobutton';
|
|
45
42
|
import { RadioButtonModule } from 'primeng/radiobutton';
|
|
46
|
-
import * as
|
|
43
|
+
import * as i4$3 from 'primeng/select';
|
|
44
|
+
import { SelectModule } from 'primeng/select';
|
|
45
|
+
import * as i2$4 from 'primeng/selectbutton';
|
|
47
46
|
import { SelectButtonModule } from 'primeng/selectbutton';
|
|
48
|
-
import * as i2$
|
|
47
|
+
import * as i2$8 from 'primeng/slider';
|
|
49
48
|
import { SliderModule } from 'primeng/slider';
|
|
50
49
|
import * as i11 from 'primeng/table';
|
|
51
50
|
import { TableModule } from 'primeng/table';
|
|
52
51
|
import * as i7 from 'primeng/tabview';
|
|
53
52
|
import { TabViewModule } from 'primeng/tabview';
|
|
54
|
-
import * as i2$
|
|
53
|
+
import * as i2$9 from 'primeng/textarea';
|
|
55
54
|
import { TextareaModule } from 'primeng/textarea';
|
|
55
|
+
import * as i2$7 from 'primeng/toggleswitch';
|
|
56
|
+
import { ToggleSwitchModule } from 'primeng/toggleswitch';
|
|
56
57
|
import * as i1$3 from 'primeng/panel';
|
|
57
58
|
import { PanelModule as PanelModule$1 } from 'primeng/panel';
|
|
58
|
-
import * as i2$
|
|
59
|
+
import * as i2$2 from 'primeng/api';
|
|
59
60
|
import { DateTime } from 'luxon';
|
|
60
61
|
import * as i1$4 from '@angular/common/http';
|
|
61
62
|
import { HttpHeaders, HttpClient, HttpResponse } from '@angular/common/http';
|
|
62
63
|
import { switchMap, map, tap, debounceTime, catchError, filter, take } from 'rxjs/operators';
|
|
64
|
+
import * as i1$6 from '@angular/platform-browser';
|
|
63
65
|
import * as i4$4 from 'primeng/accordion';
|
|
64
66
|
import { AccordionModule } from 'primeng/accordion';
|
|
65
|
-
import * as i1$
|
|
67
|
+
import * as i1$7 from 'primeng/drawer';
|
|
66
68
|
import { DrawerModule as DrawerModule$1 } from 'primeng/drawer';
|
|
67
69
|
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
68
70
|
import * as i6 from 'primeng/overlaypanel';
|
|
69
71
|
import { OverlayPanelModule } from 'primeng/overlaypanel';
|
|
70
|
-
import * as i1$
|
|
72
|
+
import * as i1$8 from 'primeng/steps';
|
|
71
73
|
import { StepsModule } from 'primeng/steps';
|
|
72
74
|
import { definePreset } from '@primeng/themes';
|
|
73
75
|
import Aura from '@primeng/themes/aura';
|
|
@@ -850,6 +852,7 @@ var ProfileModuleActionType;
|
|
|
850
852
|
ProfileModuleActionType["ENABLED_CHANGE_FREIGHTRATE_IN_LOT_MASSIVELY"] = "Enabled Change FreightRate In Lot Massively";
|
|
851
853
|
ProfileModuleActionType["RECEIVABLE_CHARGE"] = "ReceivableCharge";
|
|
852
854
|
ProfileModuleActionType["CAMPAIGN"] = "Campanha";
|
|
855
|
+
ProfileModuleActionType["LINK_GENERATOR"] = "Gerador De Link";
|
|
853
856
|
ProfileModuleActionType["ADD_BLOCK_CARRIER"] = "Add Block Carrier";
|
|
854
857
|
ProfileModuleActionType["SHOW_BLOCK_CARRIER"] = "Show Block Carrier";
|
|
855
858
|
ProfileModuleActionType["EDIT_BLOCK_CARRIER"] = "Edit Block Carrier";
|
|
@@ -895,11 +898,11 @@ class BadgeComponent {
|
|
|
895
898
|
return '';
|
|
896
899
|
}
|
|
897
900
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: BadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
898
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: BadgeComponent, isStandalone: false, selector: "vector-badge", inputs: { type: "type", label: "label", customColor: "customColor", customBackgroundColor: "customBackgroundColor", tooltip: "tooltip" }, ngImport: i0, template: "<div\
|
|
901
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: BadgeComponent, isStandalone: false, selector: "vector-badge", inputs: { type: "type", label: "label", customColor: "customColor", customBackgroundColor: "customBackgroundColor", tooltip: "tooltip" }, ngImport: i0, template: "<div\n class=\"badge\"\n [class]=\"getStatusColor()\"\n [ngStyle]=\"{ 'background-color': customBackgroundColor, color: customColor }\"\n [pTooltip]=\"tooltip || ''\"\n tooltipPosition=\"top\"\n>\n {{ label }}\n</div>\n", styles: [".badge{padding:4px 12px;border-radius:8px;color:#fff}.badge-success{background-color:var(--success-color)}.badge-error{background-color:var(--error-color)}.badge-warning{background-color:var(--warning-color)}.badge-info{background-color:var(--theme-light)}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
|
|
899
902
|
}
|
|
900
903
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: BadgeComponent, decorators: [{
|
|
901
904
|
type: Component,
|
|
902
|
-
args: [{ standalone: false, selector: 'vector-badge', template: "<div\
|
|
905
|
+
args: [{ standalone: false, selector: 'vector-badge', template: "<div\n class=\"badge\"\n [class]=\"getStatusColor()\"\n [ngStyle]=\"{ 'background-color': customBackgroundColor, color: customColor }\"\n [pTooltip]=\"tooltip || ''\"\n tooltipPosition=\"top\"\n>\n {{ label }}\n</div>\n", styles: [".badge{padding:4px 12px;border-radius:8px;color:#fff}.badge-success{background-color:var(--success-color)}.badge-error{background-color:var(--error-color)}.badge-warning{background-color:var(--warning-color)}.badge-info{background-color:var(--theme-light)}\n"] }]
|
|
903
906
|
}], ctorParameters: () => [], propDecorators: { type: [{
|
|
904
907
|
type: Input
|
|
905
908
|
}], label: [{
|
|
@@ -1737,11 +1740,11 @@ class BreadcrumbComponent {
|
|
|
1737
1740
|
return foundItem;
|
|
1738
1741
|
}
|
|
1739
1742
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i1$1.Router }, { token: ENVIRONMENT }, { token: MENU_OPTIONS }, { token: BreadcrumbService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1740
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: BreadcrumbComponent, isStandalone: false, selector: "vector-breadcrumb", ngImport: i0, template: "<div class=\"breadcrumb-container\" *ngIf=\"routeFragments?.length\">\
|
|
1743
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: BreadcrumbComponent, isStandalone: false, selector: "vector-breadcrumb", ngImport: i0, template: "<div class=\"breadcrumb-container\" *ngIf=\"routeFragments?.length\">\n <div class=\"route-path\">\n <span class=\"app-name\">{{ appName }}</span>\n <div *ngIf=\"routeFragments.length < 2\" class=\"chevron\"></div>\n <span\n class=\"route-fragment\"\n [ngClass]=\"{ clickable: fragment.route }\"\n *ngFor=\"let fragment of routeFragments | removeLastChild\"\n (click)=\"navigateToFragment(fragment)\"\n ><div class=\"chevron\"></div>\n {{ fragment.label }}</span\n >\n </div>\n <span class=\"last-route\">\n {{ routeFragments[routeFragments.length - 1].label }}\n {{ titleAdditionalInfo }}\n </span>\n</div>\n", styles: [".breadcrumb-container{display:flex;flex-direction:column;margin-bottom:15px}.breadcrumb-container .route-path{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;color:var(--gray-dark)}.breadcrumb-container .app-name,.breadcrumb-container .last-route,.breadcrumb-container .route-path .route-fragment{font-weight:700;letter-spacing:.75px;display:flex;flex-direction:row;align-items:center;margin:2.5px}.breadcrumb-container .clickable{cursor:pointer}.breadcrumb-container .chevron{margin:0 5px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"7.4\" viewBox=\"0 0 12 7.4\">%0A <path id=\"Caminho_1437\" data-name=\"Caminho 1437\" d=\"M1526.175,366.14l4.6,4.6,4.6-4.6,1.4,1.4-6,6-6-6Z\" transform=\"translate(-1524.775 -366.14)\" fill=\"%23333\"/>%0A</svg>%0A');background-repeat:no-repeat;background-position:center;transform:rotate(-90deg);width:20px;height:20px;filter:invert(53%) sepia(13%) saturate(450%) hue-rotate(156deg) brightness(89%) contrast(85%)}.breadcrumb-container .last-route{font-size:1.5em;color:var(--success-color)}\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: "pipe", type: RemoveLastChildPipe, name: "removeLastChild" }] }); }
|
|
1741
1744
|
}
|
|
1742
1745
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: BreadcrumbComponent, decorators: [{
|
|
1743
1746
|
type: Component,
|
|
1744
|
-
args: [{ standalone: false, selector: 'vector-breadcrumb', template: "<div class=\"breadcrumb-container\" *ngIf=\"routeFragments?.length\">\
|
|
1747
|
+
args: [{ standalone: false, selector: 'vector-breadcrumb', template: "<div class=\"breadcrumb-container\" *ngIf=\"routeFragments?.length\">\n <div class=\"route-path\">\n <span class=\"app-name\">{{ appName }}</span>\n <div *ngIf=\"routeFragments.length < 2\" class=\"chevron\"></div>\n <span\n class=\"route-fragment\"\n [ngClass]=\"{ clickable: fragment.route }\"\n *ngFor=\"let fragment of routeFragments | removeLastChild\"\n (click)=\"navigateToFragment(fragment)\"\n ><div class=\"chevron\"></div>\n {{ fragment.label }}</span\n >\n </div>\n <span class=\"last-route\">\n {{ routeFragments[routeFragments.length - 1].label }}\n {{ titleAdditionalInfo }}\n </span>\n</div>\n", styles: [".breadcrumb-container{display:flex;flex-direction:column;margin-bottom:15px}.breadcrumb-container .route-path{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;color:var(--gray-dark)}.breadcrumb-container .app-name,.breadcrumb-container .last-route,.breadcrumb-container .route-path .route-fragment{font-weight:700;letter-spacing:.75px;display:flex;flex-direction:row;align-items:center;margin:2.5px}.breadcrumb-container .clickable{cursor:pointer}.breadcrumb-container .chevron{margin:0 5px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"7.4\" viewBox=\"0 0 12 7.4\">%0A <path id=\"Caminho_1437\" data-name=\"Caminho 1437\" d=\"M1526.175,366.14l4.6,4.6,4.6-4.6,1.4,1.4-6,6-6-6Z\" transform=\"translate(-1524.775 -366.14)\" fill=\"%23333\"/>%0A</svg>%0A');background-repeat:no-repeat;background-position:center;transform:rotate(-90deg);width:20px;height:20px;filter:invert(53%) sepia(13%) saturate(450%) hue-rotate(156deg) brightness(89%) contrast(85%)}.breadcrumb-container .last-route{font-size:1.5em;color:var(--success-color)}\n"] }]
|
|
1745
1748
|
}], ctorParameters: () => [{ type: i1$1.Router }, { type: undefined, decorators: [{
|
|
1746
1749
|
type: Inject,
|
|
1747
1750
|
args: [ENVIRONMENT]
|
|
@@ -1823,11 +1826,11 @@ class ButtonComponent {
|
|
|
1823
1826
|
return `button shadow-3 ${this.type} ${this.noShadow && 'no-shadow'}`;
|
|
1824
1827
|
}
|
|
1825
1828
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1826
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ButtonComponent, isStandalone: false, selector: "vector-button", inputs: { disabled: "disabled", label: "label", type: "type", leftIcon: "leftIcon", rightIcon: "rightIcon", noShadow: "noShadow", round: "round", style: "style", loading: "loading" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<p-button\
|
|
1829
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ButtonComponent, isStandalone: false, selector: "vector-button", inputs: { disabled: "disabled", label: "label", type: "type", leftIcon: "leftIcon", rightIcon: "rightIcon", noShadow: "noShadow", round: "round", style: "style", loading: "loading" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<p-button\n [styleClass]=\"styleClass\"\n [label]=\"label\"\n [disabled]=\"disabled\"\n [icon]=\"leftIcon || rightIcon\"\n [iconPos]=\"rightIcon ? 'right' : 'left'\"\n [style]=\"style\"\n (onClick)=\"onClick.emit($event)\"\n [ngClass]=\"{ round: round }\"\n [loading]=\"loading\"\n></p-button>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }] }); }
|
|
1827
1830
|
}
|
|
1828
1831
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
1829
1832
|
type: Component,
|
|
1830
|
-
args: [{ standalone: false, selector: 'vector-button', template: "<p-button\
|
|
1833
|
+
args: [{ standalone: false, selector: 'vector-button', template: "<p-button\n [styleClass]=\"styleClass\"\n [label]=\"label\"\n [disabled]=\"disabled\"\n [icon]=\"leftIcon || rightIcon\"\n [iconPos]=\"rightIcon ? 'right' : 'left'\"\n [style]=\"style\"\n (onClick)=\"onClick.emit($event)\"\n [ngClass]=\"{ round: round }\"\n [loading]=\"loading\"\n></p-button>\n" }]
|
|
1831
1834
|
}], propDecorators: { disabled: [{
|
|
1832
1835
|
type: Input
|
|
1833
1836
|
}], label: [{
|
|
@@ -1863,11 +1866,11 @@ class CrudFooterComponent {
|
|
|
1863
1866
|
}
|
|
1864
1867
|
ngOnInit() { }
|
|
1865
1868
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CrudFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1866
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: CrudFooterComponent, isStandalone: false, selector: "vector-crud-footer", inputs: { submitDisabled: "submitDisabled", submitHidden: "submitHidden", goBackHidden: "goBackHidden", labelGoBack: "labelGoBack", typeGoBack: "typeGoBack", leftIconGoBack: "leftIconGoBack", labelGoSubmit: "labelGoSubmit", typeGoSubmit: "typeGoSubmit", leftIconGoSubmit: "leftIconGoSubmit", actionHidden: "actionHidden", actionDisabled: "actionDisabled", labelAction: "labelAction", typeAction: "typeAction", leftIconAction: "leftIconAction" }, outputs: { onGoBack: "onGoBack", onSubmit: "onSubmit", onAction: "onAction" }, ngImport: i0, template: "<div class=\"footer-container shadow-3\">\
|
|
1869
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: CrudFooterComponent, isStandalone: false, selector: "vector-crud-footer", inputs: { submitDisabled: "submitDisabled", submitHidden: "submitHidden", goBackHidden: "goBackHidden", labelGoBack: "labelGoBack", typeGoBack: "typeGoBack", leftIconGoBack: "leftIconGoBack", labelGoSubmit: "labelGoSubmit", typeGoSubmit: "typeGoSubmit", leftIconGoSubmit: "leftIconGoSubmit", actionHidden: "actionHidden", actionDisabled: "actionDisabled", labelAction: "labelAction", typeAction: "typeAction", leftIconAction: "leftIconAction" }, outputs: { onGoBack: "onGoBack", onSubmit: "onSubmit", onAction: "onAction" }, ngImport: i0, template: "<div class=\"footer-container shadow-3\">\n @if (!actionHidden) {\n <div class=\"button\">\n <vector-button\n [label]=\"labelAction || ''\"\n [type]=\"typeAction ? typeAction : 'default'\"\n [leftIcon]=\"leftIconAction || ''\"\n [disabled]=\"actionDisabled\"\n (onClick)=\"onAction.emit()\"\n ></vector-button>\n </div>\n }\n @if (!goBackHidden) {\n <div class=\"button\">\n <vector-button\n [label]=\"labelGoBack ? labelGoBack : ('enums.Options.GO_BACK' | translate)\"\n [type]=\"typeGoBack ? typeGoBack : 'default'\"\n [leftIcon]=\"leftIconGoBack || ''\"\n (onClick)=\"onGoBack.emit()\"\n >\n </vector-button>\n </div>\n }\n\n @if (!submitHidden) {\n <div class=\"button\">\n <vector-button\n [label]=\"labelGoSubmit ? labelGoSubmit : ('enums.Options.SAVE' | translate)\"\n [type]=\"typeGoSubmit ? typeGoSubmit : 'success'\"\n [leftIcon]=\"leftIconGoSubmit || ''\"\n (onClick)=\"onSubmit.emit()\"\n [disabled]=\"submitDisabled\"\n ></vector-button>\n </div>\n }\n</div>\n", styles: [".footer-container{position:fixed;bottom:0;left:0;background-color:#f5f5f5;display:flex;flex-direction:row;justify-content:flex-end;align-items:center;width:100%;height:60px}.footer-container .button{margin-right:10px}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
1867
1870
|
}
|
|
1868
1871
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CrudFooterComponent, decorators: [{
|
|
1869
1872
|
type: Component,
|
|
1870
|
-
args: [{ standalone: false, selector: 'vector-crud-footer', template: "<div class=\"footer-container shadow-3\">\
|
|
1873
|
+
args: [{ standalone: false, selector: 'vector-crud-footer', template: "<div class=\"footer-container shadow-3\">\n @if (!actionHidden) {\n <div class=\"button\">\n <vector-button\n [label]=\"labelAction || ''\"\n [type]=\"typeAction ? typeAction : 'default'\"\n [leftIcon]=\"leftIconAction || ''\"\n [disabled]=\"actionDisabled\"\n (onClick)=\"onAction.emit()\"\n ></vector-button>\n </div>\n }\n @if (!goBackHidden) {\n <div class=\"button\">\n <vector-button\n [label]=\"labelGoBack ? labelGoBack : ('enums.Options.GO_BACK' | translate)\"\n [type]=\"typeGoBack ? typeGoBack : 'default'\"\n [leftIcon]=\"leftIconGoBack || ''\"\n (onClick)=\"onGoBack.emit()\"\n >\n </vector-button>\n </div>\n }\n\n @if (!submitHidden) {\n <div class=\"button\">\n <vector-button\n [label]=\"labelGoSubmit ? labelGoSubmit : ('enums.Options.SAVE' | translate)\"\n [type]=\"typeGoSubmit ? typeGoSubmit : 'success'\"\n [leftIcon]=\"leftIconGoSubmit || ''\"\n (onClick)=\"onSubmit.emit()\"\n [disabled]=\"submitDisabled\"\n ></vector-button>\n </div>\n }\n</div>\n", styles: [".footer-container{position:fixed;bottom:0;left:0;background-color:#f5f5f5;display:flex;flex-direction:row;justify-content:flex-end;align-items:center;width:100%;height:60px}.footer-container .button{margin-right:10px}\n"] }]
|
|
1871
1874
|
}], ctorParameters: () => [], propDecorators: { submitDisabled: [{
|
|
1872
1875
|
type: Input
|
|
1873
1876
|
}], submitHidden: [{
|
|
@@ -1908,11 +1911,11 @@ class PanelComponent {
|
|
|
1908
1911
|
constructor() { }
|
|
1909
1912
|
ngOnInit() { }
|
|
1910
1913
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1911
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: PanelComponent, isStandalone: false, selector: "vector-panel", ngImport: i0, template: "<p-panel [showHeader]=\"false\">\
|
|
1914
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: PanelComponent, isStandalone: false, selector: "vector-panel", ngImport: i0, template: "<p-panel [showHeader]=\"false\">\n <ng-template pTemplate=\"content\">\n <div class=\"shadow-3\"><ng-content></ng-content></div></ng-template\n></p-panel>\n", styles: [""], dependencies: [{ kind: "component", type: i1$3.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions", "toggleButtonProps"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
|
|
1912
1915
|
}
|
|
1913
1916
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PanelComponent, decorators: [{
|
|
1914
1917
|
type: Component,
|
|
1915
|
-
args: [{ standalone: false, selector: 'vector-panel', template: "<p-panel [showHeader]=\"false\">\
|
|
1918
|
+
args: [{ standalone: false, selector: 'vector-panel', template: "<p-panel [showHeader]=\"false\">\n <ng-template pTemplate=\"content\">\n <div class=\"shadow-3\"><ng-content></ng-content></div></ng-template\n></p-panel>\n" }]
|
|
1916
1919
|
}], ctorParameters: () => [] });
|
|
1917
1920
|
|
|
1918
1921
|
class PanelModule {
|
|
@@ -1935,11 +1938,11 @@ class ScoreComponent {
|
|
|
1935
1938
|
}
|
|
1936
1939
|
ngOnInit() { }
|
|
1937
1940
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ScoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1938
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ScoreComponent, isStandalone: false, selector: "vector-score", inputs: { score: "score" }, ngImport: i0, template: "<div class=\"container\">\
|
|
1941
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ScoreComponent, isStandalone: false, selector: "vector-score", inputs: { score: "score" }, ngImport: i0, template: "<div class=\"container\">\n <span class=\"score\">{{ score }}</span>\n <em class=\"fas fa-star star\"></em>\n</div>\n", styles: [".container{display:flex;align-items:center;gap:5px}.container .star{color:var(--theme-primary)}\n"] }); }
|
|
1939
1942
|
}
|
|
1940
1943
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ScoreComponent, decorators: [{
|
|
1941
1944
|
type: Component,
|
|
1942
|
-
args: [{ standalone: false, selector: 'vector-score', template: "<div class=\"container\">\
|
|
1945
|
+
args: [{ standalone: false, selector: 'vector-score', template: "<div class=\"container\">\n <span class=\"score\">{{ score }}</span>\n <em class=\"fas fa-star star\"></em>\n</div>\n", styles: [".container{display:flex;align-items:center;gap:5px}.container .star{color:var(--theme-primary)}\n"] }]
|
|
1943
1946
|
}], ctorParameters: () => [], propDecorators: { score: [{
|
|
1944
1947
|
type: Input
|
|
1945
1948
|
}] } });
|
|
@@ -2573,11 +2576,11 @@ class FieldErrorMessageComponent {
|
|
|
2573
2576
|
return '';
|
|
2574
2577
|
}
|
|
2575
2578
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FieldErrorMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2576
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: FieldErrorMessageComponent, isStandalone: false, selector: "vector-field-error-message", inputs: { control: "control" }, ngImport: i0, template: "<span class=\"input-error\">{{ fieldErrorLabel() }}</span>\
|
|
2579
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: FieldErrorMessageComponent, isStandalone: false, selector: "vector-field-error-message", inputs: { control: "control" }, ngImport: i0, template: "<span class=\"input-error\">{{ fieldErrorLabel() }}</span>\n", styles: [".input-error{font-size:.7em;color:var(--error-color);position:absolute;left:0;width:100%}\n"] }); }
|
|
2577
2580
|
}
|
|
2578
2581
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FieldErrorMessageComponent, decorators: [{
|
|
2579
2582
|
type: Component,
|
|
2580
|
-
args: [{ standalone: false, selector: 'vector-field-error-message', template: "<span class=\"input-error\">{{ fieldErrorLabel() }}</span>\
|
|
2583
|
+
args: [{ standalone: false, selector: 'vector-field-error-message', template: "<span class=\"input-error\">{{ fieldErrorLabel() }}</span>\n", styles: [".input-error{font-size:.7em;color:var(--error-color);position:absolute;left:0;width:100%}\n"] }]
|
|
2581
2584
|
}], ctorParameters: () => [], propDecorators: { control: [{
|
|
2582
2585
|
type: Input
|
|
2583
2586
|
}] } });
|
|
@@ -2632,11 +2635,11 @@ class CalendarComponent {
|
|
|
2632
2635
|
this.modalService.showModalBackground$.next(false);
|
|
2633
2636
|
}
|
|
2634
2637
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CalendarComponent, deps: [{ token: ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2635
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CalendarComponent, isStandalone: false, selector: "vector-calendar-field", inputs: { isRequired: "isRequired", control: "control", label: "label", showCalendarOnFocus: "showCalendarOnFocus", min: "min", max: "max", disabledDates: "disabledDates", disabled: "disabled", defaultDate: "defaultDate", hiddenErrorMessage: "hiddenErrorMessage", showTime: "showTime", showSeconds: "showSeconds", stepMinute: "stepMinute", stepHour: "stepHour", stepSecond: "stepSecond", timeOnly: "timeOnly", hourFormat: "hourFormat" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onInput: "onInput", onSelect: "onSelect" }, ngImport: i0, template: "<div class=\"relative\">\
|
|
2638
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CalendarComponent, isStandalone: false, selector: "vector-calendar-field", inputs: { isRequired: "isRequired", control: "control", label: "label", showCalendarOnFocus: "showCalendarOnFocus", min: "min", max: "max", disabledDates: "disabledDates", disabled: "disabled", defaultDate: "defaultDate", hiddenErrorMessage: "hiddenErrorMessage", showTime: "showTime", showSeconds: "showSeconds", stepMinute: "stepMinute", stepHour: "stepHour", stepSecond: "stepSecond", timeOnly: "timeOnly", hourFormat: "hourFormat" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onInput: "onInput", onSelect: "onSelect" }, ngImport: i0, template: "<div class=\"relative\">\n <div class=\"input-container\">\n <p-datepicker\n appendTo=\"body\"\n icon=\"fas fa-calendar-day\"\n (onClose)=\"onHideCalendar()\"\n (onShow)=\"onShowCalendar()\"\n (onBlur)=\"onBlur.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n (onSelect)=\"onSelect.emit($event)\"\n (onInput)=\"onInput.emit()\"\n [defaultDate]=\"defaultDate\"\n [disabled]=\"disabled\"\n [disabledDates]=\"disabledDates\"\n [formControl]=\"control\"\n [maxDate]=\"max\"\n [minDate]=\"min\"\n [readonlyInput]=\"false\"\n [showIcon]=\"true\"\n [showOnFocus]=\"showCalendarOnFocus\"\n [showSeconds]=\"showSeconds\"\n [showTime]=\"showTime\"\n [stepMinute]=\"stepMinute\"\n [timeOnly]=\"timeOnly\"\n [stepHour]=\"stepHour\"\n [stepSecond]=\"stepSecond\"\n [hourFormat]=\"hourFormat\"\n ></p-datepicker>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</div>\n", styles: [".input-container{display:block}.input-container input{transition:border-width ease-in-out .08s;border:1px solid rgba(0,0,0,.6);width:100%;padding:6px 30px 6px 12px;font-size:14px;line-height:1.5em;border-radius:var(--border-radius);height:40px}.input-container input:disabled{cursor:not-allowed;background-color:var(--disabled-background);opacity:1}.input-container input:focus{outline:0;box-shadow:none;border-width:2px}.input-container input::placeholder{color:var(--placeholder-color);font-size:12px}.input-container input.ng-touched.ng-invalid{border-color:var(--error-color)!important}.input-container .input-error{font-size:.7em;color:var(--error-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "fluid", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "size", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: FieldErrorMessageComponent, selector: "vector-field-error-message", inputs: ["control"] }] }); }
|
|
2636
2639
|
}
|
|
2637
2640
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CalendarComponent, decorators: [{
|
|
2638
2641
|
type: Component,
|
|
2639
|
-
args: [{ standalone: false, selector: 'vector-calendar-field', template: "<div class=\"relative\">\
|
|
2642
|
+
args: [{ standalone: false, selector: 'vector-calendar-field', template: "<div class=\"relative\">\n <div class=\"input-container\">\n <p-datepicker\n appendTo=\"body\"\n icon=\"fas fa-calendar-day\"\n (onClose)=\"onHideCalendar()\"\n (onShow)=\"onShowCalendar()\"\n (onBlur)=\"onBlur.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n (onSelect)=\"onSelect.emit($event)\"\n (onInput)=\"onInput.emit()\"\n [defaultDate]=\"defaultDate\"\n [disabled]=\"disabled\"\n [disabledDates]=\"disabledDates\"\n [formControl]=\"control\"\n [maxDate]=\"max\"\n [minDate]=\"min\"\n [readonlyInput]=\"false\"\n [showIcon]=\"true\"\n [showOnFocus]=\"showCalendarOnFocus\"\n [showSeconds]=\"showSeconds\"\n [showTime]=\"showTime\"\n [stepMinute]=\"stepMinute\"\n [timeOnly]=\"timeOnly\"\n [stepHour]=\"stepHour\"\n [stepSecond]=\"stepSecond\"\n [hourFormat]=\"hourFormat\"\n ></p-datepicker>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</div>\n", styles: [".input-container{display:block}.input-container input{transition:border-width ease-in-out .08s;border:1px solid rgba(0,0,0,.6);width:100%;padding:6px 30px 6px 12px;font-size:14px;line-height:1.5em;border-radius:var(--border-radius);height:40px}.input-container input:disabled{cursor:not-allowed;background-color:var(--disabled-background);opacity:1}.input-container input:focus{outline:0;box-shadow:none;border-width:2px}.input-container input::placeholder{color:var(--placeholder-color);font-size:12px}.input-container input.ng-touched.ng-invalid{border-color:var(--error-color)!important}.input-container .input-error{font-size:.7em;color:var(--error-color)}\n"] }]
|
|
2640
2643
|
}], ctorParameters: () => [{ type: ModalService }], propDecorators: { isRequired: [{
|
|
2641
2644
|
type: Input
|
|
2642
2645
|
}], control: [{
|
|
@@ -2711,11 +2714,11 @@ class CheckboxFieldComponent {
|
|
|
2711
2714
|
}
|
|
2712
2715
|
}
|
|
2713
2716
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CheckboxFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2714
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CheckboxFieldComponent, isStandalone: false, selector: "vector-checkbox-field", inputs: { isRequired: "isRequired", control: "control", label: "label", rounded: "rounded", labelSize: "labelSize", value: "value", groupName: "groupName", options: "options", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"checkbox-container flex-wrap\">\
|
|
2717
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CheckboxFieldComponent, isStandalone: false, selector: "vector-checkbox-field", inputs: { isRequired: "isRequired", control: "control", label: "label", rounded: "rounded", labelSize: "labelSize", value: "value", groupName: "groupName", options: "options", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"checkbox-container flex-wrap\">\n <ng-container *ngIf=\"control && groupName; else elseBlock\">\n <div class=\"checkbox-item mb-3 mr-3\" *ngFor=\"let option of options\">\n <p-checkbox\n [name]=\"groupName\"\n [formControl]=\"control\"\n [value]=\"option\"\n checkboxIcon=\"fas fa-check\"\n [class.rounded-checkbox]=\"rounded\"\n [inputId]=\"option.code\"\n ></p-checkbox>\n <label [for]=\"option.code\"> {{ option.name }}</label>\n </div>\n </ng-container>\n\n <ng-template #elseBlock>\n <p-checkbox\n *ngIf=\"control && !groupName\"\n [formControl]=\"control\"\n checkboxIcon=\"fas fa-check\"\n [binary]=\"true\"\n [class.rounded-checkbox]=\"rounded\"\n [disabled]=\"disabled\"\n ></p-checkbox>\n <p-checkbox\n *ngIf=\"!control && !groupName\"\n [ngModel]=\"value\"\n (ngModelChange)=\"value = $event; valueChange.emit($event)\"\n checkboxIcon=\"fas fa-check\"\n [binary]=\"true\"\n [class.rounded-checkbox]=\"rounded\"\n [disabled]=\"disabled\"\n ></p-checkbox>\n <label *ngIf=\"label\" [class.large-label]=\"labelSize === 'large'\" (click)=\"toggleValue()\"\n >{{ label }}\n <span class=\"red-label\" *ngIf=\"isRequired\"> (*)</span>\n </label>\n </ng-template>\n</div>\n", styles: [".checkbox-container{display:flex;align-items:center}.checkbox-container label{margin-left:10px}.checkbox-container .large-label{font-size:1em}.checkbox-container .checkbox-item{min-width:80px}\n"], dependencies: [{ 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$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "name", "disabled", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "inputStyle", "styleClass", "inputClass", "indeterminate", "size", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }] }); }
|
|
2715
2718
|
}
|
|
2716
2719
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CheckboxFieldComponent, decorators: [{
|
|
2717
2720
|
type: Component,
|
|
2718
|
-
args: [{ standalone: false, selector: 'vector-checkbox-field', template: "<div class=\"checkbox-container flex-wrap\">\
|
|
2721
|
+
args: [{ standalone: false, selector: 'vector-checkbox-field', template: "<div class=\"checkbox-container flex-wrap\">\n <ng-container *ngIf=\"control && groupName; else elseBlock\">\n <div class=\"checkbox-item mb-3 mr-3\" *ngFor=\"let option of options\">\n <p-checkbox\n [name]=\"groupName\"\n [formControl]=\"control\"\n [value]=\"option\"\n checkboxIcon=\"fas fa-check\"\n [class.rounded-checkbox]=\"rounded\"\n [inputId]=\"option.code\"\n ></p-checkbox>\n <label [for]=\"option.code\"> {{ option.name }}</label>\n </div>\n </ng-container>\n\n <ng-template #elseBlock>\n <p-checkbox\n *ngIf=\"control && !groupName\"\n [formControl]=\"control\"\n checkboxIcon=\"fas fa-check\"\n [binary]=\"true\"\n [class.rounded-checkbox]=\"rounded\"\n [disabled]=\"disabled\"\n ></p-checkbox>\n <p-checkbox\n *ngIf=\"!control && !groupName\"\n [ngModel]=\"value\"\n (ngModelChange)=\"value = $event; valueChange.emit($event)\"\n checkboxIcon=\"fas fa-check\"\n [binary]=\"true\"\n [class.rounded-checkbox]=\"rounded\"\n [disabled]=\"disabled\"\n ></p-checkbox>\n <label *ngIf=\"label\" [class.large-label]=\"labelSize === 'large'\" (click)=\"toggleValue()\"\n >{{ label }}\n <span class=\"red-label\" *ngIf=\"isRequired\"> (*)</span>\n </label>\n </ng-template>\n</div>\n", styles: [".checkbox-container{display:flex;align-items:center}.checkbox-container label{margin-left:10px}.checkbox-container .large-label{font-size:1em}.checkbox-container .checkbox-item{min-width:80px}\n"] }]
|
|
2719
2722
|
}], ctorParameters: () => [], propDecorators: { isRequired: [{
|
|
2720
2723
|
type: Input
|
|
2721
2724
|
}], control: [{
|
|
@@ -2805,11 +2808,11 @@ class CurrencyFieldComponent {
|
|
|
2805
2808
|
this.control.setValue(0);
|
|
2806
2809
|
}
|
|
2807
2810
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CurrencyFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2808
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CurrencyFieldComponent, isStandalone: false, selector: "vector-currency-field", inputs: { minValue: "minValue", maxValue: "maxValue", placeholder: "placeholder", numberOfDecimals: "numberOfDecimals", control: "control", outlined: "outlined", rounded: "rounded", label: "label", isBankingField: "isBankingField", inputClassName: "inputClassName", localePrefix: "localePrefix", currencyPrefix: "currencyPrefix", disabled: "disabled", centered: "centered", inputId: "inputId" }, outputs: { onBlur: "onBlur" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: InputNumber, descendants: true }], ngImport: i0, template: "<div [ngClass]=\"{ 'input-container': outlined, 'value-input-container': !outlined, rounded: rounded }\">\
|
|
2811
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CurrencyFieldComponent, isStandalone: false, selector: "vector-currency-field", inputs: { minValue: "minValue", maxValue: "maxValue", placeholder: "placeholder", numberOfDecimals: "numberOfDecimals", control: "control", outlined: "outlined", rounded: "rounded", label: "label", isBankingField: "isBankingField", inputClassName: "inputClassName", localePrefix: "localePrefix", currencyPrefix: "currencyPrefix", disabled: "disabled", centered: "centered", inputId: "inputId" }, outputs: { onBlur: "onBlur" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: InputNumber, descendants: true }], ngImport: i0, template: "<div [ngClass]=\"{ 'input-container': outlined, 'value-input-container': !outlined, rounded: rounded }\">\n <div class=\"inner-container\">\n <label *ngIf=\"label\">{{ label }}</label>\n <div class=\"input\">\n <span *ngIf=\"!outlined\">{{ currencyPrefix }} </span>\n <div class=\"value-input\">\n <p-inputNumber\n class=\"currency-input\"\n [ngClass]=\"getInputNgClass()\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [formControl]=\"control\"\n mode=\"decimal\"\n [minFractionDigits]=\"2\"\n [maxFractionDigits]=\"numberOfDecimals\"\n [min]=\"minValue\"\n [max]=\"maxValue\"\n [prefix]=\"outlined ? currencyPrefix : ''\"\n [disabled]=\"disabled\"\n [locale]=\"localePrefix ? localePrefix : 'pt-BR'\"\n (click)=\"isBankingField ? focusLastIndex($event) : null\"\n (onKeyDown)=\"isBankingField ? inputNextChar($event) : null\"\n (onBlur)=\"onBlur.emit($event)\"\n [inputId]=\"inputId\"\n ></p-inputNumber>\n </div>\n </div>\n </div>\n <span *ngIf=\"rounded\" class=\"clear-value\" (click)=\"clearValue()\"><i class=\"pi pi-times\"></i></span>\n</div>\n", styles: [".value-input-container{padding:5px 20px;display:flex;align-items:center;justify-content:space-between}.value-input-container:focus-within{border:2px solid var(--theme-dark)}.value-input-container:not(.rounded) span{font-size:2em}.value-input-container label{color:var(--gray-dark);font-size:13px}.value-input-container span{font-weight:700;color:var(--theme-dark)}.value-input-container .input{display:flex;align-items:center}.value-input-container .input .value-input{margin:0 4px;flex:1}.input-container{display:block}.rounded:not(.currency-input){padding:0 25px;background-color:#fff;border-radius:16px}.rounded span{font-size:1em}.rounded input{font-size:1rem}.rounded .clear-value{padding:5px 5px 0;border-radius:20px}.rounded .clear-value:hover{background-color:var(--gray-medium)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2$3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }] }); }
|
|
2809
2812
|
}
|
|
2810
2813
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CurrencyFieldComponent, decorators: [{
|
|
2811
2814
|
type: Component,
|
|
2812
|
-
args: [{ standalone: false, selector: 'vector-currency-field', template: "<div [ngClass]=\"{ 'input-container': outlined, 'value-input-container': !outlined, rounded: rounded }\">\
|
|
2815
|
+
args: [{ standalone: false, selector: 'vector-currency-field', template: "<div [ngClass]=\"{ 'input-container': outlined, 'value-input-container': !outlined, rounded: rounded }\">\n <div class=\"inner-container\">\n <label *ngIf=\"label\">{{ label }}</label>\n <div class=\"input\">\n <span *ngIf=\"!outlined\">{{ currencyPrefix }} </span>\n <div class=\"value-input\">\n <p-inputNumber\n class=\"currency-input\"\n [ngClass]=\"getInputNgClass()\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [formControl]=\"control\"\n mode=\"decimal\"\n [minFractionDigits]=\"2\"\n [maxFractionDigits]=\"numberOfDecimals\"\n [min]=\"minValue\"\n [max]=\"maxValue\"\n [prefix]=\"outlined ? currencyPrefix : ''\"\n [disabled]=\"disabled\"\n [locale]=\"localePrefix ? localePrefix : 'pt-BR'\"\n (click)=\"isBankingField ? focusLastIndex($event) : null\"\n (onKeyDown)=\"isBankingField ? inputNextChar($event) : null\"\n (onBlur)=\"onBlur.emit($event)\"\n [inputId]=\"inputId\"\n ></p-inputNumber>\n </div>\n </div>\n </div>\n <span *ngIf=\"rounded\" class=\"clear-value\" (click)=\"clearValue()\"><i class=\"pi pi-times\"></i></span>\n</div>\n", styles: [".value-input-container{padding:5px 20px;display:flex;align-items:center;justify-content:space-between}.value-input-container:focus-within{border:2px solid var(--theme-dark)}.value-input-container:not(.rounded) span{font-size:2em}.value-input-container label{color:var(--gray-dark);font-size:13px}.value-input-container span{font-weight:700;color:var(--theme-dark)}.value-input-container .input{display:flex;align-items:center}.value-input-container .input .value-input{margin:0 4px;flex:1}.input-container{display:block}.rounded:not(.currency-input){padding:0 25px;background-color:#fff;border-radius:16px}.rounded span{font-size:1em}.rounded input{font-size:1rem}.rounded .clear-value{padding:5px 5px 0;border-radius:20px}.rounded .clear-value:hover{background-color:var(--gray-medium)}\n"] }]
|
|
2813
2816
|
}], propDecorators: { minValue: [{
|
|
2814
2817
|
type: Input
|
|
2815
2818
|
}], maxValue: [{
|
|
@@ -3041,11 +3044,11 @@ class TextFieldComponent {
|
|
|
3041
3044
|
this.onDocumentTypeChange.emit(this.selectedDocumentType);
|
|
3042
3045
|
}
|
|
3043
3046
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TextFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3044
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: TextFieldComponent, isStandalone: false, selector: "vector-text-field", inputs: { isRequired: "isRequired", label: "label", maxlength: "maxlength", isPassword: "isPassword", numeric: "numeric", numericPositive: "numericPositive", numericDotComma: "numericDotComma", decimal: "decimal", onlyText: "onlyText", noSpecialCharacters: "noSpecialCharacters", alphaNumeric: "alphaNumeric", alphaNumericAndWhitespace: "alphaNumericAndWhitespace", mask: "mask", autoClear: "autoClear", readonly: "readonly", rightIcon: "rightIcon", centered: "centered", _enableDocumentTypeChoice: "_enableDocumentTypeChoice", enableDocumentTypeChoice: "enableDocumentTypeChoice", hiddenErrorMessage: "hiddenErrorMessage", leftLabel: "leftLabel", control: "control", inputId: "inputId", slotChar: "slotChar", disabled: "disabled", pattern: "pattern" }, outputs: { blurEvent: "blurEvent", inputEvent: "inputEvent", enterKeyPress: "enterKeyPress", backSpaceKeyPress: "backSpaceKeyPress", focusEvent: "focusEvent", onDocumentTypeChange: "onDocumentTypeChange" }, ngImport: i0, template: "<form class=\"input-container p-input-icon-right\">\
|
|
3047
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: TextFieldComponent, isStandalone: false, selector: "vector-text-field", inputs: { isRequired: "isRequired", label: "label", maxlength: "maxlength", isPassword: "isPassword", numeric: "numeric", numericPositive: "numericPositive", numericDotComma: "numericDotComma", decimal: "decimal", onlyText: "onlyText", noSpecialCharacters: "noSpecialCharacters", alphaNumeric: "alphaNumeric", alphaNumericAndWhitespace: "alphaNumericAndWhitespace", mask: "mask", autoClear: "autoClear", readonly: "readonly", rightIcon: "rightIcon", centered: "centered", _enableDocumentTypeChoice: "_enableDocumentTypeChoice", enableDocumentTypeChoice: "enableDocumentTypeChoice", hiddenErrorMessage: "hiddenErrorMessage", leftLabel: "leftLabel", control: "control", inputId: "inputId", slotChar: "slotChar", disabled: "disabled", pattern: "pattern" }, outputs: { blurEvent: "blurEvent", inputEvent: "inputEvent", enterKeyPress: "enterKeyPress", backSpaceKeyPress: "backSpaceKeyPress", focusEvent: "focusEvent", onDocumentTypeChange: "onDocumentTypeChange" }, ngImport: i0, template: "<form class=\"input-container p-input-icon-right\">\n <i *ngIf=\"rightIcon\" [class]=\"rightIcon\"></i>\n <i *ngIf=\"isPassword\" class=\"show-password-icon {{ showPasswordIcon }}\" (click)=\"toggleShowPassword()\"></i>\n <div class=\"p-inputgroup\" *ngIf=\"!inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <div class=\"p-inputgroup\" *ngIf=\"inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n [id]=\"inputId\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</form>\n", styles: [".input-container{width:100%;display:block!important}.input-container .password-field{-webkit-text-security:disc}.input-container .input-error{font-size:.7em;color:var(--error-color);position:absolute;width:max-content}.input-container .show-password-icon{font-size:1.4em;margin-right:5px;cursor:pointer}.input-container .text-centered{text-align:center}.input-container .left-label{min-height:100%;display:flex;align-items:center;justify-content:center;padding:0 10px;white-space:nowrap;font-size:13px;background-color:var(--gray-light);color:var(--theme-primary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$1.KeyFilter, selector: "[pKeyFilter]", inputs: ["pValidateOnly", "pKeyFilter"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "component", type: i5.InputMask, selector: "p-inputmask, p-inputMask, p-input-mask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "component", type: FieldErrorMessageComponent, selector: "vector-field-error-message", inputs: ["control"] }] }); }
|
|
3045
3048
|
}
|
|
3046
3049
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TextFieldComponent, decorators: [{
|
|
3047
3050
|
type: Component,
|
|
3048
|
-
args: [{ standalone: false, selector: 'vector-text-field', template: "<form class=\"input-container p-input-icon-right\">\
|
|
3051
|
+
args: [{ standalone: false, selector: 'vector-text-field', template: "<form class=\"input-container p-input-icon-right\">\n <i *ngIf=\"rightIcon\" [class]=\"rightIcon\"></i>\n <i *ngIf=\"isPassword\" class=\"show-password-icon {{ showPasswordIcon }}\" (click)=\"toggleShowPassword()\"></i>\n <div class=\"p-inputgroup\" *ngIf=\"!inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <div class=\"p-inputgroup\" *ngIf=\"inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n [id]=\"inputId\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</form>\n", styles: [".input-container{width:100%;display:block!important}.input-container .password-field{-webkit-text-security:disc}.input-container .input-error{font-size:.7em;color:var(--error-color);position:absolute;width:max-content}.input-container .show-password-icon{font-size:1.4em;margin-right:5px;cursor:pointer}.input-container .text-centered{text-align:center}.input-container .left-label{min-height:100%;display:flex;align-items:center;justify-content:center;padding:0 10px;white-space:nowrap;font-size:13px;background-color:var(--gray-light);color:var(--theme-primary)}\n"] }]
|
|
3049
3052
|
}], propDecorators: { isRequired: [{
|
|
3050
3053
|
type: Input
|
|
3051
3054
|
}], label: [{
|
|
@@ -3369,11 +3372,11 @@ class MultiselectFieldComponent {
|
|
|
3369
3372
|
}
|
|
3370
3373
|
}
|
|
3371
3374
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: MultiselectFieldComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3372
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: MultiselectFieldComponent, isStandalone: false, selector: "vector-multiselect-field", inputs: { pagedSugestion: "pagedSugestion", isRequired: "isRequired", control: "control", label: "label", options: "options", filter: "filter", showSelectAllOption: "showSelectAllOption", display: "display", paged: "paged", disabled: "disabled", minLengthToService: "minLengthToService", initialLoad: "initialLoad", service: "service", filterVirtualScrool: "filterVirtualScrool", showHeader: "showHeader", showFlags: "showFlags", dependencies: "dependencies", limitScrollPage: "limitScrollPage", forceSelection: "forceSelection", showFlagsOptions: "showFlagsOptions" }, outputs: { onChange: "onChange", onClosePanel: "onClosePanel" }, ngImport: i0, template: "<div class=\"multiselect-field-input-container\">\
|
|
3375
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: MultiselectFieldComponent, isStandalone: false, selector: "vector-multiselect-field", inputs: { pagedSugestion: "pagedSugestion", isRequired: "isRequired", control: "control", label: "label", options: "options", filter: "filter", showSelectAllOption: "showSelectAllOption", display: "display", paged: "paged", disabled: "disabled", minLengthToService: "minLengthToService", initialLoad: "initialLoad", service: "service", filterVirtualScrool: "filterVirtualScrool", showHeader: "showHeader", showFlags: "showFlags", dependencies: "dependencies", limitScrollPage: "limitScrollPage", forceSelection: "forceSelection", showFlagsOptions: "showFlagsOptions" }, outputs: { onChange: "onChange", onClosePanel: "onClosePanel" }, ngImport: i0, template: "<div class=\"multiselect-field-input-container\">\n <p-multiSelect\n *ngIf=\"!filterVirtualScrool\"\n #multiselect\n appendTo=\"body\"\n optionLabel=\"name\"\n optionValue=\"code\"\n dropdownIcon=\"fas fa-sort-down\"\n selectedItemsLabel=\"Selecionar todos\"\n [panelStyleClass]=\"filter ? 'has-filter' : ''\"\n [options]=\"options\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [filter]=\"filter\"\n [maxSelectedLabels]=\"options.length - 1\"\n [showToggleAll]=\"showSelectAllOption\"\n [dropdownIcon]=\"'pi pi-chevron-down'\"\n [display]=\"display\"\n (onChange)=\"onChange.emit($event)\"\n (onPanelHide)=\"onClosePanel.emit($event)\"\n (onPanelShow)=\"customFormattingMultiSelectFieldWithFlags()\"\n (onFilter)=\"onFilterChange($event)\"\n [disabled]=\"disabled\"\n [showHeader]=\"showHeader\"\n >\n <ng-container *ngIf=\"showFlags\">\n <ng-template let-option pTemplate=\"item\">\n <div class=\"grid-nogutter w-full flex\">\n <div\n class=\"md:col-6 sm:col-12 align-content-center\"\n [ngClass]=\"option.align === 'center' ? 'md:text-center' : 'md:text-left'\"\n >\n <img\n *ngIf=\"option.type == 'img'\"\n [src]=\"option.imgSource\"\n [ngClass]=\"option.imgClass\"\n [style]=\"{ height: option.imgSize + 'px' }\"\n />\n <i\n *ngIf=\"option.type == 'icon'\"\n [className]=\"option.iconSource\"\n [ngClass]=\"option.iconClass\"\n [style]=\"{ 'font-size': option.iconSize }\"\n ></i>\n </div>\n\n <div *ngIf=\"option.showDescriptionOnRight\" class=\"col-6 hidden md:block align-content-center\">\n <span class=\"block\">{{ option.name }}</span>\n </div>\n </div>\n </ng-template>\n </ng-container>\n </p-multiSelect>\n\n <p-multiSelect\n *ngIf=\"filterVirtualScrool\"\n #multiselect\n appendTo=\"body\"\n optionLabel=\"name\"\n optionValue=\"code\"\n dropdownIcon=\"fas fa-sort-down\"\n selectedItemsLabel=\"Selecionar todos\"\n [panelStyleClass]=\"filter ? 'has-filter' : ''\"\n [options]=\"options\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [filter]=\"filter\"\n [maxSelectedLabels]=\"options.length - 1\"\n [showHeader]=\"true\"\n [showToggleAll]=\"showSelectAllOption\"\n [dropdownIcon]=\"'pi pi-chevron-down'\"\n [display]=\"display\"\n (onChange)=\"onChange.emit($event)\"\n (onFilter)=\"search($event)\"\n (onPanelShow)=\"onOpenAutocompletePanel()\"\n (onPanelHide)=\"onHideAutocompletePanel()\"\n [disabled]=\"disabled\"\n >\n </p-multiSelect>\n <span class=\"input-error\">{{ fieldErrorLabel() }}</span>\n</div>\n", styles: [".multiselect-field-input-container .input-error{font-size:.7em;color:var(--error-color)}.multiselect-field-input-container div.p-multiselect-token{padding:auto 1em!important;background:#eff0f6!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4$2.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "fluid", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "size", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }] }); }
|
|
3373
3376
|
}
|
|
3374
3377
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: MultiselectFieldComponent, decorators: [{
|
|
3375
3378
|
type: Component,
|
|
3376
|
-
args: [{ standalone: false, selector: 'vector-multiselect-field', template: "<div class=\"multiselect-field-input-container\">\
|
|
3379
|
+
args: [{ standalone: false, selector: 'vector-multiselect-field', template: "<div class=\"multiselect-field-input-container\">\n <p-multiSelect\n *ngIf=\"!filterVirtualScrool\"\n #multiselect\n appendTo=\"body\"\n optionLabel=\"name\"\n optionValue=\"code\"\n dropdownIcon=\"fas fa-sort-down\"\n selectedItemsLabel=\"Selecionar todos\"\n [panelStyleClass]=\"filter ? 'has-filter' : ''\"\n [options]=\"options\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [filter]=\"filter\"\n [maxSelectedLabels]=\"options.length - 1\"\n [showToggleAll]=\"showSelectAllOption\"\n [dropdownIcon]=\"'pi pi-chevron-down'\"\n [display]=\"display\"\n (onChange)=\"onChange.emit($event)\"\n (onPanelHide)=\"onClosePanel.emit($event)\"\n (onPanelShow)=\"customFormattingMultiSelectFieldWithFlags()\"\n (onFilter)=\"onFilterChange($event)\"\n [disabled]=\"disabled\"\n [showHeader]=\"showHeader\"\n >\n <ng-container *ngIf=\"showFlags\">\n <ng-template let-option pTemplate=\"item\">\n <div class=\"grid-nogutter w-full flex\">\n <div\n class=\"md:col-6 sm:col-12 align-content-center\"\n [ngClass]=\"option.align === 'center' ? 'md:text-center' : 'md:text-left'\"\n >\n <img\n *ngIf=\"option.type == 'img'\"\n [src]=\"option.imgSource\"\n [ngClass]=\"option.imgClass\"\n [style]=\"{ height: option.imgSize + 'px' }\"\n />\n <i\n *ngIf=\"option.type == 'icon'\"\n [className]=\"option.iconSource\"\n [ngClass]=\"option.iconClass\"\n [style]=\"{ 'font-size': option.iconSize }\"\n ></i>\n </div>\n\n <div *ngIf=\"option.showDescriptionOnRight\" class=\"col-6 hidden md:block align-content-center\">\n <span class=\"block\">{{ option.name }}</span>\n </div>\n </div>\n </ng-template>\n </ng-container>\n </p-multiSelect>\n\n <p-multiSelect\n *ngIf=\"filterVirtualScrool\"\n #multiselect\n appendTo=\"body\"\n optionLabel=\"name\"\n optionValue=\"code\"\n dropdownIcon=\"fas fa-sort-down\"\n selectedItemsLabel=\"Selecionar todos\"\n [panelStyleClass]=\"filter ? 'has-filter' : ''\"\n [options]=\"options\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [filter]=\"filter\"\n [maxSelectedLabels]=\"options.length - 1\"\n [showHeader]=\"true\"\n [showToggleAll]=\"showSelectAllOption\"\n [dropdownIcon]=\"'pi pi-chevron-down'\"\n [display]=\"display\"\n (onChange)=\"onChange.emit($event)\"\n (onFilter)=\"search($event)\"\n (onPanelShow)=\"onOpenAutocompletePanel()\"\n (onPanelHide)=\"onHideAutocompletePanel()\"\n [disabled]=\"disabled\"\n >\n </p-multiSelect>\n <span class=\"input-error\">{{ fieldErrorLabel() }}</span>\n</div>\n", styles: [".multiselect-field-input-container .input-error{font-size:.7em;color:var(--error-color)}.multiselect-field-input-container div.p-multiselect-token{padding:auto 1em!important;background:#eff0f6!important}\n"] }]
|
|
3377
3380
|
}], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { pagedSugestion: [{
|
|
3378
3381
|
type: Input
|
|
3379
3382
|
}], isRequired: [{
|
|
@@ -3672,11 +3675,11 @@ class DropdownFieldComponent {
|
|
|
3672
3675
|
return dv1 === digits[12] && dv2 === digits[13];
|
|
3673
3676
|
}
|
|
3674
3677
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DropdownFieldComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3675
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: DropdownFieldComponent, isStandalone: false, selector: "vector-dropdown-field", inputs: { options: "options", isNgContent: "isNgContent", forceSelection: "forceSelection", isRequired: "isRequired", control: "control", label: "label", service: "service", paged: "paged", buttonAction: "buttonAction", dependencies: "dependencies", hiddenErrorMessage: "hiddenErrorMessage", dynamicFilters: "dynamicFilters", minLengthToService: "minLengthToService", initialLoad: "initialLoad", disabled: "disabled", limitScrollPage: "limitScrollPage", inputId: "inputId" }, outputs: { onFocus: "onFocus", onChange: "onChange" }, ngImport: i0, template: "<div class=\"relative\">\
|
|
3678
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: DropdownFieldComponent, isStandalone: false, selector: "vector-dropdown-field", inputs: { options: "options", isNgContent: "isNgContent", forceSelection: "forceSelection", isRequired: "isRequired", control: "control", label: "label", service: "service", paged: "paged", buttonAction: "buttonAction", dependencies: "dependencies", hiddenErrorMessage: "hiddenErrorMessage", dynamicFilters: "dynamicFilters", minLengthToService: "minLengthToService", initialLoad: "initialLoad", disabled: "disabled", limitScrollPage: "limitScrollPage", inputId: "inputId" }, outputs: { onFocus: "onFocus", onChange: "onChange" }, ngImport: i0, template: "<div class=\"relative\">\n <div class=\"input-container\">\n <div class=\"input-inner-container\" *ngIf=\"!isNgContent\">\n <p-select\n *ngIf=\"dynamicFilters\"\n appendTo=\"body\"\n optionLabel=\"name\"\n optionValue=\"code\"\n [(ngModel)]=\"selectedDynamicFilter\"\n [options]=\"dynamicFilters\"\n [disabled]=\"disabled\"\n [inputId]=\"inputId\"\n >\n </p-select>\n <p-autoComplete\n appendTo=\"body\"\n field=\"name\"\n [forceSelection]=\"forceSelection\"\n [dropdown]=\"true\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [suggestions]=\"pagedSuggestions\"\n [dropdownIcon]=\"dynamicFilters ? 'pi pi-search' : 'pi pi-chevron-down'\"\n [delay]=\"800\"\n (completeMethod)=\"search($event)\"\n (onShow)=\"onOpenAutocompletePanel()\"\n (onHide)=\"onHideAutocompletePanel()\"\n (onFocus)=\"onFocus.emit($event)\"\n (onChange)=\"onChange.emit($event)\"\n [disabled]=\"disabled\"\n [inputId]=\"inputId\"\n >\n </p-autoComplete>\n </div>\n\n <div class=\"input-inner-container\" *ngIf=\"isNgContent\">\n <p-autoComplete\n appendTo=\"body\"\n field=\"name\"\n [forceSelection]=\"forceSelection\"\n [dropdown]=\"true\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [suggestions]=\"pagedSuggestions\"\n [dropdownIcon]=\"dynamicFilters ? 'pi pi-search' : 'pi pi-chevron-down'\"\n [delay]=\"800\"\n (completeMethod)=\"search($event)\"\n (onShow)=\"onOpenAutocompletePanel()\"\n (onHide)=\"onHideAutocompletePanel()\"\n (onFocus)=\"onFocus.emit($event)\"\n (onChange)=\"onChange.emit($event)\"\n [disabled]=\"disabled\"\n [inputId]=\"inputId\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"option-content\">\n <span class=\"option-label\">{{ option.name }}</span>\n <br />\n <span class=\"option-sublabel\">{{ option.code }}</span>\n </div>\n </ng-template>\n </p-autoComplete>\n </div>\n\n <vector-button\n *ngIf=\"buttonAction\"\n [label]=\"buttonAction.label\"\n [disabled]=\"disabled\"\n (onClick)=\"buttonAction.onClick(control.value)\"\n ></vector-button>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</div>\n", styles: [".input-container{display:flex;align-items:flex-end;width:100%}@media(max-width:575px){.input-container{align-items:flex-start;flex-direction:column}}.input-container p-autoComplete{flex:1}@media(max-width:575px){.input-container p-autoComplete{width:100%}}.input-container vector-button{margin-left:15px}@media(max-width:575px){.input-container vector-button{margin-left:0;margin-top:10px;width:100%}}.input-container p-select{margin-right:-5px;width:150px}@media(max-width:575px){.input-container p-select{width:100px}}.input-container .input-inner-container{display:flex;width:100%}.p-select-overlay,.p-autocomplete-panel,.p-multiselect-panel{max-width:100%!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4$3.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "size", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "fluid", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i5$1.AutoComplete, selector: "p-autoComplete, p-autocomplete, p-auto-complete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "typeahead", "variant", "fluid"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "component", type: FieldErrorMessageComponent, selector: "vector-field-error-message", inputs: ["control"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
3676
3679
|
}
|
|
3677
3680
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DropdownFieldComponent, decorators: [{
|
|
3678
3681
|
type: Component,
|
|
3679
|
-
args: [{ standalone: false, selector: 'vector-dropdown-field', encapsulation: ViewEncapsulation.None, template: "<div class=\"relative\">\
|
|
3682
|
+
args: [{ standalone: false, selector: 'vector-dropdown-field', encapsulation: ViewEncapsulation.None, template: "<div class=\"relative\">\n <div class=\"input-container\">\n <div class=\"input-inner-container\" *ngIf=\"!isNgContent\">\n <p-select\n *ngIf=\"dynamicFilters\"\n appendTo=\"body\"\n optionLabel=\"name\"\n optionValue=\"code\"\n [(ngModel)]=\"selectedDynamicFilter\"\n [options]=\"dynamicFilters\"\n [disabled]=\"disabled\"\n [inputId]=\"inputId\"\n >\n </p-select>\n <p-autoComplete\n appendTo=\"body\"\n field=\"name\"\n [forceSelection]=\"forceSelection\"\n [dropdown]=\"true\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [suggestions]=\"pagedSuggestions\"\n [dropdownIcon]=\"dynamicFilters ? 'pi pi-search' : 'pi pi-chevron-down'\"\n [delay]=\"800\"\n (completeMethod)=\"search($event)\"\n (onShow)=\"onOpenAutocompletePanel()\"\n (onHide)=\"onHideAutocompletePanel()\"\n (onFocus)=\"onFocus.emit($event)\"\n (onChange)=\"onChange.emit($event)\"\n [disabled]=\"disabled\"\n [inputId]=\"inputId\"\n >\n </p-autoComplete>\n </div>\n\n <div class=\"input-inner-container\" *ngIf=\"isNgContent\">\n <p-autoComplete\n appendTo=\"body\"\n field=\"name\"\n [forceSelection]=\"forceSelection\"\n [dropdown]=\"true\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [suggestions]=\"pagedSuggestions\"\n [dropdownIcon]=\"dynamicFilters ? 'pi pi-search' : 'pi pi-chevron-down'\"\n [delay]=\"800\"\n (completeMethod)=\"search($event)\"\n (onShow)=\"onOpenAutocompletePanel()\"\n (onHide)=\"onHideAutocompletePanel()\"\n (onFocus)=\"onFocus.emit($event)\"\n (onChange)=\"onChange.emit($event)\"\n [disabled]=\"disabled\"\n [inputId]=\"inputId\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"option-content\">\n <span class=\"option-label\">{{ option.name }}</span>\n <br />\n <span class=\"option-sublabel\">{{ option.code }}</span>\n </div>\n </ng-template>\n </p-autoComplete>\n </div>\n\n <vector-button\n *ngIf=\"buttonAction\"\n [label]=\"buttonAction.label\"\n [disabled]=\"disabled\"\n (onClick)=\"buttonAction.onClick(control.value)\"\n ></vector-button>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</div>\n", styles: [".input-container{display:flex;align-items:flex-end;width:100%}@media(max-width:575px){.input-container{align-items:flex-start;flex-direction:column}}.input-container p-autoComplete{flex:1}@media(max-width:575px){.input-container p-autoComplete{width:100%}}.input-container vector-button{margin-left:15px}@media(max-width:575px){.input-container vector-button{margin-left:0;margin-top:10px;width:100%}}.input-container p-select{margin-right:-5px;width:150px}@media(max-width:575px){.input-container p-select{width:100px}}.input-container .input-inner-container{display:flex;width:100%}.p-select-overlay,.p-autocomplete-panel,.p-multiselect-panel{max-width:100%!important}\n"] }]
|
|
3680
3683
|
}], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { options: [{
|
|
3681
3684
|
type: Input
|
|
3682
3685
|
}], isNgContent: [{
|
|
@@ -3727,11 +3730,11 @@ class SelectButtonFieldComponent {
|
|
|
3727
3730
|
this.variant = 'primary';
|
|
3728
3731
|
}
|
|
3729
3732
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SelectButtonFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3730
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SelectButtonFieldComponent, isStandalone: false, selector: "vector-select-button-field", inputs: { options: "options", control: "control", disabled: "disabled", variant: "variant" }, host: { properties: { "class.is-secondary": "this.isSecondary" } }, ngImport: i0, template: "<div class=\"input-container p-input-icon-right\">\
|
|
3733
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SelectButtonFieldComponent, isStandalone: false, selector: "vector-select-button-field", inputs: { options: "options", control: "control", disabled: "disabled", variant: "variant" }, host: { properties: { "class.is-secondary": "this.isSecondary" } }, ngImport: i0, template: "<div class=\"input-container p-input-icon-right\">\n <p-selectButton\n [options]=\"options\"\n [formControl]=\"control\"\n optionLabel=\"name\"\n optionValue=\"code\"\n [disabled]=\"disabled\"\n ></p-selectButton>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2$4.SelectButton, selector: "p-selectButton, p-selectbutton, p-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "unselectable", "tabindex", "multiple", "allowEmpty", "style", "styleClass", "ariaLabelledBy", "size", "disabled", "dataKey", "autofocus"], outputs: ["onOptionClick", "onChange"] }] }); }
|
|
3731
3734
|
}
|
|
3732
3735
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SelectButtonFieldComponent, decorators: [{
|
|
3733
3736
|
type: Component,
|
|
3734
|
-
args: [{ standalone: false, selector: 'vector-select-button-field', template: "<div class=\"input-container p-input-icon-right\">\
|
|
3737
|
+
args: [{ standalone: false, selector: 'vector-select-button-field', template: "<div class=\"input-container p-input-icon-right\">\n <p-selectButton\n [options]=\"options\"\n [formControl]=\"control\"\n optionLabel=\"name\"\n optionValue=\"code\"\n [disabled]=\"disabled\"\n ></p-selectButton>\n</div>\n" }]
|
|
3735
3738
|
}], ctorParameters: () => [], propDecorators: { options: [{
|
|
3736
3739
|
type: Input
|
|
3737
3740
|
}], control: [{
|
|
@@ -3926,11 +3929,11 @@ class FiltersComponent {
|
|
|
3926
3929
|
return validators;
|
|
3927
3930
|
}
|
|
3928
3931
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FiltersComponent, deps: [{ token: i1$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3929
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: FiltersComponent, isStandalone: false, selector: "vector-filters", inputs: { fields: "fields" }, outputs: { onSearch: "onSearch", formBuilded: "formBuilded" }, ngImport: i0, template: "<div class=\"grid filter-container\" [ngClass]=\"{ 'display-none': hideFilters }\" [formGroup]=\"formGroup\">\
|
|
3932
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: FiltersComponent, isStandalone: false, selector: "vector-filters", inputs: { fields: "fields" }, outputs: { onSearch: "onSearch", formBuilded: "formBuilded" }, ngImport: i0, template: "<div class=\"grid filter-container\" [ngClass]=\"{ 'display-none': hideFilters }\" [formGroup]=\"formGroup\">\n <div *ngFor=\"let field of fields | notHidden\" class=\"field col-12 sm:col-8 {{ getGridClass(field) }}\">\n <label\n >{{ field.label }}\n <i\n *ngIf=\"field.tooltip\"\n class=\"fas fa-info-circle mt-1 pl-2 ch\"\n pTooltip=\"{{ field.tooltip }}\"\n tooltipPosition=\"bottom\"\n ></i\n ></label>\n <vector-text-field\n *ngIf=\"isTextFieldType(field)\"\n [control]=\"formGroup.get(field.name)\"\n [mask]=\"field.mask\"\n [label]=\"field.placeholder\"\n [isRequired]=\"field.required\"\n [numeric]=\"field.type === fieldTypes.NUMBER\"\n [class]=\"field.class\"\n ></vector-text-field>\n <vector-dropdown-field\n *ngIf=\"[fieldTypes.DYNAMIC_DROPDOWN, fieldTypes.DROPDOWN].includes(field.type)\"\n [dynamicFilters]=\"field.filterTypes\"\n [disabled]=\"field.disabled\"\n [options]=\"field.options || []\"\n [service]=\"field.service\"\n [isRequired]=\"field.required\"\n [minLengthToService]=\"field.minLengthToService || 0\"\n [control]=\"formGroup.get(field.name)\"\n [paged]=\"false\"\n [dependencies]=\"getFieldDependencies(field)\"\n [initialLoad]=\"field.initiateValue\"\n [limitScrollPage]=\"field.limitScrollPage\"\n ></vector-dropdown-field>\n <vector-currency-field\n *ngIf=\"field.type === fieldTypes.CURRENCY\"\n [control]=\"formGroup.get(field.name)\"\n [outlined]=\"true\"\n [disabled]=\"field.disabled\"\n ></vector-currency-field>\n <vector-calendar-field\n *ngIf=\"field.type === fieldTypes.DATE\"\n [control]=\"formGroup.get(field.name)\"\n [isRequired]=\"field.required\"\n [label]=\"field.placeholder || ''\"\n [disabled]=\"field.disabled\"\n [min]=\"field.dateMin\"\n [max]=\"field.dateMax\"\n ></vector-calendar-field>\n <vector-select-button-field\n *ngIf=\"field.type === fieldTypes.SELECT_BUTTON\"\n [control]=\"formGroup.get(field.name)\"\n [options]=\"field.options\"\n (click)=\"search()\"\n [disabled]=\"field.disabled\"\n >\n </vector-select-button-field>\n <div *ngIf=\"field.type === fieldTypes.DATE_RANGE\" class=\"range-date-container\">\n <vector-calendar-field\n [control]=\"formGroup.get(field.name + '.startDate')\"\n [isRequired]=\"field.required\"\n [label]=\"field.placeholder || ''\"\n [disabled]=\"field.disabled\"\n [min]=\"field.dateMin\"\n ></vector-calendar-field>\n At\u00E9\n <vector-calendar-field\n [control]=\"formGroup.get(field.name + '.endDate')\"\n [isRequired]=\"field.required\"\n [label]=\"field.placeholder || ''\"\n [disabled]=\"field.disabled\"\n [max]=\"field.dateMax\"\n ></vector-calendar-field>\n </div>\n <vector-multiselect-field\n *ngIf=\"field.type === fieldTypes.MULTISELECT\"\n [control]=\"formGroup.get(field.name)\"\n [options]=\"field.options || []\"\n [disabled]=\"field.disabled\"\n >\n </vector-multiselect-field>\n </div>\n <div class=\"search-button sm:col-4\">\n <vector-button\n [label]=\"'app.label.search' | translate\"\n (click)=\"search()\"\n [disabled]=\"!formGroup.valid\"\n [round]=\"true\"\n type=\"default-filled\"\n ></vector-button>\n </div>\n</div>\n", styles: [".filter-container{align-items:center}.filter-container .field{display:flex;flex-direction:column}.filter-container .search-button{flex:1;padding-right:7px;display:flex;justify-content:flex-end}@media(min-width:768px){.filter-container .search-button{padding-top:36px}}.filter-container .range-date-container{display:flex;align-items:center;gap:10px}.display-none{display:none!important}\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: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i1$5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: TextFieldComponent, selector: "vector-text-field", inputs: ["isRequired", "label", "maxlength", "isPassword", "numeric", "numericPositive", "numericDotComma", "decimal", "onlyText", "noSpecialCharacters", "alphaNumeric", "alphaNumericAndWhitespace", "mask", "autoClear", "readonly", "rightIcon", "centered", "_enableDocumentTypeChoice", "enableDocumentTypeChoice", "hiddenErrorMessage", "leftLabel", "control", "inputId", "slotChar", "disabled", "pattern"], outputs: ["blurEvent", "inputEvent", "enterKeyPress", "backSpaceKeyPress", "focusEvent", "onDocumentTypeChange"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "component", type: CalendarComponent, selector: "vector-calendar-field", inputs: ["isRequired", "control", "label", "showCalendarOnFocus", "min", "max", "disabledDates", "disabled", "defaultDate", "hiddenErrorMessage", "showTime", "showSeconds", "stepMinute", "stepHour", "stepSecond", "timeOnly", "hourFormat"], outputs: ["onFocus", "onBlur", "onInput", "onSelect"] }, { kind: "component", type: MultiselectFieldComponent, selector: "vector-multiselect-field", inputs: ["pagedSugestion", "isRequired", "control", "label", "options", "filter", "showSelectAllOption", "display", "paged", "disabled", "minLengthToService", "initialLoad", "service", "filterVirtualScrool", "showHeader", "showFlags", "dependencies", "limitScrollPage", "forceSelection", "showFlagsOptions"], outputs: ["onChange", "onClosePanel"] }, { kind: "component", type: DropdownFieldComponent, selector: "vector-dropdown-field", inputs: ["options", "isNgContent", "forceSelection", "isRequired", "control", "label", "service", "paged", "buttonAction", "dependencies", "hiddenErrorMessage", "dynamicFilters", "minLengthToService", "initialLoad", "disabled", "limitScrollPage", "inputId"], outputs: ["onFocus", "onChange"] }, { kind: "component", type: CurrencyFieldComponent, selector: "vector-currency-field", inputs: ["minValue", "maxValue", "placeholder", "numberOfDecimals", "control", "outlined", "rounded", "label", "isBankingField", "inputClassName", "localePrefix", "currencyPrefix", "disabled", "centered", "inputId"], outputs: ["onBlur"] }, { kind: "component", type: SelectButtonFieldComponent, selector: "vector-select-button-field", inputs: ["options", "control", "disabled", "variant"] }, { kind: "pipe", type: NotHiddenPipe, name: "notHidden" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
3930
3933
|
}
|
|
3931
3934
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FiltersComponent, decorators: [{
|
|
3932
3935
|
type: Component,
|
|
3933
|
-
args: [{ standalone: false, selector: 'vector-filters', template: "<div class=\"grid filter-container\" [ngClass]=\"{ 'display-none': hideFilters }\" [formGroup]=\"formGroup\">\
|
|
3936
|
+
args: [{ standalone: false, selector: 'vector-filters', template: "<div class=\"grid filter-container\" [ngClass]=\"{ 'display-none': hideFilters }\" [formGroup]=\"formGroup\">\n <div *ngFor=\"let field of fields | notHidden\" class=\"field col-12 sm:col-8 {{ getGridClass(field) }}\">\n <label\n >{{ field.label }}\n <i\n *ngIf=\"field.tooltip\"\n class=\"fas fa-info-circle mt-1 pl-2 ch\"\n pTooltip=\"{{ field.tooltip }}\"\n tooltipPosition=\"bottom\"\n ></i\n ></label>\n <vector-text-field\n *ngIf=\"isTextFieldType(field)\"\n [control]=\"formGroup.get(field.name)\"\n [mask]=\"field.mask\"\n [label]=\"field.placeholder\"\n [isRequired]=\"field.required\"\n [numeric]=\"field.type === fieldTypes.NUMBER\"\n [class]=\"field.class\"\n ></vector-text-field>\n <vector-dropdown-field\n *ngIf=\"[fieldTypes.DYNAMIC_DROPDOWN, fieldTypes.DROPDOWN].includes(field.type)\"\n [dynamicFilters]=\"field.filterTypes\"\n [disabled]=\"field.disabled\"\n [options]=\"field.options || []\"\n [service]=\"field.service\"\n [isRequired]=\"field.required\"\n [minLengthToService]=\"field.minLengthToService || 0\"\n [control]=\"formGroup.get(field.name)\"\n [paged]=\"false\"\n [dependencies]=\"getFieldDependencies(field)\"\n [initialLoad]=\"field.initiateValue\"\n [limitScrollPage]=\"field.limitScrollPage\"\n ></vector-dropdown-field>\n <vector-currency-field\n *ngIf=\"field.type === fieldTypes.CURRENCY\"\n [control]=\"formGroup.get(field.name)\"\n [outlined]=\"true\"\n [disabled]=\"field.disabled\"\n ></vector-currency-field>\n <vector-calendar-field\n *ngIf=\"field.type === fieldTypes.DATE\"\n [control]=\"formGroup.get(field.name)\"\n [isRequired]=\"field.required\"\n [label]=\"field.placeholder || ''\"\n [disabled]=\"field.disabled\"\n [min]=\"field.dateMin\"\n [max]=\"field.dateMax\"\n ></vector-calendar-field>\n <vector-select-button-field\n *ngIf=\"field.type === fieldTypes.SELECT_BUTTON\"\n [control]=\"formGroup.get(field.name)\"\n [options]=\"field.options\"\n (click)=\"search()\"\n [disabled]=\"field.disabled\"\n >\n </vector-select-button-field>\n <div *ngIf=\"field.type === fieldTypes.DATE_RANGE\" class=\"range-date-container\">\n <vector-calendar-field\n [control]=\"formGroup.get(field.name + '.startDate')\"\n [isRequired]=\"field.required\"\n [label]=\"field.placeholder || ''\"\n [disabled]=\"field.disabled\"\n [min]=\"field.dateMin\"\n ></vector-calendar-field>\n At\u00E9\n <vector-calendar-field\n [control]=\"formGroup.get(field.name + '.endDate')\"\n [isRequired]=\"field.required\"\n [label]=\"field.placeholder || ''\"\n [disabled]=\"field.disabled\"\n [max]=\"field.dateMax\"\n ></vector-calendar-field>\n </div>\n <vector-multiselect-field\n *ngIf=\"field.type === fieldTypes.MULTISELECT\"\n [control]=\"formGroup.get(field.name)\"\n [options]=\"field.options || []\"\n [disabled]=\"field.disabled\"\n >\n </vector-multiselect-field>\n </div>\n <div class=\"search-button sm:col-4\">\n <vector-button\n [label]=\"'app.label.search' | translate\"\n (click)=\"search()\"\n [disabled]=\"!formGroup.valid\"\n [round]=\"true\"\n type=\"default-filled\"\n ></vector-button>\n </div>\n</div>\n", styles: [".filter-container{align-items:center}.filter-container .field{display:flex;flex-direction:column}.filter-container .search-button{flex:1;padding-right:7px;display:flex;justify-content:flex-end}@media(min-width:768px){.filter-container .search-button{padding-top:36px}}.filter-container .range-date-container{display:flex;align-items:center;gap:10px}.display-none{display:none!important}\n"] }]
|
|
3934
3937
|
}], ctorParameters: () => [{ type: i1$1.ActivatedRoute }], propDecorators: { fields: [{
|
|
3935
3938
|
type: Input
|
|
3936
3939
|
}], onSearch: [{
|
|
@@ -4303,11 +4306,11 @@ class DataTableComponent {
|
|
|
4303
4306
|
return active ? 'success' : 'error';
|
|
4304
4307
|
}
|
|
4305
4308
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DataTableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4306
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: DataTableComponent, isStandalone: false, selector: "vector-data-table", inputs: { columns: "columns", data: "data", exportExcel: "exportExcel", exportPDF: "exportPDF", customFunction: "customFunction", totalRecords: "totalRecords", disabledHeadercheckbox: "disabledHeadercheckbox", filters: "filters", addItemLabel: "addItemLabel", pagination: "pagination", virtualPagination: "virtualPagination", tabs: "tabs", customButtons: "customButtons", addItemButtonPlusSign: "addItemButtonPlusSign", hasActions: "hasActions", hasExpandableIcon: "hasExpandableIcon", addNameColumnExpand: "addNameColumnExpand", expandable: "expandable", expansionTemplate: "expansionTemplate", selectionMode: "selectionMode", selectionType: "selectionType", height: "height", showLimitBalance: "showLimitBalance", showDataBalance: "showDataBalance", dataAccountBalance: "dataAccountBalance", firstLazyLoad: "firstLazyLoad", shouldLazyLoadWithoutFilter: "shouldLazyLoadWithoutFilter", reorderableColumns: "reorderableColumns", disableInitialSearch: "disableInitialSearch" }, outputs: { onLazyLoad: "onLazyLoad", onFilter: "onFilter", onAdd: "onAdd", onExportExcel: "onExportExcel", onExportPDF: "onExportPDF", onSelectedRows: "onSelectedRows", onFilterChanged: "onFilterChanged", onTabSelected: "onTabSelected", onExpandRow: "onExpandRow", onCellEdit: "onCellEdit" }, viewQueries: [{ propertyName: "filtersComponent", first: true, predicate: FiltersComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <vector-filters\r\n [fields]=\"filters\"\r\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\r\n (formBuilded)=\"subscribeToFilterChanges()\"\r\n ></vector-filters>\r\n </div>\r\n <div\r\n class=\"table-header-actions field\"\r\n *ngIf=\"addItemLabel || exportExcel || exportPDF || customFunction || customButtons\"\r\n >\r\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\r\n <i class=\"fas fa-file-excel\"></i><span>Excel</span>\r\n </button>\r\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\r\n <i class=\"fas fa-file-pdf\"></i><span>PDF</span>\r\n </button>\r\n <button\r\n *ngFor=\"let button of customFunction\"\r\n (click)=\"button.clickFunction()\"\r\n class=\"export-button custom-function\"\r\n >\r\n <i *ngIf=\"button?.icon\" class=\"{{ button?.icon }}\"></i><span>{{ button?.label }}</span>\r\n </button>\r\n\r\n <vector-button\r\n *ngFor=\"let button of customButtons\"\r\n class=\"add-item-button\"\r\n [round]=\"true\"\r\n [label]=\"button.label\"\r\n (click)=\"button.clickFunction()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n [disabled]=\"button.disabled === true\"\r\n ></vector-button>\r\n <vector-button\r\n *ngIf=\"addItemLabel\"\r\n class=\"add-item-button\"\r\n [label]=\"addItemLabel\"\r\n (click)=\"onAdd.emit()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n [round]=\"true\"\r\n ></vector-button>\r\n </div>\r\n @if (showLimitBalance) {\r\n <div class=\"col-12 grid ml-0\">\r\n @for (itemAccount of dataAccountBalance; track $index) {\r\n @if (itemAccount.visible) {\r\n <div class=\"card balance-container\">\r\n <span class=\"card-header\">{{ itemAccount.name }}</span>\r\n <div class=\"card-content value-container\">\r\n <span>R$ </span>\r\n <span *ngIf=\"itemAccount.showBalance\" class=\"balance\">{{ balance(itemAccount) }}</span>\r\n <div class=\"hidden-balance\" *ngIf=\"!itemAccount.showBalance\"></div>\r\n <div class=\"icon-container\">\r\n <i\r\n class=\"fas\"\r\n [ngClass]=\"{ 'fa-eye': !itemAccount.showBalance, 'fa-eye-slash': itemAccount.showBalance }\"\r\n (click)=\"changeShowBalance(itemAccount)\"\r\n ></i>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n @if (showDataBalance) {\r\n <div class=\"col-12 grid ml-0\">\r\n @for (itemAccount of dataAccountBalance; track $index) {\r\n <div class=\"card balance-container\">\r\n <span class=\"card-header\">{{ itemAccount.name }}</span>\r\n <div class=\"card-content value-container\">\r\n <span class=\"balance\">{{ itemAccount.valueBalance }}</span>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <div class=\"col-12\">\r\n <vector-panel class=\"data-table-panel\">\r\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\r\n <p-tabPanel *ngFor=\"let tab of tabs\">\r\n <ng-template pTemplate=\"header\">\r\n <em *ngIf=\"tab.icon\" [class]=\"tab.icon\"> </em>\r\n <span>{{ tab.name }}</span>\r\n </ng-template>\r\n </p-tabPanel>\r\n </p-tabView>\r\n <p-table\r\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\r\n sortMode=\"single\"\r\n [rows]=\"10\"\r\n [lazy]=\"pagination && !virtualPagination\"\r\n [value]=\"data\"\r\n [paginator]=\"pagination\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\r\n [responsive]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [scrollable]=\"true\"\r\n scrollDirection=\"vertical\"\r\n responsiveLayout=\"scroll\"\r\n dataKey=\"id\"\r\n [scrollHeight]=\"height\"\r\n [selectionMode]=\"selectionType === 'checkbox' || selectionType === 'radiobutton' ? null : selectionMode\"\r\n [(selection)]=\"selectedItems\"\r\n (onRowSelect)=\"changeSelectedItems($event)\"\r\n (onHeaderCheckboxToggle)=\"changeSelectedItems($event)\"\r\n (onRowUnselect)=\"changeSelectedItems($event)\"\r\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\r\n (selectionChange)=\"onSelectionChange($event)\"\r\n [reorderableColumns]=\"reorderableColumns\"\r\n editMode=\"cell\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"header\">\r\n <th *ngIf=\"reorderableColumns\" style=\"width: 5rem\"></th>\r\n\r\n <th *ngIf=\"selectionType === 'checkbox'\">\r\n <p-tableHeaderCheckbox [disabled]=\"disabledHeadercheckbox\"></p-tableHeaderCheckbox>\r\n </th>\r\n <th class=\"px-1 w-max min-w-max white-space-nowrap text-center vertical-align-middle\" *ngIf=\"hasExpandableIcon\">\r\n {{ addNameColumnExpand }}\r\n </th>\r\n <th *ngIf=\"hasActions\">{{ 'app.label.actions' | translate }}</th>\r\n <th *ngIf=\"selectionType === 'radiobutton'\">\r\n <div class=\"flex align-items-center\">\r\n <span></span>\r\n </div>\r\n </th>\r\n @for (col of columns; track $index) {\r\n @if (!col.hidden) {\r\n <th\r\n [ngStyle]=\"getColStyle(col)\"\r\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\r\n pReorderableColumn\r\n >\r\n <div class=\"flex align-items-center\">\r\n <span>{{ col.header }}</span> <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n }\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-item let-expanded=\"expanded\" let-index=\"rowIndex\">\r\n <tr\r\n class=\"row\"\r\n [pSelectableRow]=\"rowData\"\r\n [ngClass]=\"{ expandable: expandable }\"\r\n [pRowToggler]=\"item\"\r\n [pRowTogglerDisabled]=\"!expandable\"\r\n (click)=\"onRowClick(item)\"\r\n [pReorderableRow]=\"index\"\r\n >\r\n <ng-container *ngIf=\"reorderableColumns\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"justify-content-center align-items-center\">\r\n <span class=\"pi pi-bars\" pReorderableRowHandle></span>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\r\n <td\r\n style=\"max-width: 3rem; padding-left: 10px\"\r\n class=\"justify-content-center align-items-center\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <p-tableCheckbox [value]=\"item\" [disabled]=\"item.disabledCheckBox\"></p-tableCheckbox>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\r\n <td\r\n style=\"max-width: 3rem; padding-left: 10px\"\r\n class=\"justify-content-center align-items-center\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\r\n </td>\r\n </ng-container>\r\n <td *ngIf=\"hasExpandableIcon\" class=\"px-1 w-auto text-center vertical-align-middle\">\r\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\r\n <i\r\n [ngClass]=\"\r\n expanded ? 'actions-menu-button pi pi-chevron-down' : 'actions-menu-button pi pi-chevron-right'\r\n \"\r\n ></i>\r\n </td>\r\n <td *ngIf=\"hasActions\">\r\n <p-menu\r\n #menu\r\n [model]=\"item.actions\"\r\n [popup]=\"true\"\r\n appendTo=\"body\"\r\n (onShow)=\"item._menuOpen = true; onActionsMenuShow(menu)\"\r\n (onHide)=\"item._menuOpen = false\"\r\n ></p-menu>\r\n <i\r\n class=\"actions-menu-button fas fa-cog\"\r\n [class.active]=\"item._menuOpen\"\r\n (click)=\"menu.toggle($event)\"\r\n ></i>\r\n </td>\r\n @for (col of columns; track $index) {\r\n @if (!col.hidden) {\r\n <ng-container>\r\n <td\r\n *ngIf=\"isEditableCell(col)\"\r\n class=\"cell\"\r\n [pEditableColumn]=\"item\"\r\n [pEditableColumnField]=\"col.field\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <p-cellEditor>\r\n <ng-template pTemplate=\"input\">\r\n <p-inputNumber\r\n *ngIf=\"!col.cellEdit?.editType || col.cellEdit?.editType === 'number'\"\r\n [(ngModel)]=\"item[col.field]\"\r\n [suffix]=\"col.cellEdit?.editSuffix || ''\"\r\n mode=\"decimal\"\r\n [maxFractionDigits]=\"col.cellEdit?.editMaxFractionDigits ?? 2\"\r\n [min]=\"col.cellEdit?.editMin ?? 0\"\r\n [max]=\"col.cellEdit?.editMax\"\r\n (onBlur)=\"onCellEditComplete(item, col, item[col.field])\"\r\n ></p-inputNumber>\r\n <input\r\n *ngIf=\"col.cellEdit?.editType === 'text'\"\r\n pInputText\r\n [(ngModel)]=\"item[col.field]\"\r\n (blur)=\"onCellEditComplete(item, col, item[col.field])\"\r\n />\r\n </ng-template>\r\n <ng-template pTemplate=\"output\">\r\n <span>{{ item[col.field] }}{{ col.cellEdit?.editSuffix || '' }}</span>\r\n <i class=\"pi pi-pencil ml-2 text-primary\"></i>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n <td\r\n *ngIf=\"isHtmlCell(col) && !col.cellEdit\"\r\n class=\"cell\"\r\n [innerHTML]=\"getCellContent(item, col)\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n ></td>\r\n <td\r\n *ngIf=\"(!isHtmlCell(col) && !!col.getStatus) || isScoreCell(col)\"\r\n class=\"cell\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <vector-badge\r\n *ngIf=\"isBadgeCell(col)\"\r\n [label]=\"getCellText(item, col)\"\r\n [type]=\"col.getStatus && col.getStatus(item[col.field])\"\r\n [tooltip]=\"getTooltipText(item, col)\"\r\n ></vector-badge>\r\n <vector-score *ngIf=\"isScoreCell(col)\" [score]=\"item[col.field]\"></vector-score>\r\n </td>\r\n </ng-container>\r\n }\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"row\">\r\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\r\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\r\n <ng-template pTemplate=\"expandedrow\" let-item>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + (hasActions ? 1 : 0)\">\r\n <ng-container *ngTemplateOutlet=\"expansionTemplate; context: { item }\"> </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </vector-panel>\r\n </div>\r\n</div>\r\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media(min-width:768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button.custom-function{background-color:var(--theme-primary)}.table-header-actions .export-button.custom-function:hover{background-color:var(--theme-medium)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium);padding:6px;border-radius:50%;transition:all .15s ease}.actions-menu-button:hover{background-color:#0000000d}.actions-menu-button:active{transform:scale(.92);background-color:#0000001a;color:var(--theme-dark)}.expandable{cursor:pointer}.balance-container{display:flex;flex-direction:column;min-width:13%;padding:0;margin-bottom:30px;top:30px;right:40px;border-radius:8px;margin-right:15px}.balance-container .header-right{flex:1;flex-direction:row;justify-content:flex-end;display:flex}@media screen and (max-width:1450px){.balance-container{width:40%}}@media screen and (max-width:960px){.balance-container{position:relative;width:80%;top:auto;right:auto}}.balance-container .card-header{color:var(--theme-medium);border-radius:9px 9px 0 0;padding:10px 10px 2px;font-weight:500;font-size:13px;line-height:17px;letter-spacing:.25px}.balance-container .value-container{display:flex;flex-direction:row;align-items:center;padding:0 10px 5px}.balance-container .value-container span{font-size:2em;font-weight:700;color:var(--theme-secondary)}@media screen and (max-width:640px){.balance-container .value-container span{font-size:1.6em}}.balance-container .value-container .balance{margin-left:8px;width:70%}.balance-container .value-container .hidden-balance{background-color:var(--gray-lighter);padding:15px;margin-left:8px;width:70%;height:100%}.balance-container .value-container .icon-container{display:flex;flex:1;justify-content:center;align-items:center}.balance-container .value-container .icon-container i{cursor:pointer;font-size:2em;padding-top:2px;color:var(--theme-medium)}:host ::ng-deep .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable-tbody>tr>td{text-align:center!important;vertical-align:middle!important}:host ::ng-deep .p-datatable-thead>tr>th>.flex,:host ::ng-deep .p-datatable-tbody>tr>td>.flex{justify-content:center!important}\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.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i2$2.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: PanelComponent, selector: "vector-panel" }, { kind: "component", type: i7.TabView, selector: "p-tabView, p-tabview", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i7.TabPanel, selector: "p-tabPanel, p-tabpanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "component", type: BadgeComponent, selector: "vector-badge", inputs: ["type", "label", "customColor", "customBackgroundColor", "tooltip"] }, { kind: "component", type: ScoreComponent, selector: "vector-score", inputs: ["score"] }, { kind: "component", type: i10.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "component", type: i11.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i11.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i11.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "directive", type: i11.RowToggler, selector: "[pRowToggler]", inputs: ["pRowToggler", "pRowTogglerDisabled"] }, { kind: "directive", type: i11.ReorderableColumn, selector: "[pReorderableColumn]", inputs: ["pReorderableColumnDisabled"] }, { kind: "directive", type: i11.EditableColumn, selector: "[pEditableColumn]", inputs: ["pEditableColumn", "pEditableColumnField", "pEditableColumnRowIndex", "pEditableColumnDisabled", "pFocusCellSelector"] }, { kind: "component", type: i11.CellEditor, selector: "p-cellEditor" }, { kind: "component", type: i11.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i11.TableRadioButton, selector: "p-tableRadioButton", inputs: ["value", "disabled", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i11.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i11.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "directive", type: i11.ReorderableRowHandle, selector: "[pReorderableRowHandle]" }, { kind: "directive", type: i11.ReorderableRow, selector: "[pReorderableRow]", inputs: ["pReorderableRow", "pReorderableRowDisabled"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "component", type: FiltersComponent, selector: "vector-filters", inputs: ["fields"], outputs: ["onSearch", "formBuilded"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
4309
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: DataTableComponent, isStandalone: false, selector: "vector-data-table", inputs: { columns: "columns", data: "data", exportExcel: "exportExcel", exportPDF: "exportPDF", customFunction: "customFunction", totalRecords: "totalRecords", disabledHeadercheckbox: "disabledHeadercheckbox", filters: "filters", addItemLabel: "addItemLabel", pagination: "pagination", virtualPagination: "virtualPagination", tabs: "tabs", customButtons: "customButtons", addItemButtonPlusSign: "addItemButtonPlusSign", hasActions: "hasActions", hasExpandableIcon: "hasExpandableIcon", addNameColumnExpand: "addNameColumnExpand", expandable: "expandable", expansionTemplate: "expansionTemplate", selectionMode: "selectionMode", selectionType: "selectionType", height: "height", showLimitBalance: "showLimitBalance", showDataBalance: "showDataBalance", dataAccountBalance: "dataAccountBalance", firstLazyLoad: "firstLazyLoad", shouldLazyLoadWithoutFilter: "shouldLazyLoadWithoutFilter", reorderableColumns: "reorderableColumns", disableInitialSearch: "disableInitialSearch" }, outputs: { onLazyLoad: "onLazyLoad", onFilter: "onFilter", onAdd: "onAdd", onExportExcel: "onExportExcel", onExportPDF: "onExportPDF", onSelectedRows: "onSelectedRows", onFilterChanged: "onFilterChanged", onTabSelected: "onTabSelected", onExpandRow: "onExpandRow", onCellEdit: "onCellEdit" }, viewQueries: [{ propertyName: "filtersComponent", first: true, predicate: FiltersComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"grid\">\n <div class=\"col-12\">\n <vector-filters\n [fields]=\"filters\"\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\n (formBuilded)=\"subscribeToFilterChanges()\"\n ></vector-filters>\n </div>\n <div\n class=\"table-header-actions field\"\n *ngIf=\"addItemLabel || exportExcel || exportPDF || customFunction || customButtons\"\n >\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\n <i class=\"fas fa-file-excel\"></i><span>Excel</span>\n </button>\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\n <i class=\"fas fa-file-pdf\"></i><span>PDF</span>\n </button>\n <button\n *ngFor=\"let button of customFunction\"\n (click)=\"button.clickFunction()\"\n class=\"export-button custom-function\"\n >\n <i *ngIf=\"button?.icon\" class=\"{{ button?.icon }}\"></i><span>{{ button?.label }}</span>\n </button>\n\n <vector-button\n *ngFor=\"let button of customButtons\"\n class=\"add-item-button\"\n [round]=\"true\"\n [label]=\"button.label\"\n (click)=\"button.clickFunction()\"\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\n [disabled]=\"button.disabled === true\"\n ></vector-button>\n <vector-button\n *ngIf=\"addItemLabel\"\n class=\"add-item-button\"\n [label]=\"addItemLabel\"\n (click)=\"onAdd.emit()\"\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\n [round]=\"true\"\n ></vector-button>\n </div>\n @if (showLimitBalance) {\n <div class=\"col-12 grid ml-0\">\n @for (itemAccount of dataAccountBalance; track $index) {\n @if (itemAccount.visible) {\n <div class=\"card balance-container\">\n <span class=\"card-header\">{{ itemAccount.name }}</span>\n <div class=\"card-content value-container\">\n <span>R$ </span>\n <span *ngIf=\"itemAccount.showBalance\" class=\"balance\">{{ balance(itemAccount) }}</span>\n <div class=\"hidden-balance\" *ngIf=\"!itemAccount.showBalance\"></div>\n <div class=\"icon-container\">\n <i\n class=\"fas\"\n [ngClass]=\"{ 'fa-eye': !itemAccount.showBalance, 'fa-eye-slash': itemAccount.showBalance }\"\n (click)=\"changeShowBalance(itemAccount)\"\n ></i>\n </div>\n </div>\n </div>\n }\n }\n </div>\n }\n @if (showDataBalance) {\n <div class=\"col-12 grid ml-0\">\n @for (itemAccount of dataAccountBalance; track $index) {\n <div class=\"card balance-container\">\n <span class=\"card-header\">{{ itemAccount.name }}</span>\n <div class=\"card-content value-container\">\n <span class=\"balance\">{{ itemAccount.valueBalance }}</span>\n </div>\n </div>\n }\n </div>\n }\n\n <div class=\"col-12\">\n <vector-panel class=\"data-table-panel\">\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\n <p-tabPanel *ngFor=\"let tab of tabs\">\n <ng-template pTemplate=\"header\">\n <em *ngIf=\"tab.icon\" [class]=\"tab.icon\"> </em>\n <span>{{ tab.name }}</span>\n </ng-template>\n </p-tabPanel>\n </p-tabView>\n <p-table\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\n sortMode=\"single\"\n [rows]=\"10\"\n [lazy]=\"pagination && !virtualPagination\"\n [value]=\"data\"\n [paginator]=\"pagination\"\n [totalRecords]=\"totalRecords\"\n [showCurrentPageReport]=\"true\"\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\n [responsive]=\"true\"\n [resizableColumns]=\"true\"\n [scrollable]=\"true\"\n scrollDirection=\"vertical\"\n responsiveLayout=\"scroll\"\n dataKey=\"id\"\n [scrollHeight]=\"height\"\n [selectionMode]=\"selectionType === 'checkbox' || selectionType === 'radiobutton' ? null : selectionMode\"\n [(selection)]=\"selectedItems\"\n (onRowSelect)=\"changeSelectedItems($event)\"\n (onHeaderCheckboxToggle)=\"changeSelectedItems($event)\"\n (onRowUnselect)=\"changeSelectedItems($event)\"\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\n (selectionChange)=\"onSelectionChange($event)\"\n [reorderableColumns]=\"reorderableColumns\"\n editMode=\"cell\"\n >\n <ng-template pTemplate=\"header\">\n <tr class=\"header\">\n <th *ngIf=\"reorderableColumns\" style=\"width: 5rem\"></th>\n\n <th *ngIf=\"selectionType === 'checkbox'\">\n <p-tableHeaderCheckbox [disabled]=\"disabledHeadercheckbox\"></p-tableHeaderCheckbox>\n </th>\n <th class=\"px-1 w-max min-w-max white-space-nowrap text-center vertical-align-middle\" *ngIf=\"hasExpandableIcon\">\n {{ addNameColumnExpand }}\n </th>\n <th *ngIf=\"hasActions\">{{ 'app.label.actions' | translate }}</th>\n <th *ngIf=\"selectionType === 'radiobutton'\">\n <div class=\"flex align-items-center\">\n <span></span>\n </div>\n </th>\n @for (col of columns; track $index) {\n @if (!col.hidden) {\n <th\n [ngStyle]=\"getColStyle(col)\"\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\n pReorderableColumn\n >\n <div class=\"flex align-items-center\">\n <span>{{ col.header }}</span> <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\n </div>\n </th>\n }\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-item let-expanded=\"expanded\" let-index=\"rowIndex\">\n <tr\n class=\"row\"\n [pSelectableRow]=\"rowData\"\n [ngClass]=\"{ expandable: expandable }\"\n [pRowToggler]=\"item\"\n [pRowTogglerDisabled]=\"!expandable\"\n (click)=\"onRowClick(item)\"\n [pReorderableRow]=\"index\"\n >\n <ng-container *ngIf=\"reorderableColumns\">\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"justify-content-center align-items-center\">\n <span class=\"pi pi-bars\" pReorderableRowHandle></span>\n </td>\n </ng-container>\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\n <td\n style=\"max-width: 3rem; padding-left: 10px\"\n class=\"justify-content-center align-items-center\"\n (click)=\"$event.stopPropagation()\"\n >\n <p-tableCheckbox [value]=\"item\" [disabled]=\"item.disabledCheckBox\"></p-tableCheckbox>\n </td>\n </ng-container>\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\n <td\n style=\"max-width: 3rem; padding-left: 10px\"\n class=\"justify-content-center align-items-center\"\n (click)=\"$event.stopPropagation()\"\n >\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\n </td>\n </ng-container>\n <td *ngIf=\"hasExpandableIcon\" class=\"px-1 w-auto text-center vertical-align-middle\">\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\n <i\n [ngClass]=\"\n expanded ? 'actions-menu-button pi pi-chevron-down' : 'actions-menu-button pi pi-chevron-right'\n \"\n ></i>\n </td>\n <td *ngIf=\"hasActions\">\n <p-menu\n #menu\n [model]=\"item.actions\"\n [popup]=\"true\"\n appendTo=\"body\"\n (onShow)=\"item._menuOpen = true; onActionsMenuShow(menu)\"\n (onHide)=\"item._menuOpen = false\"\n ></p-menu>\n <i\n class=\"actions-menu-button fas fa-cog\"\n [class.active]=\"item._menuOpen\"\n (click)=\"menu.toggle($event)\"\n ></i>\n </td>\n @for (col of columns; track $index) {\n @if (!col.hidden) {\n <ng-container>\n <td\n *ngIf=\"isEditableCell(col)\"\n class=\"cell\"\n [pEditableColumn]=\"item\"\n [pEditableColumnField]=\"col.field\"\n [ngStyle]=\"getColStyle(col)\"\n >\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-inputNumber\n *ngIf=\"!col.cellEdit?.editType || col.cellEdit?.editType === 'number'\"\n [(ngModel)]=\"item[col.field]\"\n [suffix]=\"col.cellEdit?.editSuffix || ''\"\n mode=\"decimal\"\n [maxFractionDigits]=\"col.cellEdit?.editMaxFractionDigits ?? 2\"\n [min]=\"col.cellEdit?.editMin ?? 0\"\n [max]=\"col.cellEdit?.editMax\"\n (onBlur)=\"onCellEditComplete(item, col, item[col.field])\"\n ></p-inputNumber>\n <input\n *ngIf=\"col.cellEdit?.editType === 'text'\"\n pInputText\n [(ngModel)]=\"item[col.field]\"\n (blur)=\"onCellEditComplete(item, col, item[col.field])\"\n />\n </ng-template>\n <ng-template pTemplate=\"output\">\n <span>{{ item[col.field] }}{{ col.cellEdit?.editSuffix || '' }}</span>\n <i class=\"pi pi-pencil ml-2 text-primary\"></i>\n </ng-template>\n </p-cellEditor>\n </td>\n <td\n *ngIf=\"isHtmlCell(col) && !col.cellEdit\"\n class=\"cell\"\n [innerHTML]=\"getCellContent(item, col)\"\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\n [ngStyle]=\"getColStyle(col)\"\n ></td>\n <td\n *ngIf=\"(!isHtmlCell(col) && !!col.getStatus) || isScoreCell(col)\"\n class=\"cell\"\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\n [ngStyle]=\"getColStyle(col)\"\n >\n <vector-badge\n *ngIf=\"isBadgeCell(col)\"\n [label]=\"getCellText(item, col)\"\n [type]=\"col.getStatus && col.getStatus(item[col.field])\"\n [tooltip]=\"getTooltipText(item, col)\"\n ></vector-badge>\n <vector-score *ngIf=\"isScoreCell(col)\" [score]=\"item[col.field]\"></vector-score>\n </td>\n </ng-container>\n }\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr class=\"row\">\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\n <ng-template pTemplate=\"expandedrow\" let-item>\n <tr>\n <td [attr.colspan]=\"columns.length + (hasActions ? 1 : 0)\">\n <ng-container *ngTemplateOutlet=\"expansionTemplate; context: { item }\"> </ng-container>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </vector-panel>\n </div>\n</div>\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media(min-width:768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button.custom-function{background-color:var(--theme-primary)}.table-header-actions .export-button.custom-function:hover{background-color:var(--theme-medium)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium);padding:6px;border-radius:50%;transition:all .15s ease}.actions-menu-button:hover{background-color:#0000000d}.actions-menu-button:active{transform:scale(.92);background-color:#0000001a;color:var(--theme-dark)}.expandable{cursor:pointer}.balance-container{display:flex;flex-direction:column;min-width:13%;padding:0;margin-bottom:30px;top:30px;right:40px;border-radius:8px;margin-right:15px}.balance-container .header-right{flex:1;flex-direction:row;justify-content:flex-end;display:flex}@media screen and (max-width:1450px){.balance-container{width:40%}}@media screen and (max-width:960px){.balance-container{position:relative;width:80%;top:auto;right:auto}}.balance-container .card-header{color:var(--theme-medium);border-radius:9px 9px 0 0;padding:10px 10px 2px;font-weight:500;font-size:13px;line-height:17px;letter-spacing:.25px}.balance-container .value-container{display:flex;flex-direction:row;align-items:center;padding:0 10px 5px}.balance-container .value-container span{font-size:2em;font-weight:700;color:var(--theme-secondary)}@media screen and (max-width:640px){.balance-container .value-container span{font-size:1.6em}}.balance-container .value-container .balance{margin-left:8px;width:70%}.balance-container .value-container .hidden-balance{background-color:var(--gray-lighter);padding:15px;margin-left:8px;width:70%;height:100%}.balance-container .value-container .icon-container{display:flex;flex:1;justify-content:center;align-items:center}.balance-container .value-container .icon-container i{cursor:pointer;font-size:2em;padding-top:2px;color:var(--theme-medium)}:host ::ng-deep .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable-tbody>tr>td{text-align:center!important;vertical-align:middle!important}:host ::ng-deep .p-datatable-thead>tr>th>.flex,:host ::ng-deep .p-datatable-tbody>tr>td>.flex{justify-content:center!important}\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.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i2$3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: PanelComponent, selector: "vector-panel" }, { kind: "component", type: i7.TabView, selector: "p-tabView, p-tabview", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i7.TabPanel, selector: "p-tabPanel, p-tabpanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "component", type: BadgeComponent, selector: "vector-badge", inputs: ["type", "label", "customColor", "customBackgroundColor", "tooltip"] }, { kind: "component", type: ScoreComponent, selector: "vector-score", inputs: ["score"] }, { kind: "component", type: i10.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "component", type: i11.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "virtualRowHeight", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i11.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i11.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "directive", type: i11.RowToggler, selector: "[pRowToggler]", inputs: ["pRowToggler", "pRowTogglerDisabled"] }, { kind: "directive", type: i11.ReorderableColumn, selector: "[pReorderableColumn]", inputs: ["pReorderableColumnDisabled"] }, { kind: "directive", type: i11.EditableColumn, selector: "[pEditableColumn]", inputs: ["pEditableColumn", "pEditableColumnField", "pEditableColumnRowIndex", "pEditableColumnDisabled", "pFocusCellSelector"] }, { kind: "component", type: i11.CellEditor, selector: "p-cellEditor" }, { kind: "component", type: i11.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i11.TableRadioButton, selector: "p-tableRadioButton", inputs: ["value", "disabled", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i11.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i11.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "directive", type: i11.ReorderableRowHandle, selector: "[pReorderableRowHandle]" }, { kind: "directive", type: i11.ReorderableRow, selector: "[pReorderableRow]", inputs: ["pReorderableRow", "pReorderableRowDisabled"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "component", type: FiltersComponent, selector: "vector-filters", inputs: ["fields"], outputs: ["onSearch", "formBuilded"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
4307
4310
|
}
|
|
4308
4311
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DataTableComponent, decorators: [{
|
|
4309
4312
|
type: Component,
|
|
4310
|
-
args: [{ standalone: false, selector: 'vector-data-table', template: "<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <vector-filters\r\n [fields]=\"filters\"\r\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\r\n (formBuilded)=\"subscribeToFilterChanges()\"\r\n ></vector-filters>\r\n </div>\r\n <div\r\n class=\"table-header-actions field\"\r\n *ngIf=\"addItemLabel || exportExcel || exportPDF || customFunction || customButtons\"\r\n >\r\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\r\n <i class=\"fas fa-file-excel\"></i><span>Excel</span>\r\n </button>\r\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\r\n <i class=\"fas fa-file-pdf\"></i><span>PDF</span>\r\n </button>\r\n <button\r\n *ngFor=\"let button of customFunction\"\r\n (click)=\"button.clickFunction()\"\r\n class=\"export-button custom-function\"\r\n >\r\n <i *ngIf=\"button?.icon\" class=\"{{ button?.icon }}\"></i><span>{{ button?.label }}</span>\r\n </button>\r\n\r\n <vector-button\r\n *ngFor=\"let button of customButtons\"\r\n class=\"add-item-button\"\r\n [round]=\"true\"\r\n [label]=\"button.label\"\r\n (click)=\"button.clickFunction()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n [disabled]=\"button.disabled === true\"\r\n ></vector-button>\r\n <vector-button\r\n *ngIf=\"addItemLabel\"\r\n class=\"add-item-button\"\r\n [label]=\"addItemLabel\"\r\n (click)=\"onAdd.emit()\"\r\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\r\n [round]=\"true\"\r\n ></vector-button>\r\n </div>\r\n @if (showLimitBalance) {\r\n <div class=\"col-12 grid ml-0\">\r\n @for (itemAccount of dataAccountBalance; track $index) {\r\n @if (itemAccount.visible) {\r\n <div class=\"card balance-container\">\r\n <span class=\"card-header\">{{ itemAccount.name }}</span>\r\n <div class=\"card-content value-container\">\r\n <span>R$ </span>\r\n <span *ngIf=\"itemAccount.showBalance\" class=\"balance\">{{ balance(itemAccount) }}</span>\r\n <div class=\"hidden-balance\" *ngIf=\"!itemAccount.showBalance\"></div>\r\n <div class=\"icon-container\">\r\n <i\r\n class=\"fas\"\r\n [ngClass]=\"{ 'fa-eye': !itemAccount.showBalance, 'fa-eye-slash': itemAccount.showBalance }\"\r\n (click)=\"changeShowBalance(itemAccount)\"\r\n ></i>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n @if (showDataBalance) {\r\n <div class=\"col-12 grid ml-0\">\r\n @for (itemAccount of dataAccountBalance; track $index) {\r\n <div class=\"card balance-container\">\r\n <span class=\"card-header\">{{ itemAccount.name }}</span>\r\n <div class=\"card-content value-container\">\r\n <span class=\"balance\">{{ itemAccount.valueBalance }}</span>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <div class=\"col-12\">\r\n <vector-panel class=\"data-table-panel\">\r\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\r\n <p-tabPanel *ngFor=\"let tab of tabs\">\r\n <ng-template pTemplate=\"header\">\r\n <em *ngIf=\"tab.icon\" [class]=\"tab.icon\"> </em>\r\n <span>{{ tab.name }}</span>\r\n </ng-template>\r\n </p-tabPanel>\r\n </p-tabView>\r\n <p-table\r\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\r\n sortMode=\"single\"\r\n [rows]=\"10\"\r\n [lazy]=\"pagination && !virtualPagination\"\r\n [value]=\"data\"\r\n [paginator]=\"pagination\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\r\n [responsive]=\"true\"\r\n [resizableColumns]=\"true\"\r\n [scrollable]=\"true\"\r\n scrollDirection=\"vertical\"\r\n responsiveLayout=\"scroll\"\r\n dataKey=\"id\"\r\n [scrollHeight]=\"height\"\r\n [selectionMode]=\"selectionType === 'checkbox' || selectionType === 'radiobutton' ? null : selectionMode\"\r\n [(selection)]=\"selectedItems\"\r\n (onRowSelect)=\"changeSelectedItems($event)\"\r\n (onHeaderCheckboxToggle)=\"changeSelectedItems($event)\"\r\n (onRowUnselect)=\"changeSelectedItems($event)\"\r\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\r\n (selectionChange)=\"onSelectionChange($event)\"\r\n [reorderableColumns]=\"reorderableColumns\"\r\n editMode=\"cell\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"header\">\r\n <th *ngIf=\"reorderableColumns\" style=\"width: 5rem\"></th>\r\n\r\n <th *ngIf=\"selectionType === 'checkbox'\">\r\n <p-tableHeaderCheckbox [disabled]=\"disabledHeadercheckbox\"></p-tableHeaderCheckbox>\r\n </th>\r\n <th class=\"px-1 w-max min-w-max white-space-nowrap text-center vertical-align-middle\" *ngIf=\"hasExpandableIcon\">\r\n {{ addNameColumnExpand }}\r\n </th>\r\n <th *ngIf=\"hasActions\">{{ 'app.label.actions' | translate }}</th>\r\n <th *ngIf=\"selectionType === 'radiobutton'\">\r\n <div class=\"flex align-items-center\">\r\n <span></span>\r\n </div>\r\n </th>\r\n @for (col of columns; track $index) {\r\n @if (!col.hidden) {\r\n <th\r\n [ngStyle]=\"getColStyle(col)\"\r\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\r\n pReorderableColumn\r\n >\r\n <div class=\"flex align-items-center\">\r\n <span>{{ col.header }}</span> <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n }\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-item let-expanded=\"expanded\" let-index=\"rowIndex\">\r\n <tr\r\n class=\"row\"\r\n [pSelectableRow]=\"rowData\"\r\n [ngClass]=\"{ expandable: expandable }\"\r\n [pRowToggler]=\"item\"\r\n [pRowTogglerDisabled]=\"!expandable\"\r\n (click)=\"onRowClick(item)\"\r\n [pReorderableRow]=\"index\"\r\n >\r\n <ng-container *ngIf=\"reorderableColumns\">\r\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"justify-content-center align-items-center\">\r\n <span class=\"pi pi-bars\" pReorderableRowHandle></span>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\r\n <td\r\n style=\"max-width: 3rem; padding-left: 10px\"\r\n class=\"justify-content-center align-items-center\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <p-tableCheckbox [value]=\"item\" [disabled]=\"item.disabledCheckBox\"></p-tableCheckbox>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\r\n <td\r\n style=\"max-width: 3rem; padding-left: 10px\"\r\n class=\"justify-content-center align-items-center\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\r\n </td>\r\n </ng-container>\r\n <td *ngIf=\"hasExpandableIcon\" class=\"px-1 w-auto text-center vertical-align-middle\">\r\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\r\n <i\r\n [ngClass]=\"\r\n expanded ? 'actions-menu-button pi pi-chevron-down' : 'actions-menu-button pi pi-chevron-right'\r\n \"\r\n ></i>\r\n </td>\r\n <td *ngIf=\"hasActions\">\r\n <p-menu\r\n #menu\r\n [model]=\"item.actions\"\r\n [popup]=\"true\"\r\n appendTo=\"body\"\r\n (onShow)=\"item._menuOpen = true; onActionsMenuShow(menu)\"\r\n (onHide)=\"item._menuOpen = false\"\r\n ></p-menu>\r\n <i\r\n class=\"actions-menu-button fas fa-cog\"\r\n [class.active]=\"item._menuOpen\"\r\n (click)=\"menu.toggle($event)\"\r\n ></i>\r\n </td>\r\n @for (col of columns; track $index) {\r\n @if (!col.hidden) {\r\n <ng-container>\r\n <td\r\n *ngIf=\"isEditableCell(col)\"\r\n class=\"cell\"\r\n [pEditableColumn]=\"item\"\r\n [pEditableColumnField]=\"col.field\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <p-cellEditor>\r\n <ng-template pTemplate=\"input\">\r\n <p-inputNumber\r\n *ngIf=\"!col.cellEdit?.editType || col.cellEdit?.editType === 'number'\"\r\n [(ngModel)]=\"item[col.field]\"\r\n [suffix]=\"col.cellEdit?.editSuffix || ''\"\r\n mode=\"decimal\"\r\n [maxFractionDigits]=\"col.cellEdit?.editMaxFractionDigits ?? 2\"\r\n [min]=\"col.cellEdit?.editMin ?? 0\"\r\n [max]=\"col.cellEdit?.editMax\"\r\n (onBlur)=\"onCellEditComplete(item, col, item[col.field])\"\r\n ></p-inputNumber>\r\n <input\r\n *ngIf=\"col.cellEdit?.editType === 'text'\"\r\n pInputText\r\n [(ngModel)]=\"item[col.field]\"\r\n (blur)=\"onCellEditComplete(item, col, item[col.field])\"\r\n />\r\n </ng-template>\r\n <ng-template pTemplate=\"output\">\r\n <span>{{ item[col.field] }}{{ col.cellEdit?.editSuffix || '' }}</span>\r\n <i class=\"pi pi-pencil ml-2 text-primary\"></i>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n <td\r\n *ngIf=\"isHtmlCell(col) && !col.cellEdit\"\r\n class=\"cell\"\r\n [innerHTML]=\"getCellContent(item, col)\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n ></td>\r\n <td\r\n *ngIf=\"(!isHtmlCell(col) && !!col.getStatus) || isScoreCell(col)\"\r\n class=\"cell\"\r\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\r\n [ngStyle]=\"getColStyle(col)\"\r\n >\r\n <vector-badge\r\n *ngIf=\"isBadgeCell(col)\"\r\n [label]=\"getCellText(item, col)\"\r\n [type]=\"col.getStatus && col.getStatus(item[col.field])\"\r\n [tooltip]=\"getTooltipText(item, col)\"\r\n ></vector-badge>\r\n <vector-score *ngIf=\"isScoreCell(col)\" [score]=\"item[col.field]\"></vector-score>\r\n </td>\r\n </ng-container>\r\n }\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"row\">\r\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\r\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\r\n <ng-template pTemplate=\"expandedrow\" let-item>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + (hasActions ? 1 : 0)\">\r\n <ng-container *ngTemplateOutlet=\"expansionTemplate; context: { item }\"> </ng-container>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </vector-panel>\r\n </div>\r\n</div>\r\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media(min-width:768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button.custom-function{background-color:var(--theme-primary)}.table-header-actions .export-button.custom-function:hover{background-color:var(--theme-medium)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium);padding:6px;border-radius:50%;transition:all .15s ease}.actions-menu-button:hover{background-color:#0000000d}.actions-menu-button:active{transform:scale(.92);background-color:#0000001a;color:var(--theme-dark)}.expandable{cursor:pointer}.balance-container{display:flex;flex-direction:column;min-width:13%;padding:0;margin-bottom:30px;top:30px;right:40px;border-radius:8px;margin-right:15px}.balance-container .header-right{flex:1;flex-direction:row;justify-content:flex-end;display:flex}@media screen and (max-width:1450px){.balance-container{width:40%}}@media screen and (max-width:960px){.balance-container{position:relative;width:80%;top:auto;right:auto}}.balance-container .card-header{color:var(--theme-medium);border-radius:9px 9px 0 0;padding:10px 10px 2px;font-weight:500;font-size:13px;line-height:17px;letter-spacing:.25px}.balance-container .value-container{display:flex;flex-direction:row;align-items:center;padding:0 10px 5px}.balance-container .value-container span{font-size:2em;font-weight:700;color:var(--theme-secondary)}@media screen and (max-width:640px){.balance-container .value-container span{font-size:1.6em}}.balance-container .value-container .balance{margin-left:8px;width:70%}.balance-container .value-container .hidden-balance{background-color:var(--gray-lighter);padding:15px;margin-left:8px;width:70%;height:100%}.balance-container .value-container .icon-container{display:flex;flex:1;justify-content:center;align-items:center}.balance-container .value-container .icon-container i{cursor:pointer;font-size:2em;padding-top:2px;color:var(--theme-medium)}:host ::ng-deep .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable-tbody>tr>td{text-align:center!important;vertical-align:middle!important}:host ::ng-deep .p-datatable-thead>tr>th>.flex,:host ::ng-deep .p-datatable-tbody>tr>td>.flex{justify-content:center!important}\n"] }]
|
|
4313
|
+
args: [{ standalone: false, selector: 'vector-data-table', template: "<div class=\"grid\">\n <div class=\"col-12\">\n <vector-filters\n [fields]=\"filters\"\n (onSearch)=\"lazyLoaded({ filter: true, data: $event })\"\n (formBuilded)=\"subscribeToFilterChanges()\"\n ></vector-filters>\n </div>\n <div\n class=\"table-header-actions field\"\n *ngIf=\"addItemLabel || exportExcel || exportPDF || customFunction || customButtons\"\n >\n <button *ngIf=\"exportExcel\" (click)=\"onExportExcel.emit()\" class=\"export-button export-excel\">\n <i class=\"fas fa-file-excel\"></i><span>Excel</span>\n </button>\n <button *ngIf=\"exportPDF\" (click)=\"onExportPDF.emit()\" class=\"export-button export-pdf\">\n <i class=\"fas fa-file-pdf\"></i><span>PDF</span>\n </button>\n <button\n *ngFor=\"let button of customFunction\"\n (click)=\"button.clickFunction()\"\n class=\"export-button custom-function\"\n >\n <i *ngIf=\"button?.icon\" class=\"{{ button?.icon }}\"></i><span>{{ button?.label }}</span>\n </button>\n\n <vector-button\n *ngFor=\"let button of customButtons\"\n class=\"add-item-button\"\n [round]=\"true\"\n [label]=\"button.label\"\n (click)=\"button.clickFunction()\"\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\n [disabled]=\"button.disabled === true\"\n ></vector-button>\n <vector-button\n *ngIf=\"addItemLabel\"\n class=\"add-item-button\"\n [label]=\"addItemLabel\"\n (click)=\"onAdd.emit()\"\n [rightIcon]=\"addItemButtonPlusSign ? 'pi pi-plus' : ''\"\n [round]=\"true\"\n ></vector-button>\n </div>\n @if (showLimitBalance) {\n <div class=\"col-12 grid ml-0\">\n @for (itemAccount of dataAccountBalance; track $index) {\n @if (itemAccount.visible) {\n <div class=\"card balance-container\">\n <span class=\"card-header\">{{ itemAccount.name }}</span>\n <div class=\"card-content value-container\">\n <span>R$ </span>\n <span *ngIf=\"itemAccount.showBalance\" class=\"balance\">{{ balance(itemAccount) }}</span>\n <div class=\"hidden-balance\" *ngIf=\"!itemAccount.showBalance\"></div>\n <div class=\"icon-container\">\n <i\n class=\"fas\"\n [ngClass]=\"{ 'fa-eye': !itemAccount.showBalance, 'fa-eye-slash': itemAccount.showBalance }\"\n (click)=\"changeShowBalance(itemAccount)\"\n ></i>\n </div>\n </div>\n </div>\n }\n }\n </div>\n }\n @if (showDataBalance) {\n <div class=\"col-12 grid ml-0\">\n @for (itemAccount of dataAccountBalance; track $index) {\n <div class=\"card balance-container\">\n <span class=\"card-header\">{{ itemAccount.name }}</span>\n <div class=\"card-content value-container\">\n <span class=\"balance\">{{ itemAccount.valueBalance }}</span>\n </div>\n </div>\n }\n </div>\n }\n\n <div class=\"col-12\">\n <vector-panel class=\"data-table-panel\">\n <p-tabView (onChange)=\"onTabChange($event)\" *ngIf=\"tabs?.length\">\n <p-tabPanel *ngFor=\"let tab of tabs\">\n <ng-template pTemplate=\"header\">\n <em *ngIf=\"tab.icon\" [class]=\"tab.icon\"> </em>\n <span>{{ tab.name }}</span>\n </ng-template>\n </p-tabPanel>\n </p-tabView>\n <p-table\n currentPageReportTemplate=\"Mostrando {first} at\u00E9 {last} de {totalRecords} registros\"\n sortMode=\"single\"\n [rows]=\"10\"\n [lazy]=\"pagination && !virtualPagination\"\n [value]=\"data\"\n [paginator]=\"pagination\"\n [totalRecords]=\"totalRecords\"\n [showCurrentPageReport]=\"true\"\n [rowsPerPageOptions]=\"[10, 25, 50, 100]\"\n [responsive]=\"true\"\n [resizableColumns]=\"true\"\n [scrollable]=\"true\"\n scrollDirection=\"vertical\"\n responsiveLayout=\"scroll\"\n dataKey=\"id\"\n [scrollHeight]=\"height\"\n [selectionMode]=\"selectionType === 'checkbox' || selectionType === 'radiobutton' ? null : selectionMode\"\n [(selection)]=\"selectedItems\"\n (onRowSelect)=\"changeSelectedItems($event)\"\n (onHeaderCheckboxToggle)=\"changeSelectedItems($event)\"\n (onRowUnselect)=\"changeSelectedItems($event)\"\n (onLazyLoad)=\"lazyLoaded({ filter: false, data: $event })\"\n (selectionChange)=\"onSelectionChange($event)\"\n [reorderableColumns]=\"reorderableColumns\"\n editMode=\"cell\"\n >\n <ng-template pTemplate=\"header\">\n <tr class=\"header\">\n <th *ngIf=\"reorderableColumns\" style=\"width: 5rem\"></th>\n\n <th *ngIf=\"selectionType === 'checkbox'\">\n <p-tableHeaderCheckbox [disabled]=\"disabledHeadercheckbox\"></p-tableHeaderCheckbox>\n </th>\n <th class=\"px-1 w-max min-w-max white-space-nowrap text-center vertical-align-middle\" *ngIf=\"hasExpandableIcon\">\n {{ addNameColumnExpand }}\n </th>\n <th *ngIf=\"hasActions\">{{ 'app.label.actions' | translate }}</th>\n <th *ngIf=\"selectionType === 'radiobutton'\">\n <div class=\"flex align-items-center\">\n <span></span>\n </div>\n </th>\n @for (col of columns; track $index) {\n @if (!col.hidden) {\n <th\n [ngStyle]=\"getColStyle(col)\"\n [pSortableColumn]=\"col.notSortable ? '' : col.field\"\n pReorderableColumn\n >\n <div class=\"flex align-items-center\">\n <span>{{ col.header }}</span> <p-sortIcon *ngIf=\"!col.notSortable\" [field]=\"col.field\"></p-sortIcon>\n </div>\n </th>\n }\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowData let-item let-expanded=\"expanded\" let-index=\"rowIndex\">\n <tr\n class=\"row\"\n [pSelectableRow]=\"rowData\"\n [ngClass]=\"{ expandable: expandable }\"\n [pRowToggler]=\"item\"\n [pRowTogglerDisabled]=\"!expandable\"\n (click)=\"onRowClick(item)\"\n [pReorderableRow]=\"index\"\n >\n <ng-container *ngIf=\"reorderableColumns\">\n <td style=\"max-width: 3rem; padding-left: 10px\" class=\"justify-content-center align-items-center\">\n <span class=\"pi pi-bars\" pReorderableRowHandle></span>\n </td>\n </ng-container>\n <ng-container *ngIf=\"selectionType === 'checkbox'\">\n <td\n style=\"max-width: 3rem; padding-left: 10px\"\n class=\"justify-content-center align-items-center\"\n (click)=\"$event.stopPropagation()\"\n >\n <p-tableCheckbox [value]=\"item\" [disabled]=\"item.disabledCheckBox\"></p-tableCheckbox>\n </td>\n </ng-container>\n <ng-container *ngIf=\"selectionType === 'radiobutton'\">\n <td\n style=\"max-width: 3rem; padding-left: 10px\"\n class=\"justify-content-center align-items-center\"\n (click)=\"$event.stopPropagation()\"\n >\n <p-tableRadioButton [value]=\"item\"></p-tableRadioButton>\n </td>\n </ng-container>\n <td *ngIf=\"hasExpandableIcon\" class=\"px-1 w-auto text-center vertical-align-middle\">\n <p-menu #menu [model]=\"item.actions\" [popup]=\"true\" appendTo=\"body\"></p-menu>\n <i\n [ngClass]=\"\n expanded ? 'actions-menu-button pi pi-chevron-down' : 'actions-menu-button pi pi-chevron-right'\n \"\n ></i>\n </td>\n <td *ngIf=\"hasActions\">\n <p-menu\n #menu\n [model]=\"item.actions\"\n [popup]=\"true\"\n appendTo=\"body\"\n (onShow)=\"item._menuOpen = true; onActionsMenuShow(menu)\"\n (onHide)=\"item._menuOpen = false\"\n ></p-menu>\n <i\n class=\"actions-menu-button fas fa-cog\"\n [class.active]=\"item._menuOpen\"\n (click)=\"menu.toggle($event)\"\n ></i>\n </td>\n @for (col of columns; track $index) {\n @if (!col.hidden) {\n <ng-container>\n <td\n *ngIf=\"isEditableCell(col)\"\n class=\"cell\"\n [pEditableColumn]=\"item\"\n [pEditableColumnField]=\"col.field\"\n [ngStyle]=\"getColStyle(col)\"\n >\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-inputNumber\n *ngIf=\"!col.cellEdit?.editType || col.cellEdit?.editType === 'number'\"\n [(ngModel)]=\"item[col.field]\"\n [suffix]=\"col.cellEdit?.editSuffix || ''\"\n mode=\"decimal\"\n [maxFractionDigits]=\"col.cellEdit?.editMaxFractionDigits ?? 2\"\n [min]=\"col.cellEdit?.editMin ?? 0\"\n [max]=\"col.cellEdit?.editMax\"\n (onBlur)=\"onCellEditComplete(item, col, item[col.field])\"\n ></p-inputNumber>\n <input\n *ngIf=\"col.cellEdit?.editType === 'text'\"\n pInputText\n [(ngModel)]=\"item[col.field]\"\n (blur)=\"onCellEditComplete(item, col, item[col.field])\"\n />\n </ng-template>\n <ng-template pTemplate=\"output\">\n <span>{{ item[col.field] }}{{ col.cellEdit?.editSuffix || '' }}</span>\n <i class=\"pi pi-pencil ml-2 text-primary\"></i>\n </ng-template>\n </p-cellEditor>\n </td>\n <td\n *ngIf=\"isHtmlCell(col) && !col.cellEdit\"\n class=\"cell\"\n [innerHTML]=\"getCellContent(item, col)\"\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\n [ngStyle]=\"getColStyle(col)\"\n ></td>\n <td\n *ngIf=\"(!isHtmlCell(col) && !!col.getStatus) || isScoreCell(col)\"\n class=\"cell\"\n (click)=\"col && col.clickFunction && col.clickFunction(item)\"\n [ngStyle]=\"getColStyle(col)\"\n >\n <vector-badge\n *ngIf=\"isBadgeCell(col)\"\n [label]=\"getCellText(item, col)\"\n [type]=\"col.getStatus && col.getStatus(item[col.field])\"\n [tooltip]=\"getTooltipText(item, col)\"\n ></vector-badge>\n <vector-score *ngIf=\"isScoreCell(col)\" [score]=\"item[col.field]\"></vector-score>\n </td>\n </ng-container>\n }\n }\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr class=\"row\">\n <td class=\"no-results\" [attr.colspan]=\"columns.length + 1\">Nenhum resultado encontrado</td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"paginatorright\"> </ng-template>\n <ng-template let-item pTemplate=\"paginatordropdownitem\"> {{ item.value }} </ng-template>\n <ng-template pTemplate=\"expandedrow\" let-item>\n <tr>\n <td [attr.colspan]=\"columns.length + (hasActions ? 1 : 0)\">\n <ng-container *ngTemplateOutlet=\"expansionTemplate; context: { item }\"> </ng-container>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </vector-panel>\n </div>\n</div>\n", styles: [".no-results{padding:15px;background-color:#fff;width:100%}.centered{display:flex;justify-content:center}.table-header-actions{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;padding-right:7px;margin-bottom:15px!important}@media(min-width:768px){.table-header-actions{margin-top:-3px}}.table-header-actions .export-button{padding:7px 10px;color:#fff;display:flex;align-items:center;border:none;border-radius:5px;margin:5px;font-size:.75rem;cursor:pointer}.table-header-actions .export-button.export-excel{background-color:var(--success-color)}.table-header-actions .export-button.export-excel:hover{background-color:var(--success-color-dark)}.table-header-actions .export-button.export-pdf{background-color:var(--error-color)}.table-header-actions .export-button.export-pdf:hover{background-color:var(--error-color-dark)}.table-header-actions .export-button.custom-function{background-color:var(--theme-primary)}.table-header-actions .export-button.custom-function:hover{background-color:var(--theme-medium)}.table-header-actions .export-button i{color:#fff}.table-header-actions .export-button span{margin-left:5px}.table-header-actions .add-item-button{margin-left:10px}.actions-menu-button{font-size:23px;cursor:pointer;color:var(--theme-medium);padding:6px;border-radius:50%;transition:all .15s ease}.actions-menu-button:hover{background-color:#0000000d}.actions-menu-button:active{transform:scale(.92);background-color:#0000001a;color:var(--theme-dark)}.expandable{cursor:pointer}.balance-container{display:flex;flex-direction:column;min-width:13%;padding:0;margin-bottom:30px;top:30px;right:40px;border-radius:8px;margin-right:15px}.balance-container .header-right{flex:1;flex-direction:row;justify-content:flex-end;display:flex}@media screen and (max-width:1450px){.balance-container{width:40%}}@media screen and (max-width:960px){.balance-container{position:relative;width:80%;top:auto;right:auto}}.balance-container .card-header{color:var(--theme-medium);border-radius:9px 9px 0 0;padding:10px 10px 2px;font-weight:500;font-size:13px;line-height:17px;letter-spacing:.25px}.balance-container .value-container{display:flex;flex-direction:row;align-items:center;padding:0 10px 5px}.balance-container .value-container span{font-size:2em;font-weight:700;color:var(--theme-secondary)}@media screen and (max-width:640px){.balance-container .value-container span{font-size:1.6em}}.balance-container .value-container .balance{margin-left:8px;width:70%}.balance-container .value-container .hidden-balance{background-color:var(--gray-lighter);padding:15px;margin-left:8px;width:70%;height:100%}.balance-container .value-container .icon-container{display:flex;flex:1;justify-content:center;align-items:center}.balance-container .value-container .icon-container i{cursor:pointer;font-size:2em;padding-top:2px;color:var(--theme-medium)}:host ::ng-deep .p-datatable-thead>tr>th,:host ::ng-deep .p-datatable-tbody>tr>td{text-align:center!important;vertical-align:middle!important}:host ::ng-deep .p-datatable-thead>tr>th>.flex,:host ::ng-deep .p-datatable-tbody>tr>td>.flex{justify-content:center!important}\n"] }]
|
|
4311
4314
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { columns: [{
|
|
4312
4315
|
type: Input
|
|
4313
4316
|
}], data: [{
|
|
@@ -4391,6 +4394,408 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
4391
4394
|
args: [FiltersComponent, { static: true }]
|
|
4392
4395
|
}] } });
|
|
4393
4396
|
|
|
4397
|
+
const UPLOAD_BUTTON_ATTACH_DEFAULTS = {
|
|
4398
|
+
label: 'Anexar',
|
|
4399
|
+
type: 'default-filled',
|
|
4400
|
+
leftIcon: 'fas fa-paperclip',
|
|
4401
|
+
rightIcon: '',
|
|
4402
|
+
};
|
|
4403
|
+
const UPLOAD_BUTTON_SEND_DEFAULTS = {
|
|
4404
|
+
label: 'Enviar',
|
|
4405
|
+
type: 'default-outlined',
|
|
4406
|
+
leftIcon: 'fas fa-upload',
|
|
4407
|
+
rightIcon: '',
|
|
4408
|
+
};
|
|
4409
|
+
const UPLOAD_BUTTON_CANCEL_DEFAULTS = {
|
|
4410
|
+
label: 'Cancelar',
|
|
4411
|
+
type: 'cancel',
|
|
4412
|
+
leftIcon: 'fas fa-times',
|
|
4413
|
+
rightIcon: '',
|
|
4414
|
+
};
|
|
4415
|
+
const EMPTY_UPLOAD_SINGLE_VALUE = {
|
|
4416
|
+
originalFileName: '',
|
|
4417
|
+
friendlyFileName: '',
|
|
4418
|
+
fileExtension: '',
|
|
4419
|
+
fileSize: 0,
|
|
4420
|
+
contentType: '',
|
|
4421
|
+
lastModified: 0,
|
|
4422
|
+
convertedData: null,
|
|
4423
|
+
};
|
|
4424
|
+
/** Cria FormGroup vazio para modo single (ou item de FormArray no modo multiple). */
|
|
4425
|
+
function createUploadSingleForm() {
|
|
4426
|
+
return new FormGroup({
|
|
4427
|
+
originalFileName: new FormControl('', { nonNullable: true }),
|
|
4428
|
+
friendlyFileName: new FormControl('', { nonNullable: true }),
|
|
4429
|
+
fileExtension: new FormControl('', { nonNullable: true }),
|
|
4430
|
+
fileSize: new FormControl(0, { nonNullable: true }),
|
|
4431
|
+
contentType: new FormControl('', { nonNullable: true }),
|
|
4432
|
+
lastModified: new FormControl(0, { nonNullable: true }),
|
|
4433
|
+
convertedData: new FormControl(null),
|
|
4434
|
+
});
|
|
4435
|
+
}
|
|
4436
|
+
/** Cria FormArray vazio para modo multiple. */
|
|
4437
|
+
function createUploadMultipleForm() {
|
|
4438
|
+
return new FormArray([]);
|
|
4439
|
+
}
|
|
4440
|
+
class InputFileComponent {
|
|
4441
|
+
constructor(sanitizer) {
|
|
4442
|
+
this.sanitizer = sanitizer;
|
|
4443
|
+
/** Modo do upload: `'single'` = 1 arquivo (usa FormGroup) · `'multiple'` = vários (usa FormArray). Default: `'single'`. */
|
|
4444
|
+
this.uploadType = 'single';
|
|
4445
|
+
/** Formato salvo em `convertedData`: `'base64'` (data URL string) ou `'formData'` (FormData pronto para POST). Default: `'formData'`. */
|
|
4446
|
+
this.uploadFormat = 'formData';
|
|
4447
|
+
/** Extensões aceitas, ex: `['PDF', 'JPG']` (vira `accept=".pdf,.jpg"`). Array vazio = aceita qualquer tipo. */
|
|
4448
|
+
this.acceptExtensions = [];
|
|
4449
|
+
/** Tamanho máximo por arquivo em **MB** (ex: `5` = 5MB). `null` = sem limite. Convertido internamente pra bytes. */
|
|
4450
|
+
this.maxFileSize = null;
|
|
4451
|
+
/** Quantidade máxima de arquivos no modo multiple (1 à 10). Ignorado em single (sempre 1). Default: `10`. */
|
|
4452
|
+
this.maxFileNumberUploaded = 10;
|
|
4453
|
+
/** Renderiza o botão "Enviar" ao lado de "Anexar". Default: `false`. */
|
|
4454
|
+
this.uploadButtonSendEnabled = false;
|
|
4455
|
+
/** Renderiza o botão "Cancelar" (limpa todos os arquivos ao clicar). Default: `false`. */
|
|
4456
|
+
this.uploadButtonCancelEnabled = false;
|
|
4457
|
+
/** Habilita clique na badge do arquivo para abrir modal de preview (imagem ou PDF). Default: `false`. */
|
|
4458
|
+
this.enableModalView = false;
|
|
4459
|
+
this.fileSelected = new EventEmitter();
|
|
4460
|
+
this.fileRemoved = new EventEmitter();
|
|
4461
|
+
this.internalSending = false;
|
|
4462
|
+
this.isModalViewOpen = false;
|
|
4463
|
+
/** Índice do arquivo que está sendo visualizado no modal (só usado em modo multiple). */
|
|
4464
|
+
this.modalViewIndex = null;
|
|
4465
|
+
this._internalForm = createUploadSingleForm();
|
|
4466
|
+
this._internalArray = createUploadMultipleForm();
|
|
4467
|
+
/** Single: arquivo original (antes das conversões) + objectURL para preview. */
|
|
4468
|
+
this._selectedFile = null;
|
|
4469
|
+
this._previewObjectUrl = null;
|
|
4470
|
+
/** Multiple: arquivos originais por índice + objectURLs por índice, paralelo ao FormArray. */
|
|
4471
|
+
this._multipleFiles = [];
|
|
4472
|
+
this._multiplePreviewObjectUrls = [];
|
|
4473
|
+
this._uploadButtonAttach = { ...UPLOAD_BUTTON_ATTACH_DEFAULTS };
|
|
4474
|
+
this._uploadButtonSend = { ...UPLOAD_BUTTON_SEND_DEFAULTS };
|
|
4475
|
+
this._uploadButtonCancel = { ...UPLOAD_BUTTON_CANCEL_DEFAULTS };
|
|
4476
|
+
}
|
|
4477
|
+
/** Customiza o botão "Anexar" (`label`, `type`, `leftIcon`, `rightIcon`). */
|
|
4478
|
+
set uploadButtonAttach(value) {
|
|
4479
|
+
this._uploadButtonAttach = { ...UPLOAD_BUTTON_ATTACH_DEFAULTS, ...(value ?? {}) };
|
|
4480
|
+
}
|
|
4481
|
+
get uploadButtonAttach() {
|
|
4482
|
+
return this._uploadButtonAttach;
|
|
4483
|
+
}
|
|
4484
|
+
/** Customiza o botão "Enviar". (`label`, `type`, `leftIcon`, `rightIcon`) */
|
|
4485
|
+
set uploadButtonSend(value) {
|
|
4486
|
+
this._uploadButtonSend = { ...UPLOAD_BUTTON_SEND_DEFAULTS, ...(value ?? {}) };
|
|
4487
|
+
}
|
|
4488
|
+
get uploadButtonSend() {
|
|
4489
|
+
return this._uploadButtonSend;
|
|
4490
|
+
}
|
|
4491
|
+
/** Customiza o botão "Cancelar". (`label`, `type`, `leftIcon`, `rightIcon`). Só aparece se `uploadButtonCancelEnabled === true`. */
|
|
4492
|
+
set uploadButtonCancel(value) {
|
|
4493
|
+
this._uploadButtonCancel = { ...UPLOAD_BUTTON_CANCEL_DEFAULTS, ...(value ?? {}) };
|
|
4494
|
+
}
|
|
4495
|
+
get uploadButtonCancel() {
|
|
4496
|
+
return this._uploadButtonCancel;
|
|
4497
|
+
}
|
|
4498
|
+
// ─── Form accessors ──────────────────────────────────────
|
|
4499
|
+
get uploadForm() {
|
|
4500
|
+
return this.control ?? this._internalForm;
|
|
4501
|
+
}
|
|
4502
|
+
get uploadArray() {
|
|
4503
|
+
return this.control ?? this._internalArray;
|
|
4504
|
+
}
|
|
4505
|
+
/** True se tem arquivo(s) — funciona pros dois modos. */
|
|
4506
|
+
get hasFile() {
|
|
4507
|
+
if (this.uploadType === 'single') {
|
|
4508
|
+
return !!this.uploadForm.controls.originalFileName.value;
|
|
4509
|
+
}
|
|
4510
|
+
return this.uploadArray.length > 0;
|
|
4511
|
+
}
|
|
4512
|
+
/** Send habilitado se: single com arquivo, ou multiple com pelo menos 1 arquivo. */
|
|
4513
|
+
get canSend() {
|
|
4514
|
+
if (this.internalSending)
|
|
4515
|
+
return false;
|
|
4516
|
+
return this.hasFile;
|
|
4517
|
+
}
|
|
4518
|
+
/** Limite atingido — desabilita Attach em modo multiple. */
|
|
4519
|
+
get isAttachAtLimit() {
|
|
4520
|
+
if (this.uploadType === 'single')
|
|
4521
|
+
return this.hasFile;
|
|
4522
|
+
return this.uploadArray.length >= this.maxFileNumberUploaded;
|
|
4523
|
+
}
|
|
4524
|
+
// ─── Config conversion ───────────────────────────────────
|
|
4525
|
+
get acceptString() {
|
|
4526
|
+
return (this.acceptExtensions ?? []).map((ext) => `.${ext.toLowerCase()}`).join(',');
|
|
4527
|
+
}
|
|
4528
|
+
get maxFileSizeBytes() {
|
|
4529
|
+
const mb = this.maxFileSize ?? 0;
|
|
4530
|
+
return mb > 0 ? mb * 1024 * 1024 : 0;
|
|
4531
|
+
}
|
|
4532
|
+
/** Passado para o p-fileUpload — 1 em modo single, o input em modo multiple. */
|
|
4533
|
+
get effectiveFileLimit() {
|
|
4534
|
+
return this.uploadType === 'single' ? 1 : this.maxFileNumberUploaded;
|
|
4535
|
+
}
|
|
4536
|
+
// ─── Click handlers ──────────────────────────────────────
|
|
4537
|
+
async handleAttachClick(event) {
|
|
4538
|
+
if (this.isAttachAtLimit)
|
|
4539
|
+
return;
|
|
4540
|
+
this.triggerAttach(event);
|
|
4541
|
+
await this.uploadButtonAttachEvent?.(this.currentEmitValue());
|
|
4542
|
+
}
|
|
4543
|
+
async handleSendClick() {
|
|
4544
|
+
if (!this.uploadButtonSendEvent || !this.canSend)
|
|
4545
|
+
return;
|
|
4546
|
+
this.internalSending = true;
|
|
4547
|
+
try {
|
|
4548
|
+
await this.uploadButtonSendEvent(this.currentEmitValue());
|
|
4549
|
+
}
|
|
4550
|
+
finally {
|
|
4551
|
+
this.internalSending = false;
|
|
4552
|
+
}
|
|
4553
|
+
}
|
|
4554
|
+
async handleCancelClick() {
|
|
4555
|
+
this.resetUploadForm();
|
|
4556
|
+
await this.uploadButtonCancelEvent?.(this.currentEmitValue());
|
|
4557
|
+
}
|
|
4558
|
+
currentEmitValue() {
|
|
4559
|
+
if (this.uploadType === 'single')
|
|
4560
|
+
return this.uploadForm.getRawValue();
|
|
4561
|
+
return this.uploadArray.getRawValue();
|
|
4562
|
+
}
|
|
4563
|
+
// ─── Reset ───────────────────────────────────────────────
|
|
4564
|
+
resetUploadForm() {
|
|
4565
|
+
if (this.uploadType === 'single') {
|
|
4566
|
+
this.uploadForm.reset(EMPTY_UPLOAD_SINGLE_VALUE);
|
|
4567
|
+
this._selectedFile = null;
|
|
4568
|
+
this.revokePreviewObjectUrl();
|
|
4569
|
+
}
|
|
4570
|
+
else {
|
|
4571
|
+
this.uploadArray.clear();
|
|
4572
|
+
for (const url of this._multiplePreviewObjectUrls) {
|
|
4573
|
+
if (url)
|
|
4574
|
+
URL.revokeObjectURL(url);
|
|
4575
|
+
}
|
|
4576
|
+
this._multipleFiles = [];
|
|
4577
|
+
this._multiplePreviewObjectUrls = [];
|
|
4578
|
+
this.uploadArray.updateValueAndValidity();
|
|
4579
|
+
}
|
|
4580
|
+
this.fileUploadRef?.clear();
|
|
4581
|
+
this.closeModalView();
|
|
4582
|
+
this.fileRemoved.emit();
|
|
4583
|
+
}
|
|
4584
|
+
/** Remove um item específico do FormArray (modo multiple). */
|
|
4585
|
+
removeUploadArrayItem(index) {
|
|
4586
|
+
const url = this._multiplePreviewObjectUrls[index];
|
|
4587
|
+
if (url)
|
|
4588
|
+
URL.revokeObjectURL(url);
|
|
4589
|
+
this.uploadArray.removeAt(index);
|
|
4590
|
+
this._multipleFiles.splice(index, 1);
|
|
4591
|
+
this._multiplePreviewObjectUrls.splice(index, 1);
|
|
4592
|
+
this.uploadArray.updateValueAndValidity();
|
|
4593
|
+
this.fileRemoved.emit();
|
|
4594
|
+
}
|
|
4595
|
+
// ─── p-fileUpload handler ────────────────────────────────
|
|
4596
|
+
async onPrimeFileSelect(event) {
|
|
4597
|
+
const files = Array.from(event?.files ?? []);
|
|
4598
|
+
if (files.length === 0)
|
|
4599
|
+
return;
|
|
4600
|
+
if (this.uploadType === 'single') {
|
|
4601
|
+
const file = files[0];
|
|
4602
|
+
this._selectedFile = file;
|
|
4603
|
+
this.revokePreviewObjectUrl();
|
|
4604
|
+
const value = await this.buildValueFromFile(file);
|
|
4605
|
+
this.uploadForm.setValue(value);
|
|
4606
|
+
this.fileSelected.emit(value);
|
|
4607
|
+
return;
|
|
4608
|
+
}
|
|
4609
|
+
for (const file of files) {
|
|
4610
|
+
if (this.uploadArray.length >= this.maxFileNumberUploaded)
|
|
4611
|
+
break;
|
|
4612
|
+
const value = await this.buildValueFromFile(file);
|
|
4613
|
+
const fg = createUploadSingleForm();
|
|
4614
|
+
fg.setValue(value);
|
|
4615
|
+
this.uploadArray.push(fg);
|
|
4616
|
+
this._multipleFiles.push(file);
|
|
4617
|
+
this._multiplePreviewObjectUrls.push(null);
|
|
4618
|
+
}
|
|
4619
|
+
this.uploadArray.updateValueAndValidity();
|
|
4620
|
+
this.fileSelected.emit(this.uploadArray.getRawValue());
|
|
4621
|
+
}
|
|
4622
|
+
// ─── Modal ───────────────────────────────────────────────
|
|
4623
|
+
/**
|
|
4624
|
+
* Abre o modal de preview. Em single, chama sem índice. Em multiple, passa o índice.
|
|
4625
|
+
*/
|
|
4626
|
+
openModalView(index) {
|
|
4627
|
+
if (!this.enableModalView || !this.hasFile)
|
|
4628
|
+
return;
|
|
4629
|
+
if (this.uploadType === 'single') {
|
|
4630
|
+
if (this.uploadFormat !== 'base64' && this._selectedFile && !this._previewObjectUrl) {
|
|
4631
|
+
this._previewObjectUrl = URL.createObjectURL(this._selectedFile);
|
|
4632
|
+
}
|
|
4633
|
+
this.modalViewIndex = null;
|
|
4634
|
+
}
|
|
4635
|
+
else {
|
|
4636
|
+
if (index == null || index < 0 || index >= this.uploadArray.length)
|
|
4637
|
+
return;
|
|
4638
|
+
this.modalViewIndex = index;
|
|
4639
|
+
if (this.uploadFormat !== 'base64' && this._multipleFiles[index] && !this._multiplePreviewObjectUrls[index]) {
|
|
4640
|
+
this._multiplePreviewObjectUrls[index] = URL.createObjectURL(this._multipleFiles[index]);
|
|
4641
|
+
}
|
|
4642
|
+
}
|
|
4643
|
+
this.isModalViewOpen = true;
|
|
4644
|
+
}
|
|
4645
|
+
closeModalView() {
|
|
4646
|
+
this.isModalViewOpen = false;
|
|
4647
|
+
this.modalViewIndex = null;
|
|
4648
|
+
}
|
|
4649
|
+
/** FormGroup do arquivo atualmente sendo visualizado (single ou item do array). */
|
|
4650
|
+
currentPreviewControl() {
|
|
4651
|
+
if (this.uploadType === 'single')
|
|
4652
|
+
return this.uploadForm;
|
|
4653
|
+
if (this.modalViewIndex == null)
|
|
4654
|
+
return null;
|
|
4655
|
+
const ctrl = this.uploadArray.at(this.modalViewIndex);
|
|
4656
|
+
return ctrl ?? null;
|
|
4657
|
+
}
|
|
4658
|
+
get previewFileName() {
|
|
4659
|
+
return this.currentPreviewControl()?.controls.originalFileName.value ?? '';
|
|
4660
|
+
}
|
|
4661
|
+
get isImagePreview() {
|
|
4662
|
+
const ct = this.currentPreviewControl()?.controls.contentType.value ?? '';
|
|
4663
|
+
return ct.startsWith('image/');
|
|
4664
|
+
}
|
|
4665
|
+
get isPdfPreview() {
|
|
4666
|
+
return this.currentPreviewControl()?.controls.contentType.value === 'application/pdf';
|
|
4667
|
+
}
|
|
4668
|
+
get previewUrl() {
|
|
4669
|
+
if (this.uploadFormat === 'base64') {
|
|
4670
|
+
const data = this.currentPreviewControl()?.controls.convertedData.value;
|
|
4671
|
+
return typeof data === 'string' ? data : '';
|
|
4672
|
+
}
|
|
4673
|
+
if (this.uploadType === 'single') {
|
|
4674
|
+
return this._previewObjectUrl ?? '';
|
|
4675
|
+
}
|
|
4676
|
+
if (this.modalViewIndex == null)
|
|
4677
|
+
return '';
|
|
4678
|
+
return this._multiplePreviewObjectUrls[this.modalViewIndex] ?? '';
|
|
4679
|
+
}
|
|
4680
|
+
get safePreviewUrl() {
|
|
4681
|
+
return this.sanitizer.bypassSecurityTrustResourceUrl(this.previewUrl);
|
|
4682
|
+
}
|
|
4683
|
+
// ─── Helpers privados ────────────────────────────────────
|
|
4684
|
+
triggerAttach(_event) {
|
|
4685
|
+
const fu = this.fileUploadRef;
|
|
4686
|
+
if (!fu)
|
|
4687
|
+
return;
|
|
4688
|
+
const internals = fu;
|
|
4689
|
+
const targetInput = internals.basicFileInput?.nativeElement ??
|
|
4690
|
+
internals.advancedFileInput?.nativeElement ??
|
|
4691
|
+
internals.el?.nativeElement?.querySelector('input[type="file"]');
|
|
4692
|
+
if (!targetInput)
|
|
4693
|
+
return;
|
|
4694
|
+
// Garante que o browser abra o picker em modo multi-select quando uploadType === 'multiple'.
|
|
4695
|
+
// Sincroniza direto no DOM porque a binding [multiple] do PrimeNG pode não estar propagada no momento do click.
|
|
4696
|
+
targetInput.multiple = this.uploadType === 'multiple';
|
|
4697
|
+
targetInput.click();
|
|
4698
|
+
}
|
|
4699
|
+
async buildValueFromFile(file) {
|
|
4700
|
+
const { name, size, type, lastModified } = file;
|
|
4701
|
+
const extension = this.extractExtension(name);
|
|
4702
|
+
const baseName = this.stripExtension(name);
|
|
4703
|
+
const friendly = this.toFriendlyName(baseName);
|
|
4704
|
+
const converted = await this.convertFile(file, this.uploadFormat);
|
|
4705
|
+
return {
|
|
4706
|
+
originalFileName: name,
|
|
4707
|
+
friendlyFileName: friendly,
|
|
4708
|
+
fileExtension: extension,
|
|
4709
|
+
fileSize: size,
|
|
4710
|
+
contentType: type,
|
|
4711
|
+
lastModified,
|
|
4712
|
+
convertedData: converted,
|
|
4713
|
+
};
|
|
4714
|
+
}
|
|
4715
|
+
toFriendlyName(name) {
|
|
4716
|
+
return (name ?? '').normalize('NFD').replace(/[̀-ͯ]/g, '').toLowerCase().trim().replace(/\s+/g, '-');
|
|
4717
|
+
}
|
|
4718
|
+
extractExtension(filename) {
|
|
4719
|
+
const idx = filename.lastIndexOf('.');
|
|
4720
|
+
if (idx <= 0 || idx === filename.length - 1)
|
|
4721
|
+
return '';
|
|
4722
|
+
return filename.slice(idx);
|
|
4723
|
+
}
|
|
4724
|
+
stripExtension(filename) {
|
|
4725
|
+
const idx = filename.lastIndexOf('.');
|
|
4726
|
+
if (idx <= 0)
|
|
4727
|
+
return filename;
|
|
4728
|
+
return filename.slice(0, idx);
|
|
4729
|
+
}
|
|
4730
|
+
convertFile(file, format) {
|
|
4731
|
+
if (format === 'base64')
|
|
4732
|
+
return this.fileToBase64(file);
|
|
4733
|
+
return Promise.resolve(this.fileToFormData(file));
|
|
4734
|
+
}
|
|
4735
|
+
fileToBase64(file) {
|
|
4736
|
+
return new Promise((resolve, reject) => {
|
|
4737
|
+
const reader = new FileReader();
|
|
4738
|
+
reader.onload = () => resolve(String(reader.result ?? ''));
|
|
4739
|
+
reader.onerror = () => reject(reader.error);
|
|
4740
|
+
reader.readAsDataURL(file);
|
|
4741
|
+
});
|
|
4742
|
+
}
|
|
4743
|
+
fileToFormData(file) {
|
|
4744
|
+
const fd = new FormData();
|
|
4745
|
+
fd.append('file', file, file.name);
|
|
4746
|
+
return fd;
|
|
4747
|
+
}
|
|
4748
|
+
revokePreviewObjectUrl() {
|
|
4749
|
+
if (this._previewObjectUrl) {
|
|
4750
|
+
URL.revokeObjectURL(this._previewObjectUrl);
|
|
4751
|
+
this._previewObjectUrl = null;
|
|
4752
|
+
}
|
|
4753
|
+
}
|
|
4754
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputFileComponent, deps: [{ token: i1$6.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4755
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: InputFileComponent, isStandalone: false, selector: "vector-input-file", inputs: { uploadType: "uploadType", uploadFormat: "uploadFormat", control: "control", acceptExtensions: "acceptExtensions", maxFileSize: "maxFileSize", maxFileNumberUploaded: "maxFileNumberUploaded", uploadButtonSendEnabled: "uploadButtonSendEnabled", uploadButtonCancelEnabled: "uploadButtonCancelEnabled", uploadButtonAttachEvent: "uploadButtonAttachEvent", uploadButtonSendEvent: "uploadButtonSendEvent", uploadButtonCancelEvent: "uploadButtonCancelEvent", enableModalView: "enableModalView", uploadButtonAttach: "uploadButtonAttach", uploadButtonSend: "uploadButtonSend", uploadButtonCancel: "uploadButtonCancel" }, outputs: { fileSelected: "fileSelected", fileRemoved: "fileRemoved" }, viewQueries: [{ propertyName: "fileUploadRef", first: true, predicate: ["fileUpload"], descendants: true }], ngImport: i0, template: "<p-fileUpload\n #fileUpload\n class=\"p-fileupload-hidden\"\n mode=\"basic\"\n [multiple]=\"uploadType === 'multiple'\"\n [auto]=\"false\"\n [customUpload]=\"true\"\n [accept]=\"acceptString\"\n [maxFileSize]=\"maxFileSizeBytes\"\n [fileLimit]=\"effectiveFileLimit\"\n [chooseLabel]=\"''\"\n (onSelect)=\"onPrimeFileSelect($event)\"\n></p-fileUpload>\n\n@if (uploadType === 'single') {\n <div class=\"box-input-file\">\n <div class=\"flex gap-2\">\n <vector-button\n [label]=\"uploadButtonAttach.label\"\n [type]=\"uploadButtonAttach.type\"\n [leftIcon]=\"uploadButtonAttach.leftIcon\"\n [rightIcon]=\"uploadButtonAttach.rightIcon\"\n [round]=\"true\"\n [disabled]=\"isAttachAtLimit || internalSending\"\n (onClick)=\"handleAttachClick($event)\"\n ></vector-button>\n\n @if (uploadButtonSendEnabled) {\n <vector-button\n [label]=\"uploadButtonSend.label\"\n [type]=\"uploadButtonSend.type\"\n [leftIcon]=\"uploadButtonSend.leftIcon\"\n [rightIcon]=\"uploadButtonSend.rightIcon\"\n [round]=\"true\"\n [loading]=\"internalSending\"\n [disabled]=\"!canSend\"\n (onClick)=\"handleSendClick()\"\n ></vector-button>\n }\n\n @if (uploadButtonCancelEnabled) {\n <vector-button\n [label]=\"uploadButtonCancel.label\"\n [type]=\"uploadButtonCancel.type\"\n [leftIcon]=\"uploadButtonCancel.leftIcon\"\n [rightIcon]=\"uploadButtonCancel.rightIcon\"\n [round]=\"true\"\n [disabled]=\"!hasFile || internalSending\"\n (onClick)=\"handleCancelClick()\"\n ></vector-button>\n }\n\n @if (hasFile) {\n <div\n class=\"box-badge\"\n [class.box-badge--clickable]=\"enableModalView\"\n (click)=\"enableModalView && openModalView()\"\n >\n <div class=\"filename\" [class.cp]=\"enableModalView\">\n <div class=\"flex gap-0\" [pTooltip]=\"uploadForm.controls.originalFileName.value\" tooltipPosition=\"top\">\n <span>{{ uploadForm.controls.friendlyFileName.value }}</span>\n <span>{{ uploadForm.controls.fileExtension.value }}</span>\n </div>\n <i\n class=\"fas fa-times button-remove-file\"\n pTooltip=\"Remover\"\n tooltipPosition=\"top\"\n (click)=\"$event.stopPropagation(); resetUploadForm()\"\n ></i>\n </div>\n </div>\n }\n </div>\n </div>\n} @else {\n <div class=\"box-input-file mt-5\">\n <div class=\"flex gap-2\">\n <vector-button\n [label]=\"uploadButtonAttach.label\"\n [type]=\"uploadButtonAttach.type\"\n [leftIcon]=\"uploadButtonAttach.leftIcon\"\n [rightIcon]=\"uploadButtonAttach.rightIcon\"\n [round]=\"true\"\n [disabled]=\"isAttachAtLimit || internalSending\"\n (onClick)=\"handleAttachClick($event)\"\n ></vector-button>\n\n @if (uploadButtonSendEnabled) {\n <vector-button\n [label]=\"uploadButtonSend.label\"\n [type]=\"uploadButtonSend.type\"\n [leftIcon]=\"uploadButtonSend.leftIcon\"\n [rightIcon]=\"uploadButtonSend.rightIcon\"\n [round]=\"true\"\n [loading]=\"internalSending\"\n [disabled]=\"!canSend\"\n (onClick)=\"handleSendClick()\"\n ></vector-button>\n }\n\n @if (uploadButtonCancelEnabled) {\n <vector-button\n [label]=\"uploadButtonCancel.label\"\n [type]=\"uploadButtonCancel.type\"\n [leftIcon]=\"uploadButtonCancel.leftIcon\"\n [rightIcon]=\"uploadButtonCancel.rightIcon\"\n [round]=\"true\"\n [disabled]=\"!hasFile || internalSending\"\n (onClick)=\"handleCancelClick()\"\n ></vector-button>\n }\n\n <div class=\"box-badge-list\">\n @if (uploadArray.length > 0) {\n <span class=\"info-selected ml-1\">\n <b>{{ uploadArray.length }}</b> {{ uploadArray.length === 1 ? 'arquivo anexado' : 'arquivos anexados' }}\n </span>\n\n <div class=\"box-badge-list-content\">\n @for (control of uploadArray.controls; track $index) {\n <div\n class=\"box-badge\"\n [class.box-badge--clickable]=\"enableModalView\"\n (click)=\"enableModalView && openModalView($index)\"\n >\n <div class=\"filename\" [class.cp]=\"enableModalView\">\n <div class=\"flex gap-0\" [pTooltip]=\"control.controls.originalFileName.value\" tooltipPosition=\"top\">\n <span>{{ control.controls.friendlyFileName.value }}</span>\n <span>{{ control.controls.fileExtension.value }}</span>\n </div>\n <i\n class=\"fas fa-times button-remove-file\"\n pTooltip=\"Remover\"\n tooltipPosition=\"top\"\n (click)=\"$event.stopPropagation(); removeUploadArrayItem($index)\"\n ></i>\n </div>\n </div>\n }\n </div>\n }\n </div>\n </div>\n </div>\n}\n\n@if (enableModalView) {\n <p-dialog\n [(visible)]=\"isModalViewOpen\"\n [modal]=\"true\"\n [breakpoints]=\"{ '700px': '85%' }\"\n [style]=\"{ width: '700px' }\"\n [closable]=\"true\"\n [draggable]=\"false\"\n class=\"modal-default\"\n [header]=\"previewFileName\"\n >\n <div class=\"grid\">\n <div class=\"col-12\">\n @if (isImagePreview) {\n <img [src]=\"previewUrl\" [alt]=\"previewFileName\" class=\"w-full border-round-lg\" />\n } @else if (isPdfPreview) {\n <iframe [src]=\"safePreviewUrl\" class=\"w-full border-round-lg\" style=\"height: 500px; border: 0\"></iframe>\n } @else {\n <div class=\"box-message my-3\">\n <div class=\"flex\">\n <i class=\"fas fa-exclamation-triangle icon\"></i>\n <span>Preview n\u00E3o dispon\u00EDvel para este tipo de arquivo.</span>\n </div>\n </div>\n }\n </div>\n </div>\n\n <div class=\"grid justify-content-center\">\n <div class=\"col-12 md:col-4\">\n <vector-button label=\"Fechar\" [round]=\"true\" type=\"default\" (onClick)=\"closeModalView()\"></vector-button>\n </div>\n </div>\n </p-dialog>\n}\n", styles: [":host{--input-file-primary: #0046e8;--input-file-surface: #fff;--input-file-text: #434560;--input-file-border: #e5e5e5;--input-file-danger-hover: #e90800;--input-file-filename-bg: #e7e7e7;--input-file-filename-bg-hover: #dbdbe6}.p-fileupload-hidden{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none;opacity:0}.box-input-file{padding:.5rem;border:1px solid var(--surface-border);border-radius:8px;min-width:0}.box-input-file>.flex{min-width:0;flex-wrap:wrap}.box-input-file i.button-send-file{display:block;padding:.7rem;max-height:41.25px;font-size:14px;color:var(--input-file-primary);border:2px solid var(--input-file-primary);border-radius:8px;background-color:var(--input-file-surface)}.box-input-file i.button-send-file:hover{cursor:pointer;color:var(--input-file-surface);border:2px solid var(--input-file-primary);background-color:var(--input-file-primary);transition:all .2s ease-in-out}.box-input-file .box-badge-list{flex:0 0 100%;min-width:0}.box-input-file .box-badge-list span.info-selected{display:block;margin:.5rem 0;font-size:.9rem;font-weight:500;color:var(--input-file-text)}.box-input-file .box-badge-list .box-badge-list-content{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem;max-height:140px;overflow-y:auto;border-radius:8px;border:1px solid var(--input-file-border)}.box-input-file .box-badge-list .box-badge-list-content .box-badge{width:max-content}.box-input-file .box-badge{display:flex;margin:0;height:40px;max-width:100%;min-width:0;flex:0 1 auto;align-items:center;overflow:hidden;border-radius:20px;border:2px solid var(--input-file-border)}@media(max-width:991.98px){.box-input-file .box-badge{flex:1 1 100%;max-width:min(30ch,100%);transition:all .3s ease-in-out}}.box-input-file .box-badge i.button-remove-file{display:block;padding:.5rem .3rem .5rem .2rem;flex:0 0 auto;font-size:1rem;color:var(--input-file-text)}.box-input-file .box-badge i.button-remove-file:hover{cursor:pointer;color:var(--input-file-danger-hover);transition:all .2s ease-in-out}.box-input-file .box-badge .filename{display:flex;padding:0 .7rem;align-items:center;gap:.5rem;height:40px;max-width:100%;min-width:0;flex:1 1 auto;overflow:hidden;border-radius:16px;background-color:var(--input-file-filename-bg)}.box-input-file .box-badge .filename:hover{cursor:default;background-color:var(--input-file-filename-bg-hover)}.box-input-file .box-badge .filename.cp{cursor:pointer!important}.box-input-file .box-badge .filename>.flex{min-width:0;flex:1 1 auto;overflow:hidden}.box-input-file .box-badge .filename span{display:block;min-width:0;font-size:.9rem;font-weight:400;color:var(--input-file-text)}.box-input-file .box-badge .filename span:first-child{flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.box-input-file .box-badge .filename span:last-child{flex:0 0 auto;white-space:nowrap}\n"], dependencies: [{ kind: "directive", type: i2.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: i3$2.FileUpload, selector: "p-fileupload, p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "chooseButtonProps", "uploadButtonProps", "cancelButtonProps", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "component", type: i2$5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }] }); }
|
|
4756
|
+
}
|
|
4757
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputFileComponent, decorators: [{
|
|
4758
|
+
type: Component,
|
|
4759
|
+
args: [{ standalone: false, selector: 'vector-input-file', template: "<p-fileUpload\n #fileUpload\n class=\"p-fileupload-hidden\"\n mode=\"basic\"\n [multiple]=\"uploadType === 'multiple'\"\n [auto]=\"false\"\n [customUpload]=\"true\"\n [accept]=\"acceptString\"\n [maxFileSize]=\"maxFileSizeBytes\"\n [fileLimit]=\"effectiveFileLimit\"\n [chooseLabel]=\"''\"\n (onSelect)=\"onPrimeFileSelect($event)\"\n></p-fileUpload>\n\n@if (uploadType === 'single') {\n <div class=\"box-input-file\">\n <div class=\"flex gap-2\">\n <vector-button\n [label]=\"uploadButtonAttach.label\"\n [type]=\"uploadButtonAttach.type\"\n [leftIcon]=\"uploadButtonAttach.leftIcon\"\n [rightIcon]=\"uploadButtonAttach.rightIcon\"\n [round]=\"true\"\n [disabled]=\"isAttachAtLimit || internalSending\"\n (onClick)=\"handleAttachClick($event)\"\n ></vector-button>\n\n @if (uploadButtonSendEnabled) {\n <vector-button\n [label]=\"uploadButtonSend.label\"\n [type]=\"uploadButtonSend.type\"\n [leftIcon]=\"uploadButtonSend.leftIcon\"\n [rightIcon]=\"uploadButtonSend.rightIcon\"\n [round]=\"true\"\n [loading]=\"internalSending\"\n [disabled]=\"!canSend\"\n (onClick)=\"handleSendClick()\"\n ></vector-button>\n }\n\n @if (uploadButtonCancelEnabled) {\n <vector-button\n [label]=\"uploadButtonCancel.label\"\n [type]=\"uploadButtonCancel.type\"\n [leftIcon]=\"uploadButtonCancel.leftIcon\"\n [rightIcon]=\"uploadButtonCancel.rightIcon\"\n [round]=\"true\"\n [disabled]=\"!hasFile || internalSending\"\n (onClick)=\"handleCancelClick()\"\n ></vector-button>\n }\n\n @if (hasFile) {\n <div\n class=\"box-badge\"\n [class.box-badge--clickable]=\"enableModalView\"\n (click)=\"enableModalView && openModalView()\"\n >\n <div class=\"filename\" [class.cp]=\"enableModalView\">\n <div class=\"flex gap-0\" [pTooltip]=\"uploadForm.controls.originalFileName.value\" tooltipPosition=\"top\">\n <span>{{ uploadForm.controls.friendlyFileName.value }}</span>\n <span>{{ uploadForm.controls.fileExtension.value }}</span>\n </div>\n <i\n class=\"fas fa-times button-remove-file\"\n pTooltip=\"Remover\"\n tooltipPosition=\"top\"\n (click)=\"$event.stopPropagation(); resetUploadForm()\"\n ></i>\n </div>\n </div>\n }\n </div>\n </div>\n} @else {\n <div class=\"box-input-file mt-5\">\n <div class=\"flex gap-2\">\n <vector-button\n [label]=\"uploadButtonAttach.label\"\n [type]=\"uploadButtonAttach.type\"\n [leftIcon]=\"uploadButtonAttach.leftIcon\"\n [rightIcon]=\"uploadButtonAttach.rightIcon\"\n [round]=\"true\"\n [disabled]=\"isAttachAtLimit || internalSending\"\n (onClick)=\"handleAttachClick($event)\"\n ></vector-button>\n\n @if (uploadButtonSendEnabled) {\n <vector-button\n [label]=\"uploadButtonSend.label\"\n [type]=\"uploadButtonSend.type\"\n [leftIcon]=\"uploadButtonSend.leftIcon\"\n [rightIcon]=\"uploadButtonSend.rightIcon\"\n [round]=\"true\"\n [loading]=\"internalSending\"\n [disabled]=\"!canSend\"\n (onClick)=\"handleSendClick()\"\n ></vector-button>\n }\n\n @if (uploadButtonCancelEnabled) {\n <vector-button\n [label]=\"uploadButtonCancel.label\"\n [type]=\"uploadButtonCancel.type\"\n [leftIcon]=\"uploadButtonCancel.leftIcon\"\n [rightIcon]=\"uploadButtonCancel.rightIcon\"\n [round]=\"true\"\n [disabled]=\"!hasFile || internalSending\"\n (onClick)=\"handleCancelClick()\"\n ></vector-button>\n }\n\n <div class=\"box-badge-list\">\n @if (uploadArray.length > 0) {\n <span class=\"info-selected ml-1\">\n <b>{{ uploadArray.length }}</b> {{ uploadArray.length === 1 ? 'arquivo anexado' : 'arquivos anexados' }}\n </span>\n\n <div class=\"box-badge-list-content\">\n @for (control of uploadArray.controls; track $index) {\n <div\n class=\"box-badge\"\n [class.box-badge--clickable]=\"enableModalView\"\n (click)=\"enableModalView && openModalView($index)\"\n >\n <div class=\"filename\" [class.cp]=\"enableModalView\">\n <div class=\"flex gap-0\" [pTooltip]=\"control.controls.originalFileName.value\" tooltipPosition=\"top\">\n <span>{{ control.controls.friendlyFileName.value }}</span>\n <span>{{ control.controls.fileExtension.value }}</span>\n </div>\n <i\n class=\"fas fa-times button-remove-file\"\n pTooltip=\"Remover\"\n tooltipPosition=\"top\"\n (click)=\"$event.stopPropagation(); removeUploadArrayItem($index)\"\n ></i>\n </div>\n </div>\n }\n </div>\n }\n </div>\n </div>\n </div>\n}\n\n@if (enableModalView) {\n <p-dialog\n [(visible)]=\"isModalViewOpen\"\n [modal]=\"true\"\n [breakpoints]=\"{ '700px': '85%' }\"\n [style]=\"{ width: '700px' }\"\n [closable]=\"true\"\n [draggable]=\"false\"\n class=\"modal-default\"\n [header]=\"previewFileName\"\n >\n <div class=\"grid\">\n <div class=\"col-12\">\n @if (isImagePreview) {\n <img [src]=\"previewUrl\" [alt]=\"previewFileName\" class=\"w-full border-round-lg\" />\n } @else if (isPdfPreview) {\n <iframe [src]=\"safePreviewUrl\" class=\"w-full border-round-lg\" style=\"height: 500px; border: 0\"></iframe>\n } @else {\n <div class=\"box-message my-3\">\n <div class=\"flex\">\n <i class=\"fas fa-exclamation-triangle icon\"></i>\n <span>Preview n\u00E3o dispon\u00EDvel para este tipo de arquivo.</span>\n </div>\n </div>\n }\n </div>\n </div>\n\n <div class=\"grid justify-content-center\">\n <div class=\"col-12 md:col-4\">\n <vector-button label=\"Fechar\" [round]=\"true\" type=\"default\" (onClick)=\"closeModalView()\"></vector-button>\n </div>\n </div>\n </p-dialog>\n}\n", styles: [":host{--input-file-primary: #0046e8;--input-file-surface: #fff;--input-file-text: #434560;--input-file-border: #e5e5e5;--input-file-danger-hover: #e90800;--input-file-filename-bg: #e7e7e7;--input-file-filename-bg-hover: #dbdbe6}.p-fileupload-hidden{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none;opacity:0}.box-input-file{padding:.5rem;border:1px solid var(--surface-border);border-radius:8px;min-width:0}.box-input-file>.flex{min-width:0;flex-wrap:wrap}.box-input-file i.button-send-file{display:block;padding:.7rem;max-height:41.25px;font-size:14px;color:var(--input-file-primary);border:2px solid var(--input-file-primary);border-radius:8px;background-color:var(--input-file-surface)}.box-input-file i.button-send-file:hover{cursor:pointer;color:var(--input-file-surface);border:2px solid var(--input-file-primary);background-color:var(--input-file-primary);transition:all .2s ease-in-out}.box-input-file .box-badge-list{flex:0 0 100%;min-width:0}.box-input-file .box-badge-list span.info-selected{display:block;margin:.5rem 0;font-size:.9rem;font-weight:500;color:var(--input-file-text)}.box-input-file .box-badge-list .box-badge-list-content{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem;max-height:140px;overflow-y:auto;border-radius:8px;border:1px solid var(--input-file-border)}.box-input-file .box-badge-list .box-badge-list-content .box-badge{width:max-content}.box-input-file .box-badge{display:flex;margin:0;height:40px;max-width:100%;min-width:0;flex:0 1 auto;align-items:center;overflow:hidden;border-radius:20px;border:2px solid var(--input-file-border)}@media(max-width:991.98px){.box-input-file .box-badge{flex:1 1 100%;max-width:min(30ch,100%);transition:all .3s ease-in-out}}.box-input-file .box-badge i.button-remove-file{display:block;padding:.5rem .3rem .5rem .2rem;flex:0 0 auto;font-size:1rem;color:var(--input-file-text)}.box-input-file .box-badge i.button-remove-file:hover{cursor:pointer;color:var(--input-file-danger-hover);transition:all .2s ease-in-out}.box-input-file .box-badge .filename{display:flex;padding:0 .7rem;align-items:center;gap:.5rem;height:40px;max-width:100%;min-width:0;flex:1 1 auto;overflow:hidden;border-radius:16px;background-color:var(--input-file-filename-bg)}.box-input-file .box-badge .filename:hover{cursor:default;background-color:var(--input-file-filename-bg-hover)}.box-input-file .box-badge .filename.cp{cursor:pointer!important}.box-input-file .box-badge .filename>.flex{min-width:0;flex:1 1 auto;overflow:hidden}.box-input-file .box-badge .filename span{display:block;min-width:0;font-size:.9rem;font-weight:400;color:var(--input-file-text)}.box-input-file .box-badge .filename span:first-child{flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.box-input-file .box-badge .filename span:last-child{flex:0 0 auto;white-space:nowrap}\n"] }]
|
|
4760
|
+
}], ctorParameters: () => [{ type: i1$6.DomSanitizer }], propDecorators: { uploadType: [{
|
|
4761
|
+
type: Input
|
|
4762
|
+
}], uploadFormat: [{
|
|
4763
|
+
type: Input
|
|
4764
|
+
}], control: [{
|
|
4765
|
+
type: Input
|
|
4766
|
+
}], acceptExtensions: [{
|
|
4767
|
+
type: Input
|
|
4768
|
+
}], maxFileSize: [{
|
|
4769
|
+
type: Input
|
|
4770
|
+
}], maxFileNumberUploaded: [{
|
|
4771
|
+
type: Input
|
|
4772
|
+
}], uploadButtonSendEnabled: [{
|
|
4773
|
+
type: Input
|
|
4774
|
+
}], uploadButtonCancelEnabled: [{
|
|
4775
|
+
type: Input
|
|
4776
|
+
}], uploadButtonAttachEvent: [{
|
|
4777
|
+
type: Input
|
|
4778
|
+
}], uploadButtonSendEvent: [{
|
|
4779
|
+
type: Input
|
|
4780
|
+
}], uploadButtonCancelEvent: [{
|
|
4781
|
+
type: Input
|
|
4782
|
+
}], enableModalView: [{
|
|
4783
|
+
type: Input
|
|
4784
|
+
}], fileSelected: [{
|
|
4785
|
+
type: Output
|
|
4786
|
+
}], fileRemoved: [{
|
|
4787
|
+
type: Output
|
|
4788
|
+
}], fileUploadRef: [{
|
|
4789
|
+
type: ViewChild,
|
|
4790
|
+
args: ['fileUpload']
|
|
4791
|
+
}], uploadButtonAttach: [{
|
|
4792
|
+
type: Input
|
|
4793
|
+
}], uploadButtonSend: [{
|
|
4794
|
+
type: Input
|
|
4795
|
+
}], uploadButtonCancel: [{
|
|
4796
|
+
type: Input
|
|
4797
|
+
}] } });
|
|
4798
|
+
|
|
4394
4799
|
class InputNumberFieldComponent {
|
|
4395
4800
|
constructor() {
|
|
4396
4801
|
this.showButtons = false;
|
|
@@ -4431,11 +4836,11 @@ class InputNumberFieldComponent {
|
|
|
4431
4836
|
return '';
|
|
4432
4837
|
}
|
|
4433
4838
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputNumberFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4434
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: InputNumberFieldComponent, isStandalone: false, selector: "vector-input-number", inputs: { inputId: "inputId", control: "control", showButtons: "showButtons", type: "type", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", buttonLayout: "buttonLayout", incrementButtonIcon: "incrementButtonIcon", decrementButtonIcon: "decrementButtonIcon", min: "min", step: "step", disabled: "disabled", max: "max", suffix: "suffix" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onInput: "onInput", onClear: "onClear" }, ngImport: i0, template: "<div class=\"input-container\">\
|
|
4839
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: InputNumberFieldComponent, isStandalone: false, selector: "vector-input-number", inputs: { inputId: "inputId", control: "control", showButtons: "showButtons", type: "type", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", buttonLayout: "buttonLayout", incrementButtonIcon: "incrementButtonIcon", decrementButtonIcon: "decrementButtonIcon", min: "min", step: "step", disabled: "disabled", max: "max", suffix: "suffix" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onInput: "onInput", onClear: "onClear" }, ngImport: i0, template: "<div class=\"input-container\">\n <p-inputNumber\n [inputId]=\"inputId\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [suffix]=\"suffix\"\n [step]=\"step\"\n [minFractionDigits]=\"minFractionDigits\"\n [maxFractionDigits]=\"maxFractionDigits\"\n [showButtons]=\"showButtons\"\n [disabled]=\"disabled\"\n [buttonLayout]=\"buttonLayout\"\n [incrementButtonIcon]=\"incrementButtonIcon\"\n [decrementButtonIcon]=\"decrementButtonIcon\"\n (onBlur)=\"onBlur.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n ></p-inputNumber>\n <vector-field-error-message [control]=\"control\"></vector-field-error-message>\n</div>\n", styles: [".input-container{width:100%;position:relative;display:block}\n"], dependencies: [{ kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2$3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: FieldErrorMessageComponent, selector: "vector-field-error-message", inputs: ["control"] }] }); }
|
|
4435
4840
|
}
|
|
4436
4841
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputNumberFieldComponent, decorators: [{
|
|
4437
4842
|
type: Component,
|
|
4438
|
-
args: [{ standalone: false, selector: 'vector-input-number', template: "<div class=\"input-container\">\
|
|
4843
|
+
args: [{ standalone: false, selector: 'vector-input-number', template: "<div class=\"input-container\">\n <p-inputNumber\n [inputId]=\"inputId\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [suffix]=\"suffix\"\n [step]=\"step\"\n [minFractionDigits]=\"minFractionDigits\"\n [maxFractionDigits]=\"maxFractionDigits\"\n [showButtons]=\"showButtons\"\n [disabled]=\"disabled\"\n [buttonLayout]=\"buttonLayout\"\n [incrementButtonIcon]=\"incrementButtonIcon\"\n [decrementButtonIcon]=\"decrementButtonIcon\"\n (onBlur)=\"onBlur.emit($event)\"\n (onFocus)=\"onFocus.emit($event)\"\n ></p-inputNumber>\n <vector-field-error-message [control]=\"control\"></vector-field-error-message>\n</div>\n", styles: [".input-container{width:100%;position:relative;display:block}\n"] }]
|
|
4439
4844
|
}], propDecorators: { inputId: [{
|
|
4440
4845
|
type: Input
|
|
4441
4846
|
}], control: [{
|
|
@@ -4495,11 +4900,11 @@ class InputOtpComponent {
|
|
|
4495
4900
|
this.onFocusOtp.emit($event);
|
|
4496
4901
|
}
|
|
4497
4902
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputOtpComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4498
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: InputOtpComponent, isStandalone: false, selector: "vector-input-otp", inputs: { integerOnly: "integerOnly", length: "length", inputValue: "inputValue", isReadonly: "isReadonly", isDisabled: "isDisabled", isInvalid: "isInvalid" }, outputs: { onChangeOtp: "onChangeOtp", onBlurOtp: "onBlurOtp", onFocusOtp: "onFocusOtp" }, ngImport: i0, template: "<p-inputOtp\
|
|
4903
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: InputOtpComponent, isStandalone: false, selector: "vector-input-otp", inputs: { integerOnly: "integerOnly", length: "length", inputValue: "inputValue", isReadonly: "isReadonly", isDisabled: "isDisabled", isInvalid: "isInvalid" }, outputs: { onChangeOtp: "onChangeOtp", onBlurOtp: "onBlurOtp", onFocusOtp: "onFocusOtp" }, ngImport: i0, template: "<p-inputOtp\n class=\"custom-field-text input-otp\"\n [integerOnly]=\"integerOnly\"\n [length]=\"length\"\n [ngModel]=\"inputValue\"\n [invalid]=\"isInvalid\"\n [disabled]=\"isDisabled\"\n [readonly]=\"isReadonly\"\n (onChange)=\"onChange($event)\"\n (onBlur)=\"onBlur($event)\"\n (onFocus)=\"onFocus($event)\"\n></p-inputOtp>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$6.InputOtp, selector: "p-inputOtp, p-inputotp, p-input-otp", inputs: ["invalid", "disabled", "readonly", "variant", "tabindex", "length", "styleClass", "mask", "integerOnly", "autofocus", "size"], outputs: ["onChange", "onFocus", "onBlur"] }] }); }
|
|
4499
4904
|
}
|
|
4500
4905
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputOtpComponent, decorators: [{
|
|
4501
4906
|
type: Component,
|
|
4502
|
-
args: [{ standalone: false, selector: 'vector-input-otp', template: "<p-inputOtp\
|
|
4907
|
+
args: [{ standalone: false, selector: 'vector-input-otp', template: "<p-inputOtp\n class=\"custom-field-text input-otp\"\n [integerOnly]=\"integerOnly\"\n [length]=\"length\"\n [ngModel]=\"inputValue\"\n [invalid]=\"isInvalid\"\n [disabled]=\"isDisabled\"\n [readonly]=\"isReadonly\"\n (onChange)=\"onChange($event)\"\n (onBlur)=\"onBlur($event)\"\n (onFocus)=\"onFocus($event)\"\n></p-inputOtp>\n" }]
|
|
4503
4908
|
}], propDecorators: { integerOnly: [{
|
|
4504
4909
|
type: Input
|
|
4505
4910
|
}], length: [{
|
|
@@ -4527,11 +4932,11 @@ class InputSwitchFieldComponent {
|
|
|
4527
4932
|
}
|
|
4528
4933
|
ngOnInit() { }
|
|
4529
4934
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputSwitchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4530
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: InputSwitchFieldComponent, isStandalone: false, selector: "vector-input-switch-field", inputs: { control: "control", disabled: "disabled" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<p-toggleswitch\
|
|
4935
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: InputSwitchFieldComponent, isStandalone: false, selector: "vector-input-switch-field", inputs: { control: "control", disabled: "disabled" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<p-toggleswitch\n [formControl]=\"control\"\n [disabled]=\"disabled\"\n (onChange)=\"onChange.emit($event)\"\n></p-toggleswitch>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2$7.ToggleSwitch, selector: "p-toggleswitch, p-toggleSwitch, p-toggle-switch", inputs: ["style", "styleClass", "tabindex", "inputId", "name", "disabled", "readonly", "trueValue", "falseValue", "ariaLabel", "ariaLabelledBy", "autofocus"], outputs: ["onChange"] }] }); }
|
|
4531
4936
|
}
|
|
4532
4937
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: InputSwitchFieldComponent, decorators: [{
|
|
4533
4938
|
type: Component,
|
|
4534
|
-
args: [{ standalone: false, selector: 'vector-input-switch-field', template: "<p-toggleswitch\
|
|
4939
|
+
args: [{ standalone: false, selector: 'vector-input-switch-field', template: "<p-toggleswitch\n [formControl]=\"control\"\n [disabled]=\"disabled\"\n (onChange)=\"onChange.emit($event)\"\n></p-toggleswitch>\n" }]
|
|
4535
4940
|
}], propDecorators: { control: [{
|
|
4536
4941
|
type: Input
|
|
4537
4942
|
}], disabled: [{
|
|
@@ -4565,11 +4970,11 @@ class PercentageFieldComponent {
|
|
|
4565
4970
|
}
|
|
4566
4971
|
}
|
|
4567
4972
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PercentageFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4568
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: PercentageFieldComponent, isStandalone: false, selector: "vector-percentage-field", inputs: { control: "control", min: "min", max: "max", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", step: "step" }, outputs: { blurEvent: "blurEvent", enterKeyPress: "enterKeyPress", focusEvent: "focusEvent" }, ngImport: i0, template: "<form class=\"input-container\">\
|
|
4973
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: PercentageFieldComponent, isStandalone: false, selector: "vector-percentage-field", inputs: { control: "control", min: "min", max: "max", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", step: "step" }, outputs: { blurEvent: "blurEvent", enterKeyPress: "enterKeyPress", focusEvent: "focusEvent" }, ngImport: i0, template: "<form class=\"input-container\">\n <p-inputNumber\n [formControl]=\"control\"\n suffix=\"%\"\n [min]=\"min\"\n [max]=\"max\"\n [minFractionDigits]=\"minFractionDigits\"\n [maxFractionDigits]=\"maxFractionDigits\"\n [step]=\"step\"\n [showButtons]=\"step > 1\"\n buttonLayout=\"horizontal\"\n decrementButtonIcon=\"pi pi-minus-circle\"\n incrementButtonIcon=\"pi pi-plus-circle\"\n (onBlur)=\"onBlur()\"\n ></p-inputNumber>\n</form>\n", styles: [".input-container{width:100%}\n"], dependencies: [{ kind: "directive", type: i1$5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2$3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }] }); }
|
|
4569
4974
|
}
|
|
4570
4975
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PercentageFieldComponent, decorators: [{
|
|
4571
4976
|
type: Component,
|
|
4572
|
-
args: [{ standalone: false, selector: 'vector-percentage-field', template: "<form class=\"input-container\">\
|
|
4977
|
+
args: [{ standalone: false, selector: 'vector-percentage-field', template: "<form class=\"input-container\">\n <p-inputNumber\n [formControl]=\"control\"\n suffix=\"%\"\n [min]=\"min\"\n [max]=\"max\"\n [minFractionDigits]=\"minFractionDigits\"\n [maxFractionDigits]=\"maxFractionDigits\"\n [step]=\"step\"\n [showButtons]=\"step > 1\"\n buttonLayout=\"horizontal\"\n decrementButtonIcon=\"pi pi-minus-circle\"\n incrementButtonIcon=\"pi pi-plus-circle\"\n (onBlur)=\"onBlur()\"\n ></p-inputNumber>\n</form>\n", styles: [".input-container{width:100%}\n"] }]
|
|
4573
4978
|
}], propDecorators: { control: [{
|
|
4574
4979
|
type: Input
|
|
4575
4980
|
}], min: [{
|
|
@@ -4623,11 +5028,11 @@ class RadioButtonFieldComponent {
|
|
|
4623
5028
|
return label !== 'app.label.no' ? label : 'Não';
|
|
4624
5029
|
}
|
|
4625
5030
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: RadioButtonFieldComponent, deps: [{ token: i1$2.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4626
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: RadioButtonFieldComponent, isStandalone: false, selector: "vector-radio-button-field", inputs: { groupName: "groupName", options: "options", control: "control", layout: "layout", justifySpaceBetween: "justifySpaceBetween", addIcon: "addIcon", disabled: "disabled" }, ngImport: i0, template: "<div\
|
|
5031
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: RadioButtonFieldComponent, isStandalone: false, selector: "vector-radio-button-field", inputs: { groupName: "groupName", options: "options", control: "control", layout: "layout", justifySpaceBetween: "justifySpaceBetween", addIcon: "addIcon", disabled: "disabled" }, ngImport: i0, template: "<div\n class=\"radio-buttons-container\"\n [ngClass]=\"layoutClass\"\n [ngStyle]=\"{ 'justify-content': justifySpaceBetween ? 'space-between' : 'flex-start' }\"\n>\n @for (option of options; track $index) {\n <div class=\"radio-button-item\">\n <p-radioButton\n [name]=\"groupName\"\n [value]=\"option.value\"\n [formControl]=\"control\"\n [inputId]=\"groupName + '-' + $index\"\n ></p-radioButton>\n <label [for]=\"groupName + '-' + $index\">{{ option.label }}</label>\n <i\n *ngIf=\"addIcon && option.textTooltip != null\"\n class=\"fas fa-info-circle mt-1 pr-3 pl-2\"\n pTooltip=\"{{ option.textTooltip }}\"\n tooltipPosition=\"bottom\"\n ></i>\n </div>\n }\n</div>\n", styles: [".radio-buttons-container{display:flex;flex-wrap:wrap;height:100%;width:100%;padding-top:5px;column-gap:24px;row-gap:8px}.radio-buttons-container .radio-button-item{display:flex;align-items:center;gap:8px}.radio-buttons-container .radio-button-item label{margin:0;cursor:pointer}.vertical{flex-direction:column;align-items:flex-start;row-gap:8px}.horizontal{flex-direction:row}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5$2.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "formControlName", "name", "disabled", "variant", "size", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "autofocus", "binary"], outputs: ["onClick", "onFocus", "onBlur"] }] }); }
|
|
4627
5032
|
}
|
|
4628
5033
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: RadioButtonFieldComponent, decorators: [{
|
|
4629
5034
|
type: Component,
|
|
4630
|
-
args: [{ standalone: false, selector: 'vector-radio-button-field', template: "<div\
|
|
5035
|
+
args: [{ standalone: false, selector: 'vector-radio-button-field', template: "<div\n class=\"radio-buttons-container\"\n [ngClass]=\"layoutClass\"\n [ngStyle]=\"{ 'justify-content': justifySpaceBetween ? 'space-between' : 'flex-start' }\"\n>\n @for (option of options; track $index) {\n <div class=\"radio-button-item\">\n <p-radioButton\n [name]=\"groupName\"\n [value]=\"option.value\"\n [formControl]=\"control\"\n [inputId]=\"groupName + '-' + $index\"\n ></p-radioButton>\n <label [for]=\"groupName + '-' + $index\">{{ option.label }}</label>\n <i\n *ngIf=\"addIcon && option.textTooltip != null\"\n class=\"fas fa-info-circle mt-1 pr-3 pl-2\"\n pTooltip=\"{{ option.textTooltip }}\"\n tooltipPosition=\"bottom\"\n ></i>\n </div>\n }\n</div>\n", styles: [".radio-buttons-container{display:flex;flex-wrap:wrap;height:100%;width:100%;padding-top:5px;column-gap:24px;row-gap:8px}.radio-buttons-container .radio-button-item{display:flex;align-items:center;gap:8px}.radio-buttons-container .radio-button-item label{margin:0;cursor:pointer}.vertical{flex-direction:column;align-items:flex-start;row-gap:8px}.horizontal{flex-direction:row}\n"] }]
|
|
4631
5036
|
}], ctorParameters: () => [{ type: i1$2.TranslateService }], propDecorators: { groupName: [{
|
|
4632
5037
|
type: Input
|
|
4633
5038
|
}], options: [{
|
|
@@ -4693,11 +5098,11 @@ class RangeValueComponent {
|
|
|
4693
5098
|
}
|
|
4694
5099
|
}
|
|
4695
5100
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: RangeValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4696
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: RangeValueComponent, isStandalone: false, selector: "vector-range-value", inputs: { value: "value", movimentedValue: "movimentedValue", min: "min", max: "max", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"range-input\">\
|
|
5101
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: RangeValueComponent, isStandalone: false, selector: "vector-range-value", inputs: { value: "value", movimentedValue: "movimentedValue", min: "min", max: "max", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"range-input\">\n <a href=\"javascript:void(0)\" class=\"btn-range minus\" (click)=\"decrement()\"></a>\n <p-slider [(ngModel)]=\"value\" (onChange)=\"changeValue()\" [min]=\"min\" [max]=\"max\" [disabled]=\"disabled\"></p-slider>\n <a href=\"javascript:void(0)\" class=\"btn-range plus\" (click)=\"increment()\"></a>\n</div>\n", styles: [".range-input{display:flex;flex-flow:row;align-items:center}.range-input .btn-range{width:26px;height:26px;display:flex;justify-content:center;align-items:center;background-color:#fff;border:2px solid var(--theme-dark);border-radius:4px;color:var(--theme-dark);text-decoration:none;font-size:1rem}.range-input .btn-range:hover{-webkit-transition:.2s linear;-moz-transition:.2s linear;-o-prop:.2s linear;background-color:var(--theme-dark);color:#fff}.range-input .minus:before{content:\"-\"}.range-input p-slider{flex:1;margin:0 10px}.range-input .plus:before{content:\"+\"}\n"], dependencies: [{ kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$8.Slider, selector: "p-slider", inputs: ["animate", "disabled", "min", "max", "orientation", "step", "range", "style", "styleClass", "ariaLabel", "ariaLabelledBy", "tabindex", "autofocus"], outputs: ["onChange", "onSlideEnd"] }] }); }
|
|
4697
5102
|
}
|
|
4698
5103
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: RangeValueComponent, decorators: [{
|
|
4699
5104
|
type: Component,
|
|
4700
|
-
args: [{ standalone: false, selector: 'vector-range-value', template: "<div class=\"range-input\">\
|
|
5105
|
+
args: [{ standalone: false, selector: 'vector-range-value', template: "<div class=\"range-input\">\n <a href=\"javascript:void(0)\" class=\"btn-range minus\" (click)=\"decrement()\"></a>\n <p-slider [(ngModel)]=\"value\" (onChange)=\"changeValue()\" [min]=\"min\" [max]=\"max\" [disabled]=\"disabled\"></p-slider>\n <a href=\"javascript:void(0)\" class=\"btn-range plus\" (click)=\"increment()\"></a>\n</div>\n", styles: [".range-input{display:flex;flex-flow:row;align-items:center}.range-input .btn-range{width:26px;height:26px;display:flex;justify-content:center;align-items:center;background-color:#fff;border:2px solid var(--theme-dark);border-radius:4px;color:var(--theme-dark);text-decoration:none;font-size:1rem}.range-input .btn-range:hover{-webkit-transition:.2s linear;-moz-transition:.2s linear;-o-prop:.2s linear;background-color:var(--theme-dark);color:#fff}.range-input .minus:before{content:\"-\"}.range-input p-slider{flex:1;margin:0 10px}.range-input .plus:before{content:\"+\"}\n"] }]
|
|
4701
5106
|
}], ctorParameters: () => [], propDecorators: { value: [{
|
|
4702
5107
|
type: Input
|
|
4703
5108
|
}], movimentedValue: [{
|
|
@@ -4728,11 +5133,11 @@ class SearchFieldComponent {
|
|
|
4728
5133
|
this.subscription.unsubscribe();
|
|
4729
5134
|
}
|
|
4730
5135
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SearchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4731
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SearchFieldComponent, isStandalone: false, selector: "vector-search-field", inputs: { placeholder: "placeholder" }, outputs: { onSearch: "onSearch" }, ngImport: i0, template: "<vector-text-field [control]=\"formControl\" rightIcon=\"fas fa-search\" [label]=\"placeholder\"></vector-text-field>\
|
|
5136
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SearchFieldComponent, isStandalone: false, selector: "vector-search-field", inputs: { placeholder: "placeholder" }, outputs: { onSearch: "onSearch" }, ngImport: i0, template: "<vector-text-field [control]=\"formControl\" rightIcon=\"fas fa-search\" [label]=\"placeholder\"></vector-text-field>\n", styles: [""], dependencies: [{ kind: "component", type: TextFieldComponent, selector: "vector-text-field", inputs: ["isRequired", "label", "maxlength", "isPassword", "numeric", "numericPositive", "numericDotComma", "decimal", "onlyText", "noSpecialCharacters", "alphaNumeric", "alphaNumericAndWhitespace", "mask", "autoClear", "readonly", "rightIcon", "centered", "_enableDocumentTypeChoice", "enableDocumentTypeChoice", "hiddenErrorMessage", "leftLabel", "control", "inputId", "slotChar", "disabled", "pattern"], outputs: ["blurEvent", "inputEvent", "enterKeyPress", "backSpaceKeyPress", "focusEvent", "onDocumentTypeChange"] }] }); }
|
|
4732
5137
|
}
|
|
4733
5138
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SearchFieldComponent, decorators: [{
|
|
4734
5139
|
type: Component,
|
|
4735
|
-
args: [{ standalone: false, selector: 'vector-search-field', template: "<vector-text-field [control]=\"formControl\" rightIcon=\"fas fa-search\" [label]=\"placeholder\"></vector-text-field>\
|
|
5140
|
+
args: [{ standalone: false, selector: 'vector-search-field', template: "<vector-text-field [control]=\"formControl\" rightIcon=\"fas fa-search\" [label]=\"placeholder\"></vector-text-field>\n" }]
|
|
4736
5141
|
}], ctorParameters: () => [], propDecorators: { placeholder: [{
|
|
4737
5142
|
type: Input
|
|
4738
5143
|
}], onSearch: [{
|
|
@@ -4791,11 +5196,11 @@ class TextareaFieldComponent {
|
|
|
4791
5196
|
this.focusEvent.emit(target?.value);
|
|
4792
5197
|
}
|
|
4793
5198
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TextareaFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4794
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: TextareaFieldComponent, isStandalone: false, selector: "vector-textarea-field", inputs: { isRequired: "isRequired", label: "label", maxlength: "maxlength", rows: "rows", cols: "cols", control: "control" }, outputs: { blurEvent: "blurEvent", enterKeyPress: "enterKeyPress", focusEvent: "focusEvent" }, ngImport: i0, template: "<form class=\"input-container\">\
|
|
5199
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: TextareaFieldComponent, isStandalone: false, selector: "vector-textarea-field", inputs: { isRequired: "isRequired", label: "label", maxlength: "maxlength", rows: "rows", cols: "cols", control: "control" }, outputs: { blurEvent: "blurEvent", enterKeyPress: "enterKeyPress", focusEvent: "focusEvent" }, ngImport: i0, template: "<form class=\"input-container\">\n <textarea\n pTextarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [autoResize]=\"false\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (click)=\"onFocus($event)\"\n >\n </textarea>\n <span class=\"length-control\">{{ control?.value?.length || 0 }} / {{ maxlength }}</span>\n</form>\n", styles: [".input-container{width:100%;position:relative}.input-container .length-control{position:absolute;right:15px;bottom:15px;opacity:.8;font-size:.6rem}\n"], dependencies: [{ kind: "directive", type: i1$5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$9.Textarea, selector: "[pTextarea], [pInputTextarea]", inputs: ["autoResize", "variant", "fluid", "pSize"], outputs: ["onResize"] }] }); }
|
|
4795
5200
|
}
|
|
4796
5201
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TextareaFieldComponent, decorators: [{
|
|
4797
5202
|
type: Component,
|
|
4798
|
-
args: [{ standalone: false, selector: 'vector-textarea-field', template: "<form class=\"input-container\">\
|
|
5203
|
+
args: [{ standalone: false, selector: 'vector-textarea-field', template: "<form class=\"input-container\">\n <textarea\n pTextarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [autoResize]=\"false\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (click)=\"onFocus($event)\"\n >\n </textarea>\n <span class=\"length-control\">{{ control?.value?.length || 0 }} / {{ maxlength }}</span>\n</form>\n", styles: [".input-container{width:100%;position:relative}.input-container .length-control{position:absolute;right:15px;bottom:15px;opacity:.8;font-size:.6rem}\n"] }]
|
|
4799
5204
|
}], propDecorators: { isRequired: [{
|
|
4800
5205
|
type: Input
|
|
4801
5206
|
}], label: [{
|
|
@@ -4836,7 +5241,8 @@ class FieldsModule {
|
|
|
4836
5241
|
SelectButtonFieldComponent,
|
|
4837
5242
|
InputNumberFieldComponent,
|
|
4838
5243
|
InputSwitchFieldComponent,
|
|
4839
|
-
InputOtpComponent
|
|
5244
|
+
InputOtpComponent,
|
|
5245
|
+
InputFileComponent], imports: [SharedModule,
|
|
4840
5246
|
FormsModule,
|
|
4841
5247
|
ReactiveFormsModule,
|
|
4842
5248
|
KeyFilterModule,
|
|
@@ -4884,7 +5290,8 @@ class FieldsModule {
|
|
|
4884
5290
|
SelectButtonFieldComponent,
|
|
4885
5291
|
InputNumberFieldComponent,
|
|
4886
5292
|
InputSwitchFieldComponent,
|
|
4887
|
-
InputOtpComponent
|
|
5293
|
+
InputOtpComponent,
|
|
5294
|
+
InputFileComponent] }); }
|
|
4888
5295
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FieldsModule, imports: [SharedModule,
|
|
4889
5296
|
FormsModule,
|
|
4890
5297
|
ReactiveFormsModule,
|
|
@@ -4970,6 +5377,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
4970
5377
|
InputNumberFieldComponent,
|
|
4971
5378
|
InputSwitchFieldComponent,
|
|
4972
5379
|
InputOtpComponent,
|
|
5380
|
+
InputFileComponent,
|
|
4973
5381
|
],
|
|
4974
5382
|
exports: [
|
|
4975
5383
|
DataTableComponent,
|
|
@@ -4993,6 +5401,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
4993
5401
|
InputNumberFieldComponent,
|
|
4994
5402
|
InputSwitchFieldComponent,
|
|
4995
5403
|
InputOtpComponent,
|
|
5404
|
+
InputFileComponent,
|
|
4996
5405
|
],
|
|
4997
5406
|
}]
|
|
4998
5407
|
}] });
|
|
@@ -5026,11 +5435,11 @@ class CrudHeaderComponent {
|
|
|
5026
5435
|
constructor() { }
|
|
5027
5436
|
ngOnInit() { }
|
|
5028
5437
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CrudHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5029
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CrudHeaderComponent, isStandalone: false, selector: "vector-crud-header", inputs: { statusCode: "statusCode", code: "code" }, ngImport: i0, template: "<div class=\"container\">\
|
|
5438
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CrudHeaderComponent, isStandalone: false, selector: "vector-crud-header", inputs: { statusCode: "statusCode", code: "code" }, ngImport: i0, template: "<div class=\"container\">\n <div class=\"status-container\">\n <span>Status</span>\n <vector-badge [label]=\"statusLabel\" [type]=\"statusCode\"></vector-badge>\n </div>\n <div class=\"separator\"></div>\n <span class=\"code-label\"\n >C\u00F3digo de identifica\u00E7\u00E3o<span class=\"code\">{{ code }}</span></span\n >\n</div>\n", styles: [".container{display:flex;align-items:center;margin-bottom:15px;justify-content:space-between;flex-wrap:wrap}@media(min-width:441px){.container{justify-content:flex-end;height:40px}}.container .status-container{display:flex;align-items:center}.container .status-container vector-badge{margin-left:15px}.container .separator{width:1px;height:100%;margin:0 20px;background-color:var(--gray-medium)}@media(max-width:440px){.container .separator{display:none}}.container .code-label{color:var(--form-labels-color);font-size:13px;max-width:150px;line-height:1rem}.container .code-label .code{color:#000;font-weight:600;font-size:20px;margin-left:10px}\n"], dependencies: [{ kind: "component", type: BadgeComponent, selector: "vector-badge", inputs: ["type", "label", "customColor", "customBackgroundColor", "tooltip"] }] }); }
|
|
5030
5439
|
}
|
|
5031
5440
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CrudHeaderComponent, decorators: [{
|
|
5032
5441
|
type: Component,
|
|
5033
|
-
args: [{ standalone: false, selector: 'vector-crud-header', template: "<div class=\"container\">\
|
|
5442
|
+
args: [{ standalone: false, selector: 'vector-crud-header', template: "<div class=\"container\">\n <div class=\"status-container\">\n <span>Status</span>\n <vector-badge [label]=\"statusLabel\" [type]=\"statusCode\"></vector-badge>\n </div>\n <div class=\"separator\"></div>\n <span class=\"code-label\"\n >C\u00F3digo de identifica\u00E7\u00E3o<span class=\"code\">{{ code }}</span></span\n >\n</div>\n", styles: [".container{display:flex;align-items:center;margin-bottom:15px;justify-content:space-between;flex-wrap:wrap}@media(min-width:441px){.container{justify-content:flex-end;height:40px}}.container .status-container{display:flex;align-items:center}.container .status-container vector-badge{margin-left:15px}.container .separator{width:1px;height:100%;margin:0 20px;background-color:var(--gray-medium)}@media(max-width:440px){.container .separator{display:none}}.container .code-label{color:var(--form-labels-color);font-size:13px;max-width:150px;line-height:1rem}.container .code-label .code{color:#000;font-weight:600;font-size:20px;margin-left:10px}\n"] }]
|
|
5034
5443
|
}], ctorParameters: () => [], propDecorators: { statusCode: [{
|
|
5035
5444
|
type: Input
|
|
5036
5445
|
}], code: [{
|
|
@@ -5133,11 +5542,11 @@ class CrudHistoryComponent {
|
|
|
5133
5542
|
}
|
|
5134
5543
|
}
|
|
5135
5544
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CrudHistoryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5136
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CrudHistoryComponent, isStandalone: false, selector: "vector-crud-history", inputs: { crudHistory: "crudHistory" }, outputs: { onClick: "onClick" }, usesOnChanges: true, ngImport: i0, template: "<p-accordionTab *ngIf=\"crudHistory\" class=\"history-item\">\
|
|
5545
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: CrudHistoryComponent, isStandalone: false, selector: "vector-crud-history", inputs: { crudHistory: "crudHistory" }, outputs: { onClick: "onClick" }, usesOnChanges: true, ngImport: i0, template: "<p-accordionTab *ngIf=\"crudHistory\" class=\"history-item\">\n <ng-template pTemplate=\"header\">\n <div class=\"history-item-header-container\" (click)=\"onClick.emit()\">\n <div class=\"history-item-header-left\">\n <span id=\"color-first-span\" *ngIf=\"crudHistory.typeOfModification\">{{ crudHistory.typeOfModification }}</span>\n <vector-badge\n [customBackgroundColor]=\"getHistoryBadgeBackgroundColor(crudHistory.eventType)\"\n [customColor]=\"getHistoryBadgeColor(crudHistory.eventType)\"\n [label]=\"getHistoryBadgeLabel(crudHistory.eventType)\"\n ></vector-badge>\n <span>por {{ modifierNameLabel }}</span>\n </div>\n <span class=\"history-item-header-right\">\n {{ crudHistory.dateTime | date : 'dd/MM/yyyy HH:mm' }}\n </span>\n </div>\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div *ngFor=\"let auditDelta of crudHistory.dataAuditDelta\">\n <div class=\"grid\">\n <div class=\"col-12 md:col-6 field\">\n <span>{{ auditDelta.fieldName }}</span>\n </div>\n <div class=\"col-12 md:col-6 field\">\n <span class=\"new-value\">{{ auditDelta.newValue }}</span>\n <span class=\"old-value pl-1\">{{ auditDelta.oldValue }}</span>\n <span *ngIf=\"auditDelta.type || auditDelta.type == 0\" class=\"text-600 pl-1\">\n Entity: <span class=\"text-green-300\">{{ auditDelta.type }}</span>\n <i\n class=\"fas fa-info-circle text-400 text-base ch pl-1\"\n [pTooltip]=\"auditDelta.typeDescription\"\n tooltipPosition=\"top\"\n ></i>\n </span>\n </div>\n </div>\n </div>\n </ng-template>\n</p-accordionTab>\n", styles: [".history-item{width:100%;margin:10px 0}.history-item .history-item-header-container{display:flex;align-items:center;justify-content:space-between;width:100%}.history-item .history-item-header-container .history-item-header-left{display:flex;align-items:center}.history-item .history-item-header-container .history-item-header-left span#color-first-span{color:#000;margin-right:10px}.history-item .history-item-header-container .history-item-header-left span{margin-left:15px;color:var(--theme-medium);font-weight:600}.history-item .history-item-header-container .history-item-header-right{font-size:.8rem;color:var(--gray-darker);margin-right:40px}.new-value{color:#83c5be}.old-value{color:#000}\n"], dependencies: [{ 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: i2.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: BadgeComponent, selector: "vector-badge", inputs: ["type", "label", "customColor", "customBackgroundColor", "tooltip"] }, { kind: "component", type: i4$4.AccordionTab, selector: "p-accordionTab, p-accordion-tab, p-accordiontab", inputs: ["id", "header", "headerStyle", "tabStyle", "contentStyle", "tabStyleClass", "headerStyleClass", "contentStyleClass", "disabled", "cache", "transitionOptions", "iconPos", "selected", "headerAriaLevel"], outputs: ["selectedChange"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
|
|
5137
5546
|
}
|
|
5138
5547
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: CrudHistoryComponent, decorators: [{
|
|
5139
5548
|
type: Component,
|
|
5140
|
-
args: [{ standalone: false, selector: 'vector-crud-history', template: "<p-accordionTab *ngIf=\"crudHistory\" class=\"history-item\">\
|
|
5549
|
+
args: [{ standalone: false, selector: 'vector-crud-history', template: "<p-accordionTab *ngIf=\"crudHistory\" class=\"history-item\">\n <ng-template pTemplate=\"header\">\n <div class=\"history-item-header-container\" (click)=\"onClick.emit()\">\n <div class=\"history-item-header-left\">\n <span id=\"color-first-span\" *ngIf=\"crudHistory.typeOfModification\">{{ crudHistory.typeOfModification }}</span>\n <vector-badge\n [customBackgroundColor]=\"getHistoryBadgeBackgroundColor(crudHistory.eventType)\"\n [customColor]=\"getHistoryBadgeColor(crudHistory.eventType)\"\n [label]=\"getHistoryBadgeLabel(crudHistory.eventType)\"\n ></vector-badge>\n <span>por {{ modifierNameLabel }}</span>\n </div>\n <span class=\"history-item-header-right\">\n {{ crudHistory.dateTime | date : 'dd/MM/yyyy HH:mm' }}\n </span>\n </div>\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div *ngFor=\"let auditDelta of crudHistory.dataAuditDelta\">\n <div class=\"grid\">\n <div class=\"col-12 md:col-6 field\">\n <span>{{ auditDelta.fieldName }}</span>\n </div>\n <div class=\"col-12 md:col-6 field\">\n <span class=\"new-value\">{{ auditDelta.newValue }}</span>\n <span class=\"old-value pl-1\">{{ auditDelta.oldValue }}</span>\n <span *ngIf=\"auditDelta.type || auditDelta.type == 0\" class=\"text-600 pl-1\">\n Entity: <span class=\"text-green-300\">{{ auditDelta.type }}</span>\n <i\n class=\"fas fa-info-circle text-400 text-base ch pl-1\"\n [pTooltip]=\"auditDelta.typeDescription\"\n tooltipPosition=\"top\"\n ></i>\n </span>\n </div>\n </div>\n </div>\n </ng-template>\n</p-accordionTab>\n", styles: [".history-item{width:100%;margin:10px 0}.history-item .history-item-header-container{display:flex;align-items:center;justify-content:space-between;width:100%}.history-item .history-item-header-container .history-item-header-left{display:flex;align-items:center}.history-item .history-item-header-container .history-item-header-left span#color-first-span{color:#000;margin-right:10px}.history-item .history-item-header-container .history-item-header-left span{margin-left:15px;color:var(--theme-medium);font-weight:600}.history-item .history-item-header-container .history-item-header-right{font-size:.8rem;color:var(--gray-darker);margin-right:40px}.new-value{color:#83c5be}.old-value{color:#000}\n"] }]
|
|
5141
5550
|
}], propDecorators: { crudHistory: [{
|
|
5142
5551
|
type: Input
|
|
5143
5552
|
}], onClick: [{
|
|
@@ -5176,11 +5585,11 @@ class DrawerComponent {
|
|
|
5176
5585
|
this.visibleChange.emit(value);
|
|
5177
5586
|
}
|
|
5178
5587
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5179
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: DrawerComponent, isStandalone: false, selector: "vector-drawer", inputs: { visible: "visible", position: "position", style: "style", styleClass: "styleClass", modal: "modal", dismissible: "dismissible", showCloseIcon: "showCloseIcon" }, outputs: { visibleChange: "visibleChange", onHide: "onHide", onShow: "onShow" }, ngImport: i0, template: "<p-drawer\
|
|
5588
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: DrawerComponent, isStandalone: false, selector: "vector-drawer", inputs: { visible: "visible", position: "position", style: "style", styleClass: "styleClass", modal: "modal", dismissible: "dismissible", showCloseIcon: "showCloseIcon" }, outputs: { visibleChange: "visibleChange", onHide: "onHide", onShow: "onShow" }, ngImport: i0, template: "<p-drawer\n [visible]=\"visible\"\n (visibleChange)=\"onVisibleChange($event)\"\n [position]=\"position\"\n [style]=\"style\"\n [styleClass]=\"styleClass\"\n [modal]=\"modal\"\n [dismissible]=\"dismissible\"\n [showCloseIcon]=\"showCloseIcon\"\n (onHide)=\"onHide.emit($event)\"\n (onShow)=\"onShow.emit($event)\"\n>\n <ng-template pTemplate=\"header\">\n <ng-content select=\"[vector-drawer-header]\"></ng-content>\n </ng-template>\n <ng-content></ng-content>\n</p-drawer>\n", styles: [""], dependencies: [{ kind: "component", type: i1$7.Drawer, selector: "p-drawer", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "closeButtonProps", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen", "header", "maskStyle", "closable"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
|
|
5180
5589
|
}
|
|
5181
5590
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DrawerComponent, decorators: [{
|
|
5182
5591
|
type: Component,
|
|
5183
|
-
args: [{ standalone: false, selector: 'vector-drawer', template: "<p-drawer\
|
|
5592
|
+
args: [{ standalone: false, selector: 'vector-drawer', template: "<p-drawer\n [visible]=\"visible\"\n (visibleChange)=\"onVisibleChange($event)\"\n [position]=\"position\"\n [style]=\"style\"\n [styleClass]=\"styleClass\"\n [modal]=\"modal\"\n [dismissible]=\"dismissible\"\n [showCloseIcon]=\"showCloseIcon\"\n (onHide)=\"onHide.emit($event)\"\n (onShow)=\"onShow.emit($event)\"\n>\n <ng-template pTemplate=\"header\">\n <ng-content select=\"[vector-drawer-header]\"></ng-content>\n </ng-template>\n <ng-content></ng-content>\n</p-drawer>\n" }]
|
|
5184
5593
|
}], propDecorators: { visible: [{
|
|
5185
5594
|
type: Input
|
|
5186
5595
|
}], visibleChange: [{
|
|
@@ -5235,11 +5644,11 @@ class GenericErrorModalComponent {
|
|
|
5235
5644
|
this.message = '';
|
|
5236
5645
|
}
|
|
5237
5646
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: GenericErrorModalComponent, deps: [{ token: ErrorMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5238
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: GenericErrorModalComponent, isStandalone: false, selector: "vector-generic-error-modal", inputs: { skipMessages: "skipMessages" }, ngImport: i0, template: "<p-dialog\
|
|
5647
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: GenericErrorModalComponent, isStandalone: false, selector: "vector-generic-error-modal", inputs: { skipMessages: "skipMessages" }, ngImport: i0, template: "<p-dialog\n [visible]=\"!!message\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"true\"\n>\n <div class=\"content-container\">\n <img class=\"emote\" src=\".././../../assets/images/emote_bad.svg\" />\n <p class=\"title\">Algo deu errado!</p>\n <p class=\"message\">{{ message }}</p>\n\n <div class=\"actions\">\n <vector-button (click)=\"close()\" label=\"Voltar\"></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".content-container{display:flex;flex-direction:column;justify-content:center;align-items:center}.content-container .title{text-align:center;color:var(--theme-dark);font-weight:600;margin-bottom:20px}.content-container .emote{height:40px;width:40px}@media(min-width:991px){.content-container .emote{height:60px;width:60px}}.content-container .actions{margin-top:20px;width:100%;display:flex;flex-direction:row;justify-content:center;align-items:center}.content-container .actions vector-button{width:75%}\n"], dependencies: [{ kind: "component", type: i2$5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }] }); }
|
|
5239
5648
|
}
|
|
5240
5649
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: GenericErrorModalComponent, decorators: [{
|
|
5241
5650
|
type: Component,
|
|
5242
|
-
args: [{ standalone: false, selector: 'vector-generic-error-modal', template: "<p-dialog\
|
|
5651
|
+
args: [{ standalone: false, selector: 'vector-generic-error-modal', template: "<p-dialog\n [visible]=\"!!message\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"true\"\n>\n <div class=\"content-container\">\n <img class=\"emote\" src=\".././../../assets/images/emote_bad.svg\" />\n <p class=\"title\">Algo deu errado!</p>\n <p class=\"message\">{{ message }}</p>\n\n <div class=\"actions\">\n <vector-button (click)=\"close()\" label=\"Voltar\"></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".content-container{display:flex;flex-direction:column;justify-content:center;align-items:center}.content-container .title{text-align:center;color:var(--theme-dark);font-weight:600;margin-bottom:20px}.content-container .emote{height:40px;width:40px}@media(min-width:991px){.content-container .emote{height:60px;width:60px}}.content-container .actions{margin-top:20px;width:100%;display:flex;flex-direction:row;justify-content:center;align-items:center}.content-container .actions vector-button{width:75%}\n"] }]
|
|
5243
5652
|
}], ctorParameters: () => [{ type: ErrorMessageService }], propDecorators: { skipMessages: [{
|
|
5244
5653
|
type: Input
|
|
5245
5654
|
}] } });
|
|
@@ -5291,11 +5700,11 @@ class GenericModalComponent {
|
|
|
5291
5700
|
this.onCloseModal.emit();
|
|
5292
5701
|
}
|
|
5293
5702
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: GenericModalComponent, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5294
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: GenericModalComponent, isStandalone: false, selector: "vector-generic-modal", inputs: { modalMessage: "modalMessage", isClosable: "isClosable", hiddenActions: "hiddenActions", linkLabel: "linkLabel", linkUrl: "linkUrl", display: "display", maxWidth: "maxWidth", lineBreak: "lineBreak" }, outputs: { displayChange: "displayChange", onCloseModal: "onCloseModal" }, ngImport: i0, template: "<p-dialog\
|
|
5703
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: GenericModalComponent, isStandalone: false, selector: "vector-generic-modal", inputs: { modalMessage: "modalMessage", isClosable: "isClosable", hiddenActions: "hiddenActions", linkLabel: "linkLabel", linkUrl: "linkUrl", display: "display", maxWidth: "maxWidth", lineBreak: "lineBreak" }, outputs: { displayChange: "displayChange", onCloseModal: "onCloseModal" }, ngImport: i0, template: "<p-dialog\n [(visible)]=\"display\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"isClosable\"\n (onHide)=\"hideModal()\"\n [ngStyle]=\"{ 'max-width': maxWidth, 'line-break': lineBreak }\"\n>\n <div class=\"grid modal-generic\">\n <div class=\"col-12\">\n <img\n *ngIf=\"modalMessage.fileIcon\"\n class=\"flex mx-auto mb-3\"\n [ngClass]=\"!isClosable ? 'mt-4' : ''\"\n src=\"assets/images/{{ modalMessage.fileIcon }}.svg\"\n />\n <h1 *ngIf=\"modalMessage.title\">{{ modalMessage.title }}</h1>\n <p *ngFor=\"let text of modalMessage.message\" [innerHTML]=\"text\"></p>\n </div>\n </div>\n\n <div *ngIf=\"linkLabel\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\">\n <vector-button [label]=\"linkLabel\" (click)=\"routerLink(linkUrl)\"></vector-button>\n </div>\n </div>\n\n <div *ngIf=\"!hiddenActions\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.cancelButton\">\n <vector-button\n (onClick)=\"modalMessage.cancelButton && modalMessage.cancelButton.clickFunction()\"\n [label]=\"modalMessage.cancelButton.label\"\n [type]=\"modalMessage.cancelButton.type ? modalMessage.cancelButton.type : 'default'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.confirmButton\">\n <vector-button\n (onClick)=\"modalMessage.confirmButton && modalMessage.confirmButton.clickFunction()\"\n [label]=\"modalMessage.confirmButton.label\"\n [type]=\"modalMessage.confirmButton.type ? modalMessage.confirmButton.type : 'default-filled'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".modal-generic{font-style:normal;font-family:Poppins;text-align:center!important}.modal-generic h1{margin:1em auto!important;font-weight:700;font-size:1.42em!important;line-height:1.2em;letter-spacing:1px;color:#262338}.modal-generic p{margin:0 auto;font-weight:400;font-size:1.07em;line-height:1.5em;letter-spacing:.053em;color:#4e4b66}\n"], dependencies: [{ kind: "component", type: i2$5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { 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"] }] }); }
|
|
5295
5704
|
}
|
|
5296
5705
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: GenericModalComponent, decorators: [{
|
|
5297
5706
|
type: Component,
|
|
5298
|
-
args: [{ standalone: false, selector: 'vector-generic-modal', template: "<p-dialog\
|
|
5707
|
+
args: [{ standalone: false, selector: 'vector-generic-modal', template: "<p-dialog\n [(visible)]=\"display\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"isClosable\"\n (onHide)=\"hideModal()\"\n [ngStyle]=\"{ 'max-width': maxWidth, 'line-break': lineBreak }\"\n>\n <div class=\"grid modal-generic\">\n <div class=\"col-12\">\n <img\n *ngIf=\"modalMessage.fileIcon\"\n class=\"flex mx-auto mb-3\"\n [ngClass]=\"!isClosable ? 'mt-4' : ''\"\n src=\"assets/images/{{ modalMessage.fileIcon }}.svg\"\n />\n <h1 *ngIf=\"modalMessage.title\">{{ modalMessage.title }}</h1>\n <p *ngFor=\"let text of modalMessage.message\" [innerHTML]=\"text\"></p>\n </div>\n </div>\n\n <div *ngIf=\"linkLabel\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\">\n <vector-button [label]=\"linkLabel\" (click)=\"routerLink(linkUrl)\"></vector-button>\n </div>\n </div>\n\n <div *ngIf=\"!hiddenActions\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.cancelButton\">\n <vector-button\n (onClick)=\"modalMessage.cancelButton && modalMessage.cancelButton.clickFunction()\"\n [label]=\"modalMessage.cancelButton.label\"\n [type]=\"modalMessage.cancelButton.type ? modalMessage.cancelButton.type : 'default'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.confirmButton\">\n <vector-button\n (onClick)=\"modalMessage.confirmButton && modalMessage.confirmButton.clickFunction()\"\n [label]=\"modalMessage.confirmButton.label\"\n [type]=\"modalMessage.confirmButton.type ? modalMessage.confirmButton.type : 'default-filled'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".modal-generic{font-style:normal;font-family:Poppins;text-align:center!important}.modal-generic h1{margin:1em auto!important;font-weight:700;font-size:1.42em!important;line-height:1.2em;letter-spacing:1px;color:#262338}.modal-generic p{margin:0 auto;font-weight:400;font-size:1.07em;line-height:1.5em;letter-spacing:.053em;color:#4e4b66}\n"] }]
|
|
5299
5708
|
}], ctorParameters: () => [{ type: i1$1.Router }], propDecorators: { modalMessage: [{
|
|
5300
5709
|
type: Input
|
|
5301
5710
|
}], isClosable: [{
|
|
@@ -5353,11 +5762,11 @@ class SubMenusListComponent {
|
|
|
5353
5762
|
return this.childLevel * 10 + 'px';
|
|
5354
5763
|
}
|
|
5355
5764
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SubMenusListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5356
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SubMenusListComponent, isStandalone: false, 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\">\
|
|
5765
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SubMenusListComponent, isStandalone: false, 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\">\n <ul *ngIf=\"showList\" class=\"sub-menu\">\n <div *ngFor=\"let submenuItem of options\">\n <li class=\"sub-menu-item\" [ngStyle]=\"{ 'padding-left': paddingLeft }\" (click)=\"submenuClick(submenuItem)\">\n <div\n class=\"current-item\"\n [ngClass]=\"{\n 'active-menu': submenuSelected?.id === submenuItem.id,\n 'always-open': !!submenuItem.alwaysOpen,\n 'last-child': !submenuItem.children?.length\n }\"\n >\n <div *ngIf=\"submenuItem.icon\" class=\"icon-container\">\n <i [class]=\"submenuItem.icon\"></i>\n </div>\n <span class=\"menu-label\">{{ submenuItem.label }}</span>\n <i\n *ngIf=\"submenuItem.children?.length && !submenuItem.alwaysOpen\"\n class=\"fas angle-icon\"\n [ngClass]=\"{\n 'fa-angle-down': submenuSelected?.id !== submenuItem.id,\n 'fa-angle-up': submenuSelected?.id === submenuItem.id\n }\"\n ></i>\n </div>\n </li>\n <vector-sub-menus-list\n *ngIf=\"submenuItem?.children\"\n [options]=\"submenuItem?.children\"\n [showList]=\"submenuItem?.id === submenuSelected?.id || !!submenuItem?.alwaysOpen\"\n [childLevel]=\"childLevel + 1\"\n (submenuSelectedChange)=\"submenuClick($event)\"\n ></vector-sub-menus-list>\n </div>\n </ul>\n</div>\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"] }] }); }
|
|
5357
5766
|
}
|
|
5358
5767
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SubMenusListComponent, decorators: [{
|
|
5359
5768
|
type: Component,
|
|
5360
|
-
args: [{ standalone: false, selector: 'vector-sub-menus-list', template: "<div class=\"sub-menu-container\">\
|
|
5769
|
+
args: [{ standalone: false, selector: 'vector-sub-menus-list', template: "<div class=\"sub-menu-container\">\n <ul *ngIf=\"showList\" class=\"sub-menu\">\n <div *ngFor=\"let submenuItem of options\">\n <li class=\"sub-menu-item\" [ngStyle]=\"{ 'padding-left': paddingLeft }\" (click)=\"submenuClick(submenuItem)\">\n <div\n class=\"current-item\"\n [ngClass]=\"{\n 'active-menu': submenuSelected?.id === submenuItem.id,\n 'always-open': !!submenuItem.alwaysOpen,\n 'last-child': !submenuItem.children?.length\n }\"\n >\n <div *ngIf=\"submenuItem.icon\" class=\"icon-container\">\n <i [class]=\"submenuItem.icon\"></i>\n </div>\n <span class=\"menu-label\">{{ submenuItem.label }}</span>\n <i\n *ngIf=\"submenuItem.children?.length && !submenuItem.alwaysOpen\"\n class=\"fas angle-icon\"\n [ngClass]=\"{\n 'fa-angle-down': submenuSelected?.id !== submenuItem.id,\n 'fa-angle-up': submenuSelected?.id === submenuItem.id\n }\"\n ></i>\n </div>\n </li>\n <vector-sub-menus-list\n *ngIf=\"submenuItem?.children\"\n [options]=\"submenuItem?.children\"\n [showList]=\"submenuItem?.id === submenuSelected?.id || !!submenuItem?.alwaysOpen\"\n [childLevel]=\"childLevel + 1\"\n (submenuSelectedChange)=\"submenuClick($event)\"\n ></vector-sub-menus-list>\n </div>\n </ul>\n</div>\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"] }]
|
|
5361
5770
|
}], propDecorators: { showList: [{
|
|
5362
5771
|
type: Input
|
|
5363
5772
|
}], options: [{
|
|
@@ -5562,7 +5971,7 @@ class MenuComponent {
|
|
|
5562
5971
|
this.activeSubmenuOption = undefined;
|
|
5563
5972
|
}
|
|
5564
5973
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: MenuComponent, deps: [{ token: MenuService }, { token: i1$1.Router }, { token: ProfileService }, { token: StorageService }, { token: ENVIRONMENT }, { token: APP_NAME }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5565
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: MenuComponent, isStandalone: false, selector: "vector-menu", inputs: { accountService: "accountService", apps: "apps" }, outputs: { onFinishMenuOptionsConfig: "onFinishMenuOptionsConfig" }, host: { listeners: { "window:resize": "onResize($event)", "document:keydown.escape": "handleKeyboardEvent($event)" } }, ngImport: i0, template: "<nav id=\"menu\" [ngStyle]=\"widthStyle\" [@sideInOut]=\"lastAnimation\">\r\n <div class=\"header-menu\">\r\n <div class=\"logo-container\">\r\n <div class=\"logo\" [ngClass]=\"{ 'logo-small': !opened }\"></div>\r\n </div>\r\n </div>\r\n <div class=\"menu-sections\">\r\n <div class=\"menu-section\">\r\n <span [ngStyle]=\"{ opacity: opened ? 1 : 0 }\" class=\"menu-section-title\">SELE\u00C7\u00C3O DE PORTAL</span>\r\n <ul class=\"side-menu\">\r\n <ng-container *ngIf=\"apps.length\">\r\n <li *ngFor=\"let app of apps\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(app.appName) }\"\r\n (click)=\"navigateToPortal(app)\"\r\n >\r\n <div class=\"icon-container selected-portal-item {{ app.className }}\"></div>\r\n <span class=\"menu-label\">{{ app.description }}</span>\r\n </div>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!apps.length\">\r\n <li>\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.LOGTECH) }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.LOGTECH, isAdmin: false })\"\r\n >\r\n <div class=\"icon-container selected-portal-item logtech\"></div>\r\n <span class=\"menu-label\">Cargas</span>\r\n </div>\r\n </li>\r\n <li *ngIf=\"hasAnyFintechPermission\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.FINTECH) }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: false })\"\r\n >\r\n <div class=\"icon-container selected-portal-item fintech\"></div>\r\n <span class=\"menu-label\">Conta digital</span>\r\n </div>\r\n </li>\r\n <li *ngIf=\"!production\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.MARKETPLACE) }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.MARKETPLACE, isAdmin: false })\"\r\n >\r\n <div class=\"icon-container selected-portal-item marketplace\"></div>\r\n <span class=\"menu-label\">Combust\u00EDvel</span>\r\n </div>\r\n </li>\r\n <li *ngIf=\"adminOption && (hasFintechAdminPermission || hasMarketplaceAdminPermission)\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'active-menu': activeOption?.id === adminOption.id }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: true })\"\r\n >\r\n <div class=\"icon-container selected-portal-item admin\"></div>\r\n <span class=\"menu-label\">Admin Fintech</span>\r\n </div>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div class=\"menu-section\">\r\n <span [ngStyle]=\"{ opacity: opened && options.length ? 1 : 0 }\" class=\"menu-section-title\">MENU</span>\r\n <ul class=\"side-menu\">\r\n <li *ngFor=\"let option of options\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'active-menu': activeOption?.id === option.id, 'always-open': !!option.alwaysOpen }\"\r\n [pTooltip]=\"option.label\"\r\n [tooltipDisabled]=\"opened\"\r\n tooltipPosition=\"right\"\r\n (click)=\"onMenuClick(option)\"\r\n >\r\n <div class=\"icon-container\">\r\n <img\r\n *ngIf=\"option.iconFileName\"\r\n [src]=\"'../../../../assets/icons/' + option.iconFileName + '.svg'\"\r\n class=\"menu-icon\"\r\n />\r\n <i *ngIf=\"option.icon\" class=\"menu-icon {{ option.icon }}\"></i>\r\n <span *ngIf=\"getMenuNotificationsCount(option)\" class=\"menu-notifications-count\">{{\r\n getMenuNotificationsCount(option)\r\n }}</span>\r\n </div>\r\n <span class=\"menu-label\">{{ option.label }}</span>\r\n <i\r\n *ngIf=\"opened && option.children?.length && !option.alwaysOpen\"\r\n class=\"fas angle-icon\"\r\n [ngClass]=\"{\r\n 'fa-angle-down': activeOption?.id !== option.id,\r\n 'fa-angle-up': activeOption?.id === option.id,\r\n }\"\r\n ></i>\r\n </div>\r\n <vector-sub-menus-list\r\n [options]=\"option.children\"\r\n [showList]=\"activeOption?.id === option.id || (!!option.alwaysOpen && opened)\"\r\n [submenuSelected]=\"activeSubmenuOption\"\r\n (submenuSelectedChange)=\"onSubmenuClick($event)\"\r\n ></vector-sub-menus-list>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"footer side-menu-item\">\r\n <div class=\"icon-container\">\r\n <a>\r\n <img src=\"../../../../assets/icons/menu_footer_icon.svg\" (click)=\"openTermsOfUse()\" class=\"menu-icon\" />\r\n </a>\r\n </div>\r\n <span class=\"menu-label footer-content\">\r\n <span> Veja nosso <a (click)=\"openTermsOfUse()\">Termo de uso</a> </span>\r\n <span>e <a (click)=\"openTermsOfUse()\">Pol\u00EDtica de privacidade</a></span>\r\n </span>\r\n </div>\r\n</nav>\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)}nav{height:100vh;min-height:100vh;background-color:#fff;transition:width ease-in-out .2s;display:flex;flex-direction:column;z-index:500;position:sticky;box-shadow:2px 2px 4px #00000029}nav .header-menu{display:flex;justify-content:center;flex-direction:column;width:100%}nav .header-menu .logo-container{height:81px;padding:5px;display:flex;justify-content:center;align-items:center}nav .header-menu .logo-container .logo{background-image:url(/assets/images/vector_logo_horizontal.svg);background-repeat:no-repeat;background-position:center;height:50px;width:150px}nav .header-menu .logo-container .logo-small{background-position-y:center;background-position-x:right}nav .menu-sections{display:flex;flex-direction:column;flex:1;overflow-y:overlay;overflow-x:hidden}nav .menu-sections::-webkit-scrollbar{width:4px}nav .menu-sections .menu-section{margin:5px 10px 0}nav .menu-sections .menu-section:first-child{border-bottom:1px solid var(--gray-light)}nav .menu-sections .menu-section .menu-section-title{color:var(--gray-dark);font-weight:500;font-size:.8em;padding-left:10px;white-space:nowrap;transition:opacity .2s ease-in-out}nav .menu-sections .menu-section .side-menu{padding:0;margin:0;list-style:none;overflow-x:hidden;overflow-y:scroll;-ms-overflow-style:none}nav .menu-sections .menu-section .side-menu::-webkit-scrollbar{display:none}@media screen and (max-width:650px){nav .menu-sections .menu-section .side-menu{background-size:120px;background-position:20px}}nav .menu-sections .menu-section .side-menu-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}nav .menu-sections .menu-section .side-menu-item:not(.always-open){cursor:pointer}nav .menu-sections .menu-section .side-menu-item:hover{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active span{color:#fff}nav .menu-sections .menu-section .side-menu-item.active i{color:#fff}nav .menu-sections .menu-section .fintech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .logtech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .marketplace{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .admin{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .selected-portal-item{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain;background-color:var(--form-labels-color)}nav .menu-sections .menu-section .selected-portal-item:before{content:\"\";width:20px;height:20px;display:block}nav .menu-sections .menu-section .selected-portal{background-color:var(--gray-light);border-radius:15px}nav .menu-sections .menu-section .selected-portal .icon-container{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain}nav .menu-sections .menu-section .selected-portal .icon-container .menu-icon{filter:invert(35%) sepia(100%) saturate(5659%) hue-rotate(210deg) brightness(87%) contrast(118%)}nav .menu-sections .menu-section .selected-portal .selected-portal-item{background-color:var(--theme-primary)}nav .menu-sections .menu-section .selected-portal .marketplace .menu-label{color:var(--success-color)}nav .menu-sections .menu-section .selected-portal .menu-label{color:var(--theme-primary)}nav .footer{display:flex;align-items:center;padding:10px;margin:0 10px;border-top:1px solid var(--gray-light);overflow:hidden;height:50px}nav .footer .footer-icon{width:50px}nav .footer .footer-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;font-size:.8em;text-overflow:hidden;white-space:nowrap}\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: "directive", type: i3.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: SubMenusListComponent, selector: "vector-sub-menus-list", inputs: ["showList", "options", "childLevel", "submenuSelected"], outputs: ["submenuSelectedChange"] }], animations: [
|
|
5974
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: MenuComponent, isStandalone: false, selector: "vector-menu", inputs: { accountService: "accountService", apps: "apps" }, outputs: { onFinishMenuOptionsConfig: "onFinishMenuOptionsConfig" }, host: { listeners: { "window:resize": "onResize($event)", "document:keydown.escape": "handleKeyboardEvent($event)" } }, ngImport: i0, template: "<nav id=\"menu\" [ngStyle]=\"widthStyle\" [@sideInOut]=\"lastAnimation\">\n <div class=\"header-menu\">\n <div class=\"logo-container\">\n <div class=\"logo\" [ngClass]=\"{ 'logo-small': !opened }\"></div>\n </div>\n </div>\n <div class=\"menu-sections\">\n <div class=\"menu-section\">\n <span [ngStyle]=\"{ opacity: opened ? 1 : 0 }\" class=\"menu-section-title\">SELE\u00C7\u00C3O DE PORTAL</span>\n <ul class=\"side-menu\">\n <ng-container *ngIf=\"apps.length\">\n <li *ngFor=\"let app of apps\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(app.appName) }\"\n (click)=\"navigateToPortal(app)\"\n >\n <div class=\"icon-container selected-portal-item {{ app.className }}\"></div>\n <span class=\"menu-label\">{{ app.description }}</span>\n </div>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!apps.length\">\n <li>\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.LOGTECH) }\"\n (click)=\"navigateToPortal({ appName: appsEnum.LOGTECH, isAdmin: false })\"\n >\n <div class=\"icon-container selected-portal-item logtech\"></div>\n <span class=\"menu-label\">Cargas</span>\n </div>\n </li>\n <li *ngIf=\"hasAnyFintechPermission\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.FINTECH) }\"\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: false })\"\n >\n <div class=\"icon-container selected-portal-item fintech\"></div>\n <span class=\"menu-label\">Conta digital</span>\n </div>\n </li>\n <li *ngIf=\"!production\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.MARKETPLACE) }\"\n (click)=\"navigateToPortal({ appName: appsEnum.MARKETPLACE, isAdmin: false })\"\n >\n <div class=\"icon-container selected-portal-item marketplace\"></div>\n <span class=\"menu-label\">Combust\u00EDvel</span>\n </div>\n </li>\n <li *ngIf=\"adminOption && (hasFintechAdminPermission || hasMarketplaceAdminPermission)\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'active-menu': activeOption?.id === adminOption.id }\"\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: true })\"\n >\n <div class=\"icon-container selected-portal-item admin\"></div>\n <span class=\"menu-label\">Admin Fintech</span>\n </div>\n </li>\n </ng-container>\n </ul>\n </div>\n <div class=\"menu-section\">\n <span [ngStyle]=\"{ opacity: opened && options.length ? 1 : 0 }\" class=\"menu-section-title\">MENU</span>\n <ul class=\"side-menu\">\n <li *ngFor=\"let option of options\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'active-menu': activeOption?.id === option.id, 'always-open': !!option.alwaysOpen }\"\n [pTooltip]=\"option.label\"\n [tooltipDisabled]=\"opened\"\n tooltipPosition=\"right\"\n (click)=\"onMenuClick(option)\"\n >\n <div class=\"icon-container\">\n <img\n *ngIf=\"option.iconFileName\"\n [src]=\"'../../../../assets/icons/' + option.iconFileName + '.svg'\"\n class=\"menu-icon\"\n />\n <i *ngIf=\"option.icon\" class=\"menu-icon {{ option.icon }}\"></i>\n <span *ngIf=\"getMenuNotificationsCount(option)\" class=\"menu-notifications-count\">{{\n getMenuNotificationsCount(option)\n }}</span>\n </div>\n <span class=\"menu-label\">{{ option.label }}</span>\n <i\n *ngIf=\"opened && option.children?.length && !option.alwaysOpen\"\n class=\"fas angle-icon\"\n [ngClass]=\"{\n 'fa-angle-down': activeOption?.id !== option.id,\n 'fa-angle-up': activeOption?.id === option.id,\n }\"\n ></i>\n </div>\n <vector-sub-menus-list\n [options]=\"option.children\"\n [showList]=\"activeOption?.id === option.id || (!!option.alwaysOpen && opened)\"\n [submenuSelected]=\"activeSubmenuOption\"\n (submenuSelectedChange)=\"onSubmenuClick($event)\"\n ></vector-sub-menus-list>\n </li>\n </ul>\n </div>\n </div>\n <div class=\"footer side-menu-item\">\n <div class=\"icon-container\">\n <a>\n <img src=\"../../../../assets/icons/menu_footer_icon.svg\" (click)=\"openTermsOfUse()\" class=\"menu-icon\" />\n </a>\n </div>\n <span class=\"menu-label footer-content\">\n <span> Veja nosso <a (click)=\"openTermsOfUse()\">Termo de uso</a> </span>\n <span>e <a (click)=\"openTermsOfUse()\">Pol\u00EDtica de privacidade</a></span>\n </span>\n </div>\n</nav>\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)}nav{height:100vh;min-height:100vh;background-color:#fff;transition:width ease-in-out .2s;display:flex;flex-direction:column;z-index:500;position:sticky;box-shadow:2px 2px 4px #00000029}nav .header-menu{display:flex;justify-content:center;flex-direction:column;width:100%}nav .header-menu .logo-container{height:81px;padding:5px;display:flex;justify-content:center;align-items:center}nav .header-menu .logo-container .logo{background-image:url(/assets/images/vector_logo_horizontal.svg);background-repeat:no-repeat;background-position:center;height:50px;width:150px}nav .header-menu .logo-container .logo-small{background-position-y:center;background-position-x:right}nav .menu-sections{display:flex;flex-direction:column;flex:1;overflow-y:overlay;overflow-x:hidden}nav .menu-sections::-webkit-scrollbar{width:4px}nav .menu-sections .menu-section{margin:5px 10px 0}nav .menu-sections .menu-section:first-child{border-bottom:1px solid var(--gray-light)}nav .menu-sections .menu-section .menu-section-title{color:var(--gray-dark);font-weight:500;font-size:.8em;padding-left:10px;white-space:nowrap;transition:opacity .2s ease-in-out}nav .menu-sections .menu-section .side-menu{padding:0;margin:0;list-style:none;overflow-x:hidden;overflow-y:scroll;-ms-overflow-style:none}nav .menu-sections .menu-section .side-menu::-webkit-scrollbar{display:none}@media screen and (max-width:650px){nav .menu-sections .menu-section .side-menu{background-size:120px;background-position:20px}}nav .menu-sections .menu-section .side-menu-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}nav .menu-sections .menu-section .side-menu-item:not(.always-open){cursor:pointer}nav .menu-sections .menu-section .side-menu-item:hover{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active span{color:#fff}nav .menu-sections .menu-section .side-menu-item.active i{color:#fff}nav .menu-sections .menu-section .fintech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .logtech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .marketplace{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .admin{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .selected-portal-item{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain;background-color:var(--form-labels-color)}nav .menu-sections .menu-section .selected-portal-item:before{content:\"\";width:20px;height:20px;display:block}nav .menu-sections .menu-section .selected-portal{background-color:var(--gray-light);border-radius:15px}nav .menu-sections .menu-section .selected-portal .icon-container{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain}nav .menu-sections .menu-section .selected-portal .icon-container .menu-icon{filter:invert(35%) sepia(100%) saturate(5659%) hue-rotate(210deg) brightness(87%) contrast(118%)}nav .menu-sections .menu-section .selected-portal .selected-portal-item{background-color:var(--theme-primary)}nav .menu-sections .menu-section .selected-portal .marketplace .menu-label{color:var(--success-color)}nav .menu-sections .menu-section .selected-portal .menu-label{color:var(--theme-primary)}nav .footer{display:flex;align-items:center;padding:10px;margin:0 10px;border-top:1px solid var(--gray-light);overflow:hidden;height:50px}nav .footer .footer-icon{width:50px}nav .footer .footer-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;font-size:.8em;text-overflow:hidden;white-space:nowrap}\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: "directive", type: i2.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: SubMenusListComponent, selector: "vector-sub-menus-list", inputs: ["showList", "options", "childLevel", "submenuSelected"], outputs: ["submenuSelectedChange"] }], animations: [
|
|
5566
5975
|
trigger('sideInOut', [state('in', style({ width: '60px' })), state('out', style({ width: '250px' }))]),
|
|
5567
5976
|
trigger('fadeInOut', [
|
|
5568
5977
|
state('0', style({
|
|
@@ -5644,7 +6053,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
|
|
|
5644
6053
|
})),
|
|
5645
6054
|
transition('0 <=> 1', animate('350ms ease-in-out')),
|
|
5646
6055
|
]),
|
|
5647
|
-
], template: "<nav id=\"menu\" [ngStyle]=\"widthStyle\" [@sideInOut]=\"lastAnimation\">\r\n <div class=\"header-menu\">\r\n <div class=\"logo-container\">\r\n <div class=\"logo\" [ngClass]=\"{ 'logo-small': !opened }\"></div>\r\n </div>\r\n </div>\r\n <div class=\"menu-sections\">\r\n <div class=\"menu-section\">\r\n <span [ngStyle]=\"{ opacity: opened ? 1 : 0 }\" class=\"menu-section-title\">SELE\u00C7\u00C3O DE PORTAL</span>\r\n <ul class=\"side-menu\">\r\n <ng-container *ngIf=\"apps.length\">\r\n <li *ngFor=\"let app of apps\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(app.appName) }\"\r\n (click)=\"navigateToPortal(app)\"\r\n >\r\n <div class=\"icon-container selected-portal-item {{ app.className }}\"></div>\r\n <span class=\"menu-label\">{{ app.description }}</span>\r\n </div>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!apps.length\">\r\n <li>\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.LOGTECH) }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.LOGTECH, isAdmin: false })\"\r\n >\r\n <div class=\"icon-container selected-portal-item logtech\"></div>\r\n <span class=\"menu-label\">Cargas</span>\r\n </div>\r\n </li>\r\n <li *ngIf=\"hasAnyFintechPermission\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.FINTECH) }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: false })\"\r\n >\r\n <div class=\"icon-container selected-portal-item fintech\"></div>\r\n <span class=\"menu-label\">Conta digital</span>\r\n </div>\r\n </li>\r\n <li *ngIf=\"!production\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.MARKETPLACE) }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.MARKETPLACE, isAdmin: false })\"\r\n >\r\n <div class=\"icon-container selected-portal-item marketplace\"></div>\r\n <span class=\"menu-label\">Combust\u00EDvel</span>\r\n </div>\r\n </li>\r\n <li *ngIf=\"adminOption && (hasFintechAdminPermission || hasMarketplaceAdminPermission)\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'active-menu': activeOption?.id === adminOption.id }\"\r\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: true })\"\r\n >\r\n <div class=\"icon-container selected-portal-item admin\"></div>\r\n <span class=\"menu-label\">Admin Fintech</span>\r\n </div>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div class=\"menu-section\">\r\n <span [ngStyle]=\"{ opacity: opened && options.length ? 1 : 0 }\" class=\"menu-section-title\">MENU</span>\r\n <ul class=\"side-menu\">\r\n <li *ngFor=\"let option of options\">\r\n <div\r\n class=\"side-menu-item\"\r\n [ngClass]=\"{ 'active-menu': activeOption?.id === option.id, 'always-open': !!option.alwaysOpen }\"\r\n [pTooltip]=\"option.label\"\r\n [tooltipDisabled]=\"opened\"\r\n tooltipPosition=\"right\"\r\n (click)=\"onMenuClick(option)\"\r\n >\r\n <div class=\"icon-container\">\r\n <img\r\n *ngIf=\"option.iconFileName\"\r\n [src]=\"'../../../../assets/icons/' + option.iconFileName + '.svg'\"\r\n class=\"menu-icon\"\r\n />\r\n <i *ngIf=\"option.icon\" class=\"menu-icon {{ option.icon }}\"></i>\r\n <span *ngIf=\"getMenuNotificationsCount(option)\" class=\"menu-notifications-count\">{{\r\n getMenuNotificationsCount(option)\r\n }}</span>\r\n </div>\r\n <span class=\"menu-label\">{{ option.label }}</span>\r\n <i\r\n *ngIf=\"opened && option.children?.length && !option.alwaysOpen\"\r\n class=\"fas angle-icon\"\r\n [ngClass]=\"{\r\n 'fa-angle-down': activeOption?.id !== option.id,\r\n 'fa-angle-up': activeOption?.id === option.id,\r\n }\"\r\n ></i>\r\n </div>\r\n <vector-sub-menus-list\r\n [options]=\"option.children\"\r\n [showList]=\"activeOption?.id === option.id || (!!option.alwaysOpen && opened)\"\r\n [submenuSelected]=\"activeSubmenuOption\"\r\n (submenuSelectedChange)=\"onSubmenuClick($event)\"\r\n ></vector-sub-menus-list>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"footer side-menu-item\">\r\n <div class=\"icon-container\">\r\n <a>\r\n <img src=\"../../../../assets/icons/menu_footer_icon.svg\" (click)=\"openTermsOfUse()\" class=\"menu-icon\" />\r\n </a>\r\n </div>\r\n <span class=\"menu-label footer-content\">\r\n <span> Veja nosso <a (click)=\"openTermsOfUse()\">Termo de uso</a> </span>\r\n <span>e <a (click)=\"openTermsOfUse()\">Pol\u00EDtica de privacidade</a></span>\r\n </span>\r\n </div>\r\n</nav>\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)}nav{height:100vh;min-height:100vh;background-color:#fff;transition:width ease-in-out .2s;display:flex;flex-direction:column;z-index:500;position:sticky;box-shadow:2px 2px 4px #00000029}nav .header-menu{display:flex;justify-content:center;flex-direction:column;width:100%}nav .header-menu .logo-container{height:81px;padding:5px;display:flex;justify-content:center;align-items:center}nav .header-menu .logo-container .logo{background-image:url(/assets/images/vector_logo_horizontal.svg);background-repeat:no-repeat;background-position:center;height:50px;width:150px}nav .header-menu .logo-container .logo-small{background-position-y:center;background-position-x:right}nav .menu-sections{display:flex;flex-direction:column;flex:1;overflow-y:overlay;overflow-x:hidden}nav .menu-sections::-webkit-scrollbar{width:4px}nav .menu-sections .menu-section{margin:5px 10px 0}nav .menu-sections .menu-section:first-child{border-bottom:1px solid var(--gray-light)}nav .menu-sections .menu-section .menu-section-title{color:var(--gray-dark);font-weight:500;font-size:.8em;padding-left:10px;white-space:nowrap;transition:opacity .2s ease-in-out}nav .menu-sections .menu-section .side-menu{padding:0;margin:0;list-style:none;overflow-x:hidden;overflow-y:scroll;-ms-overflow-style:none}nav .menu-sections .menu-section .side-menu::-webkit-scrollbar{display:none}@media screen and (max-width:650px){nav .menu-sections .menu-section .side-menu{background-size:120px;background-position:20px}}nav .menu-sections .menu-section .side-menu-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}nav .menu-sections .menu-section .side-menu-item:not(.always-open){cursor:pointer}nav .menu-sections .menu-section .side-menu-item:hover{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active span{color:#fff}nav .menu-sections .menu-section .side-menu-item.active i{color:#fff}nav .menu-sections .menu-section .fintech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .logtech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .marketplace{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .admin{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A</svg>%0D%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A</svg>%0D%0A');-o-prop:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0D%0A</svg>%0D%0A')}nav .menu-sections .menu-section .selected-portal-item{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain;background-color:var(--form-labels-color)}nav .menu-sections .menu-section .selected-portal-item:before{content:\"\";width:20px;height:20px;display:block}nav .menu-sections .menu-section .selected-portal{background-color:var(--gray-light);border-radius:15px}nav .menu-sections .menu-section .selected-portal .icon-container{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain}nav .menu-sections .menu-section .selected-portal .icon-container .menu-icon{filter:invert(35%) sepia(100%) saturate(5659%) hue-rotate(210deg) brightness(87%) contrast(118%)}nav .menu-sections .menu-section .selected-portal .selected-portal-item{background-color:var(--theme-primary)}nav .menu-sections .menu-section .selected-portal .marketplace .menu-label{color:var(--success-color)}nav .menu-sections .menu-section .selected-portal .menu-label{color:var(--theme-primary)}nav .footer{display:flex;align-items:center;padding:10px;margin:0 10px;border-top:1px solid var(--gray-light);overflow:hidden;height:50px}nav .footer .footer-icon{width:50px}nav .footer .footer-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;font-size:.8em;text-overflow:hidden;white-space:nowrap}\n"] }]
|
|
6056
|
+
], template: "<nav id=\"menu\" [ngStyle]=\"widthStyle\" [@sideInOut]=\"lastAnimation\">\n <div class=\"header-menu\">\n <div class=\"logo-container\">\n <div class=\"logo\" [ngClass]=\"{ 'logo-small': !opened }\"></div>\n </div>\n </div>\n <div class=\"menu-sections\">\n <div class=\"menu-section\">\n <span [ngStyle]=\"{ opacity: opened ? 1 : 0 }\" class=\"menu-section-title\">SELE\u00C7\u00C3O DE PORTAL</span>\n <ul class=\"side-menu\">\n <ng-container *ngIf=\"apps.length\">\n <li *ngFor=\"let app of apps\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(app.appName) }\"\n (click)=\"navigateToPortal(app)\"\n >\n <div class=\"icon-container selected-portal-item {{ app.className }}\"></div>\n <span class=\"menu-label\">{{ app.description }}</span>\n </div>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!apps.length\">\n <li>\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.LOGTECH) }\"\n (click)=\"navigateToPortal({ appName: appsEnum.LOGTECH, isAdmin: false })\"\n >\n <div class=\"icon-container selected-portal-item logtech\"></div>\n <span class=\"menu-label\">Cargas</span>\n </div>\n </li>\n <li *ngIf=\"hasAnyFintechPermission\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.FINTECH) }\"\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: false })\"\n >\n <div class=\"icon-container selected-portal-item fintech\"></div>\n <span class=\"menu-label\">Conta digital</span>\n </div>\n </li>\n <li *ngIf=\"!production\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'selected-portal': isPortalSelected(appsEnum.MARKETPLACE) }\"\n (click)=\"navigateToPortal({ appName: appsEnum.MARKETPLACE, isAdmin: false })\"\n >\n <div class=\"icon-container selected-portal-item marketplace\"></div>\n <span class=\"menu-label\">Combust\u00EDvel</span>\n </div>\n </li>\n <li *ngIf=\"adminOption && (hasFintechAdminPermission || hasMarketplaceAdminPermission)\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'active-menu': activeOption?.id === adminOption.id }\"\n (click)=\"navigateToPortal({ appName: appsEnum.FINTECH, isAdmin: true })\"\n >\n <div class=\"icon-container selected-portal-item admin\"></div>\n <span class=\"menu-label\">Admin Fintech</span>\n </div>\n </li>\n </ng-container>\n </ul>\n </div>\n <div class=\"menu-section\">\n <span [ngStyle]=\"{ opacity: opened && options.length ? 1 : 0 }\" class=\"menu-section-title\">MENU</span>\n <ul class=\"side-menu\">\n <li *ngFor=\"let option of options\">\n <div\n class=\"side-menu-item\"\n [ngClass]=\"{ 'active-menu': activeOption?.id === option.id, 'always-open': !!option.alwaysOpen }\"\n [pTooltip]=\"option.label\"\n [tooltipDisabled]=\"opened\"\n tooltipPosition=\"right\"\n (click)=\"onMenuClick(option)\"\n >\n <div class=\"icon-container\">\n <img\n *ngIf=\"option.iconFileName\"\n [src]=\"'../../../../assets/icons/' + option.iconFileName + '.svg'\"\n class=\"menu-icon\"\n />\n <i *ngIf=\"option.icon\" class=\"menu-icon {{ option.icon }}\"></i>\n <span *ngIf=\"getMenuNotificationsCount(option)\" class=\"menu-notifications-count\">{{\n getMenuNotificationsCount(option)\n }}</span>\n </div>\n <span class=\"menu-label\">{{ option.label }}</span>\n <i\n *ngIf=\"opened && option.children?.length && !option.alwaysOpen\"\n class=\"fas angle-icon\"\n [ngClass]=\"{\n 'fa-angle-down': activeOption?.id !== option.id,\n 'fa-angle-up': activeOption?.id === option.id,\n }\"\n ></i>\n </div>\n <vector-sub-menus-list\n [options]=\"option.children\"\n [showList]=\"activeOption?.id === option.id || (!!option.alwaysOpen && opened)\"\n [submenuSelected]=\"activeSubmenuOption\"\n (submenuSelectedChange)=\"onSubmenuClick($event)\"\n ></vector-sub-menus-list>\n </li>\n </ul>\n </div>\n </div>\n <div class=\"footer side-menu-item\">\n <div class=\"icon-container\">\n <a>\n <img src=\"../../../../assets/icons/menu_footer_icon.svg\" (click)=\"openTermsOfUse()\" class=\"menu-icon\" />\n </a>\n </div>\n <span class=\"menu-label footer-content\">\n <span> Veja nosso <a (click)=\"openTermsOfUse()\">Termo de uso</a> </span>\n <span>e <a (click)=\"openTermsOfUse()\">Pol\u00EDtica de privacidade</a></span>\n </span>\n </div>\n</nav>\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)}nav{height:100vh;min-height:100vh;background-color:#fff;transition:width ease-in-out .2s;display:flex;flex-direction:column;z-index:500;position:sticky;box-shadow:2px 2px 4px #00000029}nav .header-menu{display:flex;justify-content:center;flex-direction:column;width:100%}nav .header-menu .logo-container{height:81px;padding:5px;display:flex;justify-content:center;align-items:center}nav .header-menu .logo-container .logo{background-image:url(/assets/images/vector_logo_horizontal.svg);background-repeat:no-repeat;background-position:center;height:50px;width:150px}nav .header-menu .logo-container .logo-small{background-position-y:center;background-position-x:right}nav .menu-sections{display:flex;flex-direction:column;flex:1;overflow-y:overlay;overflow-x:hidden}nav .menu-sections::-webkit-scrollbar{width:4px}nav .menu-sections .menu-section{margin:5px 10px 0}nav .menu-sections .menu-section:first-child{border-bottom:1px solid var(--gray-light)}nav .menu-sections .menu-section .menu-section-title{color:var(--gray-dark);font-weight:500;font-size:.8em;padding-left:10px;white-space:nowrap;transition:opacity .2s ease-in-out}nav .menu-sections .menu-section .side-menu{padding:0;margin:0;list-style:none;overflow-x:hidden;overflow-y:scroll;-ms-overflow-style:none}nav .menu-sections .menu-section .side-menu::-webkit-scrollbar{display:none}@media screen and (max-width:650px){nav .menu-sections .menu-section .side-menu{background-size:120px;background-position:20px}}nav .menu-sections .menu-section .side-menu-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}nav .menu-sections .menu-section .side-menu-item:not(.always-open){cursor:pointer}nav .menu-sections .menu-section .side-menu-item:hover{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active{background-color:var(--gray-light)}nav .menu-sections .menu-section .side-menu-item.active span{color:#fff}nav .menu-sections .menu-section .side-menu-item.active i{color:#fff}nav .menu-sections .menu-section .fintech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"35\" height=\"35\" viewBox=\"0 0 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.5 0C14.0388 0 10.6554 1.02636 7.77753 2.94928C4.89967 4.87221 2.65665 7.60533 1.33212 10.803C0.00758245 14.0007 -0.338976 17.5194 0.336265 20.9141C1.01151 24.3087 2.67822 27.4269 5.12564 29.8744C7.57306 32.3218 10.6913 33.9885 14.0859 34.6637C17.4806 35.339 20.9993 34.9924 24.197 33.6679C27.3947 32.3434 30.1278 30.1003 32.0507 27.2225C33.9736 24.3446 35 20.9612 35 17.5C34.9981 12.8593 33.1538 8.40918 29.8723 5.1277C26.5908 1.84622 22.1407 0.00187031 17.5 0ZM19.0402 27.5812V29.7512H15.9774V27.4929C14.7019 27.2047 13.5315 26.5677 12.5969 25.653C11.6623 24.7384 11.0002 23.582 10.6846 22.313L13.585 21.1415C13.7924 22.1249 14.3147 23.014 15.0727 23.6739C15.8307 24.3339 16.7832 24.7288 17.7858 24.7989C19.4143 24.7989 21.2509 23.9591 21.2509 21.976C21.2509 20.2964 20.0265 19.4213 17.2601 18.4227C15.3352 17.7399 11.3973 16.6196 11.3973 12.6306C11.4319 11.3659 11.9105 10.1538 12.7492 9.20665C13.5879 8.25952 14.7333 7.63784 15.9845 7.4506V5.25053H19.0473V7.42061C20.1005 7.59773 21.0873 8.05283 21.9059 8.7389C22.7244 9.42497 23.3449 10.3171 23.7033 11.3232L20.9386 12.4965C20.7138 11.7977 20.2678 11.191 19.6678 10.768C19.0679 10.345 18.3466 10.1287 17.6129 10.1517C16.3885 10.1517 14.4372 10.7992 14.4372 12.5847C14.4372 14.2466 15.9421 14.8783 19.0579 15.9104C23.2586 17.3624 24.326 19.4972 24.326 21.9478C24.2905 23.372 23.732 24.7333 22.7572 25.7723C21.7824 26.8112 20.4593 27.4551 19.0402 27.5812Z\" fill=\"%234E4B66\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .logtech{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<rect x=\"1\" y=\"3\" width=\"14\" height=\"13\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<path d=\"M15 8H19L23 12V16H15V8Z\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"5.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A<circle cx=\"17.5\" cy=\"18.5\" r=\"2.5\" stroke=\"%2314142B\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .marketplace{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<path d=\"M17.0131 23.19V2.74561C17.0387 2.3768 16.9901 2.00661 16.8701 1.65691C16.7502 1.3072 16.5614 0.985084 16.3149 0.709586C16.0394 0.4611 15.7166 0.270786 15.3658 0.150048C15.015 0.0293103 14.6434 -0.019366 14.2733 0.0069356H4.46056C4.09267 -0.0188504 3.72335 0.0295727 3.37454 0.149328C3.02573 0.269083 2.70454 0.457728 2.43007 0.704053C2.18319 0.980172 1.99427 1.30306 1.87452 1.65356C1.75477 2.00406 1.70663 2.37505 1.73295 2.7445V23.19H3.52001V2.79098C3.50174 2.6559 3.51491 2.51842 3.5585 2.38927C3.60209 2.26012 3.67491 2.14277 3.7713 2.04639C3.86769 1.95 3.98503 1.87718 4.11418 1.83359C4.24334 1.79 4.38081 1.77683 4.51589 1.7951H14.2302C14.3627 1.78615 14.4956 1.80397 14.6211 1.84751C14.7466 1.89104 14.862 1.9594 14.9605 2.04849C15.0504 2.14871 15.1193 2.26598 15.163 2.39334C15.2067 2.5207 15.2244 2.65555 15.215 2.78987V23.19H17.0131ZM0.000119503 23.0959C-0.0018524 23.2149 0.020598 23.3331 0.0660845 23.4431C0.111571 23.5531 0.179127 23.6526 0.264581 23.7355C0.3459 23.8202 0.44372 23.8874 0.552008 23.9329C0.660295 23.9784 0.776754 24.0012 0.8942 23.9999H17.8397C18.078 23.9999 18.3065 23.9053 18.475 23.7368C18.6435 23.5683 18.7382 23.3397 18.7382 23.1014C18.7382 22.8631 18.6435 22.6346 18.475 22.4661C18.3065 22.2976 18.078 22.2029 17.8397 22.2029H0.8942C0.657979 22.2052 0.432068 22.3 0.264923 22.467C0.0977786 22.6339 0.00271379 22.8597 0.000119503 23.0959ZM5.97099 11.8546H12.7762C13.079 11.8689 13.3757 11.7663 13.605 11.568C13.7086 11.4741 13.7905 11.3587 13.845 11.2299C13.8995 11.1011 13.9252 10.962 13.9203 10.8222V4.30361C13.9257 4.16231 13.9003 4.02152 13.8459 3.89101C13.7914 3.76051 13.7092 3.64341 13.605 3.54785C13.3759 3.34906 13.0791 3.24604 12.7762 3.26015H5.97099C5.66751 3.24617 5.37031 3.3496 5.14108 3.54896C5.03685 3.64452 4.95465 3.76161 4.9002 3.89212C4.84574 4.02262 4.82033 4.16341 4.82572 4.30472V10.8211C4.82089 10.9609 4.8466 11.1 4.90107 11.2288C4.95554 11.3576 5.03745 11.473 5.14108 11.5669C5.37054 11.7658 5.66768 11.8688 5.97099 11.8546ZM20.5529 20.9282C20.8783 20.942 21.2029 20.8877 21.506 20.7688C21.8092 20.6499 22.0842 20.469 22.3134 20.2377C22.5397 19.9927 22.7149 19.705 22.8289 19.3916C22.9428 19.0781 22.9933 18.7451 22.9773 18.4119V7.80469C23.0209 6.66199 22.7734 5.52696 22.2581 4.50611C21.7875 3.69811 21.0226 3.10337 20.1236 2.84631C20.0268 2.8156 19.9247 2.80535 19.8237 2.8162C19.7228 2.82706 19.6252 2.85879 19.5371 2.90938C19.4464 2.95571 19.3659 3.01986 19.3005 3.098C19.2351 3.17614 19.1861 3.26666 19.1565 3.36416C19.1257 3.46322 19.1151 3.56744 19.1254 3.67065C19.1356 3.77386 19.1665 3.87396 19.2162 3.96501C19.2626 4.05729 19.328 4.13872 19.4081 4.20394C19.4882 4.26916 19.5812 4.3167 19.681 4.34345C19.8901 4.40746 20.0893 4.50019 20.273 4.61898C20.5181 4.78313 20.7237 4.9997 20.8749 5.25302C21.0935 5.6233 21.2435 6.03003 21.3175 6.45361H19.9012C19.789 6.45151 19.6775 6.47205 19.5735 6.51402C19.4694 6.55598 19.3749 6.6185 19.2956 6.69783C19.2162 6.77717 19.1537 6.87169 19.1117 6.97575C19.0698 7.0798 19.0492 7.19125 19.0513 7.30343V11.3456C19.0519 11.5708 19.1417 11.7866 19.3009 11.9459C19.4601 12.1051 19.676 12.1948 19.9012 12.1954H21.4282V18.4086C21.4406 18.6594 21.3539 18.905 21.187 19.0925C21.1062 19.1774 21.0083 19.2441 20.8997 19.2882C20.7911 19.3322 20.6744 19.3527 20.5573 19.3481C20.2933 19.3609 20.0348 19.2691 19.8381 19.0925C19.7472 19.0041 19.676 18.8975 19.6293 18.7796C19.5825 18.6617 19.5613 18.5353 19.567 18.4086V16.6902C19.5891 16.32 19.5347 15.9492 19.4071 15.601C19.2796 15.2528 19.0816 14.9346 18.8256 14.6663C18.2624 14.1583 17.5205 13.8949 16.763 13.9338V15.5062C17.0986 15.4886 17.428 15.6012 17.6826 15.8204C17.7992 15.934 17.8902 16.0713 17.9492 16.2231C18.0082 16.3749 18.0338 16.5376 18.0245 16.7001V18.4075C18.0094 18.7432 18.0633 19.0784 18.1828 19.3924C18.3023 19.7064 18.4849 19.9926 18.7194 20.2333C18.962 20.4673 19.2496 20.6495 19.5648 20.7689C19.88 20.8884 20.2162 20.9426 20.5529 20.9282Z\" fill=\"%2314142B\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .admin{-webkit-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A</svg>%0A');-moz-mask-image:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A</svg>%0A');-o-prop:url('data:image/svg+xml,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0A<circle cx=\"13\" cy=\"13\" r=\"4\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A<path d=\"M11.2844 2.86293C12.061 1.56696 13.939 1.56696 14.7156 2.86293L15.4213 4.0407C15.8742 4.79649 16.7684 5.16686 17.6231 4.95268L18.9549 4.61892C20.4204 4.25166 21.7483 5.57958 21.3811 7.0451L21.0473 8.37695C20.8331 9.23162 21.2035 10.1258 21.9593 10.5787L23.1371 11.2844C24.433 12.061 24.433 13.939 23.1371 14.7156L21.9593 15.4213C21.2035 15.8742 20.8331 16.7684 21.0473 17.6231L21.3811 18.9549C21.7483 20.4204 20.4204 21.7483 18.9549 21.3811L17.6231 21.0473C16.7684 20.8331 15.8742 21.2035 15.4213 21.9593L14.7156 23.1371C13.939 24.433 12.061 24.433 11.2844 23.1371L10.5787 21.9593C10.1258 21.2035 9.23162 20.8331 8.37695 21.0473L7.04509 21.3811C5.57958 21.7483 4.25166 20.4204 4.61892 18.9549L4.95268 17.6231C5.16686 16.7684 4.79649 15.8742 4.04069 15.4213L2.86293 14.7156C1.56696 13.939 1.56696 12.061 2.86293 11.2844L4.0407 10.5787C4.79649 10.1258 5.16686 9.23162 4.95268 8.37695L4.61892 7.04509C4.25166 5.57958 5.57958 4.25166 7.0451 4.61892L8.37695 4.95268C9.23162 5.16686 10.1258 4.79649 10.5787 4.04069L11.2844 2.86293Z\" stroke=\"%2314142B\" stroke-width=\"2\"/>%0A</svg>%0A')}nav .menu-sections .menu-section .selected-portal-item{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain;background-color:var(--form-labels-color)}nav .menu-sections .menu-section .selected-portal-item:before{content:\"\";width:20px;height:20px;display:block}nav .menu-sections .menu-section .selected-portal{background-color:var(--gray-light);border-radius:15px}nav .menu-sections .menu-section .selected-portal .icon-container{-webkit-mask-size:contain;-moz-mask-size:contain;-o-prop:contain}nav .menu-sections .menu-section .selected-portal .icon-container .menu-icon{filter:invert(35%) sepia(100%) saturate(5659%) hue-rotate(210deg) brightness(87%) contrast(118%)}nav .menu-sections .menu-section .selected-portal .selected-portal-item{background-color:var(--theme-primary)}nav .menu-sections .menu-section .selected-portal .marketplace .menu-label{color:var(--success-color)}nav .menu-sections .menu-section .selected-portal .menu-label{color:var(--theme-primary)}nav .footer{display:flex;align-items:center;padding:10px;margin:0 10px;border-top:1px solid var(--gray-light);overflow:hidden;height:50px}nav .footer .footer-icon{width:50px}nav .footer .footer-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;font-size:.8em;text-overflow:hidden;white-space:nowrap}\n"] }]
|
|
5648
6057
|
}], ctorParameters: () => [{ type: MenuService }, { type: i1$1.Router }, { type: ProfileService }, { type: StorageService }, { type: undefined, decorators: [{
|
|
5649
6058
|
type: Inject,
|
|
5650
6059
|
args: [ENVIRONMENT]
|
|
@@ -5708,11 +6117,11 @@ class StepperComponent {
|
|
|
5708
6117
|
this.activeIndexChange.emit(index);
|
|
5709
6118
|
}
|
|
5710
6119
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: StepperComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5711
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: StepperComponent, isStandalone: false, selector: "vector-stepper", inputs: { steps: "steps", navigable: "navigable", activeIndex: "activeIndex" }, outputs: { activeIndexChange: "activeIndexChange" }, ngImport: i0, template: "<div class=\"wrapper\">\
|
|
6120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: StepperComponent, isStandalone: false, selector: "vector-stepper", inputs: { steps: "steps", navigable: "navigable", activeIndex: "activeIndex" }, outputs: { activeIndexChange: "activeIndexChange" }, ngImport: i0, template: "<div class=\"wrapper\">\n <p-steps\n [model]=\"steps\"\n [readonly]=\"!navigable\"\n [activeIndex]=\"activeIndex\"\n (activeIndexChange)=\"onActiveIndexChange($event)\"\n >\n ></p-steps\n >\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i1$8.Steps, selector: "p-steps", inputs: ["activeIndex", "model", "readonly", "style", "styleClass", "exact"], outputs: ["activeIndexChange"] }] }); }
|
|
5712
6121
|
}
|
|
5713
6122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: StepperComponent, decorators: [{
|
|
5714
6123
|
type: Component,
|
|
5715
|
-
args: [{ standalone: false, selector: 'vector-stepper', template: "<div class=\"wrapper\">\
|
|
6124
|
+
args: [{ standalone: false, selector: 'vector-stepper', template: "<div class=\"wrapper\">\n <p-steps\n [model]=\"steps\"\n [readonly]=\"!navigable\"\n [activeIndex]=\"activeIndex\"\n (activeIndexChange)=\"onActiveIndexChange($event)\"\n >\n ></p-steps\n >\n</div>\n" }]
|
|
5716
6125
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { steps: [{
|
|
5717
6126
|
type: Input
|
|
5718
6127
|
}], navigable: [{
|
|
@@ -5863,11 +6272,11 @@ class TopBarComponent {
|
|
|
5863
6272
|
this.onClick.emit(notification?.link || '');
|
|
5864
6273
|
}
|
|
5865
6274
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TopBarComponent, deps: [{ token: MenuService }, { token: AuthService }, { token: i1$1.Router }, { token: ProfileService }, { token: StorageService }, { token: NotificationsService }, { token: ErrorMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5866
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: TopBarComponent, isStandalone: false, 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: 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: i3.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, p-overlaypanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: FormatDocumentPipe, name: "formatDocument" }, { kind: "pipe", type: UnreadNotificationsPipe, name: "unreadNotifications" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
6275
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: TopBarComponent, isStandalone: false, selector: "vector-top-bar", inputs: { fintech: "fintech", accountService: "accountService", showHelpCentral: "showHelpCentral", showProfile: "showProfile" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"top-bar-container\">\n <div id=\"menu-toggle\" class=\"menu-toggle\" (click)=\"toggleMenu()\">\n <div class=\"menu-icon\"></div>\n </div>\n\n <div class=\"left-items-container\" *ngIf=\"fintech && isDesktop() && !doingOnboarding && !isAdmin\">\n <span>Banco {{ currentAccount?.bankCode }}</span>\n <span class=\"separator\"></span>\n <span>AG {{ currentAccount?.agency }}</span>\n <span class=\"separator\"></span>\n <span>CC {{ currentAccount?.accountNumber }}</span>\n <span class=\"separator\"></span>\n <span\n >{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}\n {{ maskUtil.formatDocument(currentAccount?.document) }}</span\n >\n <ng-container>\n <span class=\"separator\"></span>\n <div class=\"change-account-button cursor-pointer\" (click)=\"changeAccountMenu.toggle($event)\">\n <span class=\"mr-2\">Alternar conta</span>\n <span\n class=\"fas\"\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\n ></span>\n </div>\n </ng-container>\n </div>\n\n <div class=\"right-items-container\" [ngClass]=\"{ 'hidden-items': hideElements }\" *ngIf=\"!isAdmin && !doingOnboarding\">\n <div class=\"help-central\" *ngIf=\"showHelpCentral\">\n <span>{{ 'app.label.help_central' | translate }}:</span>\n <ng-container *ngFor=\"let item of helpCentralIcons\">\n <a target=\"_blank\" [ngClass]=\"{ hidden: !item.active }\" [attr.href]=\"item.url\">\n <i [class]=\"item.icon\"></i>\n </a>\n </ng-container>\n </div>\n\n <span *ngIf=\"!fintech\" (click)=\"notifications.toggle($event)\" class=\"fas fa-bell notifications-icon\">\n <span *ngIf=\"(notificationsList | unreadNotifications).length\" class=\"notifications-indicator\"> </span>\n </span>\n\n <span class=\"separator\"></span>\n <div\n #menuContainer\n class=\"menu-container\"\n (click)=\"menu.toggle($event)\"\n pTooltip=\"Enter your username\"\n tooltipPosition=\"bottom\"\n tooltipEvent=\"click\"\n >\n <span class=\"user-name\">{{ currentAccount?.name || vectorFirstName || '' }}</span>\n <span class=\"fas\" [ngClass]=\"{ 'fa-angle-down': !openedMenu, 'fa-angle-up': openedMenu }\"></span>\n </div>\n </div>\n</div>\n\n<p-overlayPanel #menu (onHide)=\"openedMenu = false\" (onShow)=\"openedMenu = true\" styleClass=\"background-white\">\n <ng-template pTemplate>\n <div class=\"account-info\" *ngIf=\"!isDesktop()\">\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>Banco: </span>\n <span class=\"account-info-value\">{{ currentAccount?.bank }}</span>\n </div>\n\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>AG: </span>\n <span class=\"account-info-value\">{{ currentAccount?.agency }}</span>\n </div>\n </div>\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>CC: </span>\n <span class=\"account-info-value\">{{ currentAccount?.accountNumber }}</span>\n </div>\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\n <span class=\"account-info-value\"> {{ maskUtil.formatDocument(currentAccount?.document) }}</span>\n </div>\n </div>\n <div class=\"change-account-mobile\" (click)=\"changeAccountMenu.toggle($event)\" *ngIf=\"otherAccounts?.length\">\n <span class=\"change-account-mobile-label\">Alternar conta</span>\n <span\n class=\"fas\"\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\n ></span>\n </div>\n </div>\n <ul class=\"user-menu\">\n <li *ngIf=\"fintech\" (click)=\"goToTermsOfUse(); menu.hide()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-file-contract\"></i></span>\n <span>Termos de Uso</span>\n </li>\n <li *ngIf=\"fintech\" (click)=\"goToPasswordChange(); menu.hide()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-key\"></i></span>\n <span>Alterar Senha</span>\n </li>\n <li *ngIf=\"showProfile\" (click)=\"goToProfile(); menu.hide()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-user\"></i></span>\n <span>Perfil</span>\n </li>\n <li (click)=\"logout()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-sign-out-alt\"></i></span>\n <span>Sair</span>\n </li>\n </ul>\n </ng-template>\n</p-overlayPanel>\n\n<p-overlayPanel #changeAccountMenu (onHide)=\"openedChangeAccountMenu = false\" (onShow)=\"openedChangeAccountMenu = true\">\n <ng-template pTemplate>\n <div\n *ngFor=\"let account of otherAccounts\"\n class=\"account-info change-account-info\"\n (click)=\"changeAccount(account)\"\n >\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>Banco: </span>\n <span class=\"account-info-value\">{{ account?.bank }}</span>\n </div>\n\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>AG: </span>\n <span class=\"account-info-value\">{{ account?.agency }}</span>\n </div>\n </div>\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>CC: </span>\n <span class=\"account-info-value\">{{ account?.accountNumber }}</span>\n </div>\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>{{ account?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\n <span class=\"account-info-value\"> {{ account?.document | formatDocument }}</span>\n </div>\n </div>\n </div>\n <div>\n <hr />\n <p class=\"text-center add-account\" (click)=\"goToOnboarding(); changeAccountMenu.hide()\">\n Adicionar uma nova conta\n </p>\n </div>\n </ng-template>\n</p-overlayPanel>\n\n<p-overlayPanel\n #notifications\n (onHide)=\"showNotifications = false\"\n (onShow)=\"showNotifications = true\"\n styleClass=\"background-white\"\n>\n <ng-template pTemplate>\n <div class=\"notifications-header\">\n <div class=\"notifications-vector-logo\"></div>\n <span class=\"notifications-title\">\n {{ 'app.label.notifications' | translate }}\n </span>\n </div>\n <ul class=\"notifications-list\">\n @for (notification of notificationsList; track $index) {\n <li (click)=\"handleClick(notification); notifications.hide()\" class=\"notification-item\">\n <span class=\"notification-title\">\n {{ notification.title }}\n @if (!notification.wasRead) {\n <span class=\"notification-item-indicator\"></span>\n }\n </span>\n @if (notification.description) {\n <span>{{ notification.description }}</span>\n <em class=\"fas fa-chevron-right\"></em>\n }\n </li>\n }\n </ul>\n </ng-template>\n</p-overlayPanel>\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\">%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\"/>%0A</svg>%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: 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: i2.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, p-overlaypanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: FormatDocumentPipe, name: "formatDocument" }, { kind: "pipe", type: UnreadNotificationsPipe, name: "unreadNotifications" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
5867
6276
|
}
|
|
5868
6277
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: TopBarComponent, decorators: [{
|
|
5869
6278
|
type: Component,
|
|
5870
|
-
args: [{ standalone: false, 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"] }]
|
|
6279
|
+
args: [{ standalone: false, selector: 'vector-top-bar', template: "<div class=\"top-bar-container\">\n <div id=\"menu-toggle\" class=\"menu-toggle\" (click)=\"toggleMenu()\">\n <div class=\"menu-icon\"></div>\n </div>\n\n <div class=\"left-items-container\" *ngIf=\"fintech && isDesktop() && !doingOnboarding && !isAdmin\">\n <span>Banco {{ currentAccount?.bankCode }}</span>\n <span class=\"separator\"></span>\n <span>AG {{ currentAccount?.agency }}</span>\n <span class=\"separator\"></span>\n <span>CC {{ currentAccount?.accountNumber }}</span>\n <span class=\"separator\"></span>\n <span\n >{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}\n {{ maskUtil.formatDocument(currentAccount?.document) }}</span\n >\n <ng-container>\n <span class=\"separator\"></span>\n <div class=\"change-account-button cursor-pointer\" (click)=\"changeAccountMenu.toggle($event)\">\n <span class=\"mr-2\">Alternar conta</span>\n <span\n class=\"fas\"\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\n ></span>\n </div>\n </ng-container>\n </div>\n\n <div class=\"right-items-container\" [ngClass]=\"{ 'hidden-items': hideElements }\" *ngIf=\"!isAdmin && !doingOnboarding\">\n <div class=\"help-central\" *ngIf=\"showHelpCentral\">\n <span>{{ 'app.label.help_central' | translate }}:</span>\n <ng-container *ngFor=\"let item of helpCentralIcons\">\n <a target=\"_blank\" [ngClass]=\"{ hidden: !item.active }\" [attr.href]=\"item.url\">\n <i [class]=\"item.icon\"></i>\n </a>\n </ng-container>\n </div>\n\n <span *ngIf=\"!fintech\" (click)=\"notifications.toggle($event)\" class=\"fas fa-bell notifications-icon\">\n <span *ngIf=\"(notificationsList | unreadNotifications).length\" class=\"notifications-indicator\"> </span>\n </span>\n\n <span class=\"separator\"></span>\n <div\n #menuContainer\n class=\"menu-container\"\n (click)=\"menu.toggle($event)\"\n pTooltip=\"Enter your username\"\n tooltipPosition=\"bottom\"\n tooltipEvent=\"click\"\n >\n <span class=\"user-name\">{{ currentAccount?.name || vectorFirstName || '' }}</span>\n <span class=\"fas\" [ngClass]=\"{ 'fa-angle-down': !openedMenu, 'fa-angle-up': openedMenu }\"></span>\n </div>\n </div>\n</div>\n\n<p-overlayPanel #menu (onHide)=\"openedMenu = false\" (onShow)=\"openedMenu = true\" styleClass=\"background-white\">\n <ng-template pTemplate>\n <div class=\"account-info\" *ngIf=\"!isDesktop()\">\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>Banco: </span>\n <span class=\"account-info-value\">{{ currentAccount?.bank }}</span>\n </div>\n\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>AG: </span>\n <span class=\"account-info-value\">{{ currentAccount?.agency }}</span>\n </div>\n </div>\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>CC: </span>\n <span class=\"account-info-value\">{{ currentAccount?.accountNumber }}</span>\n </div>\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>{{ currentAccount?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\n <span class=\"account-info-value\"> {{ maskUtil.formatDocument(currentAccount?.document) }}</span>\n </div>\n </div>\n <div class=\"change-account-mobile\" (click)=\"changeAccountMenu.toggle($event)\" *ngIf=\"otherAccounts?.length\">\n <span class=\"change-account-mobile-label\">Alternar conta</span>\n <span\n class=\"fas\"\n [ngClass]=\"{ 'fa-angle-down': !openedChangeAccountMenu, 'fa-angle-up': openedChangeAccountMenu }\"\n ></span>\n </div>\n </div>\n <ul class=\"user-menu\">\n <li *ngIf=\"fintech\" (click)=\"goToTermsOfUse(); menu.hide()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-file-contract\"></i></span>\n <span>Termos de Uso</span>\n </li>\n <li *ngIf=\"fintech\" (click)=\"goToPasswordChange(); menu.hide()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-key\"></i></span>\n <span>Alterar Senha</span>\n </li>\n <li *ngIf=\"showProfile\" (click)=\"goToProfile(); menu.hide()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-user\"></i></span>\n <span>Perfil</span>\n </li>\n <li (click)=\"logout()\">\n <span class=\"user-menu-icon\"><i class=\"fas fa-sign-out-alt\"></i></span>\n <span>Sair</span>\n </li>\n </ul>\n </ng-template>\n</p-overlayPanel>\n\n<p-overlayPanel #changeAccountMenu (onHide)=\"openedChangeAccountMenu = false\" (onShow)=\"openedChangeAccountMenu = true\">\n <ng-template pTemplate>\n <div\n *ngFor=\"let account of otherAccounts\"\n class=\"account-info change-account-info\"\n (click)=\"changeAccount(account)\"\n >\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>Banco: </span>\n <span class=\"account-info-value\">{{ account?.bank }}</span>\n </div>\n\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>AG: </span>\n <span class=\"account-info-value\">{{ account?.agency }}</span>\n </div>\n </div>\n <div class=\"account-info-row\">\n <div class=\"account-info-item\">\n <span>CC: </span>\n <span class=\"account-info-value\">{{ account?.accountNumber }}</span>\n </div>\n <span class=\"separator\"></span>\n <div class=\"account-info-item\">\n <span>{{ account?.accountType === 'CURRENT_ACCOUNT_PF' ? 'CPF' : 'CNPJ' }}: </span>\n <span class=\"account-info-value\"> {{ account?.document | formatDocument }}</span>\n </div>\n </div>\n </div>\n <div>\n <hr />\n <p class=\"text-center add-account\" (click)=\"goToOnboarding(); changeAccountMenu.hide()\">\n Adicionar uma nova conta\n </p>\n </div>\n </ng-template>\n</p-overlayPanel>\n\n<p-overlayPanel\n #notifications\n (onHide)=\"showNotifications = false\"\n (onShow)=\"showNotifications = true\"\n styleClass=\"background-white\"\n>\n <ng-template pTemplate>\n <div class=\"notifications-header\">\n <div class=\"notifications-vector-logo\"></div>\n <span class=\"notifications-title\">\n {{ 'app.label.notifications' | translate }}\n </span>\n </div>\n <ul class=\"notifications-list\">\n @for (notification of notificationsList; track $index) {\n <li (click)=\"handleClick(notification); notifications.hide()\" class=\"notification-item\">\n <span class=\"notification-title\">\n {{ notification.title }}\n @if (!notification.wasRead) {\n <span class=\"notification-item-indicator\"></span>\n }\n </span>\n @if (notification.description) {\n <span>{{ notification.description }}</span>\n <em class=\"fas fa-chevron-right\"></em>\n }\n </li>\n }\n </ul>\n </ng-template>\n</p-overlayPanel>\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\">%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\"/>%0A</svg>%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"] }]
|
|
5871
6280
|
}], ctorParameters: () => [{ type: MenuService }, { type: AuthService }, { type: i1$1.Router }, { type: ProfileService }, { type: StorageService }, { type: NotificationsService }, { type: ErrorMessageService }], propDecorators: { fintech: [{
|
|
5872
6281
|
type: Input
|
|
5873
6282
|
}], accountService: [{
|
|
@@ -6178,12 +6587,12 @@ class HttpInterceptorProvider {
|
|
|
6178
6587
|
}
|
|
6179
6588
|
return this.refreshTokenSubject.pipe(filter((token) => token !== null), take(1), switchMap((token) => next.handle(this.addTokenIfPresent(request))));
|
|
6180
6589
|
}
|
|
6181
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: HttpInterceptorProvider, deps: [{ token: StorageService }, { token: ErrorMessageService }, { token: LoadingService }, { token: AuthService }, { token: i2$
|
|
6590
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: HttpInterceptorProvider, deps: [{ token: StorageService }, { token: ErrorMessageService }, { token: LoadingService }, { token: AuthService }, { token: i2$2.MessageService }, { token: ENVIRONMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6182
6591
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: HttpInterceptorProvider }); }
|
|
6183
6592
|
}
|
|
6184
6593
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: HttpInterceptorProvider, decorators: [{
|
|
6185
6594
|
type: Injectable
|
|
6186
|
-
}], ctorParameters: () => [{ type: StorageService }, { type: ErrorMessageService }, { type: LoadingService }, { type: AuthService }, { type: i2$
|
|
6595
|
+
}], ctorParameters: () => [{ type: StorageService }, { type: ErrorMessageService }, { type: LoadingService }, { type: AuthService }, { type: i2$2.MessageService }, { type: undefined, decorators: [{
|
|
6187
6596
|
type: Inject,
|
|
6188
6597
|
args: [ENVIRONMENT]
|
|
6189
6598
|
}] }] });
|
|
@@ -6208,5 +6617,5 @@ const getSelectedCrudItemResolver = (routeSnapshot) => {
|
|
|
6208
6617
|
* Generated bundle index. Do not edit.
|
|
6209
6618
|
*/
|
|
6210
6619
|
|
|
6211
|
-
export { APP_NAME, AppName, AuthService, BadgeComponent, BadgeModule, BooleanType, BreadcrumbComponent, BreadcrumbModule, BreadcrumbService, ButtonComponent, CalendarComponent, CheckboxFieldComponent, CpfCnpjValidator, CrudBaseComponent, CrudBaseService, CrudFooterComponent, CrudHeaderComponent, CrudHeaderModule, CrudHistory, CrudHistoryComponent, CrudHistoryModule, CrudMode, CurrencyBrlPipe, CurrencyFieldComponent, DataTableComponent, DocumentType, DrawerComponent, DrawerModule, DropdownFieldComponent, ENVIRONMENT, EnumService, ErrorMessageService, FieldErrorMessageComponent, FieldType, FieldsModule, FileUtil, FiltersComponent, FooterModule, FormatDocumentPipe, GenericErrorModalComponent, GenericErrorModalModule, GenericModalComponent, GenericModalModule, GeolocationService, HttpInterceptorProvider, InputNumberFieldComponent, InputOtpComponent, InputSwitchFieldComponent, LoadingService, MENU_OPTIONS, MaskPipe, MaskUtil, MenuComponent, MenuModule, MenuService, MessageStatus, ModalService, MultiselectFieldComponent, NotHiddenPipe, NotificationsService, ObjectUtil, OnlyActivePipe, PanelComponent, PanelModule, PercentageFieldComponent, PipesModule, ProfileModuleActionType, ProfileModuleType, ProfileService, ProfileTypeEnum, RadioButtonFieldComponent, RangeValueComponent, RemoveLastChildPipe, Role, ScoreComponent, ScoreModule, SearchFieldComponent, SelectButtonFieldComponent, SelectionType, Status, StepperComponent, StepperModule, StorageService, StringUtil, SubMenusListComponent, TableColumnType, TextFieldComponent, TextareaFieldComponent, TopBarComponent, TopBarModule, UnreadNotificationsPipe, ValidationUtil, VectorPreset, View, WindowUtil, crudListHasItemsGuard, getSelectedCrudItemResolver, getTokenByGuidGuard, hasPermissionGuard, provideVectorPrimeNG, roleGuard, tokenIsPresentGuard };
|
|
6620
|
+
export { APP_NAME, AppName, AuthService, BadgeComponent, BadgeModule, BooleanType, BreadcrumbComponent, BreadcrumbModule, BreadcrumbService, ButtonComponent, CalendarComponent, CheckboxFieldComponent, CpfCnpjValidator, CrudBaseComponent, CrudBaseService, CrudFooterComponent, CrudHeaderComponent, CrudHeaderModule, CrudHistory, CrudHistoryComponent, CrudHistoryModule, CrudMode, CurrencyBrlPipe, CurrencyFieldComponent, DataTableComponent, DocumentType, DrawerComponent, DrawerModule, DropdownFieldComponent, ENVIRONMENT, EnumService, ErrorMessageService, FieldErrorMessageComponent, FieldType, FieldsModule, FileUtil, FiltersComponent, FooterModule, FormatDocumentPipe, GenericErrorModalComponent, GenericErrorModalModule, GenericModalComponent, GenericModalModule, GeolocationService, HttpInterceptorProvider, InputFileComponent, InputNumberFieldComponent, InputOtpComponent, InputSwitchFieldComponent, LoadingService, MENU_OPTIONS, MaskPipe, MaskUtil, MenuComponent, MenuModule, MenuService, MessageStatus, ModalService, MultiselectFieldComponent, NotHiddenPipe, NotificationsService, ObjectUtil, OnlyActivePipe, PanelComponent, PanelModule, PercentageFieldComponent, PipesModule, ProfileModuleActionType, ProfileModuleType, ProfileService, ProfileTypeEnum, RadioButtonFieldComponent, RangeValueComponent, RemoveLastChildPipe, Role, ScoreComponent, ScoreModule, SearchFieldComponent, SelectButtonFieldComponent, SelectionType, Status, StepperComponent, StepperModule, StorageService, StringUtil, SubMenusListComponent, TableColumnType, TextFieldComponent, TextareaFieldComponent, TopBarComponent, TopBarModule, UnreadNotificationsPipe, ValidationUtil, VectorPreset, View, WindowUtil, createUploadMultipleForm, createUploadSingleForm, crudListHasItemsGuard, getSelectedCrudItemResolver, getTokenByGuidGuard, hasPermissionGuard, provideVectorPrimeNG, roleGuard, tokenIsPresentGuard };
|
|
6212
6621
|
//# sourceMappingURL=ngx-vector-components.mjs.map
|