@po-ui/ng-components 19.36.0 → 19.38.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/fesm2022/po-ui-ng-components.mjs +440 -94
- package/fesm2022/po-ui-ng-components.mjs.map +1 -1
- package/lib/components/po-chart/enums/po-chart-type.enum.d.ts +5 -1
- package/lib/components/po-chart/index.d.ts +4 -4
- package/lib/components/po-chart/interfaces/po-chart-indicator-options.interface.d.ts +50 -0
- package/lib/components/po-chart/interfaces/po-chart-options.interface.d.ts +17 -1
- package/lib/components/po-chart/interfaces/po-chart-radar-options.interface.d.ts +38 -0
- package/lib/components/po-chart/interfaces/po-chart-serie-data-label.interface.d.ts +1 -2
- package/lib/components/po-chart/interfaces/po-chart-serie.interface.d.ts +15 -5
- package/lib/components/po-chart/po-chart-base.component.d.ts +22 -9
- package/lib/components/po-chart/po-chart-grid-utils.d.ts +45 -0
- package/lib/components/po-chart/po-chart.component.d.ts +7 -0
- package/lib/components/po-dynamic/po-dynamic-form/interfaces/po-dynamic-form-field.interface.d.ts +33 -6
- package/lib/components/po-field/po-input/po-input-base.component.d.ts +15 -3
- package/lib/components/po-field/po-number/po-number.component.d.ts +11 -0
- package/lib/components/po-icon/po-icon.component.d.ts +3 -1
- package/lib/components/po-listbox/po-item-list/po-item-list-base.component.d.ts +9 -1
- package/lib/components/po-listbox/po-listbox.component.d.ts +2 -1
- package/lib/components/po-popup/po-popup-action.interface.d.ts +1 -0
- package/lib/components/po-popup/po-popup-base.component.d.ts +2 -1
- package/lib/components/po-popup/po-popup.component.d.ts +4 -2
- package/lib/components/po-tag/po-tag-base.component.d.ts +2 -1
- package/lib/components/po-tag/po-tag.component.d.ts +0 -2
- package/lib/utils/util.d.ts +12 -0
- package/package.json +4 -4
- package/po-ui-ng-components-19.38.0.tgz +0 -0
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-update/v14/index.js +1 -1
- package/schematics/ng-update/v15/index.js +1 -1
- package/schematics/ng-update/v16/index.js +1 -1
- package/schematics/ng-update/v17/index.js +1 -1
- package/schematics/ng-update/v18/index.js +2 -2
- package/schematics/ng-update/v19/index.js +2 -2
- package/schematics/ng-update/v2/index.js +1 -1
- package/schematics/ng-update/v3/index.js +1 -1
- package/schematics/ng-update/v4/index.js +1 -1
- package/schematics/ng-update/v5/index.js +1 -1
- package/schematics/ng-update/v6/index.js +1 -1
- package/po-ui-ng-components-19.36.0.tgz +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, Input, Component, ChangeDetectionStrategy, NgModule, InjectionToken, TemplateRef, Optional, Inject, Injectable, EventEmitter, Output, ElementRef, SecurityContext, HostListener, inject,
|
|
2
|
+
import { Directive, Input, Component, ChangeDetectionStrategy, NgModule, InjectionToken, TemplateRef, Optional, Inject, ViewChild, HostBinding, Injectable, EventEmitter, Output, ElementRef, SecurityContext, HostListener, inject, ChangeDetectorRef, ViewChildren, ContentChildren, input, forwardRef, Renderer2, IterableDiffers, ViewContainerRef, ContentChild, Pipe, Injector, provideAppInitializer } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule, CurrencyPipe, DecimalPipe, DOCUMENT, TitleCasePipe, DatePipe, NgOptimizedImage, Location } from '@angular/common';
|
|
5
5
|
import * as i2 from '@angular/platform-browser';
|
|
@@ -8,7 +8,7 @@ import { trigger, transition, style, animate, group, query, animateChild, state,
|
|
|
8
8
|
import { Subject, filter, fromEvent, debounceTime, Subscription, switchMap, isObservable, of, ReplaySubject, timer, throwError, Observable, map as map$1, catchError as catchError$1, startWith, delay as delay$1 } from 'rxjs';
|
|
9
9
|
import * as i1$1 from '@angular/router';
|
|
10
10
|
import { RouterModule, Router, NavigationEnd, NavigationCancel } from '@angular/router';
|
|
11
|
-
import * as
|
|
11
|
+
import * as i5 from '@angular/cdk/listbox';
|
|
12
12
|
import { CdkListboxModule } from '@angular/cdk/listbox';
|
|
13
13
|
import * as i1$2 from '@angular/forms';
|
|
14
14
|
import { NG_VALUE_ACCESSOR, FormsModule, NG_VALIDATORS, Validators, NgControl, NgForm, ControlContainer } from '@angular/forms';
|
|
@@ -17,12 +17,12 @@ import { OverlayModule } from '@angular/cdk/overlay';
|
|
|
17
17
|
import * as i1$3 from '@angular/common/http';
|
|
18
18
|
import { HttpClient, HttpHeaders, HttpEventType, HttpResponse, HttpRequest, HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
19
19
|
import { debounceTime as debounceTime$1, take, delay, takeWhile, tap, map, filter as filter$1, distinctUntilChanged, catchError, switchMap as switchMap$1, finalize, mergeMap } from 'rxjs/operators';
|
|
20
|
-
import { BarChart, CustomChart, GaugeChart, LineChart, PieChart } from 'echarts/charts';
|
|
20
|
+
import { BarChart, CustomChart, GaugeChart, LineChart, PieChart, RadarChart } from 'echarts/charts';
|
|
21
21
|
import { GraphicComponent, BrushComponent, DataZoomComponent, GridComponent, LegendComponent, MarkLineComponent, ToolboxComponent, TooltipComponent } from 'echarts/components';
|
|
22
22
|
import * as echarts from 'echarts/core';
|
|
23
23
|
import { use } from 'echarts/core';
|
|
24
24
|
import { CanvasRenderer, SVGRenderer } from 'echarts/renderers';
|
|
25
|
-
import * as i5 from '@angular/cdk/scrolling';
|
|
25
|
+
import * as i5$1 from '@angular/cdk/scrolling';
|
|
26
26
|
import { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';
|
|
27
27
|
import * as i6 from '@angular/cdk/drag-drop';
|
|
28
28
|
import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
|
|
@@ -355,9 +355,11 @@ const AnimaliaIconDictionary = {
|
|
|
355
355
|
ICON_ALIGN_RIGHT: 'an an-text-align-right',
|
|
356
356
|
ICON_ARROW_ARC_LEFT: 'an an-arrow-arc-left',
|
|
357
357
|
ICON_ARROW_DOWN: 'an an-caret-down',
|
|
358
|
+
ICON_OTHER_ARROW_DOWN: 'an an-arrow-down',
|
|
358
359
|
ICON_ARROW_LEFT: 'an an-caret-left',
|
|
359
360
|
ICON_ARROW_RIGHT: 'an an-caret-right',
|
|
360
361
|
ICON_ARROW_UP: 'an an-caret-up',
|
|
362
|
+
ICON_OTHER_ARROW_UP: 'an an-arrow-up',
|
|
361
363
|
ICON_CALENDAR: 'an an-calendar-blank',
|
|
362
364
|
ICON_CLEAR_CONTENT: 'an an-x-circle',
|
|
363
365
|
ICON_CLOCK: 'an an-clock',
|
|
@@ -371,6 +373,9 @@ const AnimaliaIconDictionary = {
|
|
|
371
373
|
ICON_EYE: 'an an-eye',
|
|
372
374
|
ICON_EYE_OFF: 'an an-eye-closed',
|
|
373
375
|
ICON_FILTER: 'an an-funnel',
|
|
376
|
+
ICON_FILL_FILTER: 'an-fill an-funnel',
|
|
377
|
+
ICON_FUNNEL: 'an an-funnel-simple',
|
|
378
|
+
ICON_FUNNEL_X: 'an an-funnel-x',
|
|
374
379
|
ICON_HELP: 'an an-question',
|
|
375
380
|
ICON_INFO: 'an an-info',
|
|
376
381
|
ICON_LAST_PAGE: 'an an-caret-double-right',
|
|
@@ -385,6 +390,7 @@ const AnimaliaIconDictionary = {
|
|
|
385
390
|
ICON_MINUS: 'an an-minus',
|
|
386
391
|
ICON_MORE: 'an an-dots-three',
|
|
387
392
|
ICON_MORE_VERT: 'an an-dots-three-vertical',
|
|
393
|
+
ICON_FILL_MORE_OUTLINE_VERT: 'an-fill an-dots-three-outline-vertical',
|
|
388
394
|
ICON_NOTIFICATION: 'an an-bell',
|
|
389
395
|
ICON_OK: 'an an-check',
|
|
390
396
|
ICON_PARAMETERS: 'an an-sliders-horizontal',
|
|
@@ -399,7 +405,11 @@ const AnimaliaIconDictionary = {
|
|
|
399
405
|
ICON_SETTINGS: 'an an-gear-six',
|
|
400
406
|
ICON_SORT: 'an an-arrows-down-up',
|
|
401
407
|
ICON_SORT_ASC: 'an an-arrow-up',
|
|
408
|
+
ICON_SORT_ASCENDING: 'an an-sort-ascending',
|
|
409
|
+
ICON_FILL_SORT_ASCENDING: 'an-fill an-sort-ascending',
|
|
402
410
|
ICON_SORT_DESC: 'an an-arrow-down',
|
|
411
|
+
ICON_SORT_DESCENDING: 'an an-sort-descending',
|
|
412
|
+
ICON_FILL_SORT_DESCENDING: 'an-fill an-sort-descending',
|
|
403
413
|
ICON_STAR: 'an an-star',
|
|
404
414
|
ICON_TELEPHONE: 'an an-phone',
|
|
405
415
|
ICON_TEXT_BOLD: 'an an-text-b',
|
|
@@ -421,9 +431,11 @@ const AnimaliaIconDictionary = {
|
|
|
421
431
|
* Permite a exibição de ícones.
|
|
422
432
|
*/
|
|
423
433
|
class PoIconComponent {
|
|
434
|
+
iconElement;
|
|
424
435
|
class;
|
|
425
436
|
_icon;
|
|
426
437
|
_iconToken;
|
|
438
|
+
hostPIcon = null;
|
|
427
439
|
constructor(value) {
|
|
428
440
|
this._iconToken = value ?? AnimaliaIconDictionary;
|
|
429
441
|
}
|
|
@@ -450,10 +462,12 @@ class PoIconComponent {
|
|
|
450
462
|
*/
|
|
451
463
|
set icon(value) {
|
|
452
464
|
if (typeof value === 'string') {
|
|
465
|
+
this.hostPIcon = value;
|
|
453
466
|
this.processIcon(value);
|
|
454
467
|
}
|
|
455
468
|
else if (value instanceof TemplateRef) {
|
|
456
469
|
this._icon = value;
|
|
470
|
+
this.hostPIcon = null;
|
|
457
471
|
}
|
|
458
472
|
}
|
|
459
473
|
get icon() {
|
|
@@ -499,17 +513,23 @@ class PoIconComponent {
|
|
|
499
513
|
return iconName.includes(' ') ? iconName.split(' ') : iconName;
|
|
500
514
|
}
|
|
501
515
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoIconComponent, deps: [{ token: ICONS_DICTIONARY, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
502
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoIconComponent, isStandalone: false, selector: "po-icon", inputs: { icon: ["p-icon", "icon"] }, ngImport: i0, template: "@if (class) {\n <i [class]=\"class\" aria-hidden=\"true\">\n <ng-content></ng-content>\n </i>\n} @else {\n <ng-template [ngTemplateOutlet]=\"icon\"></ng-template>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
516
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoIconComponent, isStandalone: false, selector: "po-icon", inputs: { icon: ["p-icon", "icon"] }, host: { properties: { "attr.p-icon": "this.hostPIcon" } }, viewQueries: [{ propertyName: "iconElement", first: true, predicate: ["iconElement"], descendants: true }], ngImport: i0, template: "@if (class) {\n <i #iconElement [class]=\"class\" aria-hidden=\"true\">\n <ng-content></ng-content>\n </i>\n} @else {\n <ng-template [ngTemplateOutlet]=\"icon\"></ng-template>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
503
517
|
}
|
|
504
518
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoIconComponent, decorators: [{
|
|
505
519
|
type: Component,
|
|
506
|
-
args: [{ selector: 'po-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (class) {\n <i [class]=\"class\" aria-hidden=\"true\">\n <ng-content></ng-content>\n </i>\n} @else {\n <ng-template [ngTemplateOutlet]=\"icon\"></ng-template>\n}\n" }]
|
|
520
|
+
args: [{ selector: 'po-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (class) {\n <i #iconElement [class]=\"class\" aria-hidden=\"true\">\n <ng-content></ng-content>\n </i>\n} @else {\n <ng-template [ngTemplateOutlet]=\"icon\"></ng-template>\n}\n" }]
|
|
507
521
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
508
522
|
type: Optional
|
|
509
523
|
}, {
|
|
510
524
|
type: Inject,
|
|
511
525
|
args: [ICONS_DICTIONARY]
|
|
512
|
-
}] }], propDecorators: {
|
|
526
|
+
}] }], propDecorators: { iconElement: [{
|
|
527
|
+
type: ViewChild,
|
|
528
|
+
args: ['iconElement', { static: false }]
|
|
529
|
+
}], hostPIcon: [{
|
|
530
|
+
type: HostBinding,
|
|
531
|
+
args: ['attr.p-icon']
|
|
532
|
+
}], icon: [{
|
|
513
533
|
type: Input,
|
|
514
534
|
args: ['p-icon']
|
|
515
535
|
}] } });
|
|
@@ -1469,6 +1489,38 @@ function getMeasurableEl(labelElement) {
|
|
|
1469
1489
|
const inner = host.querySelector('.po-label, label, .po-label-title, .po-field-title .po-checkbox-label');
|
|
1470
1490
|
return inner ?? host;
|
|
1471
1491
|
}
|
|
1492
|
+
/**
|
|
1493
|
+
* Retorna a cor do texto baseada no tema atual.
|
|
1494
|
+
* @param type Tipo de cor do texto, pode ser 'lightest' ou 'darkest'.
|
|
1495
|
+
* @returns Valor da cor no formato definido pela propriedade customizada CSS (por exemplo, '#ffffff', 'rgb(255,255,255)').
|
|
1496
|
+
*/
|
|
1497
|
+
function getTextColor(type) {
|
|
1498
|
+
const isLightTheme = !document.documentElement.className.includes('-dark-');
|
|
1499
|
+
let token = '';
|
|
1500
|
+
if (type === 'lightest') {
|
|
1501
|
+
token = isLightTheme ? '--color-neutral-light-00' : '--color-neutral-dark-95';
|
|
1502
|
+
}
|
|
1503
|
+
else {
|
|
1504
|
+
token = isLightTheme ? '--color-neutral-dark-95' : '--color-neutral-light-00';
|
|
1505
|
+
}
|
|
1506
|
+
return getComputedStyle(document.documentElement).getPropertyValue(token);
|
|
1507
|
+
}
|
|
1508
|
+
/**
|
|
1509
|
+
* Retorna a cor do texto baseada na cor de fundo informada.
|
|
1510
|
+
* @param backgroundColor Cor de fundo em formato 'rgb(r,g,b)' ou 'rgba(r,g,b,a)'.
|
|
1511
|
+
* @returns Valor da cor do texto (por exemplo, '#ffffff', 'rgb(255,255,255)') baseado no brilho percebido da cor de fundo usando a fórmula do espaço de cor YIQ.
|
|
1512
|
+
*/
|
|
1513
|
+
function getTextColorFromBackgroundColor(backgroundColor) {
|
|
1514
|
+
const rgbValues = backgroundColor
|
|
1515
|
+
.replaceAll(/(?:^rgba?\(|\s+|\)$)/g, '')
|
|
1516
|
+
.split(',')
|
|
1517
|
+
.map(value => Number.parseInt(value, 10));
|
|
1518
|
+
const r = rgbValues[0];
|
|
1519
|
+
const g = rgbValues[1];
|
|
1520
|
+
const b = rgbValues[2];
|
|
1521
|
+
const yiq = (r * 299 + g * 587 + b * 114) / 1000;
|
|
1522
|
+
return yiq >= 128 ? getTextColor('darkest') : getTextColor('lightest');
|
|
1523
|
+
}
|
|
1472
1524
|
|
|
1473
1525
|
const poDefaultLanguage = 'PO_DEFAULT_LANGUAGE';
|
|
1474
1526
|
const poLocaleKey = 'PO_USER_LOCALE';
|
|
@@ -1829,7 +1881,8 @@ class PoTagBaseComponent {
|
|
|
1829
1881
|
* - <span class="dot po-color-11"></span> `color-11`
|
|
1830
1882
|
* - <span class="dot po-color-12"></span> `color-12`
|
|
1831
1883
|
*
|
|
1832
|
-
* - Para uma melhor acessibilidade no uso do componente é recomendável utilizar cores com um melhor contraste em relação ao background
|
|
1884
|
+
* - Para uma melhor acessibilidade no uso do componente é recomendável utilizar cores com um melhor contraste em relação ao background;
|
|
1885
|
+
* - O componente ajusta automaticamente a cor do texto para garantir legibilidade, escolhendo dinamicamente entre texto claro ou escuro conforme o contraste necessário.
|
|
1833
1886
|
*
|
|
1834
1887
|
* > **Atenção:** A propriedade `p-type` sobrepõe esta definição.
|
|
1835
1888
|
*/
|
|
@@ -2916,8 +2969,22 @@ class PoTagComponent extends PoTagBaseComponent {
|
|
|
2916
2969
|
this.onClick('enter');
|
|
2917
2970
|
}
|
|
2918
2971
|
styleTag() {
|
|
2972
|
+
// Ajusta a cor do texto com base na cor de fundo computada do elemento
|
|
2973
|
+
requestAnimationFrame(() => {
|
|
2974
|
+
const computedStyle = getComputedStyle(this.poTag.nativeElement);
|
|
2975
|
+
if ((!this.tagColor || this.tagColor?.startsWith('po-color-')) &&
|
|
2976
|
+
!this.removable &&
|
|
2977
|
+
!this.textColor &&
|
|
2978
|
+
computedStyle?.backgroundColor) {
|
|
2979
|
+
const textColor = getTextColorFromBackgroundColor(computedStyle.backgroundColor);
|
|
2980
|
+
this.poTag.nativeElement.style.color = textColor;
|
|
2981
|
+
}
|
|
2982
|
+
else {
|
|
2983
|
+
this.poTag.nativeElement.style.color = '';
|
|
2984
|
+
}
|
|
2985
|
+
});
|
|
2919
2986
|
if (!this.tagColor && !this.removable) {
|
|
2920
|
-
return { 'background-color': this.customColor
|
|
2987
|
+
return { 'background-color': this.customColor };
|
|
2921
2988
|
}
|
|
2922
2989
|
else {
|
|
2923
2990
|
return {};
|
|
@@ -4561,6 +4628,8 @@ class PoPopupBaseComponent {
|
|
|
4561
4628
|
_target;
|
|
4562
4629
|
// Indica se há um listbox com subitens
|
|
4563
4630
|
listboxSubitems = false;
|
|
4631
|
+
// template-icon
|
|
4632
|
+
templateIcon = false;
|
|
4564
4633
|
/** Lista de ações que serão exibidas no componente. */
|
|
4565
4634
|
set actions(value) {
|
|
4566
4635
|
this._actions = Array.isArray(value) ? value : [];
|
|
@@ -4721,13 +4790,16 @@ class PoPopupBaseComponent {
|
|
|
4721
4790
|
closeEvent = new EventEmitter();
|
|
4722
4791
|
clickItem = new EventEmitter();
|
|
4723
4792
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopupBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4724
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: PoPopupBaseComponent, isStandalone: true, inputs: { listboxSubitems: ["p-listbox-subitems", "listboxSubitems"], actions: ["p-actions", "actions"], hideArrow: ["p-hide-arrow", "hideArrow"], isCornerAlign: ["p-is-corner-align", "isCornerAlign"], position: ["p-position", "position"], customPositions: ["p-custom-positions", "customPositions"], size: ["p-size", "size"], target: ["p-target", "target"] }, outputs: { closeEvent: "p-close", clickItem: "p-click-item" }, ngImport: i0 });
|
|
4793
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: PoPopupBaseComponent, isStandalone: true, inputs: { listboxSubitems: ["p-listbox-subitems", "listboxSubitems"], templateIcon: ["p-template-icon", "templateIcon"], actions: ["p-actions", "actions"], hideArrow: ["p-hide-arrow", "hideArrow"], isCornerAlign: ["p-is-corner-align", "isCornerAlign"], position: ["p-position", "position"], customPositions: ["p-custom-positions", "customPositions"], size: ["p-size", "size"], target: ["p-target", "target"] }, outputs: { closeEvent: "p-close", clickItem: "p-click-item" }, ngImport: i0 });
|
|
4725
4794
|
}
|
|
4726
4795
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopupBaseComponent, decorators: [{
|
|
4727
4796
|
type: Directive
|
|
4728
4797
|
}], propDecorators: { listboxSubitems: [{
|
|
4729
4798
|
type: Input,
|
|
4730
4799
|
args: ['p-listbox-subitems']
|
|
4800
|
+
}], templateIcon: [{
|
|
4801
|
+
type: Input,
|
|
4802
|
+
args: ['p-template-icon']
|
|
4731
4803
|
}], actions: [{
|
|
4732
4804
|
type: Input,
|
|
4733
4805
|
args: ['p-actions']
|
|
@@ -5541,6 +5613,14 @@ class PoItemListBaseComponent {
|
|
|
5541
5613
|
* Define um ícone que será exibido ao lado esquerdo do rótulo.
|
|
5542
5614
|
*/
|
|
5543
5615
|
icon;
|
|
5616
|
+
/**
|
|
5617
|
+
* @optional
|
|
5618
|
+
*
|
|
5619
|
+
* @description
|
|
5620
|
+
*
|
|
5621
|
+
* Define se deve ser exibido o ícone indicando subnível.
|
|
5622
|
+
*/
|
|
5623
|
+
iconArrowRight;
|
|
5544
5624
|
// Define a posição do ícone: 'left' (padrão) ou 'right'.
|
|
5545
5625
|
iconPosition = 'left';
|
|
5546
5626
|
/**
|
|
@@ -5588,7 +5668,7 @@ class PoItemListBaseComponent {
|
|
|
5588
5668
|
}
|
|
5589
5669
|
}
|
|
5590
5670
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5591
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoItemListBaseComponent, isStandalone: true, inputs: { type: ["p-type", "type"], visible: ["p-visible", "visible"], item: ["p-item", "item"], label: ["p-label", "label"], size: ["p-size", "size"], value: ["p-value", "value"], danger: ["p-danger", "danger", convertToBoolean], disabled: ["p-disabled", "disabled"], selected: ["p-selected", "selected", convertToBoolean], separator: ["p-separator", "separator", convertToBoolean], icon: ["p-icon", "icon"], iconPosition: ["p-icon-position", "iconPosition"], checkboxValue: ["p-checkbox-value", "checkboxValue"], fieldValue: ["p-field-value", "fieldValue"], fieldLabel: ["p-field-label", "fieldLabel"], template: ["p-template", "template"], templateContext: ["p-template-context", "templateContext"], searchValue: ["p-search-value", "searchValue"], filterMode: ["p-filter-mode", "filterMode"], isFiltering: ["p-filtering", "isFiltering"], shouldMarkLetters: ["p-should-mark-letter", "shouldMarkLetters"], compareCache: ["p-compare-cache", "compareCache"], comboService: ["p-combo-service", "comboService"], isTabs: ["p-is-tabs", "isTabs"], tabHide: ["p-tab-hide", "tabHide"], activeTabs: ["p-active-tabs", "activeTabs"], keysLabel: ["p-keys-label", "keysLabel"] }, outputs: { clickItem: "p-click-item", checkboxItem: "p-selectcheckbox-item", comboItem: "p-selectcombo-item", tabsItem: "p-emit-item-tabs", activatedTab: "p-activated-tabs" }, host: { properties: { "attr.p-type": "this.type", "attr.p-size": "this.size" } }, ngImport: i0 });
|
|
5671
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoItemListBaseComponent, isStandalone: true, inputs: { type: ["p-type", "type"], visible: ["p-visible", "visible"], item: ["p-item", "item"], label: ["p-label", "label"], size: ["p-size", "size"], value: ["p-value", "value"], danger: ["p-danger", "danger", convertToBoolean], disabled: ["p-disabled", "disabled"], selected: ["p-selected", "selected", convertToBoolean], separator: ["p-separator", "separator", convertToBoolean], icon: ["p-icon", "icon"], iconArrowRight: ["p-icon-arrow-right", "iconArrowRight"], iconPosition: ["p-icon-position", "iconPosition"], checkboxValue: ["p-checkbox-value", "checkboxValue"], fieldValue: ["p-field-value", "fieldValue"], fieldLabel: ["p-field-label", "fieldLabel"], template: ["p-template", "template"], templateContext: ["p-template-context", "templateContext"], searchValue: ["p-search-value", "searchValue"], filterMode: ["p-filter-mode", "filterMode"], isFiltering: ["p-filtering", "isFiltering"], shouldMarkLetters: ["p-should-mark-letter", "shouldMarkLetters"], compareCache: ["p-compare-cache", "compareCache"], comboService: ["p-combo-service", "comboService"], isTabs: ["p-is-tabs", "isTabs"], tabHide: ["p-tab-hide", "tabHide"], activeTabs: ["p-active-tabs", "activeTabs"], keysLabel: ["p-keys-label", "keysLabel"] }, outputs: { clickItem: "p-click-item", checkboxItem: "p-selectcheckbox-item", comboItem: "p-selectcombo-item", tabsItem: "p-emit-item-tabs", activatedTab: "p-activated-tabs" }, host: { properties: { "attr.p-type": "this.type", "attr.p-size": "this.size" } }, ngImport: i0 });
|
|
5592
5672
|
}
|
|
5593
5673
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListBaseComponent, decorators: [{
|
|
5594
5674
|
type: Directive
|
|
@@ -5631,6 +5711,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
5631
5711
|
}], icon: [{
|
|
5632
5712
|
type: Input,
|
|
5633
5713
|
args: ['p-icon']
|
|
5714
|
+
}], iconArrowRight: [{
|
|
5715
|
+
type: Input,
|
|
5716
|
+
args: ['p-icon-arrow-right']
|
|
5634
5717
|
}], iconPosition: [{
|
|
5635
5718
|
type: Input,
|
|
5636
5719
|
args: ['p-icon-position']
|
|
@@ -8036,11 +8119,11 @@ class PoItemListComponent extends PoItemListBaseComponent {
|
|
|
8036
8119
|
return value.replace(/</g, '<').replace(/>/g, '>');
|
|
8037
8120
|
}
|
|
8038
8121
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
8039
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoItemListComponent, isStandalone: false, selector: "po-item-list", viewQueries: [{ propertyName: "itemList", first: true, predicate: ["itemList"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon
|
|
8122
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoItemListComponent, isStandalone: false, selector: "po-item-list", viewQueries: [{ propertyName: "itemList", first: true, predicate: ["itemList"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon) {\n <po-icon\n class=\"po-popup-icon-item po-field-icon\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n }\n <span class=\"po-item-list-label\">{{ label }}</span>\n\n @if (iconArrowRight) {\n <po-icon class=\"po-popup-icon-item-right po-field-icon\" [p-icon]=\"iconArrowRight\"></po-icon>\n }\n </div>\n }\n @case ('option') {\n <div\n #itemList\n class=\"po-item-list po-item-list__option\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onComboItem(item, $event)\"\n >\n @if (!template) {\n @switch (keysLabel.length) {\n @case (0) {\n <span class=\"po-item-list-label\" [innerHTML]=\"getLabelFormatted(label)\"></span>\n }\n\n @case (1) {\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n }\n\n @case (2) {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }}</span>\n </div>\n }\n\n @default {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }} - {{ item[keysLabel[2]] }}</span>\n </div>\n }\n }\n }\n\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n @case ('check') {\n <div\n class=\"po-item-list po-item-list__check\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [class.po-item-list__disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onCheckboxItem()\"\n (keydown)=\"onCheckboxItemEmit($event)\"\n (keyup)=\"onCheckboxItemEmit($event)\"\n >\n <po-checkbox\n [p-disabled-tabindex]=\"true\"\n [p-checkboxValue]=\"checkboxValue === null ? 'mixed' : checkboxValue\"\n [p-disabled]=\"disabled\"\n [p-size]=\"size\"\n ></po-checkbox>\n @if (!template) {\n <span class=\"po-item-list__label\">{{ label }}</span>\n }\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n }\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoCheckboxComponent, selector: "po-checkbox" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }] });
|
|
8040
8123
|
}
|
|
8041
8124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListComponent, decorators: [{
|
|
8042
8125
|
type: Component,
|
|
8043
|
-
args: [{ selector: 'po-item-list', standalone: false, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon
|
|
8126
|
+
args: [{ selector: 'po-item-list', standalone: false, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon) {\n <po-icon\n class=\"po-popup-icon-item po-field-icon\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n }\n <span class=\"po-item-list-label\">{{ label }}</span>\n\n @if (iconArrowRight) {\n <po-icon class=\"po-popup-icon-item-right po-field-icon\" [p-icon]=\"iconArrowRight\"></po-icon>\n }\n </div>\n }\n @case ('option') {\n <div\n #itemList\n class=\"po-item-list po-item-list__option\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onComboItem(item, $event)\"\n >\n @if (!template) {\n @switch (keysLabel.length) {\n @case (0) {\n <span class=\"po-item-list-label\" [innerHTML]=\"getLabelFormatted(label)\"></span>\n }\n\n @case (1) {\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n }\n\n @case (2) {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }}</span>\n </div>\n }\n\n @default {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }} - {{ item[keysLabel[2]] }}</span>\n </div>\n }\n }\n }\n\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n @case ('check') {\n <div\n class=\"po-item-list po-item-list__check\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [class.po-item-list__disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onCheckboxItem()\"\n (keydown)=\"onCheckboxItemEmit($event)\"\n (keyup)=\"onCheckboxItemEmit($event)\"\n >\n <po-checkbox\n [p-disabled-tabindex]=\"true\"\n [p-checkboxValue]=\"checkboxValue === null ? 'mixed' : checkboxValue\"\n [p-disabled]=\"disabled\"\n [p-size]=\"size\"\n ></po-checkbox>\n @if (!template) {\n <span class=\"po-item-list__label\">{{ label }}</span>\n }\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n }\n</ng-container>\n" }]
|
|
8044
8127
|
}], propDecorators: { itemList: [{
|
|
8045
8128
|
type: ViewChild,
|
|
8046
8129
|
args: ['itemList', { static: true }]
|
|
@@ -8241,11 +8324,23 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8241
8324
|
}
|
|
8242
8325
|
});
|
|
8243
8326
|
}
|
|
8244
|
-
onKeydownGoBack(event) {
|
|
8327
|
+
onKeydownGoBack(event, currentGroup) {
|
|
8245
8328
|
if (event.key === 'Enter') {
|
|
8246
8329
|
this.goBack(event);
|
|
8247
8330
|
}
|
|
8248
8331
|
if (event?.code === 'Escape' || event.code === 'Tab') {
|
|
8332
|
+
if (event.code === 'Tab' && !event.shiftKey && currentGroup?.$subItemTemplate) {
|
|
8333
|
+
return;
|
|
8334
|
+
}
|
|
8335
|
+
this.closeEvent.emit();
|
|
8336
|
+
}
|
|
8337
|
+
}
|
|
8338
|
+
onKeydownTemplate(event) {
|
|
8339
|
+
if (event.code === 'Tab') {
|
|
8340
|
+
if (event.target?.closest('.po-listbox-dropdown')) {
|
|
8341
|
+
event.stopPropagation();
|
|
8342
|
+
return;
|
|
8343
|
+
}
|
|
8249
8344
|
this.closeEvent.emit();
|
|
8250
8345
|
}
|
|
8251
8346
|
}
|
|
@@ -8269,7 +8364,7 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8269
8364
|
if (itemListAction?.url && !isDisabled && isVisible) {
|
|
8270
8365
|
return this.openUrl(itemListAction.url);
|
|
8271
8366
|
}
|
|
8272
|
-
if (itemListAction?.subItems?.length) {
|
|
8367
|
+
if (itemListAction?.subItems?.length || itemListAction?.$subItemTemplate) {
|
|
8273
8368
|
this.openGroup(itemListAction, event);
|
|
8274
8369
|
}
|
|
8275
8370
|
else if (this.listboxSubitems) {
|
|
@@ -8465,11 +8560,11 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8465
8560
|
this.closeEvent.emit();
|
|
8466
8561
|
}
|
|
8467
8562
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8468
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoListBoxComponent, isStandalone: false, selector: "po-listbox", viewQueries: [{ propertyName: "listbox", first: true, predicate: ["listbox"], descendants: true, static: true }, { propertyName: "listboxItemList", first: true, predicate: ["listboxItemList"], descendants: true }, { propertyName: "listboxGroupHeader", first: true, predicate: ["listboxGroupHeader"], descendants: true }, { propertyName: "searchElement", first: true, predicate: ["searchElement"], descendants: true }, { propertyName: "popupHeaderContainer", first: true, predicate: ["popupHeaderContainer"], descendants: true }, { propertyName: "listboxItems", predicate: ["listboxItem"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate() && !listboxSubitems) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (listboxSubitems) {\n <ul cdkListbox class=\"po-listbox-list po-listbox-dropdown\">\n @if (!currentGroup) {\n @for (item of currentItems; track item) {\n <li\n #listboxItem\n [class.po-listbox-item]=\"visible\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false\"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item, $event)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.subItems?.length) {\n <po-item-list\n [p-label]=\"item.label\"\n [p-item]=\"item\"\n [p-separator]=\"item.separator || separator\"\n [p-icon]=\"'po-icon-arrow-right'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n } @else if (!item.subItems?.length && returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-label]=\"item[fieldLabel]\"\n [p-item]=\"item\"\n [p-icon]=\"item.icon\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.type === 'danger'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n }\n </li>\n }\n }\n\n @if (currentGroup) {\n <li\n #listboxGroupHeader\n class=\"po-listbox-group-header\"\n [cdkOption]=\"'back-option'\"\n [attr.aria-label]=\"literals?.backToPreviousGroup\"\n (click)=\"goBack($event)\"\n (keydown)=\"onKeydownGoBack($event)\"\n >\n <po-icon class=\"po-field-icon\" [p-icon]=\"'po-icon-arrow-left'\"></po-icon>\n <po-tag [p-value]=\"currentGroup.label\"></po-tag>\n </li>\n\n @for (subItem of currentItems; track subItem.label) {\n @if (subItem.subItems?.length) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n [p-label]=\"subItem.label\"\n [p-item]=\"subItem\"\n [p-separator]=\"subItem.separator || separator\"\n [p-icon]=\"'po-icon-arrow-right'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n </li>\n } @else if (!subItem.subItems?.length && returnBooleanValue(subItem, 'visible') !== false) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(subItem, 'disabled')\"\n [p-visible]=\"returnBooleanValue(subItem, 'visible')\"\n [p-label]=\"subItem[fieldLabel]\"\n [p-item]=\"subItem\"\n [p-icon]=\"subItem.icon\"\n [p-separator]=\"subItem.separator || separator\"\n [p-danger]=\"subItem.type === 'danger'\"\n [p-selected]=\"isSelectedItem(subItem) || subItem.selected\"\n >\n </po-item-list>\n </li>\n }\n }\n }\n </ul>\n }\n\n @if (isServerSearching && type !== 'action') {\n <div [class.po-listbox-container-loading-default]=\"!infiniteLoading\">\n <po-loading-overlay [p-size]=\"getSizeLoading()\" [p-text]=\"getTextLoading()\"></po-loading-overlay>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoLoadingOverlayComponent, selector: "po-loading-overlay" }, { kind: "component", type: PoTagComponent, selector: "po-tag" }, { kind: "directive", type: i4.CdkListbox, selector: "[cdkListbox]", inputs: ["id", "tabindex", "cdkListboxValue", "cdkListboxMultiple", "cdkListboxDisabled", "cdkListboxUseActiveDescendant", "cdkListboxOrientation", "cdkListboxCompareWith", "cdkListboxNavigationWrapDisabled", "cdkListboxNavigatesDisabledOptions"], outputs: ["cdkListboxValueChange"], exportAs: ["cdkListbox"] }, { kind: "directive", type: i4.CdkOption, selector: "[cdkOption]", inputs: ["id", "cdkOption", "cdkOptionTypeaheadLabel", "cdkOptionDisabled", "tabindex"], exportAs: ["cdkOption"] }, { kind: "component", type: PoItemListComponent, selector: "po-item-list" }, { kind: "component", type: PoSearchListComponent, selector: "po-search-list", inputs: ["p-literals", "p-field-value", "p-size", "p-placeholder"], outputs: ["p-change"] }] });
|
|
8563
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoListBoxComponent, isStandalone: false, selector: "po-listbox", viewQueries: [{ propertyName: "listbox", first: true, predicate: ["listbox"], descendants: true, static: true }, { propertyName: "listboxItemList", first: true, predicate: ["listboxItemList"], descendants: true }, { propertyName: "listboxGroupHeader", first: true, predicate: ["listboxGroupHeader"], descendants: true }, { propertyName: "searchElement", first: true, predicate: ["searchElement"], descendants: true }, { propertyName: "popupHeaderContainer", first: true, predicate: ["popupHeaderContainer"], descendants: true }, { propertyName: "listboxItems", predicate: ["listboxItem"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate() && !listboxSubitems) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (listboxSubitems) {\n <ul cdkListbox class=\"po-listbox-list po-listbox-dropdown\">\n @if (!currentGroup) {\n @for (item of currentItems; track item) {\n <li\n #listboxItem\n [class.po-listbox-item]=\"visible\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false\"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item, $event)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.subItems?.length || item.$subItemTemplate) {\n <po-item-list\n [p-label]=\"item.label\"\n [p-item]=\"item\"\n [p-separator]=\"item.separator || separator\"\n [p-icon]=\"item.icon\"\n [p-icon-arrow-right]=\"'ICON_ARROW_RIGHT'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n } @else if (!item.subItems?.length && returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-label]=\"item[fieldLabel]\"\n [p-item]=\"item\"\n [p-icon]=\"item.icon\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.type === 'danger'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n }\n </li>\n }\n }\n\n @if (currentGroup) {\n <li\n #listboxGroupHeader\n class=\"po-listbox-group-header\"\n [cdkOption]=\"'back-option'\"\n [attr.aria-label]=\"literals?.backToPreviousGroup\"\n (click)=\"goBack($event)\"\n (keydown)=\"onKeydownGoBack($event, currentGroup)\"\n >\n <po-icon class=\"po-field-icon\" [p-icon]=\"'ICON_ARROW_LEFT'\"></po-icon>\n <po-tag [p-value]=\"currentGroup.label\"></po-tag>\n </li>\n\n @if (currentGroup.$subItemTemplate) {\n <div\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"onKeydownTemplate($event)\"\n (keydown.space)=\"$event.stopPropagation()\"\n >\n <ng-container\n *ngTemplateOutlet=\"currentGroup.$subItemTemplate; context: { $implicit: currentGroup }\"\n ></ng-container>\n </div>\n } @else {\n @for (subItem of currentItems; track subItem.label) {\n @if (subItem.subItems?.length) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n [p-label]=\"subItem.label\"\n [p-item]=\"subItem\"\n [p-separator]=\"subItem.separator || separator\"\n [p-icon]=\"'ICON_ARROW_RIGHT'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n </li>\n } @else if (!subItem.subItems?.length && returnBooleanValue(subItem, 'visible') !== false) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(subItem, 'disabled')\"\n [p-visible]=\"returnBooleanValue(subItem, 'visible')\"\n [p-label]=\"subItem[fieldLabel]\"\n [p-item]=\"subItem\"\n [p-icon]=\"subItem.icon\"\n [p-separator]=\"subItem.separator || separator\"\n [p-danger]=\"subItem.type === 'danger'\"\n [p-selected]=\"isSelectedItem(subItem) || subItem.selected\"\n >\n </po-item-list>\n </li>\n }\n }\n }\n }\n </ul>\n }\n\n @if (isServerSearching && type !== 'action') {\n <div [class.po-listbox-container-loading-default]=\"!infiniteLoading\">\n <po-loading-overlay [p-size]=\"getSizeLoading()\" [p-text]=\"getTextLoading()\"></po-loading-overlay>\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoLoadingOverlayComponent, selector: "po-loading-overlay" }, { kind: "component", type: PoTagComponent, selector: "po-tag" }, { kind: "directive", type: i5.CdkListbox, selector: "[cdkListbox]", inputs: ["id", "tabindex", "cdkListboxValue", "cdkListboxMultiple", "cdkListboxDisabled", "cdkListboxUseActiveDescendant", "cdkListboxOrientation", "cdkListboxCompareWith", "cdkListboxNavigationWrapDisabled", "cdkListboxNavigatesDisabledOptions"], outputs: ["cdkListboxValueChange"], exportAs: ["cdkListbox"] }, { kind: "directive", type: i5.CdkOption, selector: "[cdkOption]", inputs: ["id", "cdkOption", "cdkOptionTypeaheadLabel", "cdkOptionDisabled", "tabindex"], exportAs: ["cdkOption"] }, { kind: "component", type: PoItemListComponent, selector: "po-item-list" }, { kind: "component", type: PoSearchListComponent, selector: "po-search-list", inputs: ["p-literals", "p-field-value", "p-size", "p-placeholder"], outputs: ["p-change"] }] });
|
|
8469
8564
|
}
|
|
8470
8565
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxComponent, decorators: [{
|
|
8471
8566
|
type: Component,
|
|
8472
|
-
args: [{ selector: 'po-listbox', standalone: false, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate() && !listboxSubitems) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (listboxSubitems) {\n <ul cdkListbox class=\"po-listbox-list po-listbox-dropdown\">\n @if (!currentGroup) {\n @for (item of currentItems; track item) {\n <li\n #listboxItem\n [class.po-listbox-item]=\"visible\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false\"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item, $event)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.subItems?.length) {\n <po-item-list\n [p-label]=\"item.label\"\n [p-item]=\"item\"\n [p-separator]=\"item.separator || separator\"\n [p-icon]=\"
|
|
8567
|
+
args: [{ selector: 'po-listbox', standalone: false, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate() && !listboxSubitems) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (listboxSubitems) {\n <ul cdkListbox class=\"po-listbox-list po-listbox-dropdown\">\n @if (!currentGroup) {\n @for (item of currentItems; track item) {\n <li\n #listboxItem\n [class.po-listbox-item]=\"visible\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false\"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item, $event)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.subItems?.length || item.$subItemTemplate) {\n <po-item-list\n [p-label]=\"item.label\"\n [p-item]=\"item\"\n [p-separator]=\"item.separator || separator\"\n [p-icon]=\"item.icon\"\n [p-icon-arrow-right]=\"'ICON_ARROW_RIGHT'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n } @else if (!item.subItems?.length && returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-label]=\"item[fieldLabel]\"\n [p-item]=\"item\"\n [p-icon]=\"item.icon\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.type === 'danger'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n }\n </li>\n }\n }\n\n @if (currentGroup) {\n <li\n #listboxGroupHeader\n class=\"po-listbox-group-header\"\n [cdkOption]=\"'back-option'\"\n [attr.aria-label]=\"literals?.backToPreviousGroup\"\n (click)=\"goBack($event)\"\n (keydown)=\"onKeydownGoBack($event, currentGroup)\"\n >\n <po-icon class=\"po-field-icon\" [p-icon]=\"'ICON_ARROW_LEFT'\"></po-icon>\n <po-tag [p-value]=\"currentGroup.label\"></po-tag>\n </li>\n\n @if (currentGroup.$subItemTemplate) {\n <div\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"onKeydownTemplate($event)\"\n (keydown.space)=\"$event.stopPropagation()\"\n >\n <ng-container\n *ngTemplateOutlet=\"currentGroup.$subItemTemplate; context: { $implicit: currentGroup }\"\n ></ng-container>\n </div>\n } @else {\n @for (subItem of currentItems; track subItem.label) {\n @if (subItem.subItems?.length) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n [p-label]=\"subItem.label\"\n [p-item]=\"subItem\"\n [p-separator]=\"subItem.separator || separator\"\n [p-icon]=\"'ICON_ARROW_RIGHT'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n </li>\n } @else if (!subItem.subItems?.length && returnBooleanValue(subItem, 'visible') !== false) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(subItem, 'disabled')\"\n [p-visible]=\"returnBooleanValue(subItem, 'visible')\"\n [p-label]=\"subItem[fieldLabel]\"\n [p-item]=\"subItem\"\n [p-icon]=\"subItem.icon\"\n [p-separator]=\"subItem.separator || separator\"\n [p-danger]=\"subItem.type === 'danger'\"\n [p-selected]=\"isSelectedItem(subItem) || subItem.selected\"\n >\n </po-item-list>\n </li>\n }\n }\n }\n }\n </ul>\n }\n\n @if (isServerSearching && type !== 'action') {\n <div [class.po-listbox-container-loading-default]=\"!infiniteLoading\">\n <po-loading-overlay [p-size]=\"getSizeLoading()\" [p-text]=\"getTextLoading()\"></po-loading-overlay>\n </div>\n }\n</div>\n" }]
|
|
8473
8568
|
}], ctorParameters: () => [], propDecorators: { listbox: [{
|
|
8474
8569
|
type: ViewChild,
|
|
8475
8570
|
args: ['listbox', { static: true }]
|
|
@@ -8513,6 +8608,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
8513
8608
|
*
|
|
8514
8609
|
*/
|
|
8515
8610
|
class PoPopupComponent extends PoPopupBaseComponent {
|
|
8611
|
+
id = `po-popup[${uuid()}]`;
|
|
8516
8612
|
renderer = inject(Renderer2);
|
|
8517
8613
|
router = inject(Router);
|
|
8518
8614
|
poControlPosition = inject(PoControlPositionService);
|
|
@@ -8521,6 +8617,11 @@ class PoPopupComponent extends PoPopupBaseComponent {
|
|
|
8521
8617
|
listbox;
|
|
8522
8618
|
//utilizado apenas no theme builder
|
|
8523
8619
|
poListBoxRef;
|
|
8620
|
+
ngAfterViewInit() {
|
|
8621
|
+
if (this.templateIcon && this.target) {
|
|
8622
|
+
this.target = this.target?.iconElement?.nativeElement;
|
|
8623
|
+
}
|
|
8624
|
+
}
|
|
8524
8625
|
/**
|
|
8525
8626
|
* Fecha o componente *popup*.
|
|
8526
8627
|
*
|
|
@@ -8573,7 +8674,7 @@ class PoPopupComponent extends PoPopupBaseComponent {
|
|
|
8573
8674
|
if (!item.goBack) {
|
|
8574
8675
|
this.clickItem.emit(item);
|
|
8575
8676
|
}
|
|
8576
|
-
if (item.subItems || item.goBack) {
|
|
8677
|
+
if (item.subItems || item.$subItemTemplate || item.goBack) {
|
|
8577
8678
|
this.changeDetector.detectChanges();
|
|
8578
8679
|
this.validateInitialContent();
|
|
8579
8680
|
}
|
|
@@ -10704,6 +10805,49 @@ var PoChartLabelFormat;
|
|
|
10704
10805
|
PoChartLabelFormat["Currency"] = "currency";
|
|
10705
10806
|
})(PoChartLabelFormat || (PoChartLabelFormat = {}));
|
|
10706
10807
|
|
|
10808
|
+
const poChartLiteralsDefault = {
|
|
10809
|
+
en: {
|
|
10810
|
+
downloadCSV: 'Download CSV',
|
|
10811
|
+
exportCSV: 'Export CSV',
|
|
10812
|
+
exportJPG: 'Export JPG',
|
|
10813
|
+
exportPNG: 'Export PNG',
|
|
10814
|
+
value: 'Value',
|
|
10815
|
+
item: 'Item',
|
|
10816
|
+
serie: 'Series',
|
|
10817
|
+
category: 'Category'
|
|
10818
|
+
},
|
|
10819
|
+
es: {
|
|
10820
|
+
downloadCSV: 'Descargar CSV',
|
|
10821
|
+
exportCSV: 'Exportar CSV',
|
|
10822
|
+
exportJPG: 'Exportar JPG',
|
|
10823
|
+
exportPNG: 'Exportar PNG',
|
|
10824
|
+
value: 'Valor',
|
|
10825
|
+
item: 'Artículo',
|
|
10826
|
+
serie: 'Serie',
|
|
10827
|
+
category: 'Categoría'
|
|
10828
|
+
},
|
|
10829
|
+
pt: {
|
|
10830
|
+
downloadCSV: 'Baixar CSV',
|
|
10831
|
+
exportCSV: 'Exportar CSV',
|
|
10832
|
+
exportJPG: 'Exportar JPG',
|
|
10833
|
+
exportPNG: 'Exportar PNG',
|
|
10834
|
+
value: 'Valor',
|
|
10835
|
+
item: 'Item',
|
|
10836
|
+
serie: 'Série',
|
|
10837
|
+
category: 'Categoria'
|
|
10838
|
+
},
|
|
10839
|
+
ru: {
|
|
10840
|
+
downloadCSV: 'Скачать CSV',
|
|
10841
|
+
exportCSV: 'Экспортировать CSV',
|
|
10842
|
+
exportJPG: 'Экспортировать JPG',
|
|
10843
|
+
exportPNG: 'Экспортировать PNG',
|
|
10844
|
+
value: 'Ценить',
|
|
10845
|
+
item: 'Пункт',
|
|
10846
|
+
serie: 'Ряд',
|
|
10847
|
+
category: 'Категория'
|
|
10848
|
+
}
|
|
10849
|
+
};
|
|
10850
|
+
|
|
10707
10851
|
/**
|
|
10708
10852
|
* @usedBy PoChartComponent
|
|
10709
10853
|
*
|
|
@@ -10746,51 +10890,12 @@ var PoChartType;
|
|
|
10746
10890
|
* - Para um demonstrativo mais elaborado, consegue-se definir alcances em cores, um breve texto descritivo e um ponteiro indicando o valor desejado.
|
|
10747
10891
|
*/
|
|
10748
10892
|
PoChartType["Gauge"] = "gauge";
|
|
10893
|
+
/**
|
|
10894
|
+
* Tipo de gráfico utilizado para visualizar e comparar o desempenho de diferentes itens em múltiplas categorias.
|
|
10895
|
+
*/
|
|
10896
|
+
PoChartType["Radar"] = "radar";
|
|
10749
10897
|
})(PoChartType || (PoChartType = {}));
|
|
10750
10898
|
|
|
10751
|
-
const poChartLiteralsDefault = {
|
|
10752
|
-
en: {
|
|
10753
|
-
downloadCSV: 'Download CSV',
|
|
10754
|
-
exportCSV: 'Export CSV',
|
|
10755
|
-
exportJPG: 'Export JPG',
|
|
10756
|
-
exportPNG: 'Export PNG',
|
|
10757
|
-
value: 'Value',
|
|
10758
|
-
item: 'Item',
|
|
10759
|
-
serie: 'Series',
|
|
10760
|
-
category: 'Category'
|
|
10761
|
-
},
|
|
10762
|
-
es: {
|
|
10763
|
-
downloadCSV: 'Descargar CSV',
|
|
10764
|
-
exportCSV: 'Exportar CSV',
|
|
10765
|
-
exportJPG: 'Exportar JPG',
|
|
10766
|
-
exportPNG: 'Exportar PNG',
|
|
10767
|
-
value: 'Valor',
|
|
10768
|
-
item: 'Artículo',
|
|
10769
|
-
serie: 'Serie',
|
|
10770
|
-
category: 'Categoría'
|
|
10771
|
-
},
|
|
10772
|
-
pt: {
|
|
10773
|
-
downloadCSV: 'Baixar CSV',
|
|
10774
|
-
exportCSV: 'Exportar CSV',
|
|
10775
|
-
exportJPG: 'Exportar JPG',
|
|
10776
|
-
exportPNG: 'Exportar PNG',
|
|
10777
|
-
value: 'Valor',
|
|
10778
|
-
item: 'Item',
|
|
10779
|
-
serie: 'Série',
|
|
10780
|
-
category: 'Categoria'
|
|
10781
|
-
},
|
|
10782
|
-
ru: {
|
|
10783
|
-
downloadCSV: 'Скачать CSV',
|
|
10784
|
-
exportCSV: 'Экспортировать CSV',
|
|
10785
|
-
exportJPG: 'Экспортировать JPG',
|
|
10786
|
-
exportPNG: 'Экспортировать PNG',
|
|
10787
|
-
value: 'Ценить',
|
|
10788
|
-
item: 'Пункт',
|
|
10789
|
-
serie: 'Ряд',
|
|
10790
|
-
category: 'Категория'
|
|
10791
|
-
}
|
|
10792
|
-
};
|
|
10793
|
-
|
|
10794
10899
|
const poChartMinHeight = 200;
|
|
10795
10900
|
const poChartDefaultHeight = 400;
|
|
10796
10901
|
/**
|
|
@@ -10846,6 +10951,9 @@ const poChartDefaultHeight = 400;
|
|
|
10846
10951
|
* | `--color-base-gauge` | Cor da base do gráfico `Gauge` | `var(--color-neutral-light-20)` |
|
|
10847
10952
|
* | `--color-gauge-pointer-color` | Cor do ponteiro do gráfico `Gauge` | `var(--color-neutral-dark-70)` |
|
|
10848
10953
|
* | `--color-chart-line-point-fill` | Cor de dentro do círculo dos gráficos `Line` e `Area` | `var(--color-neutral-light-00)` |
|
|
10954
|
+
* | `--border-color-radar` | Cor do eixo da grid do gráfico `Radar` | `var(--color-neutral-light-30)` |
|
|
10955
|
+
* | `--color-background-zebra` | Cor das áreas alternadas (efeito zebrado) da grid do gráfico `Radar` | `var(--color-neutral-light-10)` |
|
|
10956
|
+
* | `--color-background-line` | Cor das áreas entre as faixas zebradas da grade do `Radar` | `none` |
|
|
10849
10957
|
* | **Wrapper (.po-chart-container-gauge)** | | |
|
|
10850
10958
|
* | `--background-color-container-gauge` | Cor de background do container do gauge | `var(--color-neutral-light-00)` |
|
|
10851
10959
|
*/
|
|
@@ -10873,11 +10981,18 @@ class PoChartBaseComponent {
|
|
|
10873
10981
|
*
|
|
10874
10982
|
* @description
|
|
10875
10983
|
*
|
|
10876
|
-
* Define os
|
|
10984
|
+
* Define os valores utilizados na construção das categorias do gráfico.
|
|
10877
10985
|
*
|
|
10878
|
-
*
|
|
10986
|
+
* Para gráficos dos tipos *bar*, *area*, *column* e *line*, representa os nomes das categorias exibidas no eixo.
|
|
10879
10987
|
*
|
|
10880
|
-
*
|
|
10988
|
+
* Para gráficos do tipo *radar*, representa a configuração dos indicadores, formato (shape), áreas de divisão (splitArea)
|
|
10989
|
+
* e demais opções específicas do gráfico `Radar`.
|
|
10990
|
+
*
|
|
10991
|
+
* > Caso nenhum valor seja informado, será utilizado um hífen como categoria
|
|
10992
|
+
* correspondente para cada série.
|
|
10993
|
+
*
|
|
10994
|
+
* > Gráficos do tipo bar dimensionam sua área considerando a largura do maior texto
|
|
10995
|
+
* da categoria, sendo recomendável utilizar rótulos curtos para facilitar a leitura.
|
|
10881
10996
|
*/
|
|
10882
10997
|
categories;
|
|
10883
10998
|
/**
|
|
@@ -10896,7 +11011,7 @@ class PoChartBaseComponent {
|
|
|
10896
11011
|
* Objeto com as configurações usadas no `po-chart`.
|
|
10897
11012
|
*
|
|
10898
11013
|
* É possível, por exemplo, definir as configurações de exibição das legendas,
|
|
10899
|
-
* configurar os eixos(*axis*) para os gráficos dos tipos `area`, `line`, `column` e `
|
|
11014
|
+
* configurar os eixos(*axis*) para os gráficos dos tipos `area`, `line`, `column`, `bar` e `radar` da seguinte forma:
|
|
10900
11015
|
*
|
|
10901
11016
|
* ```
|
|
10902
11017
|
* chartOptions: PoChartOptions = {
|
|
@@ -10923,7 +11038,7 @@ class PoChartBaseComponent {
|
|
|
10923
11038
|
* - Os marcadores (*bullets*) terão seu estilo ajustado.
|
|
10924
11039
|
* - As outras séries ficarão com opacidade reduzida ao passar o mouse sobre a série ativa.
|
|
10925
11040
|
*
|
|
10926
|
-
* > Disponível
|
|
11041
|
+
* > Disponível para gráficos do tipo `line` e `radar`.
|
|
10927
11042
|
*
|
|
10928
11043
|
* #### Exemplo de utilização:
|
|
10929
11044
|
* ```typescript
|
|
@@ -11024,6 +11139,7 @@ class PoChartBaseComponent {
|
|
|
11024
11139
|
*
|
|
11025
11140
|
* O evento emitirá o seguinte parâmetro:
|
|
11026
11141
|
* - *donut* e *pie*: um objeto contendo a categoria e valor da série.
|
|
11142
|
+
* - *radar*: um objeto contendo o nome da série e os valores.
|
|
11027
11143
|
* - *area*, *line*, *column* e *bar*: um objeto contendo o nome da série, valor e categoria do eixo do gráfico.
|
|
11028
11144
|
*/
|
|
11029
11145
|
seriesClick = new EventEmitter();
|
|
@@ -11036,6 +11152,7 @@ class PoChartBaseComponent {
|
|
|
11036
11152
|
*
|
|
11037
11153
|
* O evento emitirá o seguinte parâmetro de acordo com o tipo de gráfico:
|
|
11038
11154
|
* - *donut* e *pie*: um objeto contendo a categoria e valor da série.
|
|
11155
|
+
* - *radar*: um objeto contendo o nome da série e os valores.
|
|
11039
11156
|
* - *area*, *line*, *column* e *bar*: um objeto contendo a categoria, valor da série e categoria do eixo do gráfico.
|
|
11040
11157
|
*/
|
|
11041
11158
|
seriesHover = new EventEmitter();
|
|
@@ -11169,6 +11286,9 @@ class PoChartGridUtils {
|
|
|
11169
11286
|
}
|
|
11170
11287
|
}
|
|
11171
11288
|
};
|
|
11289
|
+
if (this.component.isTypeRadar) {
|
|
11290
|
+
return;
|
|
11291
|
+
}
|
|
11172
11292
|
if (this.component.isTypeBar) {
|
|
11173
11293
|
options.yAxis.data = this.component.categories;
|
|
11174
11294
|
}
|
|
@@ -11382,7 +11502,8 @@ class PoChartGridUtils {
|
|
|
11382
11502
|
}
|
|
11383
11503
|
else if ((options?.dataZoom && !options?.bottomDataZoom && options.legend === false) ||
|
|
11384
11504
|
(!options?.dataZoom && options?.legend === false) ||
|
|
11385
|
-
(!options?.dataZoom && options?.legendVerticalPosition === 'top')
|
|
11505
|
+
(!options?.dataZoom && options?.legendVerticalPosition === 'top') ||
|
|
11506
|
+
(this.component.isTypeRadar && options.legendVerticalPosition !== 'top')) {
|
|
11386
11507
|
return gridPaddingValues.paddingBottomNoLegend;
|
|
11387
11508
|
}
|
|
11388
11509
|
return gridPaddingValues.paddingBottomWithTopLegend;
|
|
@@ -11412,6 +11533,135 @@ class PoChartGridUtils {
|
|
|
11412
11533
|
: gridPaddingValues.paddingTopDefaultWithBottomLegend;
|
|
11413
11534
|
}
|
|
11414
11535
|
}
|
|
11536
|
+
isRadarOptions(value) {
|
|
11537
|
+
return value && typeof value === 'object' && !Array.isArray(value) && 'indicator' in value;
|
|
11538
|
+
}
|
|
11539
|
+
convertRadarConfig(indicators) {
|
|
11540
|
+
return {
|
|
11541
|
+
shape: 'polygon',
|
|
11542
|
+
splitArea: false,
|
|
11543
|
+
indicator: indicators.map(item => ({ name: item }))
|
|
11544
|
+
};
|
|
11545
|
+
}
|
|
11546
|
+
setListTypeRadar() {
|
|
11547
|
+
const radar = this.isRadarOptions(this.component.categories)
|
|
11548
|
+
? this.component.categories
|
|
11549
|
+
: this.convertRadarConfig(this.component.categories);
|
|
11550
|
+
const radarConfig = {
|
|
11551
|
+
shape: radar?.shape ?? 'polygon',
|
|
11552
|
+
radius: '60%',
|
|
11553
|
+
splitLine: {
|
|
11554
|
+
show: true,
|
|
11555
|
+
lineStyle: {
|
|
11556
|
+
color: [this.component.getCSSVariable('--border-color-radar', 'po-chart .po-chart')],
|
|
11557
|
+
width: this.resolvePx('--border-width-sm')
|
|
11558
|
+
}
|
|
11559
|
+
},
|
|
11560
|
+
axisLine: {
|
|
11561
|
+
show: true,
|
|
11562
|
+
lineStyle: {
|
|
11563
|
+
color: this.component.getCSSVariable('--border-color-radar', 'po-chart .po-chart'),
|
|
11564
|
+
width: this.resolvePx('--border-width-sm')
|
|
11565
|
+
}
|
|
11566
|
+
},
|
|
11567
|
+
splitArea: {
|
|
11568
|
+
show: radar?.splitArea ?? false,
|
|
11569
|
+
areaStyle: {
|
|
11570
|
+
color: [
|
|
11571
|
+
this.component.getCSSVariable('--color-background-line', 'po-chart .po-chart'),
|
|
11572
|
+
this.component.getCSSVariable('--color-background-zebra', 'po-chart .po-chart')
|
|
11573
|
+
]
|
|
11574
|
+
}
|
|
11575
|
+
},
|
|
11576
|
+
indicator: Array.isArray(radar?.indicator)
|
|
11577
|
+
? radar.indicator.map(ind => ({
|
|
11578
|
+
name: ind.name,
|
|
11579
|
+
max: ind.max ?? undefined,
|
|
11580
|
+
min: ind.min ?? 0,
|
|
11581
|
+
color: ind.color ?? this.component.getCSSVariable('--color-neutral-dark-90')
|
|
11582
|
+
}))
|
|
11583
|
+
: []
|
|
11584
|
+
};
|
|
11585
|
+
const currentOptions = this.component.options ?? {};
|
|
11586
|
+
const hasGlobalAreaStyle = this.component.options?.areaStyle === true;
|
|
11587
|
+
const hasSeriesAreaStyle = Array.isArray(this.component.series) && this.component.series.some(serie => !!serie?.areaStyle);
|
|
11588
|
+
this.component.options = {
|
|
11589
|
+
...this.component.options,
|
|
11590
|
+
fillPoints: hasGlobalAreaStyle || hasSeriesAreaStyle ? true : (currentOptions.fillPoints ?? true),
|
|
11591
|
+
radar: radarConfig
|
|
11592
|
+
};
|
|
11593
|
+
return radarConfig;
|
|
11594
|
+
}
|
|
11595
|
+
setSerieTypeRadar(serie, tokenBorderWidthMd, color) {
|
|
11596
|
+
if (serie.type === 'radar') {
|
|
11597
|
+
serie.type = 'radar';
|
|
11598
|
+
serie.symbol = 'circle';
|
|
11599
|
+
serie.symbolSize = 6;
|
|
11600
|
+
if (this.component.dataLabel?.fixed) {
|
|
11601
|
+
serie.label = {
|
|
11602
|
+
show: true
|
|
11603
|
+
};
|
|
11604
|
+
}
|
|
11605
|
+
serie.itemStyle = {
|
|
11606
|
+
color: this.component.options?.fillPoints === false
|
|
11607
|
+
? this.component.getCSSVariable('--color-chart-line-point-fill', 'po-chart .po-chart')
|
|
11608
|
+
: color,
|
|
11609
|
+
borderColor: color,
|
|
11610
|
+
borderWidth: tokenBorderWidthMd
|
|
11611
|
+
};
|
|
11612
|
+
serie.lineStyle = { color, width: tokenBorderWidthMd };
|
|
11613
|
+
return serie;
|
|
11614
|
+
}
|
|
11615
|
+
}
|
|
11616
|
+
setTooltipRadar(params) {
|
|
11617
|
+
const indicators = this.component.options.radar?.indicator ?? [];
|
|
11618
|
+
const values = params.value ?? [];
|
|
11619
|
+
values.map((val, i) => {
|
|
11620
|
+
const indicatorName = indicators[i]?.name ?? `Indicador ${i + 1}`;
|
|
11621
|
+
return `${indicatorName}: <b>${val}</b>`;
|
|
11622
|
+
});
|
|
11623
|
+
}
|
|
11624
|
+
buildRadarTooltip(params) {
|
|
11625
|
+
const indicators = this.component.options.radar?.indicator ?? [];
|
|
11626
|
+
const values = params.value ?? [];
|
|
11627
|
+
let tooltip = `<b>${params.name}</b><br>`;
|
|
11628
|
+
values.map((val, index) => {
|
|
11629
|
+
const indicatorName = indicators[index]?.name ?? `Indicator ${index + 1}`;
|
|
11630
|
+
tooltip += `${indicatorName}: <b>${val}</b><br>`;
|
|
11631
|
+
});
|
|
11632
|
+
return tooltip;
|
|
11633
|
+
}
|
|
11634
|
+
finalizeSerieTypeRadar(seriesUpdated) {
|
|
11635
|
+
const hasGlobalAreaStyle = this.component.options?.areaStyle === true;
|
|
11636
|
+
return [
|
|
11637
|
+
{
|
|
11638
|
+
type: 'radar',
|
|
11639
|
+
data: seriesUpdated.map(item => {
|
|
11640
|
+
const name = item?.name ?? '';
|
|
11641
|
+
const value = Array.isArray(item?.data) ? item.data : [];
|
|
11642
|
+
let areaStyle;
|
|
11643
|
+
if (hasGlobalAreaStyle || item.areaStyle === true) {
|
|
11644
|
+
areaStyle = {
|
|
11645
|
+
opacity: 0.5
|
|
11646
|
+
};
|
|
11647
|
+
}
|
|
11648
|
+
else {
|
|
11649
|
+
areaStyle = undefined;
|
|
11650
|
+
}
|
|
11651
|
+
return {
|
|
11652
|
+
name,
|
|
11653
|
+
value,
|
|
11654
|
+
areaStyle,
|
|
11655
|
+
symbol: item.symbol,
|
|
11656
|
+
symbolSize: item.symbolSize,
|
|
11657
|
+
itemStyle: item.itemStyle,
|
|
11658
|
+
lineStyle: item.lineStyle,
|
|
11659
|
+
label: { show: item?.label?.show }
|
|
11660
|
+
};
|
|
11661
|
+
})
|
|
11662
|
+
}
|
|
11663
|
+
];
|
|
11664
|
+
}
|
|
11415
11665
|
}
|
|
11416
11666
|
|
|
11417
11667
|
class PoChartGaugeUtils {
|
|
@@ -11563,11 +11813,9 @@ class PoChartGaugeUtils {
|
|
|
11563
11813
|
let lengthPointer = '40%';
|
|
11564
11814
|
let center = ['50%', '80%'];
|
|
11565
11815
|
let widthSubtitle = height < 450 ? 400 : 500;
|
|
11566
|
-
// 👇 Regras para telas pequenas
|
|
11567
11816
|
const isSmallScreen = divWidth < 480;
|
|
11568
11817
|
const isMediumScreen = divWidth >= 480 && divWidth < 960;
|
|
11569
11818
|
const isLargeScreen = divWidth >= 960;
|
|
11570
|
-
// 👇 Ajustes por largura
|
|
11571
11819
|
if (isSmallScreen) {
|
|
11572
11820
|
radius = height > 480 ? '100%' : '120%';
|
|
11573
11821
|
lengthPointer = '25%';
|
|
@@ -11582,7 +11830,6 @@ class PoChartGaugeUtils {
|
|
|
11582
11830
|
else if (isLargeScreen && height > 750) {
|
|
11583
11831
|
radius = '100%';
|
|
11584
11832
|
}
|
|
11585
|
-
// 👇 Ajuste específico para altura muito pequena
|
|
11586
11833
|
if (height < 400) {
|
|
11587
11834
|
return this.setPropertiesDefaultHeight(center);
|
|
11588
11835
|
}
|
|
@@ -11673,6 +11920,7 @@ use([
|
|
|
11673
11920
|
GraphicComponent,
|
|
11674
11921
|
LineChart,
|
|
11675
11922
|
PieChart,
|
|
11923
|
+
RadarChart,
|
|
11676
11924
|
BrushComponent,
|
|
11677
11925
|
DataZoomComponent,
|
|
11678
11926
|
GridComponent,
|
|
@@ -11717,6 +11965,11 @@ use([
|
|
|
11717
11965
|
* <file name="sample-po-chart-world-exports/sample-po-chart-world-exports.component.html"> </file>
|
|
11718
11966
|
* <file name="sample-po-chart-world-exports/sample-po-chart-world-exports.component.ts"> </file>
|
|
11719
11967
|
* </example>
|
|
11968
|
+
*
|
|
11969
|
+
* <example name="po-chart-technology-skill" title="PO Chart - Radar">
|
|
11970
|
+
* <file name="sample-po-chart-technology-skill/sample-po-chart-technology-skill.component.html"> </file>
|
|
11971
|
+
* <file name="sample-po-chart-technology-skill/sample-po-chart-technology-skill.component.ts"> </file>
|
|
11972
|
+
* </example>
|
|
11720
11973
|
*/
|
|
11721
11974
|
class PoChartComponent extends PoChartBaseComponent {
|
|
11722
11975
|
el = inject(ElementRef);
|
|
@@ -11732,6 +11985,7 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
11732
11985
|
originalRadiusGauge;
|
|
11733
11986
|
chartMarginTop = '0px';
|
|
11734
11987
|
isTypeBar = false;
|
|
11988
|
+
isTypeRadar = false;
|
|
11735
11989
|
boundaryGap = false;
|
|
11736
11990
|
listTypePieDonut;
|
|
11737
11991
|
itemsTypeDonut = [];
|
|
@@ -12014,7 +12268,9 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12014
12268
|
}
|
|
12015
12269
|
resolveCustomTooltip(params, name, seriesName, valueLabel) {
|
|
12016
12270
|
let text;
|
|
12017
|
-
const serie = params.seriesType === 'pie'
|
|
12271
|
+
const serie = params.seriesType === 'pie' || params.seriesType === 'radar'
|
|
12272
|
+
? this.series[params.dataIndex]
|
|
12273
|
+
: this.series[params.seriesIndex];
|
|
12018
12274
|
if (serie?.tooltip) {
|
|
12019
12275
|
if (typeof serie.tooltip === 'function') {
|
|
12020
12276
|
text = serie.tooltip(params);
|
|
@@ -12028,6 +12284,9 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12028
12284
|
seriesName && !seriesName.includes('\u00000')
|
|
12029
12285
|
? `<b>${name}</b><br>${seriesName}: <b>${valueLabel}</b>`
|
|
12030
12286
|
: `${name}: <b>${valueLabel}</b>`;
|
|
12287
|
+
if (params.seriesType === 'radar') {
|
|
12288
|
+
text = this.chartGridUtils.buildRadarTooltip(params);
|
|
12289
|
+
}
|
|
12031
12290
|
}
|
|
12032
12291
|
return this.parseTooltipText(text);
|
|
12033
12292
|
}
|
|
@@ -12052,7 +12311,7 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12052
12311
|
this.listTypePieDonut = [];
|
|
12053
12312
|
this.itemsTypeDonut = [];
|
|
12054
12313
|
let option = {};
|
|
12055
|
-
if (!this.categories?.length && this.categories !== undefined) {
|
|
12314
|
+
if (Array.isArray(this.categories) && !this.categories?.length && this.categories !== undefined) {
|
|
12056
12315
|
this.categories = undefined;
|
|
12057
12316
|
}
|
|
12058
12317
|
if (!this.series?.length) {
|
|
@@ -12088,6 +12347,9 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12088
12347
|
if (this.isTypeGauge) {
|
|
12089
12348
|
this.chartGaugeUtils.setGaugeOptions(options, this.chartGridUtils.resolvePx('--font-size-grid', '.po-chart'));
|
|
12090
12349
|
}
|
|
12350
|
+
if (this.isTypeRadar) {
|
|
12351
|
+
options.radar = this.options?.radar;
|
|
12352
|
+
}
|
|
12091
12353
|
return options;
|
|
12092
12354
|
}
|
|
12093
12355
|
formatLabelOption(options) {
|
|
@@ -12125,7 +12387,10 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12125
12387
|
};
|
|
12126
12388
|
}
|
|
12127
12389
|
setSeries() {
|
|
12128
|
-
const hasArea = this.type === 'area' ||
|
|
12390
|
+
const hasArea = this.type === 'area' ||
|
|
12391
|
+
this.series.some(serie => serie.type === 'area') ||
|
|
12392
|
+
this.options?.areaStyle ||
|
|
12393
|
+
this.series.some(serie => serie.areaStyle === true);
|
|
12129
12394
|
const newSeries = [...this.colorService.getColors(this.series, true, hasArea)];
|
|
12130
12395
|
const tokenBorderWidthMd = this.chartGridUtils.resolvePx('--border-width-md');
|
|
12131
12396
|
const findType = this.series.find(serie => serie.type)?.type;
|
|
@@ -12147,6 +12412,9 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12147
12412
|
};
|
|
12148
12413
|
serieGauge = this.chartGaugeUtils.setListTypeGauge(serie, fontSizes);
|
|
12149
12414
|
}
|
|
12415
|
+
else if (verifyType === 'radar') {
|
|
12416
|
+
this.chartGridUtils.setListTypeRadar();
|
|
12417
|
+
}
|
|
12150
12418
|
const seriesUpdated = newSeries.map((serie, index) => {
|
|
12151
12419
|
serie.name = serie.name || (serie.label && typeof serie.label === 'string') ? (serie.name ?? serie.label) : ' ';
|
|
12152
12420
|
!serie.type ? this.setTypeSerie(serie, this.type || typeDefault) : this.setTypeSerie(serie, serie.type);
|
|
@@ -12168,6 +12436,7 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12168
12436
|
this.chartGridUtils.setSerieTypeLine(serie, tokenBorderWidthMd, colorVariable);
|
|
12169
12437
|
this.chartGridUtils.setSerieTypeArea(serie, index);
|
|
12170
12438
|
this.chartGridUtils.setSerieTypeBarColumn(serie, colorVariable);
|
|
12439
|
+
this.chartGridUtils.setSerieTypeRadar(serie, tokenBorderWidthMd, colorVariable);
|
|
12171
12440
|
return serie;
|
|
12172
12441
|
});
|
|
12173
12442
|
if (this.listTypePieDonut?.length) {
|
|
@@ -12176,6 +12445,9 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12176
12445
|
else if (verifyType === 'gauge') {
|
|
12177
12446
|
return this.chartGaugeUtils.finalizeSerieTypeGauge(serieGauge);
|
|
12178
12447
|
}
|
|
12448
|
+
else if (verifyType === 'radar') {
|
|
12449
|
+
return this.chartGridUtils.finalizeSerieTypeRadar(seriesUpdated);
|
|
12450
|
+
}
|
|
12179
12451
|
return seriesUpdated;
|
|
12180
12452
|
}
|
|
12181
12453
|
setSerieEmphasis(serie, color, tokenBorder) {
|
|
@@ -12203,8 +12475,8 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12203
12475
|
setTypeSerie(serie, type) {
|
|
12204
12476
|
switch (type) {
|
|
12205
12477
|
case PoChartType.Area:
|
|
12206
|
-
serie.type = 'line';
|
|
12207
12478
|
serie.isTypeArea = true;
|
|
12479
|
+
serie.type = 'line';
|
|
12208
12480
|
break;
|
|
12209
12481
|
case PoChartType.Bar:
|
|
12210
12482
|
this.isTypeBar = true;
|
|
@@ -12221,6 +12493,10 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12221
12493
|
this.isTypeGauge = true;
|
|
12222
12494
|
serie.type = 'gauge';
|
|
12223
12495
|
break;
|
|
12496
|
+
case PoChartType.Radar:
|
|
12497
|
+
this.isTypeRadar = true;
|
|
12498
|
+
serie.type = 'radar';
|
|
12499
|
+
break;
|
|
12224
12500
|
}
|
|
12225
12501
|
}
|
|
12226
12502
|
setTableProperties() {
|
|
@@ -12247,6 +12523,10 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12247
12523
|
this.setTablePropertiesTypeGauge();
|
|
12248
12524
|
return;
|
|
12249
12525
|
}
|
|
12526
|
+
else if (this.isTypeRadar) {
|
|
12527
|
+
this.setTablePropertiesTypeRadar();
|
|
12528
|
+
return;
|
|
12529
|
+
}
|
|
12250
12530
|
this.itemsTable = series.map((serie) => {
|
|
12251
12531
|
const rowData = { serie: serie.name };
|
|
12252
12532
|
categories.forEach((category, index) => {
|
|
@@ -12286,6 +12566,34 @@ class PoChartComponent extends PoChartBaseComponent {
|
|
|
12286
12566
|
});
|
|
12287
12567
|
}
|
|
12288
12568
|
}
|
|
12569
|
+
setTablePropertiesTypeRadar() {
|
|
12570
|
+
let indicators;
|
|
12571
|
+
if (!Array.isArray(this.categories) && this.categories?.indicator) {
|
|
12572
|
+
indicators = this.categories.indicator;
|
|
12573
|
+
}
|
|
12574
|
+
else if (Array.isArray(this.categories)) {
|
|
12575
|
+
indicators = this.categories.map(item => ({ name: item }));
|
|
12576
|
+
}
|
|
12577
|
+
const series = this.series;
|
|
12578
|
+
this.columnsTable = [
|
|
12579
|
+
{
|
|
12580
|
+
property: 'serie',
|
|
12581
|
+
label: this.options?.firstColumnName || this.literals.serie
|
|
12582
|
+
},
|
|
12583
|
+
...indicators.map((indicator) => ({
|
|
12584
|
+
property: indicator.name,
|
|
12585
|
+
label: indicator.name
|
|
12586
|
+
}))
|
|
12587
|
+
];
|
|
12588
|
+
this.itemsTable = series.map((serie) => {
|
|
12589
|
+
const row = { serie: serie.label };
|
|
12590
|
+
indicators.forEach((indicator, idx) => {
|
|
12591
|
+
const value = serie.data[idx]?.value ?? serie.data[idx];
|
|
12592
|
+
row[indicator.name] = value;
|
|
12593
|
+
});
|
|
12594
|
+
return row;
|
|
12595
|
+
});
|
|
12596
|
+
}
|
|
12289
12597
|
setTableColumns(option, categories) {
|
|
12290
12598
|
this.columnsTable = [
|
|
12291
12599
|
{ property: 'serie', label: this.options?.firstColumnName || this.literals.serie },
|
|
@@ -26538,7 +26846,7 @@ class PoTableComponent extends PoTableBaseComponent {
|
|
|
26538
26846
|
}
|
|
26539
26847
|
}
|
|
26540
26848
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoTableComponent, deps: [{ token: PoDateService }, { token: i0.IterableDiffers }, { token: i0.Renderer2 }, { token: PoLanguageService }, { token: i0.ChangeDetectorRef }, { token: i1.DecimalPipe }, { token: PoTableService }, { token: ICONS_DICTIONARY, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
26541
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoTableComponent, isStandalone: false, selector: "po-table", providers: [PoDateService, PoTableService], queries: [{ propertyName: "tableRowTemplate", first: true, predicate: PoTableRowTemplateDirective, descendants: true, static: true }, { propertyName: "tableCellTemplate", first: true, predicate: PoTableCellTemplateDirective, descendants: true }, { propertyName: "tableColumnTemplates", predicate: PoTableColumnTemplateDirective }], viewQueries: [{ propertyName: "noColumnsHeader", first: true, predicate: ["noColumnsHeader"], descendants: true, read: ElementRef }, { propertyName: "poPopupComponent", first: true, predicate: ["popup"], descendants: true }, { propertyName: "modalDelete", first: true, predicate: PoModalComponent, descendants: true, static: true }, { propertyName: "tableFooterElement", first: true, predicate: ["tableFooter"], descendants: true, read: ElementRef }, { propertyName: "tableWrapperElement", first: true, predicate: ["tableWrapper"], descendants: true, read: ElementRef }, { propertyName: "tableTemplate", first: true, predicate: ["tableTemplate"], descendants: true, read: ElementRef }, { propertyName: "tableVirtualScroll", first: true, predicate: ["tableVirtualScroll"], descendants: true, read: ElementRef }, { propertyName: "tableScrollable", first: true, predicate: ["tableScrollable"], descendants: true, read: ElementRef }, { propertyName: "columnManager", first: true, predicate: ["columnManager"], descendants: true, read: ElementRef }, { propertyName: "columnBatchActions", first: true, predicate: ["columnBatchActions"], descendants: true, read: ElementRef }, { propertyName: "columnActionLeft", first: true, predicate: ["columnActionLeft"], descendants: true, read: ElementRef }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }, { propertyName: "poSearchInput", first: true, predicate: ["poSearchInput"], descendants: true, read: ElementRef, static: true }, { propertyName: "viewPort", first: true, predicate: CdkVirtualScrollViewport, descendants: true }, { propertyName: "columnManagerTarget", first: true, predicate: ["columnManagerTarget"], descendants: true }, { propertyName: "columnManagerTargetFixed", first: true, predicate: ["columnManagerTargetFixed"], descendants: true }, { propertyName: "actionsIconElement", predicate: ["actionsIconElement"], descendants: true, read: ElementRef }, { propertyName: "actionsElement", predicate: ["actionsElement"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"po-table-actions\">\n @if (hasValidColumns && itemsSelected.length > 0 && !hideBatchActions) {\n <div #columnBatchActions class=\"po-table-actions-batch-actions\">\n <div [ngPlural]=\"itemsSelected.length\" class=\"po-table-actions-batch-actions__label\">\n <strong>\n <ng-template ngPluralCase=\"=0\">{{ literals.noItem }}</ng-template>\n <ng-template ngPluralCase=\"=1\">{{ literals.oneItem }}</ng-template>\n <ng-template ngPluralCase=\"other\">{{ itemsSelected.length }} {{ literals.multipleItems }}</ng-template>\n </strong>\n </div>\n <div class=\"po-table-actions-batch-actions__buttons\">\n <po-button\n p-icon=\"ICON_DELETE\"\n [p-danger]=\"true\"\n [p-disabled]=\"itemsSelected.length > 1 && serviceDeleteApi !== undefined\"\n [p-label]=\"literals.delete\"\n [p-size]=\"componentsSize\"\n (p-click)=\"modalDelete.open()\"\n ></po-button>\n </div>\n </div>\n }\n\n @if (hasValidColumns && !hideColumnsManager) {\n <div #columnManager class=\"po-table-actions-column-manager\">\n <po-button\n #columnManagerTarget\n p-icon=\"ICON_SETTINGS\"\n p-kind=\"tertiary\"\n p-tooltip-position=\"left\"\n [p-aria-label]=\"literals.columnsManager\"\n [p-tooltip]=\"literals.columnsManager\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onOpenColumnManager()\"\n ></po-button>\n </div>\n }\n\n @if (!hideTableSearch && hasValidColumns) {\n <div class=\"po-table-search\">\n <po-search\n [p-items]=\"items\"\n [p-filter-keys]=\"filteredColumns\"\n [p-filter-type]=\"filterType\"\n [p-size]=\"componentsSize\"\n (p-filtered-items-change)=\"onFilteredItemsChange($event)\"\n >\n </po-search>\n </div>\n }\n</div>\n@if (container) {\n <po-container p-no-padding>\n <ng-container *ngTemplateOutlet=\"tableContainerTemplate\"></ng-container>\n </po-container>\n} @else {\n <div [class.po-table-container-sticky]=\"loading\">\n @if (loading) {\n <po-loading-overlay [p-text]=\"literals.loadingData\" [p-size]=\"sizeLoading\"></po-loading-overlay>\n }\n <div class=\"po-table-main-container\">\n <div\n #tableWrapper\n class=\"po-table-wrapper\"\n [class.po-table-header-fixed-columns-pixels]=\"allColumnsWidthPixels\"\n [style.opacity]=\"tableOpacity\"\n >\n @if (height) {\n <div class=\"po-table-container\" [style.height.px]=\"heightTableContainer\">\n <div #poTableTbody [class.po-table-container-fixed-inner]=\"virtualScroll\">\n @if (virtualScroll) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableVirtualScrollTemplate\"></ng-container>\n </div>\n }\n @if (!virtualScroll) {\n <div class=\"po-table-container-overflow\" [style.height.px]=\"heightTableContainer\">\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n }\n @if (!height) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n </div>\n @if (hasFooter) {\n <div class=\"po-table-footer\">\n @for (column of subtitleColumns; track trackBy($index)) {\n <po-table-subtitle-footer\n [p-components-size]=\"componentsSize\"\n [p-literals]=\"literals\"\n [p-subtitles]=\"column.subtitles\"\n >\n </po-table-subtitle-footer>\n }\n </div>\n }\n}\n\n<ng-template #tableContainerTemplate>\n <div [class.po-table-container-sticky]=\"loading\">\n @if (loading) {\n <po-loading-overlay [p-text]=\"literals.loadingData\" [p-size]=\"sizeLoading\"></po-loading-overlay>\n }\n <div class=\"po-table-main-container\">\n <div\n #tableWrapper\n class=\"po-table-wrapper\"\n [class.po-table-header-fixed-columns-pixels]=\"allColumnsWidthPixels\"\n [style.opacity]=\"tableOpacity\"\n >\n @if (height) {\n <div class=\"po-table-container\" [style.height.px]=\"heightTableContainer\">\n <div #poTableTbody [class.po-table-container-fixed-inner]=\"virtualScroll\">\n @if (virtualScroll) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableVirtualScrollTemplate\"></ng-container>\n </div>\n }\n @if (!virtualScroll) {\n <div class=\"po-table-container-overflow\" [style.height.px]=\"heightTableContainer\">\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n }\n\n @if (!height) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n </div>\n\n @if (hasFooter) {\n <div class=\"po-table-footer\">\n @for (column of subtitleColumns; track trackBy($index)) {\n <po-table-subtitle-footer\n [p-components-size]=\"componentsSize\"\n [p-literals]=\"literals\"\n [p-subtitles]=\"column.subtitles\"\n >\n </po-table-subtitle-footer>\n }\n </div>\n }\n</ng-template>\n\n<!-- Show More Button -->\n@if (!infiniteScroll) {\n <div\n class=\"po-row po-table-footer-show-more\"\n [class.po-invisible]=\"showMore.observers.length === 0 && !hasService\"\n #tableFooter\n >\n <po-button\n class=\"po-offset-xl-4 po-offset-lg-4 po-offset-md-3 po-lg-4 po-md-6\"\n [p-disabled]=\"showMoreDisabled\"\n [p-label]=\"literals.loadMoreData\"\n [p-loading]=\"loadingShowMore\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onShowMore()\"\n >\n </po-button>\n </div>\n}\n\n<!-- Table default-->\n<ng-template #tableTemplate>\n <table\n #tableScrollable\n class=\"po-table\"\n [ngClass]=\"{\n 'po-table-interactive': selectable || sort,\n 'po-table-selectable': selectable,\n 'po-table-striped': striped,\n 'po-table-data-fixed-columns': applyFixedColumns(),\n 'po-table-text-wrap-enabled': textWrap\n }\"\n [attr.p-spacing]=\"spacing\"\n >\n <thead\n [class.po-table-header-sticky]=\"height > 0 && !virtualScroll\"\n [attr.p-spacing]=\"spacing ?? (componentsSize === 'small' ? 'extraSmall' : 'medium')\"\n >\n <tr\n [ngClass]=\"!height ? { 'no-hover': hideSelectAll, 'po-table-column-drag': this.isDraggable } : ''\"\n [class.po-table-header]=\"!height\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @if (hasSelectableColumn) {\n <th [style.pointer-events]=\"hideSelectAll ? 'none' : 'auto'\" class=\"po-table-column-selectable\">\n <div [class.po-table-header-fixed-inner]=\"height\">\n @if (!hideSelectAll) {\n <po-checkbox\n name=\"selectAll\"\n [p-size]=\"componentsSize\"\n (p-change)=\"selectAllRows()\"\n [p-checkboxValue]=\"selectAll === null ? 'mixed' : selectAll\"\n ></po-checkbox>\n }\n </div>\n </th>\n }\n\n @if ((hasMasterDetailColumn || hasRowTemplate) && hasMainColumns && !hasRowTemplateWithArrowDirectionRight) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n <!-- Coluna criada para caso as a\u00E7\u00F5es fiquem no lado esquerdo -->\n @if (!actionRight && hasItems && hasMainColumns && (visibleActions.length > 1 || isSingleAction)) {\n <th\n #columnActionLeft\n [class.po-table-header-master-detail]=\"!isSingleAction\"\n [class.po-table-header-single-action]=\"isSingleAction\"\n ></th>\n }\n\n @if (!hasMainColumns) {\n <th #noColumnsHeader class=\"po-table-header-column po-text-center\" [attr.colspan]=\"columnCount\">\n @if (height) {\n <div class=\"po-table-header-fixed-inner\" [style.width.px]=\"hasValidColumns ? headerWidth : null\">\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n </div>\n } @else {\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n }\n </th>\n }\n\n @if (this.isDraggable || hasSomeFixed()) {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{\n 'width':\n height > 0 && !virtualScroll ? (!hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto') : ''\n }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n [class.po-table-column-drag-box]=\"this.isDraggable\"\n (click)=\"sortColumn(column)\"\n cdkDrag\n cdkDragLockAxis=\"x\"\n [cdkDragDisabled]=\"column.fixed ? 'true' : 'false'\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n @if (this.isDraggable && !column.fixed) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon cdkDragHandle p-icon=\"ICON_DRAG\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg\n cdkDragHandle\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"9\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"18\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"18\" r=\"2\" fill=\"black\" />\n </svg>\n }\n }\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\"> </ng-container>\n </div>\n </th>\n }\n } @else {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{\n 'width':\n height > 0 && !virtualScroll ? (!hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto') : ''\n }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n (click)=\"sortColumn(column)\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\"> </ng-container>\n </div>\n </th>\n }\n }\n\n @if (hasRowTemplateWithArrowDirectionRight && (hasVisibleActions || hideColumnsManager) && hasMainColumns) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n @if (\n hasVisibleActions &&\n actionRight &&\n hasItems &&\n hasMainColumns &&\n (visibleActions.length > 1 || isSingleAction)\n ) {\n <th\n [class.po-table-header-single-action]=\"isSingleAction\"\n [class.po-table-header-actions]=\"!isSingleAction\"\n ></th>\n }\n </tr>\n </thead>\n\n @if (!hasItems || !hasMainColumns) {\n <tbody class=\"po-table-group-row\">\n <tr class=\"po-table-row po-table-row-no-data\">\n <td [colSpan]=\"columnCount\" class=\"po-table-no-data po-text-center\">\n <span> {{ literals.noData }} </span>\n </td>\n </tr>\n </tbody>\n }\n\n @if (hasMainColumns) {\n @for (row of filteredItems; track trackBy(rowIndex); let rowIndex = $index) {\n <tbody class=\"po-table-group-row\">\n <tr\n class=\"po-table-row\"\n [class.po-table-row-active]=\"row.$selected || (row.$selected === null && selectable)\"\n >\n @if (selectable) {\n <td class=\"po-table-column-selectable\">\n <ng-container\n *ngTemplateOutlet=\"singleSelect ? inputRadio : inputCheckbox; context: { $implicit: row }\"\n >\n </ng-container>\n </td>\n }\n <!-- Valida se a origem do detail \u00E9 pelo input do po-table ou pela diretiva -->\n @if (\n (columnMasterDetail && !hideDetail && !hasRowTemplate) ||\n (hasRowTemplate && !hasRowTemplateWithArrowDirectionRight)\n ) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna com as a\u00E7\u00F5es na esquerda (padr\u00E3o)-->\n @if (!actionRight && (visibleActions.length > 1 || isSingleAction)) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n @for (column of mainColumns; track trackBy(columnIndex); let columnIndex = $index) {\n <td\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [class.po-table-column]=\"column.type !== 'icon'\"\n [class.po-table-column-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-column-center]=\"column.type === 'subtitle'\"\n [class.po-table-column-icons]=\"column.type === 'icon'\"\n [pFrozenColumn]=\"column.fixed\"\n class=\"p-element po-frozen-column\"\n [ngClass]=\"getClassColor(row, column)\"\n (click)=\"hasSelectableRow() ? selectRow(row) : 'javascript:;'\"\n >\n <div\n class=\"po-table-column-cell po-table-body-ellipsis notranslate\"\n [p-tooltip]=\"tooltipText\"\n [p-append-in-body]=\"true\"\n (mouseenter)=\"tooltipMouseEnter($event, column, row)\"\n (mouseleave)=\"tooltipMouseLeave()\"\n >\n @switch (column.type) {\n @case ('columnTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"getTemplate(column); context: { $implicit: getCellData(row, column) }\"\n >\n </ng-container>\n </span>\n }\n @case ('cellTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"tableCellTemplate?.templateRef; context: { row: row, column: column }\"\n >\n </ng-container>\n </span>\n }\n @case ('boolean') {\n <span>\n {{ getBooleanLabel(getCellData(row, column), column) }}\n </span>\n }\n @case ('currency') {\n <span>\n {{ getCellData(row, column) | currency: column.format : 'symbol' : '1.2-2' }}\n </span>\n }\n @case ('date') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy' }}\n </span>\n }\n @case ('time') {\n <span>\n {{ getCellData(row, column) | po_time: column.format || 'HH:mm:ss.ffffff' }}\n </span>\n }\n @case ('dateTime') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy HH:mm:ss' }}\n </span>\n }\n @case ('number') {\n <span>\n {{ formatNumber(getCellData(row, column), column.format) }}\n </span>\n }\n @case ('link') {\n <po-table-column-link\n [p-action]=\"column.action\"\n [p-disabled]=\"checkDisabled(row, column)\"\n [p-link]=\"row[column.link]\"\n [p-row]=\"row\"\n [p-value]=\"getCellData(row, column)\"\n (click)=\"onClickLink($event, row, column)\"\n >\n </po-table-column-link>\n }\n @case ('icon') {\n <po-table-column-icon [p-column]=\"column\" [p-icons]=\"getColumnIcons(row, column)\" [p-row]=\"row\">\n </po-table-column-icon>\n }\n @case ('subtitle') {\n <span>\n <po-table-subtitle-circle\n [p-subtitle]=\"getSubtitleColumn(row, column)\"\n ></po-table-subtitle-circle>\n </span>\n }\n @case ('label') {\n <span>\n <po-table-column-label [p-value]=\"getColumnLabel(row, column)\"> </po-table-column-label>\n </span>\n }\n @default {\n <span>{{ getCellData(row, column) }}</span>\n }\n }\n </div>\n </td>\n }\n @if (hasRowTemplateWithArrowDirectionRight) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna de a\u00E7oes na direita -->\n @if (actionRight) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n </tr>\n @if (hasMainColumns && hasRowTemplate && row.$showDetail && isShowRowTemplate(row, rowIndex)) {\n <tr>\n <td class=\"po-table-row-template-container\" [colSpan]=\"columnCountForMasterDetail\">\n <ng-template\n [ngTemplateOutlet]=\"tableRowTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n </tr>\n }\n @if (hasMainColumns && isShowMasterDetail(row)) {\n <tr>\n <td class=\"po-table-column-detail\" [colSpan]=\"columnCountForMasterDetail\">\n <po-table-detail\n [p-selectable]=\"selectable && !detailHideSelect\"\n [p-detail]=\"columnMasterDetail.detail\"\n [p-items]=\"row[nameColumnDetail]\"\n [p-parent-row]=\"row\"\n [p-components-size]=\"componentsSize\"\n (p-select-row)=\"selectDetailRow($event)\"\n >\n </po-table-detail>\n </td>\n </tr>\n }\n </tbody>\n }\n }\n </table>\n</ng-template>\n\n<!-- Table with virtual scroll -->\n<ng-template #tableVirtualScrollTemplate>\n <cdk-virtual-scroll-viewport\n #tableVirtualScroll\n [itemSize]=\"itemSize\"\n [style.height.px]=\"heightTableContainer\"\n [minBufferPx]=\"heightTableContainer < 100 ? 100 : heightTableContainer\"\n [maxBufferPx]=\"heightTableContainer < 200 ? 200 : heightTableContainer\"\n >\n <table\n class=\"po-table\"\n [ngClass]=\"{\n 'po-table-interactive': selectable || sort,\n 'po-table-selectable': selectable,\n 'po-table-striped': striped,\n 'po-table-data-fixed-columns': applyFixedColumns(),\n 'po-table-text-wrap-enabled': textWrap\n }\"\n [attr.p-spacing]=\"spacing\"\n >\n <thead\n class=\"po-table-header-sticky\"\n [style.top]=\"inverseOfTranslation\"\n [attr.p-spacing]=\"spacing ?? (componentsSize === 'small' ? 'extraSmall' : 'medium')\"\n >\n <tr\n [class.po-table-header]=\"!height\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @if (hasSelectableColumn) {\n <th [style.pointer-events]=\"hideSelectAll ? 'none' : 'auto'\" class=\"po-table-column-selectable\">\n <div [class.po-table-header-fixed-inner]=\"height\">\n @if (!hideSelectAll) {\n <po-checkbox\n name=\"selectAll\"\n (p-change)=\"selectAllRows()\"\n [p-checkboxValue]=\"selectAll === null ? 'mixed' : selectAll\"\n [p-size]=\"componentsSize\"\n ></po-checkbox>\n }\n </div>\n </th>\n }\n\n @if ((hasMasterDetailColumn || hasRowTemplate) && hasMainColumns && !hasRowTemplateWithArrowDirectionRight) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n <!-- Coluna criada para caso as a\u00E7\u00F5es fiquem no lado esquerdo -->\n @if (!actionRight && hasItems && hasMainColumns && (visibleActions.length > 1 || isSingleAction)) {\n <th\n #columnActionLeft\n [class.po-table-header-master-detail]=\"!isSingleAction\"\n [class.po-table-header-single-action]=\"isSingleAction\"\n ></th>\n }\n\n @if (!hasMainColumns) {\n <th #noColumnsHeader class=\"po-table-header-column po-text-center\" [attr.colspan]=\"columnCount\">\n @if (height) {\n <div class=\"po-table-header-fixed-inner\" [style.width.px]=\"hasValidColumns ? headerWidth : null\">\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n </div>\n } @else {\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n }\n </th>\n }\n\n @if (this.isDraggable || hasSomeFixed()) {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{ 'width': !hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto' }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n [class.po-table-column-drag-box]=\"this.isDraggable\"\n (click)=\"sortColumn(column)\"\n cdkDrag\n cdkDragLockAxis=\"x\"\n [cdkDragDisabled]=\"column.fixed ? 'true' : 'false'\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n @if (this.isDraggable && !column.fixed) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon cdkDragHandle p-icon=\"ICON_DRAG\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg\n cdkDragHandle\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"9\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"18\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"18\" r=\"2\" fill=\"black\" />\n </svg>\n }\n }\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\">\n </ng-container>\n </div>\n </th>\n }\n } @else {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column example-box\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{ 'width': !hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto' }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n (click)=\"sortColumn(column)\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\">\n </ng-container>\n </div>\n </th>\n }\n }\n\n @if (hasRowTemplateWithArrowDirectionRight && hasMainColumns && (hasVisibleActions || hideColumnsManager)) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n @if (\n hasVisibleActions &&\n actionRight &&\n hasItems &&\n hasMainColumns &&\n (visibleActions.length > 1 || isSingleAction)\n ) {\n <th\n [class.po-table-header-single-action]=\"isSingleAction\"\n [class.po-table-header-actions]=\"!isSingleAction\"\n ></th>\n }\n </tr>\n </thead>\n\n @if (!hasItems || !hasMainColumns) {\n <tbody class=\"po-table-group-row\">\n <tr class=\"po-table-row po-table-row-no-data\">\n <td [colSpan]=\"columnCount\" class=\"po-table-no-data po-text-center\">\n <span> {{ literals.noData }} </span>\n </td>\n </tr>\n </tbody>\n }\n\n @if (hasMainColumns) {\n <tbody\n class=\"po-table-group-row\"\n *cdkVirtualFor=\"let row of filteredItems; let rowIndex = index; trackBy: trackBy\"\n >\n <tr\n class=\"po-table-row\"\n [class.po-table-row-active]=\"row.$selected || (row.$selected === null && selectable)\"\n >\n @if (selectable) {\n <td class=\"po-table-column-selectable\">\n <ng-container\n *ngTemplateOutlet=\"singleSelect ? inputRadio : inputCheckbox; context: { $implicit: row }\"\n >\n </ng-container>\n </td>\n }\n <!-- Valida se a origem do detail \u00E9 pelo input do po-table pela diretiva -->\n @if (\n (columnMasterDetail && !hideDetail && !hasRowTemplate) ||\n (hasRowTemplate && !hasRowTemplateWithArrowDirectionRight)\n ) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna com as a\u00E7\u00F5es na esquerda (padr\u00E3o)-->\n @if (!actionRight && (visibleActions.length > 1 || isSingleAction)) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n @for (column of mainColumns; track trackBy(columnIndex); let columnIndex = $index) {\n <td\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [class.po-table-column]=\"column.type !== 'icon'\"\n [class.po-table-column-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-column-center]=\"column.type === 'subtitle'\"\n [class.po-table-column-icons]=\"column.type === 'icon'\"\n [ngClass]=\"getClassColor(row, column)\"\n [pFrozenColumn]=\"column.fixed\"\n class=\"p-element po-frozen-column\"\n (click)=\"hasSelectableRow() ? selectRow(row) : 'javascript:;'\"\n >\n <div\n class=\"po-table-column-cell po-table-body-ellipsis notranslate\"\n [p-tooltip]=\"tooltipText\"\n [p-append-in-body]=\"true\"\n (mouseenter)=\"tooltipMouseEnter($event, column, row)\"\n (mouseleave)=\"tooltipMouseLeave()\"\n >\n @switch (column.type) {\n @case ('columnTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"getTemplate(column); context: { $implicit: getCellData(row, column) }\"\n >\n </ng-container>\n </span>\n }\n @case ('cellTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"tableCellTemplate?.templateRef; context: { row: row, column: column }\"\n >\n </ng-container>\n </span>\n }\n @case ('boolean') {\n <span>\n {{ getBooleanLabel(getCellData(row, column), column) }}\n </span>\n }\n @case ('currency') {\n <span>\n {{ getCellData(row, column) | currency: column.format : 'symbol' : '1.2-2' }}\n </span>\n }\n @case ('date') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy' }}\n </span>\n }\n @case ('time') {\n <span>\n {{ getCellData(row, column) | po_time: column.format || 'HH:mm:ss.ffffff' }}\n </span>\n }\n @case ('dateTime') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy HH:mm:ss' }}\n </span>\n }\n @case ('number') {\n <span>\n {{ formatNumber(getCellData(row, column), column.format) }}\n </span>\n }\n @case ('link') {\n <po-table-column-link\n [p-action]=\"column.action\"\n [p-disabled]=\"checkDisabled(row, column)\"\n [p-link]=\"row[column.link]\"\n [p-row]=\"row\"\n [p-value]=\"getCellData(row, column)\"\n (click)=\"onClickLink($event, row, column)\"\n >\n </po-table-column-link>\n }\n @case ('icon') {\n <po-table-column-icon [p-column]=\"column\" [p-icons]=\"getColumnIcons(row, column)\" [p-row]=\"row\">\n </po-table-column-icon>\n }\n @case ('subtitle') {\n <span>\n <po-table-subtitle-circle\n [p-subtitle]=\"getSubtitleColumn(row, column)\"\n ></po-table-subtitle-circle>\n </span>\n }\n @case ('label') {\n <span>\n <po-table-column-label [p-value]=\"getColumnLabel(row, column)\"> </po-table-column-label>\n </span>\n }\n @default {\n <span>{{ getCellData(row, column) }}</span>\n }\n }\n </div>\n </td>\n }\n @if (hasRowTemplateWithArrowDirectionRight) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna de a\u00E7oes na direita -->\n @if (actionRight) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n </tr>\n @if (hasMainColumns && hasRowTemplate && row.$showDetail && isShowRowTemplate(row, rowIndex)) {\n <tr>\n <td class=\"po-table-row-template-container\" [colSpan]=\"columnCountForMasterDetail\">\n <ng-template\n [ngTemplateOutlet]=\"tableRowTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n </tr>\n }\n @if (hasMainColumns && isShowMasterDetail(row)) {\n <tr>\n <td class=\"po-table-column-detail\" [colSpan]=\"columnCountForMasterDetail\">\n <po-table-detail\n [p-selectable]=\"selectable && !detailHideSelect\"\n [p-detail]=\"columnMasterDetail.detail\"\n [p-items]=\"row[nameColumnDetail]\"\n [p-parent-row]=\"row\"\n [p-components-size]=\"componentsSize\"\n (p-select-row)=\"selectDetailRow($event)\"\n >\n </po-table-detail>\n </td>\n </tr>\n }\n </tbody>\n }\n </table>\n </cdk-virtual-scroll-viewport>\n</ng-template>\n\n<po-popup #popup [p-actions]=\"actions\" [p-size]=\"componentsSize\" [p-target]=\"popupTarget\"> </po-popup>\n\n<ng-template #poTableColumnDetail let-row=\"row\" let-rowIndex=\"rowIndex\">\n @if ((containsMasterDetail(row) && !hasRowTemplate) || (isShowRowTemplate(row, rowIndex) && hasRowTemplate)) {\n <po-icon [p-icon]=\"row.$showDetail ? 'ICON_ARROW_UP' : 'ICON_ARROW_DOWN'\" class=\"po-clickable\"> </po-icon>\n }\n</ng-template>\n\n<ng-template #inputRadio let-row>\n <po-radio\n [name]=\"idRadio\"\n [p-checked]=\"row.$selected\"\n [p-size]=\"componentsSize\"\n (p-change-selected)=\"selectRow(row)\"\n ></po-radio>\n</ng-template>\n\n<ng-template #inputCheckbox let-row>\n <po-checkbox\n name=\"checkbox\"\n (p-change)=\"selectable ? selectRow(row) : 'javascript:;'\"\n [p-checkboxValue]=\"row.$selected === null ? 'mixed' : row.$selected\"\n [p-size]=\"componentsSize\"\n ></po-checkbox>\n</ng-template>\n\n<ng-template #contentHeaderTemplate let-column>\n <span\n #columnHeader\n class=\"po-table-header-ellipsis\"\n [p-tooltip]=\"tooltipText\"\n [p-append-in-body]=\"true\"\n (mouseenter)=\"tooltipMouseEnter($event)\"\n (mouseleave)=\"tooltipMouseLeave()\"\n >\n {{ column.label || (column.property | titlecase) }}\n </span>\n\n @if (sort && column.sortable !== false) {\n <span\n [class.po-table-header-icon-unselected]=\"JSON.stringify(sortedColumn?.property) !== JSON.stringify(column)\"\n [class.po-table-header-icon-descending]=\"\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && sortedColumn.ascending\n \"\n [class.po-table-header-icon-ascending]=\"\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && !sortedColumn.ascending\n \"\n >\n @if (JSON.stringify(sortedColumn?.property) !== JSON.stringify(column)) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon p-icon=\"ICON_SORT\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M18.2929 15.2929L17 16.5858L17 10C17 9.44772 16.5523 9 16 9C15.4477 9 15 9.44772 15 10L15 16.5858L13.7071 15.2929C13.3166 14.9024 12.6834 14.9024 12.2929 15.2929C11.9024 15.6834 11.9024 16.3166 12.2929 16.7071L15.2929 19.7071C15.6834 20.0976 16.3166 20.0976 16.7071 19.7071L19.7071 16.7071C20.0976 16.3166 20.0976 15.6834 19.7071 15.2929C19.3166 14.9024 18.6834 14.9024 18.2929 15.2929ZM5.70716 8.7071L7.00006 7.4142L7.00003 14C7.00002 14.5523 7.44774 15 8.00002 15C8.55231 15 9.00002 14.5523 9.00003 14L9.00006 7.41418L10.2929 8.70707C10.6835 9.09759 11.3166 9.09758 11.7072 8.70706C12.0977 8.31653 12.0977 7.68336 11.7072 7.29284L8.70718 4.29286C8.31665 3.90234 7.68349 3.90235 7.29296 4.29287L4.29295 7.29289C3.90242 7.68342 3.90242 8.31658 4.29294 8.70711C4.68347 9.09763 5.31663 9.09762 5.70716 8.7071Z\"\n fill=\"#1D1D30\"\n />\n </svg>\n }\n }\n @if (JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && sortedColumn.ascending) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon p-icon=\"ICON_SORT_ASC\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11 9.41421L9.70711 10.7071C9.31658 11.0976 8.68342 11.0976 8.29289 10.7071C7.90237 10.3166 7.90237 9.68342 8.29289 9.29289L11.2929 6.29289C11.6834 5.90237 12.3166 5.90237 12.7071 6.29289L15.7071 9.29289C16.0976 9.68342 16.0976 10.3166 15.7071 10.7071C15.3166 11.0976 14.6834 11.0976 14.2929 10.7071L13 9.41421V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V9.41421Z\"\n fill=\"black\"\n />\n </svg>\n }\n }\n @if (JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && !sortedColumn.ascending) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon cdkDragHandle p-icon=\"ICON_SORT_DESC\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9.70711 13.2929L11 14.5858V7C11 6.44772 11.4477 6 12 6C12.5523 6 13 6.44772 13 7V14.5858L14.2929 13.2929C14.6834 12.9024 15.3166 12.9024 15.7071 13.2929C16.0976 13.6834 16.0976 14.3166 15.7071 14.7071L12.7071 17.7071C12.3166 18.0976 11.6834 18.0976 11.2929 17.7071L8.29289 14.7071C7.90237 14.3166 7.90237 13.6834 8.29289 13.2929C8.68342 12.9024 9.31658 12.9024 9.70711 13.2929Z\"\n fill=\"black\"\n />\n </svg>\n }\n }\n </span>\n }\n</ng-template>\n\n<!-- Template de a\u00E7\u00F5es -->\n<ng-template #ActionsColumnTemplate let-row=\"row\" let-rowIndex=\"rowIndex\">\n @if (isSingleAction) {\n <td\n class=\"po-table-column po-table-column-single-action\"\n [style.width.px]=\"height && actionRight ? getWidthColumnManager() : ''\"\n [style.max-width.px]=\"height && !actionRight ? getColumnWidthActionsLeft() : ''\"\n [style.width.px]=\"height && !actionRight ? getColumnWidthActionsLeft() : ''\"\n >\n @if (firstAction.visible !== false) {\n <div\n class=\"po-table-single-action po-clickable\"\n [class.po-table-action-disabled]=\"firstAction.disabled ? validateTableAction(row, firstAction) : false\"\n (click)=\"executeTableAction(row, firstAction)\"\n >\n @if (firstAction.icon) {\n <po-icon class=\"po-table-single-action-content\" [p-icon]=\"firstAction.icon\"></po-icon>\n }\n @if (firstAction.label) {\n <span>{{ firstAction.label }}</span>\n }\n </div>\n }\n </td>\n }\n\n @if (visibleActions.length > 1) {\n <td class=\"po-table-column-actions\">\n <div #popupTarget class=\"po-clickable\" (click)=\"togglePopup(row, popupTarget)\">\n <po-icon class=\"po-field-icon\" p-icon=\"ICON_MORE\"></po-icon>\n </div>\n </td>\n }\n</ng-template>\n\n@if (!hideColumnsManager) {\n <po-table-column-manager\n [p-columns]=\"columns\"\n [p-max-columns]=\"maxColumns\"\n [p-target]=\"columnManagerTarget\"\n [p-last-visible-columns-selected]=\"lastVisibleColumnsSelected\"\n [p-hide-action-fixed-columns]=\"hideActionFixedColumns\"\n (p-visible-columns-change)=\"onVisibleColumnsChange($event)\"\n (p-change-visible-columns)=\"onChangeVisibleColumns($event)\"\n [p-columns-default]=\"initialColumns\"\n [p-components-size]=\"componentsSize\"\n (p-initial-columns)=\"onColumnRestoreManager($event)\"\n >\n </po-table-column-manager>\n}\n\n<po-modal\n #modalDelete\n [p-components-size]=\"componentsSize\"\n [p-title]=\"literals.delete\"\n [p-primary-action]=\"confirm\"\n [p-secondary-action]=\"close\"\n [p-click-out]=\"true\"\n>\n <p class=\"po-font-text-large\">{{ literals.bodyDelete }}</p>\n</po-modal>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgPlural, selector: "[ngPlural]", inputs: ["ngPlural"] }, { kind: "directive", type: i1.NgPluralCase, selector: "[ngPluralCase]" }, { kind: "directive", type: i5.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i5.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i5.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: i6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: PoButtonComponent, selector: "po-button" }, { kind: "component", type: PoContainerComponent, selector: "po-container" }, { kind: "component", type: PoLoadingOverlayComponent, selector: "po-loading-overlay" }, { kind: "component", type: PoModalComponent, selector: "po-modal" }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }, { kind: "directive", type: PoTooltipDirective, selector: "[p-tooltip]" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoCheckboxComponent, selector: "po-checkbox" }, { kind: "component", type: PoRadioComponent, selector: "po-radio", inputs: ["p-value", "p-size", "p-required", "p-label-text-wrap", "p-checked"], outputs: ["p-blur", "p-change-selected"] }, { kind: "component", type: PoSearchComponent, selector: "po-search" }, { kind: "component", type: PoTableColumnIconComponent, selector: "po-table-column-icon", inputs: ["p-column", "p-row", "p-icons"] }, { kind: "component", type: PoTableColumnLabelComponent, selector: "po-table-column-label", inputs: ["p-value"] }, { kind: "component", type: PoTableColumnLinkComponent, selector: "po-table-column-link", inputs: ["p-action", "p-disabled", "p-link", "p-open-new-tab", "p-row", "p-value"] }, { kind: "component", type: PoTableColumnManagerComponent, selector: "po-table-column-manager", inputs: ["p-columns", "p-target", "p-columns-default", "p-last-visible-columns-selected", "p-hide-action-fixed-columns", "p-components-size", "p-max-columns"], outputs: ["p-visible-columns-change", "p-change-visible-columns", "p-initial-columns"] }, { kind: "component", type: PoTableDetailComponent, selector: "po-table-detail", inputs: ["p-components-size", "p-items", "p-parent-row", "p-selectable", "p-detail"], outputs: ["p-select-row"] }, { kind: "component", type: PoTableSubtitleCircleComponent, selector: "po-table-subtitle-circle", inputs: ["p-hide-title", "p-subtitle"] }, { kind: "component", type: PoTableSubtitleFooterComponent, selector: "po-table-subtitle-footer", inputs: ["p-components-size", "p-literals", "p-subtitles"] }, { kind: "directive", type: PoTableColumnFrozenDirective, selector: "[pFrozenColumn]", inputs: ["pFrozenColumn", "alignFrozen"] }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i1.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: PoTimePipe, name: "po_time" }] });
|
|
26849
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoTableComponent, isStandalone: false, selector: "po-table", providers: [PoDateService, PoTableService], queries: [{ propertyName: "tableRowTemplate", first: true, predicate: PoTableRowTemplateDirective, descendants: true, static: true }, { propertyName: "tableCellTemplate", first: true, predicate: PoTableCellTemplateDirective, descendants: true }, { propertyName: "tableColumnTemplates", predicate: PoTableColumnTemplateDirective }], viewQueries: [{ propertyName: "noColumnsHeader", first: true, predicate: ["noColumnsHeader"], descendants: true, read: ElementRef }, { propertyName: "poPopupComponent", first: true, predicate: ["popup"], descendants: true }, { propertyName: "modalDelete", first: true, predicate: PoModalComponent, descendants: true, static: true }, { propertyName: "tableFooterElement", first: true, predicate: ["tableFooter"], descendants: true, read: ElementRef }, { propertyName: "tableWrapperElement", first: true, predicate: ["tableWrapper"], descendants: true, read: ElementRef }, { propertyName: "tableTemplate", first: true, predicate: ["tableTemplate"], descendants: true, read: ElementRef }, { propertyName: "tableVirtualScroll", first: true, predicate: ["tableVirtualScroll"], descendants: true, read: ElementRef }, { propertyName: "tableScrollable", first: true, predicate: ["tableScrollable"], descendants: true, read: ElementRef }, { propertyName: "columnManager", first: true, predicate: ["columnManager"], descendants: true, read: ElementRef }, { propertyName: "columnBatchActions", first: true, predicate: ["columnBatchActions"], descendants: true, read: ElementRef }, { propertyName: "columnActionLeft", first: true, predicate: ["columnActionLeft"], descendants: true, read: ElementRef }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }, { propertyName: "poSearchInput", first: true, predicate: ["poSearchInput"], descendants: true, read: ElementRef, static: true }, { propertyName: "viewPort", first: true, predicate: CdkVirtualScrollViewport, descendants: true }, { propertyName: "columnManagerTarget", first: true, predicate: ["columnManagerTarget"], descendants: true }, { propertyName: "columnManagerTargetFixed", first: true, predicate: ["columnManagerTargetFixed"], descendants: true }, { propertyName: "actionsIconElement", predicate: ["actionsIconElement"], descendants: true, read: ElementRef }, { propertyName: "actionsElement", predicate: ["actionsElement"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"po-table-actions\">\n @if (hasValidColumns && itemsSelected.length > 0 && !hideBatchActions) {\n <div #columnBatchActions class=\"po-table-actions-batch-actions\">\n <div [ngPlural]=\"itemsSelected.length\" class=\"po-table-actions-batch-actions__label\">\n <strong>\n <ng-template ngPluralCase=\"=0\">{{ literals.noItem }}</ng-template>\n <ng-template ngPluralCase=\"=1\">{{ literals.oneItem }}</ng-template>\n <ng-template ngPluralCase=\"other\">{{ itemsSelected.length }} {{ literals.multipleItems }}</ng-template>\n </strong>\n </div>\n <div class=\"po-table-actions-batch-actions__buttons\">\n <po-button\n p-icon=\"ICON_DELETE\"\n [p-danger]=\"true\"\n [p-disabled]=\"itemsSelected.length > 1 && serviceDeleteApi !== undefined\"\n [p-label]=\"literals.delete\"\n [p-size]=\"componentsSize\"\n (p-click)=\"modalDelete.open()\"\n ></po-button>\n </div>\n </div>\n }\n\n @if (hasValidColumns && !hideColumnsManager) {\n <div #columnManager class=\"po-table-actions-column-manager\">\n <po-button\n #columnManagerTarget\n p-icon=\"ICON_SETTINGS\"\n p-kind=\"tertiary\"\n p-tooltip-position=\"left\"\n [p-aria-label]=\"literals.columnsManager\"\n [p-tooltip]=\"literals.columnsManager\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onOpenColumnManager()\"\n ></po-button>\n </div>\n }\n\n @if (!hideTableSearch && hasValidColumns) {\n <div class=\"po-table-search\">\n <po-search\n [p-items]=\"items\"\n [p-filter-keys]=\"filteredColumns\"\n [p-filter-type]=\"filterType\"\n [p-size]=\"componentsSize\"\n (p-filtered-items-change)=\"onFilteredItemsChange($event)\"\n >\n </po-search>\n </div>\n }\n</div>\n@if (container) {\n <po-container p-no-padding>\n <ng-container *ngTemplateOutlet=\"tableContainerTemplate\"></ng-container>\n </po-container>\n} @else {\n <div [class.po-table-container-sticky]=\"loading\">\n @if (loading) {\n <po-loading-overlay [p-text]=\"literals.loadingData\" [p-size]=\"sizeLoading\"></po-loading-overlay>\n }\n <div class=\"po-table-main-container\">\n <div\n #tableWrapper\n class=\"po-table-wrapper\"\n [class.po-table-header-fixed-columns-pixels]=\"allColumnsWidthPixels\"\n [style.opacity]=\"tableOpacity\"\n >\n @if (height) {\n <div class=\"po-table-container\" [style.height.px]=\"heightTableContainer\">\n <div #poTableTbody [class.po-table-container-fixed-inner]=\"virtualScroll\">\n @if (virtualScroll) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableVirtualScrollTemplate\"></ng-container>\n </div>\n }\n @if (!virtualScroll) {\n <div class=\"po-table-container-overflow\" [style.height.px]=\"heightTableContainer\">\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n }\n @if (!height) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n </div>\n @if (hasFooter) {\n <div class=\"po-table-footer\">\n @for (column of subtitleColumns; track trackBy($index)) {\n <po-table-subtitle-footer\n [p-components-size]=\"componentsSize\"\n [p-literals]=\"literals\"\n [p-subtitles]=\"column.subtitles\"\n >\n </po-table-subtitle-footer>\n }\n </div>\n }\n}\n\n<ng-template #tableContainerTemplate>\n <div [class.po-table-container-sticky]=\"loading\">\n @if (loading) {\n <po-loading-overlay [p-text]=\"literals.loadingData\" [p-size]=\"sizeLoading\"></po-loading-overlay>\n }\n <div class=\"po-table-main-container\">\n <div\n #tableWrapper\n class=\"po-table-wrapper\"\n [class.po-table-header-fixed-columns-pixels]=\"allColumnsWidthPixels\"\n [style.opacity]=\"tableOpacity\"\n >\n @if (height) {\n <div class=\"po-table-container\" [style.height.px]=\"heightTableContainer\">\n <div #poTableTbody [class.po-table-container-fixed-inner]=\"virtualScroll\">\n @if (virtualScroll) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableVirtualScrollTemplate\"></ng-container>\n </div>\n }\n @if (!virtualScroll) {\n <div class=\"po-table-container-overflow\" [style.height.px]=\"heightTableContainer\">\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n }\n\n @if (!height) {\n <div>\n <ng-container *ngTemplateOutlet=\"tableTemplate\"></ng-container>\n </div>\n }\n </div>\n </div>\n </div>\n\n @if (hasFooter) {\n <div class=\"po-table-footer\">\n @for (column of subtitleColumns; track trackBy($index)) {\n <po-table-subtitle-footer\n [p-components-size]=\"componentsSize\"\n [p-literals]=\"literals\"\n [p-subtitles]=\"column.subtitles\"\n >\n </po-table-subtitle-footer>\n }\n </div>\n }\n</ng-template>\n\n<!-- Show More Button -->\n@if (!infiniteScroll) {\n <div\n class=\"po-row po-table-footer-show-more\"\n [class.po-invisible]=\"showMore.observers.length === 0 && !hasService\"\n #tableFooter\n >\n <po-button\n class=\"po-offset-xl-4 po-offset-lg-4 po-offset-md-3 po-lg-4 po-md-6\"\n [p-disabled]=\"showMoreDisabled\"\n [p-label]=\"literals.loadMoreData\"\n [p-loading]=\"loadingShowMore\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onShowMore()\"\n >\n </po-button>\n </div>\n}\n\n<!-- Table default-->\n<ng-template #tableTemplate>\n <table\n #tableScrollable\n class=\"po-table\"\n [ngClass]=\"{\n 'po-table-interactive': selectable || sort,\n 'po-table-selectable': selectable,\n 'po-table-striped': striped,\n 'po-table-data-fixed-columns': applyFixedColumns(),\n 'po-table-text-wrap-enabled': textWrap\n }\"\n [attr.p-spacing]=\"spacing\"\n >\n <thead\n [class.po-table-header-sticky]=\"height > 0 && !virtualScroll\"\n [attr.p-spacing]=\"spacing ?? (componentsSize === 'small' ? 'extraSmall' : 'medium')\"\n >\n <tr\n [ngClass]=\"!height ? { 'no-hover': hideSelectAll, 'po-table-column-drag': this.isDraggable } : ''\"\n [class.po-table-header]=\"!height\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @if (hasSelectableColumn) {\n <th [style.pointer-events]=\"hideSelectAll ? 'none' : 'auto'\" class=\"po-table-column-selectable\">\n <div [class.po-table-header-fixed-inner]=\"height\">\n @if (!hideSelectAll) {\n <po-checkbox\n name=\"selectAll\"\n [p-size]=\"componentsSize\"\n (p-change)=\"selectAllRows()\"\n [p-checkboxValue]=\"selectAll === null ? 'mixed' : selectAll\"\n ></po-checkbox>\n }\n </div>\n </th>\n }\n\n @if ((hasMasterDetailColumn || hasRowTemplate) && hasMainColumns && !hasRowTemplateWithArrowDirectionRight) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n <!-- Coluna criada para caso as a\u00E7\u00F5es fiquem no lado esquerdo -->\n @if (!actionRight && hasItems && hasMainColumns && (visibleActions.length > 1 || isSingleAction)) {\n <th\n #columnActionLeft\n [class.po-table-header-master-detail]=\"!isSingleAction\"\n [class.po-table-header-single-action]=\"isSingleAction\"\n ></th>\n }\n\n @if (!hasMainColumns) {\n <th #noColumnsHeader class=\"po-table-header-column po-text-center\" [attr.colspan]=\"columnCount\">\n @if (height) {\n <div class=\"po-table-header-fixed-inner\" [style.width.px]=\"hasValidColumns ? headerWidth : null\">\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n </div>\n } @else {\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n }\n </th>\n }\n\n @if (this.isDraggable || hasSomeFixed()) {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{\n 'width':\n height > 0 && !virtualScroll ? (!hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto') : ''\n }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n [class.po-table-column-drag-box]=\"this.isDraggable\"\n (click)=\"sortColumn(column)\"\n cdkDrag\n cdkDragLockAxis=\"x\"\n [cdkDragDisabled]=\"column.fixed ? 'true' : 'false'\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n @if (this.isDraggable && !column.fixed) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon cdkDragHandle p-icon=\"ICON_DRAG\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg\n cdkDragHandle\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"9\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"18\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"18\" r=\"2\" fill=\"black\" />\n </svg>\n }\n }\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\"> </ng-container>\n </div>\n </th>\n }\n } @else {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{\n 'width':\n height > 0 && !virtualScroll ? (!hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto') : ''\n }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n (click)=\"sortColumn(column)\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\"> </ng-container>\n </div>\n </th>\n }\n }\n\n @if (hasRowTemplateWithArrowDirectionRight && (hasVisibleActions || hideColumnsManager) && hasMainColumns) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n @if (\n hasVisibleActions &&\n actionRight &&\n hasItems &&\n hasMainColumns &&\n (visibleActions.length > 1 || isSingleAction)\n ) {\n <th\n [class.po-table-header-single-action]=\"isSingleAction\"\n [class.po-table-header-actions]=\"!isSingleAction\"\n ></th>\n }\n </tr>\n </thead>\n\n @if (!hasItems || !hasMainColumns) {\n <tbody class=\"po-table-group-row\">\n <tr class=\"po-table-row po-table-row-no-data\">\n <td [colSpan]=\"columnCount\" class=\"po-table-no-data po-text-center\">\n <span> {{ literals.noData }} </span>\n </td>\n </tr>\n </tbody>\n }\n\n @if (hasMainColumns) {\n @for (row of filteredItems; track trackBy(rowIndex); let rowIndex = $index) {\n <tbody class=\"po-table-group-row\">\n <tr\n class=\"po-table-row\"\n [class.po-table-row-active]=\"row.$selected || (row.$selected === null && selectable)\"\n >\n @if (selectable) {\n <td class=\"po-table-column-selectable\">\n <ng-container\n *ngTemplateOutlet=\"singleSelect ? inputRadio : inputCheckbox; context: { $implicit: row }\"\n >\n </ng-container>\n </td>\n }\n <!-- Valida se a origem do detail \u00E9 pelo input do po-table ou pela diretiva -->\n @if (\n (columnMasterDetail && !hideDetail && !hasRowTemplate) ||\n (hasRowTemplate && !hasRowTemplateWithArrowDirectionRight)\n ) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna com as a\u00E7\u00F5es na esquerda (padr\u00E3o)-->\n @if (!actionRight && (visibleActions.length > 1 || isSingleAction)) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n @for (column of mainColumns; track trackBy(columnIndex); let columnIndex = $index) {\n <td\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [class.po-table-column]=\"column.type !== 'icon'\"\n [class.po-table-column-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-column-center]=\"column.type === 'subtitle'\"\n [class.po-table-column-icons]=\"column.type === 'icon'\"\n [pFrozenColumn]=\"column.fixed\"\n class=\"p-element po-frozen-column\"\n [ngClass]=\"getClassColor(row, column)\"\n (click)=\"hasSelectableRow() ? selectRow(row) : 'javascript:;'\"\n >\n <div\n class=\"po-table-column-cell po-table-body-ellipsis notranslate\"\n [p-tooltip]=\"tooltipText\"\n [p-append-in-body]=\"true\"\n (mouseenter)=\"tooltipMouseEnter($event, column, row)\"\n (mouseleave)=\"tooltipMouseLeave()\"\n >\n @switch (column.type) {\n @case ('columnTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"getTemplate(column); context: { $implicit: getCellData(row, column) }\"\n >\n </ng-container>\n </span>\n }\n @case ('cellTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"tableCellTemplate?.templateRef; context: { row: row, column: column }\"\n >\n </ng-container>\n </span>\n }\n @case ('boolean') {\n <span>\n {{ getBooleanLabel(getCellData(row, column), column) }}\n </span>\n }\n @case ('currency') {\n <span>\n {{ getCellData(row, column) | currency: column.format : 'symbol' : '1.2-2' }}\n </span>\n }\n @case ('date') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy' }}\n </span>\n }\n @case ('time') {\n <span>\n {{ getCellData(row, column) | po_time: column.format || 'HH:mm:ss.ffffff' }}\n </span>\n }\n @case ('dateTime') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy HH:mm:ss' }}\n </span>\n }\n @case ('number') {\n <span>\n {{ formatNumber(getCellData(row, column), column.format) }}\n </span>\n }\n @case ('link') {\n <po-table-column-link\n [p-action]=\"column.action\"\n [p-disabled]=\"checkDisabled(row, column)\"\n [p-link]=\"row[column.link]\"\n [p-row]=\"row\"\n [p-value]=\"getCellData(row, column)\"\n (click)=\"onClickLink($event, row, column)\"\n >\n </po-table-column-link>\n }\n @case ('icon') {\n <po-table-column-icon [p-column]=\"column\" [p-icons]=\"getColumnIcons(row, column)\" [p-row]=\"row\">\n </po-table-column-icon>\n }\n @case ('subtitle') {\n <span>\n <po-table-subtitle-circle\n [p-subtitle]=\"getSubtitleColumn(row, column)\"\n ></po-table-subtitle-circle>\n </span>\n }\n @case ('label') {\n <span>\n <po-table-column-label [p-value]=\"getColumnLabel(row, column)\"> </po-table-column-label>\n </span>\n }\n @default {\n <span>{{ getCellData(row, column) }}</span>\n }\n }\n </div>\n </td>\n }\n @if (hasRowTemplateWithArrowDirectionRight) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna de a\u00E7oes na direita -->\n @if (actionRight) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n </tr>\n @if (hasMainColumns && hasRowTemplate && row.$showDetail && isShowRowTemplate(row, rowIndex)) {\n <tr>\n <td class=\"po-table-row-template-container\" [colSpan]=\"columnCountForMasterDetail\">\n <ng-template\n [ngTemplateOutlet]=\"tableRowTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n </tr>\n }\n @if (hasMainColumns && isShowMasterDetail(row)) {\n <tr>\n <td class=\"po-table-column-detail\" [colSpan]=\"columnCountForMasterDetail\">\n <po-table-detail\n [p-selectable]=\"selectable && !detailHideSelect\"\n [p-detail]=\"columnMasterDetail.detail\"\n [p-items]=\"row[nameColumnDetail]\"\n [p-parent-row]=\"row\"\n [p-components-size]=\"componentsSize\"\n (p-select-row)=\"selectDetailRow($event)\"\n >\n </po-table-detail>\n </td>\n </tr>\n }\n </tbody>\n }\n }\n </table>\n</ng-template>\n\n<!-- Table with virtual scroll -->\n<ng-template #tableVirtualScrollTemplate>\n <cdk-virtual-scroll-viewport\n #tableVirtualScroll\n [itemSize]=\"itemSize\"\n [style.height.px]=\"heightTableContainer\"\n [minBufferPx]=\"heightTableContainer < 100 ? 100 : heightTableContainer\"\n [maxBufferPx]=\"heightTableContainer < 200 ? 200 : heightTableContainer\"\n >\n <table\n class=\"po-table\"\n [ngClass]=\"{\n 'po-table-interactive': selectable || sort,\n 'po-table-selectable': selectable,\n 'po-table-striped': striped,\n 'po-table-data-fixed-columns': applyFixedColumns(),\n 'po-table-text-wrap-enabled': textWrap\n }\"\n [attr.p-spacing]=\"spacing\"\n >\n <thead\n class=\"po-table-header-sticky\"\n [style.top]=\"inverseOfTranslation\"\n [attr.p-spacing]=\"spacing ?? (componentsSize === 'small' ? 'extraSmall' : 'medium')\"\n >\n <tr\n [class.po-table-header]=\"!height\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @if (hasSelectableColumn) {\n <th [style.pointer-events]=\"hideSelectAll ? 'none' : 'auto'\" class=\"po-table-column-selectable\">\n <div [class.po-table-header-fixed-inner]=\"height\">\n @if (!hideSelectAll) {\n <po-checkbox\n name=\"selectAll\"\n (p-change)=\"selectAllRows()\"\n [p-checkboxValue]=\"selectAll === null ? 'mixed' : selectAll\"\n [p-size]=\"componentsSize\"\n ></po-checkbox>\n }\n </div>\n </th>\n }\n\n @if ((hasMasterDetailColumn || hasRowTemplate) && hasMainColumns && !hasRowTemplateWithArrowDirectionRight) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n <!-- Coluna criada para caso as a\u00E7\u00F5es fiquem no lado esquerdo -->\n @if (!actionRight && hasItems && hasMainColumns && (visibleActions.length > 1 || isSingleAction)) {\n <th\n #columnActionLeft\n [class.po-table-header-master-detail]=\"!isSingleAction\"\n [class.po-table-header-single-action]=\"isSingleAction\"\n ></th>\n }\n\n @if (!hasMainColumns) {\n <th #noColumnsHeader class=\"po-table-header-column po-text-center\" [attr.colspan]=\"columnCount\">\n @if (height) {\n <div class=\"po-table-header-fixed-inner\" [style.width.px]=\"hasValidColumns ? headerWidth : null\">\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n </div>\n } @else {\n {{ hasValidColumns ? literals.noVisibleColumn : literals.noColumns }}\n }\n </th>\n }\n\n @if (this.isDraggable || hasSomeFixed()) {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{ 'width': !hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto' }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n [class.po-table-column-drag-box]=\"this.isDraggable\"\n (click)=\"sortColumn(column)\"\n cdkDrag\n cdkDragLockAxis=\"x\"\n [cdkDragDisabled]=\"column.fixed ? 'true' : 'false'\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n @if (this.isDraggable && !column.fixed) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon cdkDragHandle p-icon=\"ICON_DRAG\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg\n cdkDragHandle\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"9\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"6\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"12\" r=\"2\" fill=\"black\" />\n <circle cx=\"9\" cy=\"18\" r=\"2\" fill=\"black\" />\n <circle cx=\"15\" cy=\"18\" r=\"2\" fill=\"black\" />\n </svg>\n }\n }\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\">\n </ng-container>\n </div>\n </th>\n }\n } @else {\n @for (column of mainColumns; track trackBy(i); let i = $index) {\n <th\n class=\"po-table-header-ellipsis p-element po-frozen-column example-box\"\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [attr.data-po-table-column-name]=\"column.label || (column.property | titlecase) | lowercase\"\n [class.po-clickable]=\"(sort && column.sortable !== false) || hasService\"\n [ngClass]=\"{\n 'po-table-header-sorted':\n sort &&\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) &&\n (sortedColumn.ascending || !sortedColumn.ascending)\n }\"\n [ngStyle]=\"{ 'width': !hasItems ? '100%' : applyFixedColumns() ? column.width : 'auto' }\"\n [class.po-table-header-subtitle]=\"column.type === 'subtitle'\"\n (click)=\"sortColumn(column)\"\n [pFrozenColumn]=\"column.fixed\"\n >\n <div\n class=\"po-table-header-flex\"\n [class.po-table-header-fixed-inner]=\"height\"\n [class.po-table-header-flex-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-header-flex-center]=\"column.type === 'subtitle'\"\n >\n <ng-container *ngTemplateOutlet=\"contentHeaderTemplate; context: { $implicit: column }\">\n </ng-container>\n </div>\n </th>\n }\n }\n\n @if (hasRowTemplateWithArrowDirectionRight && hasMainColumns && (hasVisibleActions || hideColumnsManager)) {\n <th class=\"po-table-header-column po-table-header-master-detail\"></th>\n }\n\n @if (\n hasVisibleActions &&\n actionRight &&\n hasItems &&\n hasMainColumns &&\n (visibleActions.length > 1 || isSingleAction)\n ) {\n <th\n [class.po-table-header-single-action]=\"isSingleAction\"\n [class.po-table-header-actions]=\"!isSingleAction\"\n ></th>\n }\n </tr>\n </thead>\n\n @if (!hasItems || !hasMainColumns) {\n <tbody class=\"po-table-group-row\">\n <tr class=\"po-table-row po-table-row-no-data\">\n <td [colSpan]=\"columnCount\" class=\"po-table-no-data po-text-center\">\n <span> {{ literals.noData }} </span>\n </td>\n </tr>\n </tbody>\n }\n\n @if (hasMainColumns) {\n <tbody\n class=\"po-table-group-row\"\n *cdkVirtualFor=\"let row of filteredItems; let rowIndex = index; trackBy: trackBy\"\n >\n <tr\n class=\"po-table-row\"\n [class.po-table-row-active]=\"row.$selected || (row.$selected === null && selectable)\"\n >\n @if (selectable) {\n <td class=\"po-table-column-selectable\">\n <ng-container\n *ngTemplateOutlet=\"singleSelect ? inputRadio : inputCheckbox; context: { $implicit: row }\"\n >\n </ng-container>\n </td>\n }\n <!-- Valida se a origem do detail \u00E9 pelo input do po-table pela diretiva -->\n @if (\n (columnMasterDetail && !hideDetail && !hasRowTemplate) ||\n (hasRowTemplate && !hasRowTemplateWithArrowDirectionRight)\n ) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna com as a\u00E7\u00F5es na esquerda (padr\u00E3o)-->\n @if (!actionRight && (visibleActions.length > 1 || isSingleAction)) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n @for (column of mainColumns; track trackBy(columnIndex); let columnIndex = $index) {\n <td\n [style.width]=\"column.width\"\n [style.max-width]=\"column.width\"\n [style.min-width]=\"column.width\"\n [class.po-table-column]=\"column.type !== 'icon'\"\n [class.po-table-column-right]=\"column.type === 'currency' || column.type === 'number'\"\n [class.po-table-column-center]=\"column.type === 'subtitle'\"\n [class.po-table-column-icons]=\"column.type === 'icon'\"\n [ngClass]=\"getClassColor(row, column)\"\n [pFrozenColumn]=\"column.fixed\"\n class=\"p-element po-frozen-column\"\n (click)=\"hasSelectableRow() ? selectRow(row) : 'javascript:;'\"\n >\n <div\n class=\"po-table-column-cell po-table-body-ellipsis notranslate\"\n [p-tooltip]=\"tooltipText\"\n [p-append-in-body]=\"true\"\n (mouseenter)=\"tooltipMouseEnter($event, column, row)\"\n (mouseleave)=\"tooltipMouseLeave()\"\n >\n @switch (column.type) {\n @case ('columnTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"getTemplate(column); context: { $implicit: getCellData(row, column) }\"\n >\n </ng-container>\n </span>\n }\n @case ('cellTemplate') {\n <span>\n <ng-container\n *ngTemplateOutlet=\"tableCellTemplate?.templateRef; context: { row: row, column: column }\"\n >\n </ng-container>\n </span>\n }\n @case ('boolean') {\n <span>\n {{ getBooleanLabel(getCellData(row, column), column) }}\n </span>\n }\n @case ('currency') {\n <span>\n {{ getCellData(row, column) | currency: column.format : 'symbol' : '1.2-2' }}\n </span>\n }\n @case ('date') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy' }}\n </span>\n }\n @case ('time') {\n <span>\n {{ getCellData(row, column) | po_time: column.format || 'HH:mm:ss.ffffff' }}\n </span>\n }\n @case ('dateTime') {\n <span>\n {{ getCellData(row, column) | date: column.format || 'dd/MM/yyyy HH:mm:ss' }}\n </span>\n }\n @case ('number') {\n <span>\n {{ formatNumber(getCellData(row, column), column.format) }}\n </span>\n }\n @case ('link') {\n <po-table-column-link\n [p-action]=\"column.action\"\n [p-disabled]=\"checkDisabled(row, column)\"\n [p-link]=\"row[column.link]\"\n [p-row]=\"row\"\n [p-value]=\"getCellData(row, column)\"\n (click)=\"onClickLink($event, row, column)\"\n >\n </po-table-column-link>\n }\n @case ('icon') {\n <po-table-column-icon [p-column]=\"column\" [p-icons]=\"getColumnIcons(row, column)\" [p-row]=\"row\">\n </po-table-column-icon>\n }\n @case ('subtitle') {\n <span>\n <po-table-subtitle-circle\n [p-subtitle]=\"getSubtitleColumn(row, column)\"\n ></po-table-subtitle-circle>\n </span>\n }\n @case ('label') {\n <span>\n <po-table-column-label [p-value]=\"getColumnLabel(row, column)\"> </po-table-column-label>\n </span>\n }\n @default {\n <span>{{ getCellData(row, column) }}</span>\n }\n }\n </div>\n </td>\n }\n @if (hasRowTemplateWithArrowDirectionRight) {\n <td class=\"po-table-column-detail-toggle\" (click)=\"toggleDetail(row)\">\n <ng-template\n [ngTemplateOutlet]=\"poTableColumnDetail\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n }\n <!-- Coluna de a\u00E7oes na direita -->\n @if (actionRight) {\n <ng-template\n [ngTemplateOutlet]=\"ActionsColumnTemplate\"\n [ngTemplateOutletContext]=\"{ row: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n }\n </tr>\n @if (hasMainColumns && hasRowTemplate && row.$showDetail && isShowRowTemplate(row, rowIndex)) {\n <tr>\n <td class=\"po-table-row-template-container\" [colSpan]=\"columnCountForMasterDetail\">\n <ng-template\n [ngTemplateOutlet]=\"tableRowTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: row, rowIndex: rowIndex }\"\n >\n </ng-template>\n </td>\n </tr>\n }\n @if (hasMainColumns && isShowMasterDetail(row)) {\n <tr>\n <td class=\"po-table-column-detail\" [colSpan]=\"columnCountForMasterDetail\">\n <po-table-detail\n [p-selectable]=\"selectable && !detailHideSelect\"\n [p-detail]=\"columnMasterDetail.detail\"\n [p-items]=\"row[nameColumnDetail]\"\n [p-parent-row]=\"row\"\n [p-components-size]=\"componentsSize\"\n (p-select-row)=\"selectDetailRow($event)\"\n >\n </po-table-detail>\n </td>\n </tr>\n }\n </tbody>\n }\n </table>\n </cdk-virtual-scroll-viewport>\n</ng-template>\n\n<po-popup #popup [p-actions]=\"actions\" [p-size]=\"componentsSize\" [p-target]=\"popupTarget\"> </po-popup>\n\n<ng-template #poTableColumnDetail let-row=\"row\" let-rowIndex=\"rowIndex\">\n @if ((containsMasterDetail(row) && !hasRowTemplate) || (isShowRowTemplate(row, rowIndex) && hasRowTemplate)) {\n <po-icon [p-icon]=\"row.$showDetail ? 'ICON_ARROW_UP' : 'ICON_ARROW_DOWN'\" class=\"po-clickable\"> </po-icon>\n }\n</ng-template>\n\n<ng-template #inputRadio let-row>\n <po-radio\n [name]=\"idRadio\"\n [p-checked]=\"row.$selected\"\n [p-size]=\"componentsSize\"\n (p-change-selected)=\"selectRow(row)\"\n ></po-radio>\n</ng-template>\n\n<ng-template #inputCheckbox let-row>\n <po-checkbox\n name=\"checkbox\"\n (p-change)=\"selectable ? selectRow(row) : 'javascript:;'\"\n [p-checkboxValue]=\"row.$selected === null ? 'mixed' : row.$selected\"\n [p-size]=\"componentsSize\"\n ></po-checkbox>\n</ng-template>\n\n<ng-template #contentHeaderTemplate let-column>\n <span\n #columnHeader\n class=\"po-table-header-ellipsis\"\n [p-tooltip]=\"tooltipText\"\n [p-append-in-body]=\"true\"\n (mouseenter)=\"tooltipMouseEnter($event)\"\n (mouseleave)=\"tooltipMouseLeave()\"\n >\n {{ column.label || (column.property | titlecase) }}\n </span>\n\n @if (sort && column.sortable !== false) {\n <span\n [class.po-table-header-icon-unselected]=\"JSON.stringify(sortedColumn?.property) !== JSON.stringify(column)\"\n [class.po-table-header-icon-descending]=\"\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && sortedColumn.ascending\n \"\n [class.po-table-header-icon-ascending]=\"\n JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && !sortedColumn.ascending\n \"\n >\n @if (JSON.stringify(sortedColumn?.property) !== JSON.stringify(column)) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon p-icon=\"ICON_SORT\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M18.2929 15.2929L17 16.5858L17 10C17 9.44772 16.5523 9 16 9C15.4477 9 15 9.44772 15 10L15 16.5858L13.7071 15.2929C13.3166 14.9024 12.6834 14.9024 12.2929 15.2929C11.9024 15.6834 11.9024 16.3166 12.2929 16.7071L15.2929 19.7071C15.6834 20.0976 16.3166 20.0976 16.7071 19.7071L19.7071 16.7071C20.0976 16.3166 20.0976 15.6834 19.7071 15.2929C19.3166 14.9024 18.6834 14.9024 18.2929 15.2929ZM5.70716 8.7071L7.00006 7.4142L7.00003 14C7.00002 14.5523 7.44774 15 8.00002 15C8.55231 15 9.00002 14.5523 9.00003 14L9.00006 7.41418L10.2929 8.70707C10.6835 9.09759 11.3166 9.09758 11.7072 8.70706C12.0977 8.31653 12.0977 7.68336 11.7072 7.29284L8.70718 4.29286C8.31665 3.90234 7.68349 3.90235 7.29296 4.29287L4.29295 7.29289C3.90242 7.68342 3.90242 8.31658 4.29294 8.70711C4.68347 9.09763 5.31663 9.09762 5.70716 8.7071Z\"\n fill=\"#1D1D30\"\n />\n </svg>\n }\n }\n @if (JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && sortedColumn.ascending) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon p-icon=\"ICON_SORT_ASC\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M11 9.41421L9.70711 10.7071C9.31658 11.0976 8.68342 11.0976 8.29289 10.7071C7.90237 10.3166 7.90237 9.68342 8.29289 9.29289L11.2929 6.29289C11.6834 5.90237 12.3166 5.90237 12.7071 6.29289L15.7071 9.29289C16.0976 9.68342 16.0976 10.3166 15.7071 10.7071C15.3166 11.0976 14.6834 11.0976 14.2929 10.7071L13 9.41421V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V9.41421Z\"\n fill=\"black\"\n />\n </svg>\n }\n }\n @if (JSON.stringify(sortedColumn?.property) === JSON.stringify(column) && !sortedColumn.ascending) {\n @if (iconNameLib === 'AnimaliaIcon') {\n <po-icon cdkDragHandle p-icon=\"ICON_SORT_DESC\"></po-icon>\n }\n @if (iconNameLib === 'PoIcon') {\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M9.70711 13.2929L11 14.5858V7C11 6.44772 11.4477 6 12 6C12.5523 6 13 6.44772 13 7V14.5858L14.2929 13.2929C14.6834 12.9024 15.3166 12.9024 15.7071 13.2929C16.0976 13.6834 16.0976 14.3166 15.7071 14.7071L12.7071 17.7071C12.3166 18.0976 11.6834 18.0976 11.2929 17.7071L8.29289 14.7071C7.90237 14.3166 7.90237 13.6834 8.29289 13.2929C8.68342 12.9024 9.31658 12.9024 9.70711 13.2929Z\"\n fill=\"black\"\n />\n </svg>\n }\n }\n </span>\n }\n</ng-template>\n\n<!-- Template de a\u00E7\u00F5es -->\n<ng-template #ActionsColumnTemplate let-row=\"row\" let-rowIndex=\"rowIndex\">\n @if (isSingleAction) {\n <td\n class=\"po-table-column po-table-column-single-action\"\n [style.width.px]=\"height && actionRight ? getWidthColumnManager() : ''\"\n [style.max-width.px]=\"height && !actionRight ? getColumnWidthActionsLeft() : ''\"\n [style.width.px]=\"height && !actionRight ? getColumnWidthActionsLeft() : ''\"\n >\n @if (firstAction.visible !== false) {\n <div\n class=\"po-table-single-action po-clickable\"\n [class.po-table-action-disabled]=\"firstAction.disabled ? validateTableAction(row, firstAction) : false\"\n (click)=\"executeTableAction(row, firstAction)\"\n >\n @if (firstAction.icon) {\n <po-icon class=\"po-table-single-action-content\" [p-icon]=\"firstAction.icon\"></po-icon>\n }\n @if (firstAction.label) {\n <span>{{ firstAction.label }}</span>\n }\n </div>\n }\n </td>\n }\n\n @if (visibleActions.length > 1) {\n <td class=\"po-table-column-actions\">\n <div #popupTarget class=\"po-clickable\" (click)=\"togglePopup(row, popupTarget)\">\n <po-icon class=\"po-field-icon\" p-icon=\"ICON_MORE\"></po-icon>\n </div>\n </td>\n }\n</ng-template>\n\n@if (!hideColumnsManager) {\n <po-table-column-manager\n [p-columns]=\"columns\"\n [p-max-columns]=\"maxColumns\"\n [p-target]=\"columnManagerTarget\"\n [p-last-visible-columns-selected]=\"lastVisibleColumnsSelected\"\n [p-hide-action-fixed-columns]=\"hideActionFixedColumns\"\n (p-visible-columns-change)=\"onVisibleColumnsChange($event)\"\n (p-change-visible-columns)=\"onChangeVisibleColumns($event)\"\n [p-columns-default]=\"initialColumns\"\n [p-components-size]=\"componentsSize\"\n (p-initial-columns)=\"onColumnRestoreManager($event)\"\n >\n </po-table-column-manager>\n}\n\n<po-modal\n #modalDelete\n [p-components-size]=\"componentsSize\"\n [p-title]=\"literals.delete\"\n [p-primary-action]=\"confirm\"\n [p-secondary-action]=\"close\"\n [p-click-out]=\"true\"\n>\n <p class=\"po-font-text-large\">{{ literals.bodyDelete }}</p>\n</po-modal>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgPlural, selector: "[ngPlural]", inputs: ["ngPlural"] }, { kind: "directive", type: i1.NgPluralCase, selector: "[ngPluralCase]" }, { kind: "directive", type: i5$1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i5$1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i5$1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: i6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: PoButtonComponent, selector: "po-button" }, { kind: "component", type: PoContainerComponent, selector: "po-container" }, { kind: "component", type: PoLoadingOverlayComponent, selector: "po-loading-overlay" }, { kind: "component", type: PoModalComponent, selector: "po-modal" }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }, { kind: "directive", type: PoTooltipDirective, selector: "[p-tooltip]" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoCheckboxComponent, selector: "po-checkbox" }, { kind: "component", type: PoRadioComponent, selector: "po-radio", inputs: ["p-value", "p-size", "p-required", "p-label-text-wrap", "p-checked"], outputs: ["p-blur", "p-change-selected"] }, { kind: "component", type: PoSearchComponent, selector: "po-search" }, { kind: "component", type: PoTableColumnIconComponent, selector: "po-table-column-icon", inputs: ["p-column", "p-row", "p-icons"] }, { kind: "component", type: PoTableColumnLabelComponent, selector: "po-table-column-label", inputs: ["p-value"] }, { kind: "component", type: PoTableColumnLinkComponent, selector: "po-table-column-link", inputs: ["p-action", "p-disabled", "p-link", "p-open-new-tab", "p-row", "p-value"] }, { kind: "component", type: PoTableColumnManagerComponent, selector: "po-table-column-manager", inputs: ["p-columns", "p-target", "p-columns-default", "p-last-visible-columns-selected", "p-hide-action-fixed-columns", "p-components-size", "p-max-columns"], outputs: ["p-visible-columns-change", "p-change-visible-columns", "p-initial-columns"] }, { kind: "component", type: PoTableDetailComponent, selector: "po-table-detail", inputs: ["p-components-size", "p-items", "p-parent-row", "p-selectable", "p-detail"], outputs: ["p-select-row"] }, { kind: "component", type: PoTableSubtitleCircleComponent, selector: "po-table-subtitle-circle", inputs: ["p-hide-title", "p-subtitle"] }, { kind: "component", type: PoTableSubtitleFooterComponent, selector: "po-table-subtitle-footer", inputs: ["p-components-size", "p-literals", "p-subtitles"] }, { kind: "directive", type: PoTableColumnFrozenDirective, selector: "[pFrozenColumn]", inputs: ["pFrozenColumn", "alignFrozen"] }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i1.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: PoTimePipe, name: "po_time" }] });
|
|
26542
26850
|
}
|
|
26543
26851
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoTableComponent, decorators: [{
|
|
26544
26852
|
type: Component,
|
|
@@ -30265,6 +30573,21 @@ class PoInputBaseComponent {
|
|
|
30265
30573
|
* @default `false`
|
|
30266
30574
|
*/
|
|
30267
30575
|
errorLimit = false;
|
|
30576
|
+
/**
|
|
30577
|
+
* @optional
|
|
30578
|
+
*
|
|
30579
|
+
* @description
|
|
30580
|
+
* Exibe um ícone de carregamento no lado direito do campo para sinalizar que uma operação está em andamento.
|
|
30581
|
+
*
|
|
30582
|
+
* @default `false`
|
|
30583
|
+
*/
|
|
30584
|
+
set loading(value) {
|
|
30585
|
+
this._loading = convertToBoolean(value);
|
|
30586
|
+
this.cd?.markForCheck();
|
|
30587
|
+
}
|
|
30588
|
+
get loading() {
|
|
30589
|
+
return this._loading;
|
|
30590
|
+
}
|
|
30268
30591
|
/**
|
|
30269
30592
|
* @optional
|
|
30270
30593
|
*
|
|
@@ -30302,12 +30625,12 @@ class PoInputBaseComponent {
|
|
|
30302
30625
|
/**
|
|
30303
30626
|
* @description
|
|
30304
30627
|
*
|
|
30305
|
-
*
|
|
30628
|
+
* Controla como o componente aplica as validações de comprimento mínimo (`minLength`) e máximo (`maxLength`) quando há uma máscara (`p-mask`) definida.
|
|
30306
30629
|
*
|
|
30307
30630
|
* - Quando `true`, apenas os caracteres alfanuméricos serão contabilizados para a validação dos comprimentos.
|
|
30308
30631
|
* - Quando `false`, todos os caracteres, incluindo os especiais da máscara, serão considerados na validação.
|
|
30309
30632
|
*
|
|
30310
|
-
* >
|
|
30633
|
+
* > Esta propriedade é ignorada quando utilizada em conjunto com `p-mask-format-model`.
|
|
30311
30634
|
*
|
|
30312
30635
|
* Exemplo:
|
|
30313
30636
|
* ```
|
|
@@ -30392,6 +30715,7 @@ class PoInputBaseComponent {
|
|
|
30392
30715
|
onTouched = null;
|
|
30393
30716
|
passedWriteValue = false;
|
|
30394
30717
|
validatorChange;
|
|
30718
|
+
_loading = false;
|
|
30395
30719
|
_maxlength;
|
|
30396
30720
|
_minlength;
|
|
30397
30721
|
_noAutocomplete = false;
|
|
@@ -30781,6 +31105,14 @@ class PoInputBaseComponent {
|
|
|
30781
31105
|
return (this.additionalHelpEventTrigger === 'event' ||
|
|
30782
31106
|
(this.additionalHelpEventTrigger === undefined && this.additionalHelp.observed));
|
|
30783
31107
|
}
|
|
31108
|
+
//Transforma o tamanho do input para o tamanho do ícone de loading correspondente
|
|
31109
|
+
mapSizeToIcon(size) {
|
|
31110
|
+
const sizeMap = {
|
|
31111
|
+
small: 'xs',
|
|
31112
|
+
medium: 'sm'
|
|
31113
|
+
};
|
|
31114
|
+
return sizeMap[size] || 'sm';
|
|
31115
|
+
}
|
|
30784
31116
|
// utilizado para validar o pattern na inicializacao, fazendo dessa forma o campo fica sujo (dirty).
|
|
30785
31117
|
validatePatternOnWriteValue(value) {
|
|
30786
31118
|
if (value && this.passedWriteValue) {
|
|
@@ -30791,7 +31123,7 @@ class PoInputBaseComponent {
|
|
|
30791
31123
|
}
|
|
30792
31124
|
}
|
|
30793
31125
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoInputBaseComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
30794
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.0.7", type: PoInputBaseComponent, isStandalone: true, inputs: { additionalHelpEventTrigger: { classPropertyName: "additionalHelpEventTrigger", publicName: "additionalHelpEventTrigger", isSignal: false, isRequired: false, transformFunction: null }, additionalHelpTooltip: { classPropertyName: "additionalHelpTooltip", publicName: "p-additional-help-tooltip", isSignal: false, isRequired: false, transformFunction: null }, appendBox: { classPropertyName: "appendBox", publicName: "p-append-in-body", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, autoFocus: { classPropertyName: "autoFocus", publicName: "p-auto-focus", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, icon: { classPropertyName: "icon", publicName: "p-icon", isSignal: false, isRequired: false, transformFunction: null }, emitAllChanges: { classPropertyName: "emitAllChanges", publicName: "p-emit-all-changes", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, label: { classPropertyName: "label", publicName: "p-label", isSignal: false, isRequired: false, transformFunction: null }, help: { classPropertyName: "help", publicName: "p-help", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, errorAsyncProperties: { classPropertyName: "errorAsyncProperties", publicName: "p-error-async-properties", isSignal: false, isRequired: false, transformFunction: null }, errorPattern: { classPropertyName: "errorPattern", publicName: "p-error-pattern", isSignal: false, isRequired: false, transformFunction: null }, errorLimit: { classPropertyName: "errorLimit", publicName: "p-error-limit", isSignal: false, isRequired: false, transformFunction: null }, optional: { classPropertyName: "optional", publicName: "p-optional", isSignal: false, isRequired: false, transformFunction: null }, showErrorMessageRequired: { classPropertyName: "showErrorMessageRequired", publicName: "p-required-field-error-message", isSignal: false, isRequired: false, transformFunction: null }, upperCase: { classPropertyName: "upperCase", publicName: "p-upper-case", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, maskNoLengthValidation: { classPropertyName: "maskNoLengthValidation", publicName: "p-mask-no-length-validation", isSignal: false, isRequired: false, transformFunction: null }, noAutocomplete: { classPropertyName: "noAutocomplete", publicName: "p-no-autocomplete", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "p-placeholder", isSignal: false, isRequired: false, transformFunction: null }, setDisabled: { classPropertyName: "setDisabled", publicName: "p-disabled", isSignal: false, isRequired: false, transformFunction: null }, setReadonly: { classPropertyName: "setReadonly", publicName: "p-readonly", isSignal: false, isRequired: false, transformFunction: null }, setRequired: { classPropertyName: "setRequired", publicName: "p-required", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "p-size", isSignal: false, isRequired: false, transformFunction: null }, showRequired: { classPropertyName: "showRequired", publicName: "p-show-required", isSignal: false, isRequired: false, transformFunction: null }, setClean: { classPropertyName: "setClean", publicName: "p-clean", isSignal: false, isRequired: false, transformFunction: null }, setPattern: { classPropertyName: "setPattern", publicName: "p-pattern", isSignal: false, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "p-maxlength", isSignal: false, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "p-minlength", isSignal: false, isRequired: false, transformFunction: null }, setMask: { classPropertyName: "setMask", publicName: "p-mask", isSignal: false, isRequired: false, transformFunction: null }, setMaskFormatModel: { classPropertyName: "setMaskFormatModel", publicName: "p-mask-format-model", isSignal: false, isRequired: false, transformFunction: null }, poHelperComponent: { classPropertyName: "poHelperComponent", publicName: "p-helper", isSignal: true, isRequired: false, transformFunction: null }, labelTextWrap: { classPropertyName: "labelTextWrap", publicName: "p-label-text-wrap", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { additionalHelp: "p-additional-help", blur: "p-blur", enter: "p-enter", change: "p-change", changeModel: "p-change-model", keydown: "p-keydown" }, viewQueries: [{ propertyName: "fieldContainer", first: true, predicate: ["fieldContainer"], descendants: true, read: PoFieldContainerComponent }, { propertyName: "helperEl", first: true, predicate: ["helperEl"], descendants: true, read: PoHelperComponent }], ngImport: i0 });
|
|
31126
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.0.7", type: PoInputBaseComponent, isStandalone: true, inputs: { additionalHelpEventTrigger: { classPropertyName: "additionalHelpEventTrigger", publicName: "additionalHelpEventTrigger", isSignal: false, isRequired: false, transformFunction: null }, additionalHelpTooltip: { classPropertyName: "additionalHelpTooltip", publicName: "p-additional-help-tooltip", isSignal: false, isRequired: false, transformFunction: null }, appendBox: { classPropertyName: "appendBox", publicName: "p-append-in-body", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, autoFocus: { classPropertyName: "autoFocus", publicName: "p-auto-focus", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, icon: { classPropertyName: "icon", publicName: "p-icon", isSignal: false, isRequired: false, transformFunction: null }, emitAllChanges: { classPropertyName: "emitAllChanges", publicName: "p-emit-all-changes", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, label: { classPropertyName: "label", publicName: "p-label", isSignal: false, isRequired: false, transformFunction: null }, help: { classPropertyName: "help", publicName: "p-help", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, errorAsyncProperties: { classPropertyName: "errorAsyncProperties", publicName: "p-error-async-properties", isSignal: false, isRequired: false, transformFunction: null }, errorPattern: { classPropertyName: "errorPattern", publicName: "p-error-pattern", isSignal: false, isRequired: false, transformFunction: null }, errorLimit: { classPropertyName: "errorLimit", publicName: "p-error-limit", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "p-loading", isSignal: false, isRequired: false, transformFunction: null }, optional: { classPropertyName: "optional", publicName: "p-optional", isSignal: false, isRequired: false, transformFunction: null }, showErrorMessageRequired: { classPropertyName: "showErrorMessageRequired", publicName: "p-required-field-error-message", isSignal: false, isRequired: false, transformFunction: null }, upperCase: { classPropertyName: "upperCase", publicName: "p-upper-case", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, maskNoLengthValidation: { classPropertyName: "maskNoLengthValidation", publicName: "p-mask-no-length-validation", isSignal: false, isRequired: false, transformFunction: null }, noAutocomplete: { classPropertyName: "noAutocomplete", publicName: "p-no-autocomplete", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "p-placeholder", isSignal: false, isRequired: false, transformFunction: null }, setDisabled: { classPropertyName: "setDisabled", publicName: "p-disabled", isSignal: false, isRequired: false, transformFunction: null }, setReadonly: { classPropertyName: "setReadonly", publicName: "p-readonly", isSignal: false, isRequired: false, transformFunction: null }, setRequired: { classPropertyName: "setRequired", publicName: "p-required", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "p-size", isSignal: false, isRequired: false, transformFunction: null }, showRequired: { classPropertyName: "showRequired", publicName: "p-show-required", isSignal: false, isRequired: false, transformFunction: null }, setClean: { classPropertyName: "setClean", publicName: "p-clean", isSignal: false, isRequired: false, transformFunction: null }, setPattern: { classPropertyName: "setPattern", publicName: "p-pattern", isSignal: false, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "p-maxlength", isSignal: false, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "p-minlength", isSignal: false, isRequired: false, transformFunction: null }, setMask: { classPropertyName: "setMask", publicName: "p-mask", isSignal: false, isRequired: false, transformFunction: null }, setMaskFormatModel: { classPropertyName: "setMaskFormatModel", publicName: "p-mask-format-model", isSignal: false, isRequired: false, transformFunction: null }, poHelperComponent: { classPropertyName: "poHelperComponent", publicName: "p-helper", isSignal: true, isRequired: false, transformFunction: null }, labelTextWrap: { classPropertyName: "labelTextWrap", publicName: "p-label-text-wrap", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { additionalHelp: "p-additional-help", blur: "p-blur", enter: "p-enter", change: "p-change", changeModel: "p-change-model", keydown: "p-keydown" }, viewQueries: [{ propertyName: "fieldContainer", first: true, predicate: ["fieldContainer"], descendants: true, read: PoFieldContainerComponent }, { propertyName: "helperEl", first: true, predicate: ["helperEl"], descendants: true, read: PoHelperComponent }], ngImport: i0 });
|
|
30795
31127
|
}
|
|
30796
31128
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoInputBaseComponent, decorators: [{
|
|
30797
31129
|
type: Directive
|
|
@@ -30836,6 +31168,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
30836
31168
|
}], errorLimit: [{
|
|
30837
31169
|
type: Input,
|
|
30838
31170
|
args: ['p-error-limit']
|
|
31171
|
+
}], loading: [{
|
|
31172
|
+
type: Input,
|
|
31173
|
+
args: ['p-loading']
|
|
30839
31174
|
}], optional: [{
|
|
30840
31175
|
type: Input,
|
|
30841
31176
|
args: ['p-optional']
|
|
@@ -31555,7 +31890,7 @@ class PoDecimalComponent extends PoInputBaseComponent {
|
|
|
31555
31890
|
useExisting: forwardRef(() => PoDecimalComponent),
|
|
31556
31891
|
multi: true
|
|
31557
31892
|
}
|
|
31558
|
-
], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inp"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"{\n 'po-input-icon-left': icon && size !== 'small',\n 'po-input-icon-left-aa': icon && size === 'small',\n 'po-input-icon-right': clean && size !== 'small',\n 'po-input-icon-right-aa': clean && size === 'small'\n }\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n inputmode=\"decimal\"\n type=\"text\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n (input)=\"onInput($event)\"\n (keypress)=\"onKeyPress($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
31893
|
+
], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inp"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"{\n 'po-input-icon-left': icon && size !== 'small',\n 'po-input-icon-left-aa': icon && size === 'small',\n 'po-input-icon-right': (clean || loading) && size !== 'small',\n 'po-input-icon-right-aa': (clean || loading) && size === 'small'\n }\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n inputmode=\"decimal\"\n type=\"text\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n (input)=\"onInput($event)\"\n (keypress)=\"onKeyPress($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
31559
31894
|
}
|
|
31560
31895
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoDecimalComponent, decorators: [{
|
|
31561
31896
|
type: Component,
|
|
@@ -31570,7 +31905,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
31570
31905
|
useExisting: forwardRef(() => PoDecimalComponent),
|
|
31571
31906
|
multi: true
|
|
31572
31907
|
}
|
|
31573
|
-
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"{\n 'po-input-icon-left': icon && size !== 'small',\n 'po-input-icon-left-aa': icon && size === 'small',\n 'po-input-icon-right': clean && size !== 'small',\n 'po-input-icon-right-aa': clean && size === 'small'\n }\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n inputmode=\"decimal\"\n type=\"text\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n (input)=\"onInput($event)\"\n (keypress)=\"onKeyPress($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
31908
|
+
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"{\n 'po-input-icon-left': icon && size !== 'small',\n 'po-input-icon-left-aa': icon && size === 'small',\n 'po-input-icon-right': (clean || loading) && size !== 'small',\n 'po-input-icon-right-aa': (clean || loading) && size === 'small'\n }\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n inputmode=\"decimal\"\n type=\"text\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n (input)=\"onInput($event)\"\n (keypress)=\"onKeyPress($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
31574
31909
|
}], ctorParameters: () => [], propDecorators: { inputEl: [{
|
|
31575
31910
|
type: ViewChild,
|
|
31576
31911
|
args: ['inp', { read: ElementRef, static: true }]
|
|
@@ -31944,11 +32279,11 @@ class PoEmailComponent extends PoInputGeneric {
|
|
|
31944
32279
|
return null;
|
|
31945
32280
|
}
|
|
31946
32281
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoEmailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31947
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoEmailComponent, isStandalone: false, selector: "po-email", providers: providers$4, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32282
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoEmailComponent, isStandalone: false, selector: "po-email", providers: providers$4, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
31948
32283
|
}
|
|
31949
32284
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoEmailComponent, decorators: [{
|
|
31950
32285
|
type: Component,
|
|
31951
|
-
args: [{ selector: 'po-email', changeDetection: ChangeDetectionStrategy.OnPush, providers: providers$4, standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
32286
|
+
args: [{ selector: 'po-email', changeDetection: ChangeDetectionStrategy.OnPush, providers: providers$4, standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
31952
32287
|
}], ctorParameters: () => [] });
|
|
31953
32288
|
|
|
31954
32289
|
/**
|
|
@@ -32000,7 +32335,7 @@ class PoInputComponent extends PoInputGeneric {
|
|
|
32000
32335
|
useExisting: forwardRef(() => PoInputComponent),
|
|
32001
32336
|
multi: true
|
|
32002
32337
|
}
|
|
32003
|
-
], viewQueries: [{ propertyName: "inp", first: true, predicate: ["inp"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32338
|
+
], viewQueries: [{ propertyName: "inp", first: true, predicate: ["inp"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32004
32339
|
}
|
|
32005
32340
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoInputComponent, decorators: [{
|
|
32006
32341
|
type: Component,
|
|
@@ -32015,7 +32350,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
32015
32350
|
useExisting: forwardRef(() => PoInputComponent),
|
|
32016
32351
|
multi: true
|
|
32017
32352
|
}
|
|
32018
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
32353
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
32019
32354
|
}], ctorParameters: () => [], propDecorators: { inp: [{
|
|
32020
32355
|
type: ViewChild,
|
|
32021
32356
|
args: ['inp', { static: true }]
|
|
@@ -32088,11 +32423,11 @@ class PoLoginComponent extends PoInputGeneric {
|
|
|
32088
32423
|
return null;
|
|
32089
32424
|
}
|
|
32090
32425
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
32091
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoLoginComponent, isStandalone: false, selector: "po-login", inputs: { noAutocomplete: ["p-no-autocomplete", "noAutocomplete"] }, providers: providers$3, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_USER\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n ></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input {{ size === 'small' ? 'po-input-aa' : '' }} po-input-icon-left\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32426
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoLoginComponent, isStandalone: false, selector: "po-login", inputs: { noAutocomplete: ["p-no-autocomplete", "noAutocomplete"] }, providers: providers$3, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_USER\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n ></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input {{ size === 'small' ? 'po-input-aa' : '' }} po-input-icon-left\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32092
32427
|
}
|
|
32093
32428
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoLoginComponent, decorators: [{
|
|
32094
32429
|
type: Component,
|
|
32095
|
-
args: [{ selector: 'po-login', changeDetection: ChangeDetectionStrategy.OnPush, providers: providers$3, standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_USER\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n ></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input {{ size === 'small' ? 'po-input-aa' : '' }} po-input-icon-left\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
32430
|
+
args: [{ selector: 'po-login', changeDetection: ChangeDetectionStrategy.OnPush, providers: providers$3, standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_USER\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n ></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input {{ size === 'small' ? 'po-input-aa' : '' }} po-input-icon-left\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
32096
32431
|
}], ctorParameters: () => [], propDecorators: { noAutocomplete: [{
|
|
32097
32432
|
type: Input,
|
|
32098
32433
|
args: ['p-no-autocomplete']
|
|
@@ -37173,6 +37508,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
37173
37508
|
* </example>
|
|
37174
37509
|
*/
|
|
37175
37510
|
class PoNumberComponent extends PoNumberBaseComponent {
|
|
37511
|
+
/**
|
|
37512
|
+
* @optional
|
|
37513
|
+
*
|
|
37514
|
+
* @description
|
|
37515
|
+
*
|
|
37516
|
+
* Indica uma máscara para o campo, porém é incompatível com o `po-number`.
|
|
37517
|
+
* > **Componentes compatíveis:** `po-input`,`po-decimal`.
|
|
37518
|
+
*
|
|
37519
|
+
* @override
|
|
37520
|
+
*/
|
|
37521
|
+
mask = '';
|
|
37176
37522
|
/**
|
|
37177
37523
|
* @optional
|
|
37178
37524
|
*
|
|
@@ -37274,7 +37620,7 @@ class PoNumberComponent extends PoNumberBaseComponent {
|
|
|
37274
37620
|
useExisting: forwardRef(() => PoNumberComponent),
|
|
37275
37621
|
multi: true
|
|
37276
37622
|
}
|
|
37277
|
-
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n <input\n #inp\n class=\"po-input\"\n type=\"number\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [attr.step]=\"step\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [tabindex]=\"disabled ? -1 : 0\"\n (blur)=\"onBlur($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"po-icon-input\"\n [p-default-value]=\"null\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37623
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n <input\n #inp\n class=\"po-input\"\n type=\"number\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [attr.step]=\"step\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [tabindex]=\"disabled ? -1 : 0\"\n (blur)=\"onBlur($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"po-icon-input\"\n [p-default-value]=\"null\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37278
37624
|
}
|
|
37279
37625
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoNumberComponent, decorators: [{
|
|
37280
37626
|
type: Component,
|
|
@@ -37289,7 +37635,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
37289
37635
|
useExisting: forwardRef(() => PoNumberComponent),
|
|
37290
37636
|
multi: true
|
|
37291
37637
|
}
|
|
37292
|
-
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n <input\n #inp\n class=\"po-input\"\n type=\"number\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [attr.step]=\"step\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [tabindex]=\"disabled ? -1 : 0\"\n (blur)=\"onBlur($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"po-icon-input\"\n [p-default-value]=\"null\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
37638
|
+
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n <input\n #inp\n class=\"po-input\"\n type=\"number\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.name]=\"name\"\n [attr.step]=\"step\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [tabindex]=\"disabled ? -1 : 0\"\n (blur)=\"onBlur($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"po-icon-input\"\n [p-default-value]=\"null\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPatternMessage()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
37293
37639
|
}], ctorParameters: () => [], propDecorators: { step: [{
|
|
37294
37640
|
type: Input,
|
|
37295
37641
|
args: ['p-step']
|
|
@@ -37391,7 +37737,7 @@ class PoPasswordComponent extends PoInputGeneric {
|
|
|
37391
37737
|
useExisting: forwardRef(() => PoPasswordComponent),
|
|
37392
37738
|
multi: true
|
|
37393
37739
|
}
|
|
37394
|
-
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_LOCK\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n >\n </po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input po-input-icon-left\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-double-icon-right]=\"clean && inp.value && !hidePasswordPeek\"\n [class.po-input-double-icon-right-aa]=\"clean && inp.value && !hidePasswordPeek && size === 'small'\"\n [class.po-input-icon-right]=\"clean || !hidePasswordPeek\"\n [class.po-input-icon-right-aa]=\"(clean || !hidePasswordPeek) && size === 'small'\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"disabled ? 'password' : type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n\n @if (!hidePasswordPeek && !disabled) {\n <po-icon\n [p-icon]=\"visiblePassword ? 'ICON_EYE' : 'ICON_EYE_OFF'\"\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [ngClass]=\"!visiblePassword ? 'po-field-icon-disabled' : ''\"\n [class.po-field-icon-disabled-aa]=\"size === 'small'\"\n (click)=\"showPassword()\"\n >\n </po-icon>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37740
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_LOCK\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n >\n </po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input po-input-icon-left\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-double-icon-right]=\"!loading && clean && inp.value && !hidePasswordPeek\"\n [class.po-input-double-icon-right-aa]=\"!loading && clean && inp.value && !hidePasswordPeek && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading || !hidePasswordPeek\"\n [class.po-input-icon-right-aa]=\"(clean || loading || !hidePasswordPeek) && size === 'small'\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"disabled ? 'password' : type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"> </po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n\n @if (!loading && !hidePasswordPeek && !disabled) {\n <po-icon\n [p-icon]=\"visiblePassword ? 'ICON_EYE' : 'ICON_EYE_OFF'\"\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [ngClass]=\"!visiblePassword ? 'po-field-icon-disabled' : ''\"\n [class.po-field-icon-disabled-aa]=\"size === 'small'\"\n (click)=\"showPassword()\"\n >\n </po-icon>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37395
37741
|
}
|
|
37396
37742
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPasswordComponent, decorators: [{
|
|
37397
37743
|
type: Component,
|
|
@@ -37406,7 +37752,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
37406
37752
|
useExisting: forwardRef(() => PoPasswordComponent),
|
|
37407
37753
|
multi: true
|
|
37408
37754
|
}
|
|
37409
|
-
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_LOCK\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n >\n </po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input po-input-icon-left\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-double-icon-right]=\"clean && inp.value && !hidePasswordPeek\"\n [class.po-input-double-icon-right-aa]=\"clean && inp.value && !hidePasswordPeek && size === 'small'\"\n [class.po-input-icon-right]=\"clean || !hidePasswordPeek\"\n [class.po-input-icon-right-aa]=\"(clean || !hidePasswordPeek) && size === 'small'\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"disabled ? 'password' : type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n\n @if (!hidePasswordPeek && !disabled) {\n <po-icon\n [p-icon]=\"visiblePassword ? 'ICON_EYE' : 'ICON_EYE_OFF'\"\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [ngClass]=\"!visiblePassword ? 'po-field-icon-disabled' : ''\"\n [class.po-field-icon-disabled-aa]=\"size === 'small'\"\n (click)=\"showPassword()\"\n >\n </po-icon>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
37755
|
+
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n <div class=\"po-field-icon-container-left\">\n <po-icon\n p-icon=\"ICON_LOCK\"\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n >\n </po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input po-input-icon-left\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-double-icon-right]=\"!loading && clean && inp.value && !hidePasswordPeek\"\n [class.po-input-double-icon-right-aa]=\"!loading && clean && inp.value && !hidePasswordPeek && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading || !hidePasswordPeek\"\n [class.po-input-icon-right-aa]=\"(clean || loading || !hidePasswordPeek) && size === 'small'\"\n [class.po-input-icon-left-aa]=\"size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"disabled ? 'password' : type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"> </po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean class=\"po-icon-input\" [p-element-ref]=\"inputEl\" [p-size]=\"size\" (p-change-event)=\"clear($event)\">\n </po-clean>\n }\n\n @if (!loading && !hidePasswordPeek && !disabled) {\n <po-icon\n [p-icon]=\"visiblePassword ? 'ICON_EYE' : 'ICON_EYE_OFF'\"\n class=\"po-field-icon po-icon-input\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [ngClass]=\"!visiblePassword ? 'po-field-icon-disabled' : ''\"\n [class.po-field-icon-disabled-aa]=\"size === 'small'\"\n (click)=\"showPassword()\"\n >\n </po-icon>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n @if (!readonly) {\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-limit]=\"errorLimit\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-size]=\"size\"\n >\n </po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
37410
37756
|
}], ctorParameters: () => [], propDecorators: { hidePasswordPeek: [{
|
|
37411
37757
|
type: Input,
|
|
37412
37758
|
args: ['p-hide-password-peek']
|
|
@@ -40621,7 +40967,7 @@ class PoUrlComponent extends PoInputGeneric {
|
|
|
40621
40967
|
useExisting: forwardRef(() => PoUrlComponent),
|
|
40622
40968
|
multi: true
|
|
40623
40969
|
}
|
|
40624
|
-
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
40970
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n", dependencies: [{ kind: "component", type: PoCleanComponent, selector: "po-clean" }, { kind: "component", type: PoFieldContainerBottomComponent, selector: "po-field-container-bottom", inputs: ["p-append-in-body", "p-disabled", "p-error-pattern", "p-error-limit", "p-help", "p-size", "p-helper", "p-show-helper"] }, { kind: "component", type: PoFieldContainerComponent, selector: "po-field-container", inputs: ["p-disabled", "p-id", "p-label", "p-help", "p-helper", "p-show-helper", "p-text-wrap", "p-optional", "p-required", "p-show-required", "p-size"] }, { kind: "component", type: PoLoadingIconComponent, selector: "po-loading-icon", inputs: ["p-neutral-color", "p-size"] }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoHelperComponent, selector: "po-helper" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
40625
40971
|
}
|
|
40626
40972
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoUrlComponent, decorators: [{
|
|
40627
40973
|
type: Component,
|
|
@@ -40636,7 +40982,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
40636
40982
|
useExisting: forwardRef(() => PoUrlComponent),
|
|
40637
40983
|
multi: true
|
|
40638
40984
|
}
|
|
40639
|
-
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean\"\n [class.po-input-icon-right-aa]=\"clean && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
40985
|
+
], standalone: false, template: "@let poHelper = setHelper(label, additionalHelpTooltip);\n<po-field-container\n #fieldContainer\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n [p-helper]=\"label ? poHelper.helperSettings : undefined\"\n [p-show-helper]=\"label ? displayAdditionalHelp : undefined\"\n [p-size]=\"size\"\n [p-text-wrap]=\"labelTextWrap()\"\n>\n <div class=\"po-field-container-content po-field-container-input\" [attr.p-size]=\"size\">\n @if (icon) {\n <div class=\"po-field-icon-container-left\">\n <po-icon\n class=\"po-field-icon {{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n </div>\n }\n\n <input\n #inp\n class=\"po-input\"\n [attr.name]=\"name\"\n [attr.data-focused-element]=\"!disabled\"\n [attr.data-inactive-component]=\"disabled || readonly\"\n [autocomplete]=\"autocomplete\"\n [class.po-input-icon-left]=\"icon\"\n [class.po-input-icon-left-aa]=\"icon && size === 'small'\"\n [class.po-input-icon-right]=\"clean || loading\"\n [class.po-input-icon-right-aa]=\"(clean || loading) && size === 'small'\"\n [class.po-input-aa]=\"size === 'small'\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [type]=\"type\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n (focus)=\"eventOnFocus($event)\"\n (input)=\"eventOnInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n @if (loading) {\n <po-loading-icon [p-size]=\"mapSizeToIcon(size)\"></po-loading-icon>\n }\n\n @if (!loading && clean && !disabled && !readonly) {\n <po-clean\n class=\"{{ disabled ? 'po-icon-input-disabled' : 'po-icon-input' }}\"\n [p-element-ref]=\"inputEl\"\n [p-size]=\"size\"\n (p-change-event)=\"clear($event)\"\n >\n </po-clean>\n }\n </div>\n @if ((!this.label && poHelperComponent()) || (!this.label && poHelper.hideAdditionalHelp)) {\n <po-helper\n #helperEl\n class=\"po-field-helper-button\"\n [p-size]=\"size\"\n [p-helper]=\"poHelper.helperSettings\"\n [p-disabled]=\"disabled\"\n [p-append-in-body]=\"appendBox\"\n >\n </po-helper>\n }\n </div>\n\n @if (!readonly) {\n <po-field-container-bottom\n [p-append-in-body]=\"appendBox\"\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n [p-error-limit]=\"errorLimit\"\n [p-size]=\"size\"\n ></po-field-container-bottom>\n }\n</po-field-container>\n" }]
|
|
40640
40986
|
}], ctorParameters: () => [] });
|
|
40641
40987
|
|
|
40642
40988
|
const uploadRestrictions = ['.apng', '.bmp', '.gif', '.ico', '.jpeg', '.jpg', '.png', '.svg'];
|
|
@@ -44327,11 +44673,11 @@ class PoDynamicFormFieldsComponent extends PoDynamicFormFieldsBaseComponent {
|
|
|
44327
44673
|
}
|
|
44328
44674
|
}
|
|
44329
44675
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoDynamicFormFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
44330
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoDynamicFormFieldsComponent, isStandalone: false, selector: "po-dynamic-form-fields", providers: [PoDynamicFormValidationService], viewQueries: [{ propertyName: "components", predicate: ["component"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (visibleFields && visibleFields.length > 0) {\n <div class=\"po-row\" [class.po-dynamic]=\"hasContainers\">\n <ng-container\n *ngTemplateOutlet=\"\n hasContainers ? poContentContainer : poContent;\n context: { $implicit: hasContainers ? containerFields : visibleFields }\n \"\n ></ng-container>\n </div>\n}\n\n<ng-template #poContent let-fields>\n @for (field of fields; track trackBy($index, field)) {\n @if (field?.divider?.trim()) {\n <po-divider class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n }\n @if (compareTo(field.control, 'datepicker')) {\n <po-datepicker\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async]=\"field.errorAsyncFunction\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-size]=\"field.size || componentsSize\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker>\n }\n @if (compareTo(field.control, 'datepickerrange')) {\n <po-datepicker-range\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker-range>\n }\n @if (compareTo(field.control, 'input')) {\n <po-input\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n }\n @if (compareTo(field.control, 'number')) {\n <po-number\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n }\n @if (compareTo(field.control, 'decimal')) {\n <po-decimal\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n }\n @if (compareTo(field.control, 'select')) {\n <po-select\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n }\n @if (compareTo(field.control, 'radioGroup')) {\n <po-radio-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-radio-group>\n }\n @if (compareTo(field.control, 'switch')) {\n <po-switch\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-limit]=\"field.errorLimit\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n [p-hide-label-status]=\"field.hideLabelStatus\"\n [p-invalid-value]=\"field.invalidValue\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-switch>\n }\n @if (compareTo(field.control, 'checkbox')) {\n <po-checkbox\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox>\n }\n @if (compareTo(field.control, 'combo')) {\n <po-combo\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n [p-remove-initial-filter]=\"field.removeInitialFilter\"\n [p-size]=\"field.size || componentsSize\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-combo>\n }\n @if (compareTo(field.control, 'lookup')) {\n <po-lookup\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n }\n @if (compareTo(field.control, 'checkboxGroup')) {\n <po-checkbox-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox-group>\n }\n @if (compareTo(field.control, 'multiselect')) {\n <po-multiselect\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-multiselect>\n }\n @if (compareTo(field.control, 'textarea')) {\n <po-textarea\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n }\n @if (compareTo(field.control, 'password')) {\n <po-password\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n }\n @if (compareTo(field.control, 'upload')) {\n <po-upload\n #component\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n [p-custom-action]=\"field.customAction\"\n (p-custom-action-click)=\"field.customActionClick($event)\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-show-thumbnail]=\"field.showThumbnail ?? true\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n }\n }\n</ng-template>\n\n<ng-template #poContentContainer let-fields>\n <po-dynamic-container [p-fields]=\"fields\" [p-content]=\"poContent\"></po-dynamic-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: PoDividerComponent, selector: "po-divider" }, { kind: "component", type: PoCheckboxGroupComponent, selector: "po-checkbox-group" }, { kind: "component", type: PoRadioGroupComponent, selector: "po-radio-group", inputs: ["p-label", "p-help"] }, { kind: "component", type: PoDatepickerComponent, selector: "po-datepicker", inputs: ["p-label", "p-help"] }, { kind: "component", type: PoComboComponent, selector: "po-combo" }, { kind: "component", type: PoDecimalComponent, selector: "po-decimal", inputs: ["p-decimals-length", "p-thousand-maxlength", "p-locale", "p-min", "p-max"] }, { kind: "component", type: PoDatepickerRangeComponent, selector: "po-datepicker-range" }, { kind: "component", type: PoInputComponent, selector: "po-input" }, { kind: "component", type: PoLookupComponent, selector: "po-lookup" }, { kind: "component", type: PoMultiselectComponent, selector: "po-multiselect" }, { kind: "component", type: PoNumberComponent, selector: "po-number", inputs: ["p-step", "p-min", "p-max"] }, { kind: "component", type: PoPasswordComponent, selector: "po-password", inputs: ["p-hide-password-peek", "p-no-autocomplete"] }, { kind: "component", type: PoSelectComponent, selector: "po-select", inputs: ["p-readonly", "p-placeholder", "p-options", "p-field-label", "p-field-value", "p-control-value-with-label", "p-size", "p-helper", "p-label-text-wrap"], outputs: ["p-blur", "ngModelChange"] }, { kind: "component", type: PoTextareaComponent, selector: "po-textarea" }, { kind: "component", type: PoUploadComponent, selector: "po-upload" }, { kind: "component", type: PoCheckboxComponent, selector: "po-checkbox" }, { kind: "component", type: PoSwitchComponent, selector: "po-switch", inputs: ["p-value", "p-format-model", "p-hide-label-status", "p-label-position", "p-label-off", "p-label-on", "p-field-error-message", "p-error-limit", "p-invalid-value", "p-size", "p-helper", "p-label-text-wrap"] }, { kind: "component", type: PoDynamicContainerComponent, selector: "po-dynamic-container", inputs: ["p-content", "p-fields"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }] });
|
|
44676
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoDynamicFormFieldsComponent, isStandalone: false, selector: "po-dynamic-form-fields", providers: [PoDynamicFormValidationService], viewQueries: [{ propertyName: "components", predicate: ["component"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (visibleFields && visibleFields.length > 0) {\n <div class=\"po-row\" [class.po-dynamic]=\"hasContainers\">\n <ng-container\n *ngTemplateOutlet=\"\n hasContainers ? poContentContainer : poContent;\n context: { $implicit: hasContainers ? containerFields : visibleFields }\n \"\n ></ng-container>\n </div>\n}\n\n<ng-template #poContent let-fields>\n @for (field of fields; track trackBy($index, field)) {\n @if (field?.divider?.trim()) {\n <po-divider class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n }\n @if (compareTo(field.control, 'datepicker')) {\n <po-datepicker\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async]=\"field.errorAsyncFunction\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-size]=\"field.size || componentsSize\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker>\n }\n @if (compareTo(field.control, 'datepickerrange')) {\n <po-datepicker-range\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker-range>\n }\n @if (compareTo(field.control, 'input')) {\n <po-input\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask-no-length-validation]=\"field.maskNoLengthValidation\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n }\n @if (compareTo(field.control, 'number')) {\n <po-number\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n }\n @if (compareTo(field.control, 'decimal')) {\n <po-decimal\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-mask-no-length-validation]=\"field.maskNoLengthValidation\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n }\n @if (compareTo(field.control, 'select')) {\n <po-select\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n }\n @if (compareTo(field.control, 'radioGroup')) {\n <po-radio-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-radio-group>\n }\n @if (compareTo(field.control, 'switch')) {\n <po-switch\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-limit]=\"field.errorLimit\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n [p-hide-label-status]=\"field.hideLabelStatus\"\n [p-invalid-value]=\"field.invalidValue\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-switch>\n }\n @if (compareTo(field.control, 'checkbox')) {\n <po-checkbox\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox>\n }\n @if (compareTo(field.control, 'combo')) {\n <po-combo\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n [p-remove-initial-filter]=\"field.removeInitialFilter\"\n [p-size]=\"field.size || componentsSize\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-combo>\n }\n @if (compareTo(field.control, 'lookup')) {\n <po-lookup\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n }\n @if (compareTo(field.control, 'checkboxGroup')) {\n <po-checkbox-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox-group>\n }\n @if (compareTo(field.control, 'multiselect')) {\n <po-multiselect\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-multiselect>\n }\n @if (compareTo(field.control, 'textarea')) {\n <po-textarea\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n }\n @if (compareTo(field.control, 'password')) {\n <po-password\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n }\n @if (compareTo(field.control, 'upload')) {\n <po-upload\n #component\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n [p-custom-action]=\"field.customAction\"\n (p-custom-action-click)=\"field.customActionClick($event)\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-show-thumbnail]=\"field.showThumbnail ?? true\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n }\n }\n</ng-template>\n\n<ng-template #poContentContainer let-fields>\n <po-dynamic-container [p-fields]=\"fields\" [p-content]=\"poContent\"></po-dynamic-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: PoDividerComponent, selector: "po-divider" }, { kind: "component", type: PoCheckboxGroupComponent, selector: "po-checkbox-group" }, { kind: "component", type: PoRadioGroupComponent, selector: "po-radio-group", inputs: ["p-label", "p-help"] }, { kind: "component", type: PoDatepickerComponent, selector: "po-datepicker", inputs: ["p-label", "p-help"] }, { kind: "component", type: PoComboComponent, selector: "po-combo" }, { kind: "component", type: PoDecimalComponent, selector: "po-decimal", inputs: ["p-decimals-length", "p-thousand-maxlength", "p-locale", "p-min", "p-max"] }, { kind: "component", type: PoDatepickerRangeComponent, selector: "po-datepicker-range" }, { kind: "component", type: PoInputComponent, selector: "po-input" }, { kind: "component", type: PoLookupComponent, selector: "po-lookup" }, { kind: "component", type: PoMultiselectComponent, selector: "po-multiselect" }, { kind: "component", type: PoNumberComponent, selector: "po-number", inputs: ["p-step", "p-min", "p-max"] }, { kind: "component", type: PoPasswordComponent, selector: "po-password", inputs: ["p-hide-password-peek", "p-no-autocomplete"] }, { kind: "component", type: PoSelectComponent, selector: "po-select", inputs: ["p-readonly", "p-placeholder", "p-options", "p-field-label", "p-field-value", "p-control-value-with-label", "p-size", "p-helper", "p-label-text-wrap"], outputs: ["p-blur", "ngModelChange"] }, { kind: "component", type: PoTextareaComponent, selector: "po-textarea" }, { kind: "component", type: PoUploadComponent, selector: "po-upload" }, { kind: "component", type: PoCheckboxComponent, selector: "po-checkbox" }, { kind: "component", type: PoSwitchComponent, selector: "po-switch", inputs: ["p-value", "p-format-model", "p-hide-label-status", "p-label-position", "p-label-off", "p-label-on", "p-field-error-message", "p-error-limit", "p-invalid-value", "p-size", "p-helper", "p-label-text-wrap"] }, { kind: "component", type: PoDynamicContainerComponent, selector: "po-dynamic-container", inputs: ["p-content", "p-fields"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }] });
|
|
44331
44677
|
}
|
|
44332
44678
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoDynamicFormFieldsComponent, decorators: [{
|
|
44333
44679
|
type: Component,
|
|
44334
|
-
args: [{ selector: 'po-dynamic-form-fields', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], providers: [PoDynamicFormValidationService], standalone: false, template: "@if (visibleFields && visibleFields.length > 0) {\n <div class=\"po-row\" [class.po-dynamic]=\"hasContainers\">\n <ng-container\n *ngTemplateOutlet=\"\n hasContainers ? poContentContainer : poContent;\n context: { $implicit: hasContainers ? containerFields : visibleFields }\n \"\n ></ng-container>\n </div>\n}\n\n<ng-template #poContent let-fields>\n @for (field of fields; track trackBy($index, field)) {\n @if (field?.divider?.trim()) {\n <po-divider class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n }\n @if (compareTo(field.control, 'datepicker')) {\n <po-datepicker\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async]=\"field.errorAsyncFunction\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-size]=\"field.size || componentsSize\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker>\n }\n @if (compareTo(field.control, 'datepickerrange')) {\n <po-datepicker-range\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker-range>\n }\n @if (compareTo(field.control, 'input')) {\n <po-input\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n }\n @if (compareTo(field.control, 'number')) {\n <po-number\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n }\n @if (compareTo(field.control, 'decimal')) {\n <po-decimal\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n }\n @if (compareTo(field.control, 'select')) {\n <po-select\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n }\n @if (compareTo(field.control, 'radioGroup')) {\n <po-radio-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-radio-group>\n }\n @if (compareTo(field.control, 'switch')) {\n <po-switch\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-limit]=\"field.errorLimit\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n [p-hide-label-status]=\"field.hideLabelStatus\"\n [p-invalid-value]=\"field.invalidValue\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-switch>\n }\n @if (compareTo(field.control, 'checkbox')) {\n <po-checkbox\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox>\n }\n @if (compareTo(field.control, 'combo')) {\n <po-combo\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n [p-remove-initial-filter]=\"field.removeInitialFilter\"\n [p-size]=\"field.size || componentsSize\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-combo>\n }\n @if (compareTo(field.control, 'lookup')) {\n <po-lookup\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n }\n @if (compareTo(field.control, 'checkboxGroup')) {\n <po-checkbox-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox-group>\n }\n @if (compareTo(field.control, 'multiselect')) {\n <po-multiselect\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-multiselect>\n }\n @if (compareTo(field.control, 'textarea')) {\n <po-textarea\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n }\n @if (compareTo(field.control, 'password')) {\n <po-password\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n }\n @if (compareTo(field.control, 'upload')) {\n <po-upload\n #component\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n [p-custom-action]=\"field.customAction\"\n (p-custom-action-click)=\"field.customActionClick($event)\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-show-thumbnail]=\"field.showThumbnail ?? true\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n }\n }\n</ng-template>\n\n<ng-template #poContentContainer let-fields>\n <po-dynamic-container [p-fields]=\"fields\" [p-content]=\"poContent\"></po-dynamic-container>\n</ng-template>\n" }]
|
|
44680
|
+
args: [{ selector: 'po-dynamic-form-fields', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], providers: [PoDynamicFormValidationService], standalone: false, template: "@if (visibleFields && visibleFields.length > 0) {\n <div class=\"po-row\" [class.po-dynamic]=\"hasContainers\">\n <ng-container\n *ngTemplateOutlet=\"\n hasContainers ? poContentContainer : poContent;\n context: { $implicit: hasContainers ? containerFields : visibleFields }\n \"\n ></ng-container>\n </div>\n}\n\n<ng-template #poContent let-fields>\n @for (field of fields; track trackBy($index, field)) {\n @if (field?.divider?.trim()) {\n <po-divider class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n }\n @if (compareTo(field.control, 'datepicker')) {\n <po-datepicker\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async]=\"field.errorAsyncFunction\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-size]=\"field.size || componentsSize\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker>\n }\n @if (compareTo(field.control, 'datepickerrange')) {\n <po-datepicker-range\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-datepicker-range>\n }\n @if (compareTo(field.control, 'input')) {\n <po-input\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask-no-length-validation]=\"field.maskNoLengthValidation\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n }\n @if (compareTo(field.control, 'number')) {\n <po-number\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n }\n @if (compareTo(field.control, 'decimal')) {\n <po-decimal\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-mask-no-length-validation]=\"field.maskNoLengthValidation\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n }\n @if (compareTo(field.control, 'select')) {\n <po-select\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n }\n @if (compareTo(field.control, 'radioGroup')) {\n <po-radio-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-radio-group>\n }\n @if (compareTo(field.control, 'switch')) {\n <po-switch\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-limit]=\"field.errorLimit\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n [p-hide-label-status]=\"field.hideLabelStatus\"\n [p-invalid-value]=\"field.invalidValue\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-switch>\n }\n @if (compareTo(field.control, 'checkbox')) {\n <po-checkbox\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox>\n }\n @if (compareTo(field.control, 'combo')) {\n <po-combo\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n [p-remove-initial-filter]=\"field.removeInitialFilter\"\n [p-size]=\"field.size || componentsSize\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-combo>\n }\n @if (compareTo(field.control, 'lookup')) {\n <po-lookup\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n }\n @if (compareTo(field.control, 'checkboxGroup')) {\n <po-checkbox-group\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n >\n </po-checkbox-group>\n }\n @if (compareTo(field.control, 'multiselect')) {\n <po-multiselect\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-listbox-control-position]=\"field.listboxControlPosition\"\n >\n </po-multiselect>\n }\n @if (compareTo(field.control, 'textarea')) {\n <po-textarea\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-field-error-message]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n }\n @if (compareTo(field.control, 'password')) {\n <po-password\n #component\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-error-limit]=\"field.errorLimit\"\n [p-error-async-properties]=\"field.errorAsyncProperties\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-required-field-error-message]=\"field.requiredFieldErrorMessage\"\n [p-show-required]=\"field.showRequired\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n }\n @if (compareTo(field.control, 'upload')) {\n <po-upload\n #component\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [additionalHelpEventTrigger]=\"field.additionalHelp ? 'event' : 'noEvent'\"\n [p-additional-help-tooltip]=\"field.additionalHelpTooltip\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-helper]=\"field.helper\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n [p-custom-action]=\"field.customAction\"\n (p-custom-action-click)=\"field.customActionClick($event)\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-show-thumbnail]=\"field.showThumbnail ?? true\"\n [p-size]=\"field.size || componentsSize\"\n (p-additional-help)=\"field.additionalHelp?.($event)\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n (p-keydown)=\"field.keydown?.($event)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n }\n }\n</ng-template>\n\n<ng-template #poContentContainer let-fields>\n <po-dynamic-container [p-fields]=\"fields\" [p-content]=\"poContent\"></po-dynamic-container>\n</ng-template>\n" }]
|
|
44335
44681
|
}], ctorParameters: () => [], propDecorators: { components: [{
|
|
44336
44682
|
type: ViewChildren,
|
|
44337
44683
|
args: ['component']
|