intelica-library-components 1.1.13 → 1.1.15

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.
@@ -1,34 +1,39 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Injectable, signal, Pipe, Component, HostListener, Directive, EventEmitter, Output, Input, forwardRef, TemplateRef, ContentChild, ContentChildren, ViewChild, PLATFORM_ID, Inject, output, Optional, Host } from '@angular/core';
2
+ import { inject, Injectable, signal, Pipe, Component, TemplateRef, ContentChild, Input, Directive, EventEmitter, ContentChildren, Output, HostListener, forwardRef, ViewChild, PLATFORM_ID, Inject, output, Optional, Host } from '@angular/core';
3
3
  import { getCookie, Cookies, setCookie } from 'typescript-cookie';
4
4
  import { HttpClient, HttpHeaders } from '@angular/common/http';
5
5
  import { BehaviorSubject, catchError, throwError, from, switchMap, Subject, Subscription, of, delay, tap, map } from 'rxjs';
6
6
  import Swal from 'sweetalert2';
7
7
  import * as i1 from '@angular/common';
8
- import { CommonModule, DatePipe, isPlatformBrowser, NgClass } from '@angular/common';
8
+ import { DatePipe, CommonModule, NgIf, isPlatformBrowser, NgClass } from '@angular/common';
9
9
  import * as i1$1 from '@angular/forms';
10
10
  import { FormsModule, FormBuilder, ReactiveFormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
11
11
  import { BadgeModule } from 'primeng/badge';
12
12
  import * as i5 from 'primeng/checkbox';
13
13
  import { CheckboxModule } from 'primeng/checkbox';
14
- import * as i2$1 from 'primeng/table';
14
+ import * as i2 from 'primeng/iconfield';
15
+ import { IconFieldModule, IconField } from 'primeng/iconfield';
16
+ import { InputIcon } from 'primeng/inputicon';
17
+ import { InputNumber } from 'primeng/inputnumber';
18
+ import * as i4$2 from 'primeng/inputtext';
19
+ import { InputText, InputTextModule } from 'primeng/inputtext';
20
+ import { Paginator } from 'primeng/paginator';
21
+ import * as i6 from 'primeng/select';
22
+ import { Select, SelectModule } from 'primeng/select';
23
+ import * as i3 from 'primeng/table';
15
24
  import { TableModule } from 'primeng/table';
16
- import * as i4 from 'primeng/tooltip';
25
+ import * as i4$1 from 'primeng/tooltip';
17
26
  import { TooltipModule } from 'primeng/tooltip';
18
27
  import moment from 'moment';
19
28
  import * as _ from 'lodash';
20
- import * as i2 from 'primeng/button';
29
+ import * as i4 from 'primeng/api';
30
+ import { ConfirmationService } from 'primeng/api';
31
+ import * as i2$1 from 'primeng/button';
21
32
  import { ButtonModule, Button } from 'primeng/button';
22
- import * as i3 from 'primeng/radiobutton';
33
+ import * as i3$1 from 'primeng/radiobutton';
23
34
  import { RadioButtonModule } from 'primeng/radiobutton';
24
35
  import * as i1$2 from 'primeng/popover';
25
36
  import { Popover, PopoverModule } from 'primeng/popover';
26
- import * as i4$1 from 'primeng/inputtext';
27
- import { InputText, InputTextModule } from 'primeng/inputtext';
28
- import * as i6 from 'primeng/select';
29
- import { Select, SelectModule } from 'primeng/select';
30
- import * as i3$1 from 'primeng/api';
31
- import { ConfirmationService } from 'primeng/api';
32
37
  import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
33
38
  import * as i3$2 from 'primeng/ripple';
34
39
  import { RippleModule } from 'primeng/ripple';
@@ -48,6 +53,7 @@ import * as XLSX from 'xlsx';
48
53
  import { Workbook } from 'exceljs';
49
54
  import { saveAs } from 'file-saver';
50
55
  import JSEncrypt from 'jsencrypt';
56
+ import { Guid } from 'guid-typescript';
51
57
  import Aura from '@primeng/themes/aura';
52
58
  import { definePreset } from '@primeng/themes';
53
59
 
@@ -634,6 +640,98 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
634
640
  args: [{ selector: "app-spinner", imports: [], template: "@if (isLoading()){\r\n<div id=\"overlay\">\r\n\t<div class=\"loading\">\r\n\t\t<div class=\"content-center\">\r\n\t\t\t<img alt=\"Intelica\" [src]=\"LoadingLogo\" />\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n}\r\n", styles: ["#overlay{position:fixed;display:block;width:100%;height:100%;inset:0;background-color:#00000080;z-index:9999;cursor:pointer}.loading{height:100vh;width:100%;position:fixed;top:0;left:0;text-align:center;background-color:#d9d9d8f2}.loading img{width:150px}.content-center{left:50%;top:50%;position:absolute;transform:translate(-50%,-50%);width:90%}\n"] }]
635
641
  }] });
636
642
 
643
+ class FormatCellPipe {
644
+ datePipe = inject(DatePipe);
645
+ transform(value, type) {
646
+ if (value == null)
647
+ return "";
648
+ switch (type) {
649
+ case "date":
650
+ return this.formatDateValue(value, "day");
651
+ case "date2":
652
+ return this.formatDateValue(value, "month");
653
+ case "date3":
654
+ return this.formatDateValue(value, "year");
655
+ case "time":
656
+ return this.formatTime(value);
657
+ case "decimal2":
658
+ return this.formatDecimal(value, 2);
659
+ case "decimal4":
660
+ return this.formatDecimal(value, 4);
661
+ case "tarifa":
662
+ return this.formatTarifa(value);
663
+ default:
664
+ return value;
665
+ }
666
+ }
667
+ getDateFormat(mode) {
668
+ switch (mode) {
669
+ case "month":
670
+ return "M/yy";
671
+ case "year":
672
+ return "yy";
673
+ default:
674
+ return "d/M/yy";
675
+ }
676
+ }
677
+ formatDateValue(value, mode) {
678
+ const pattern = this.getDateFormat(mode);
679
+ if (Array.isArray(value) && value.length === 2) {
680
+ return `${this.datePipe.transform(value[0], pattern)} - ${this.datePipe.transform(value[1], pattern)}`;
681
+ }
682
+ if (value) {
683
+ return this.datePipe.transform(value, pattern) || "";
684
+ }
685
+ return "";
686
+ }
687
+ formatTime(value) {
688
+ const date = new Date(value);
689
+ if (isNaN(date.getTime()))
690
+ return "";
691
+ let hours = date.getHours();
692
+ const minutes = date.getMinutes();
693
+ const seconds = date.getSeconds();
694
+ const ampm = hours >= 12 ? "PM" : "AM";
695
+ hours = hours % 12;
696
+ hours = hours ? hours : 12;
697
+ const hh = hours.toString().padStart(2, "0");
698
+ const mm = minutes.toString().padStart(2, "0");
699
+ const ss = seconds.toString().padStart(2, "0");
700
+ return `${hh}:${mm}:${ss} ${ampm}`;
701
+ }
702
+ formatDecimal(value, digits) {
703
+ const num = parseFloat(value);
704
+ if (isNaN(num))
705
+ return "";
706
+ return num.toFixed(digits);
707
+ }
708
+ formatTarifa(value) {
709
+ const num = parseFloat(value);
710
+ if (isNaN(num))
711
+ return "";
712
+ const absNum = Math.abs(num);
713
+ if (absNum >= 0.000001 && absNum <= 0.1) {
714
+ // Mostrar hasta 6 decimales
715
+ return absNum.toFixed(6);
716
+ }
717
+ else if (absNum < 0.000001) {
718
+ return num.toString();
719
+ }
720
+ else {
721
+ return num.toString();
722
+ }
723
+ }
724
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FormatCellPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
725
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.1", ngImport: i0, type: FormatCellPipe, isStandalone: true, name: "formatCell" });
726
+ }
727
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FormatCellPipe, decorators: [{
728
+ type: Pipe,
729
+ args: [{
730
+ name: "formatCell",
731
+ standalone: true,
732
+ }]
733
+ }] });
734
+
637
735
  class FormatDateConstants {
638
736
  static DMYY = "d/M/yy";
639
737
  static MMYY = "MMMM yyyy";
@@ -1389,375 +1487,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
1389
1487
  }]
1390
1488
  }], ctorParameters: () => [{ type: i1.Location }] });
1391
1489
 
1392
- class PositiveNumberDirective {
1393
- el;
1394
- constructor(el) {
1395
- this.el = el;
1396
- }
1397
- onInputChange(event) {
1398
- const initalValue = this.el.nativeElement.value;
1399
- this.el.nativeElement.value = initalValue.replace(/[^0-9]*/g, "");
1400
- if (initalValue !== this.el.nativeElement.value) {
1401
- event.stopPropagation();
1402
- }
1403
- }
1404
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PositiveNumberDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1405
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.1", type: PositiveNumberDirective, isStandalone: true, selector: "[positiveNumber]", host: { listeners: { "input": "onInputChange($event)" } }, ngImport: i0 });
1490
+ class ColumnComponent {
1491
+ field;
1492
+ header;
1493
+ sortable = false;
1494
+ width;
1495
+ className;
1496
+ headerTooltip = "";
1497
+ headerTooltipPosition = "top";
1498
+ tooltip = "";
1499
+ tooltipPosition = "top";
1500
+ showIndex = false;
1501
+ showHeader = true;
1502
+ minWidth;
1503
+ isChecboxColumn = false;
1504
+ //@Input() isGrouped: boolean = false;
1505
+ //@Input() isGroup: boolean = false;
1506
+ formatType = "string";
1507
+ templateRef;
1508
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1509
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.1", type: ColumnComponent, isStandalone: true, selector: "column", inputs: { field: "field", header: "header", sortable: "sortable", width: "width", className: "className", headerTooltip: "headerTooltip", headerTooltipPosition: "headerTooltipPosition", tooltip: "tooltip", tooltipPosition: "tooltipPosition", showIndex: "showIndex", showHeader: "showHeader", minWidth: "minWidth", isChecboxColumn: "isChecboxColumn", formatType: "formatType" }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 });
1406
1510
  }
1407
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PositiveNumberDirective, decorators: [{
1511
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ColumnComponent, decorators: [{
1408
1512
  type: Directive,
1409
- args: [{
1410
- selector: "[positiveNumber]",
1411
- }]
1412
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { onInputChange: [{
1413
- type: HostListener,
1414
- args: ["input", ["$event"]]
1415
- }] } });
1416
-
1417
- class PaginatorComponent {
1418
- GlobalTermService = inject(GlobalTermService);
1419
- /**
1420
- * Número total de elementos que se están paginando.
1421
- * @type {number}
1422
- */
1423
- TotalItems = 0;
1424
- /**
1425
- * Página actual.
1426
- * @type {number}
1427
- */
1428
- CurrentPage = 1;
1429
- /**
1430
- * Número de elementos por página.
1431
- * @type {number}
1432
- * @default 10
1433
- */
1434
- ItemsPerPage = 10;
1435
- /**
1436
- * Evento emitido cuando cambia la página.
1437
- * @type {EventEmitter<any>}
1438
- */
1439
- PageChange = new EventEmitter();
1440
- /**
1441
- * Número total de páginas calculado internamente.
1442
- * @type {number}
1443
- */
1444
- TotalPages = 1;
1445
- ngOnChanges(changes) {
1446
- this.TotalPageCalculator();
1447
- }
1448
- TotalPageCalculator() {
1449
- this.TotalPages = Math.ceil(this.TotalItems / this.ItemsPerPage);
1450
- }
1451
- GoToFirstPage() {
1452
- this.CurrentPage = 1;
1453
- this.EmitPageChange();
1454
- }
1455
- GoToPreviousPage() {
1456
- const pageNumber = Number(this.CurrentPage);
1457
- this.CurrentPage = isNaN(pageNumber) || pageNumber === 0 ? 1 : pageNumber;
1458
- if (this.CurrentPage > 1)
1459
- this.CurrentPage -= 1;
1460
- this.EmitPageChange();
1461
- }
1462
- GoToNextPage() {
1463
- const pageNumber = Number(this.CurrentPage);
1464
- this.CurrentPage = isNaN(pageNumber) ? 0 : pageNumber;
1465
- if (this.CurrentPage < this.TotalPages)
1466
- this.CurrentPage += 1;
1467
- this.EmitPageChange();
1468
- }
1469
- GoToLastPage() {
1470
- this.CurrentPage = this.TotalPages;
1471
- this.EmitPageChange();
1472
- }
1473
- EmitPageChange() {
1474
- this.PageChange.emit(this.CurrentPage);
1475
- }
1476
- onKeyUp(event) {
1477
- const eventValue = event.target.value;
1478
- if (eventValue === "" || isNaN(parseInt(eventValue)) || eventValue === "0" || eventValue.indexOf("-") >= 0) {
1479
- this.CurrentPage = 1;
1480
- this.EmitPageChange();
1481
- return;
1482
- }
1483
- this.CurrentPage = parseInt(eventValue);
1484
- if (this.CurrentPage > this.TotalPages) {
1485
- this.CurrentPage = this.TotalPages;
1486
- }
1487
- this.EmitPageChange();
1488
- }
1489
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1490
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: PaginatorComponent, isStandalone: true, selector: "intelica-paginator", inputs: { TotalItems: "TotalItems", CurrentPage: "CurrentPage", ItemsPerPage: "ItemsPerPage" }, outputs: { PageChange: "PageChange" }, usesOnChanges: true, ngImport: i0, template: "<div \r\n\tclass=\"prPaginator\" \r\n\t[ngClass]=\"{\r\n\t\t'prPaginator--leftdis': CurrentPage === 1 || TotalItems === 0,\r\n\t\t'prPaginator--rightdis': CurrentPage === TotalPages || TotalItems === 0\r\n\t}\">\r\n\t<div class=\"prPaginator__controls\">\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--first\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToFirstPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--previous\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToPreviousPage()\"></button>\r\n\t\t<span class=\"prPaginator__label--left\">{{ \"Previous\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<input pInputText type=\"text\" [disabled]=\"TotalItems === 0\" (keydown.enter)=\"$event.preventDefault()\" [(ngModel)]=\"CurrentPage\" positiveNumber class=\"prPaginator__input\" (keyup.enter)=\"onKeyUp($event)\" />\r\n\t\t<span class=\"prPaginator__total\">{{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalPages }}</span>\r\n\t\t<span class=\"prPaginator__label--right\">{{ \"Next\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--next\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToNextPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--last\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToLastPage()\"></button>\r\n\t</div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "fluid", "label", "icon", "buttonProps"] }, { kind: "directive", type: PositiveNumberDirective, selector: "[positiveNumber]" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: TermPipe, name: "term" }] });
1491
- }
1492
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PaginatorComponent, decorators: [{
1493
- type: Component,
1494
- args: [{ selector: "intelica-paginator", imports: [FormsModule, ButtonModule, PositiveNumberDirective, CommonModule, TermPipe], template: "<div \r\n\tclass=\"prPaginator\" \r\n\t[ngClass]=\"{\r\n\t\t'prPaginator--leftdis': CurrentPage === 1 || TotalItems === 0,\r\n\t\t'prPaginator--rightdis': CurrentPage === TotalPages || TotalItems === 0\r\n\t}\">\r\n\t<div class=\"prPaginator__controls\">\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--first\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToFirstPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--previous\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToPreviousPage()\"></button>\r\n\t\t<span class=\"prPaginator__label--left\">{{ \"Previous\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<input pInputText type=\"text\" [disabled]=\"TotalItems === 0\" (keydown.enter)=\"$event.preventDefault()\" [(ngModel)]=\"CurrentPage\" positiveNumber class=\"prPaginator__input\" (keyup.enter)=\"onKeyUp($event)\" />\r\n\t\t<span class=\"prPaginator__total\">{{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalPages }}</span>\r\n\t\t<span class=\"prPaginator__label--right\">{{ \"Next\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--next\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToNextPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--last\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToLastPage()\"></button>\r\n\t</div>\r\n</div>\r\n" }]
1495
- }], propDecorators: { TotalItems: [{
1513
+ args: [{ selector: "column" }]
1514
+ }], propDecorators: { field: [{
1496
1515
  type: Input
1497
- }], CurrentPage: [{
1516
+ }], header: [{
1498
1517
  type: Input
1499
- }], ItemsPerPage: [{
1518
+ }], sortable: [{
1500
1519
  type: Input
1501
- }], PageChange: [{
1502
- type: Output
1503
- }] } });
1504
-
1505
- var SearchInputEnum;
1506
- (function (SearchInputEnum) {
1507
- SearchInputEnum["OperatorId"] = "operatorId";
1508
- SearchInputEnum["FieldId"] = "fieldId";
1509
- SearchInputEnum["SearchText"] = "searchText";
1510
- })(SearchInputEnum || (SearchInputEnum = {}));
1511
-
1512
- class SearchComponent {
1513
- GlobalTermService = inject(GlobalTermService);
1514
- /**
1515
- * Indica el componente del que proviene.
1516
- * @type {string}
1517
- */
1518
- ComponentId = "";
1519
- ShowTooltip = false;
1520
- /**
1521
- * Opciones para campos de búsqueda.
1522
- * @type {{ id: number; value: string }[]}
1523
- */
1524
- SearchFieldOptions;
1525
- /**
1526
- * Indica si realizar la búsqueda al soltar una tecla.
1527
- * @type {boolean}
1528
- */
1529
- SearchOnKeyup;
1530
- /**
1531
- * @deprecated No debe ser utilizado. Es sólo para uso interno y no para módulos.
1532
- * @type {boolean}
1533
- * @default false
1534
- */
1535
- SimpleSearchInput = false;
1536
- /**
1537
- * Placeholder para el componente de búsqueda.
1538
- * @type {string}
1539
- */
1540
- Placeholder = "";
1541
- /**
1542
- * Evento emitido al realizar una búsqueda.
1543
- * @type {EventEmitter<{ operatorId: number; operatorText: string, fieldId: number, fieldText: string, searchText: string }>}
1544
- */
1545
- OnSearchEvent = new EventEmitter();
1546
- FormBuilder = inject(FormBuilder);
1547
- // Option!: string;
1548
- // Placeholder!: string;
1549
- /**
1550
- * Indica si el dropdown está abierto
1551
- * @type {boolean}
1552
- * @default false
1553
- */
1554
- IsDropdownOpen = false;
1555
- /**
1556
- * Formulario para manejar los parámetros de búsqueda
1557
- * @type {FormGroup}
1558
- */
1559
- SearchForm;
1560
- /**
1561
- * Suscripción a los valores del formulario.
1562
- * @type {Subscription}
1563
- */
1564
- FormValuesSubscription;
1565
- /**
1566
- * Opciones para operadores de búsqueda.
1567
- * @type {{ id: number; value: string }[]}
1568
- */
1569
- SearchOperatorOptions;
1570
- /**
1571
- * Función llamada cuando cambia el valor del campo de búsqueda.
1572
- * @type {() => void}
1573
- */
1574
- OnChange = () => { };
1575
- /**
1576
- * Función llamada cuando el componente de búsqueda es tocado.
1577
- * @type {() => void}
1578
- */
1579
- OnTouched = () => { };
1580
- constructor() { }
1581
- ngOnInit() {
1582
- this.SearchForm = this.FormBuilder.group({
1583
- operatorId: 0,
1584
- fieldId: 0,
1585
- searchText: "",
1586
- });
1587
- this.FormValuesSubscription = this.SearchForm.valueChanges.subscribe(value => {
1588
- this.OnChange(value);
1589
- });
1590
- //loadTerms
1591
- if (this.Placeholder === "")
1592
- this.Placeholder = "SearchPlaceholder";
1593
- this.SearchOperatorOptions ??= this.GetSearchOperatorOptions();
1594
- this.SearchFieldOptions ??= this.GetSearchFieldOptions();
1595
- this.InitializeForm();
1596
- }
1597
- ngOnDestroy() {
1598
- this.FormValuesSubscription.unsubscribe();
1599
- }
1600
- InitializeForm() {
1601
- this.SearchForm.setValue({
1602
- operatorId: this.SearchOperatorOptions[0].id,
1603
- fieldId: this.SearchFieldOptions.length > 0 ? this.SearchFieldOptions[0].id : 0,
1604
- searchText: "",
1605
- });
1606
- this.OnSearch();
1607
- }
1608
- DropDownChange(isOpen) {
1609
- this.IsDropdownOpen = isOpen;
1610
- }
1611
- OnSearchEnter() {
1612
- if (!this.SearchOnKeyup)
1613
- this.OnSearch();
1614
- }
1615
- OnSearchKeyup() {
1616
- if (this.SearchOnKeyup)
1617
- this.OnSearch();
1618
- }
1619
- OnSearch() {
1620
- const value = this.SearchForm.value;
1621
- value.operatorText = this.SearchOperatorOptions.find(o => o.id === value.operatorId)?.value || "";
1622
- value.fieldText = this.SearchFieldOptions.find(f => f.id === value.fieldId)?.value || "";
1623
- this.OnChange(value);
1624
- this.OnTouched();
1625
- this.OnSearchEvent.emit(value);
1626
- }
1627
- ClearSearchText(emitEvent = true) {
1628
- this.SearchForm.get(SearchInputEnum.SearchText)?.setValue("");
1629
- if (emitEvent) {
1630
- this.OnSearch();
1631
- }
1632
- }
1633
- get HasSearchText() {
1634
- const searchText = this.SearchForm.get(SearchInputEnum.SearchText)?.value;
1635
- return searchText && searchText.length > 0;
1636
- }
1637
- GetSelectedOperatorValue() {
1638
- const selectedId = this.SearchForm.get(SearchInputEnum.OperatorId)?.value;
1639
- const selectedItem = this.SearchOperatorOptions?.find(item => item.id === selectedId);
1640
- return selectedItem ? selectedItem.value : "";
1641
- }
1642
- GetSelectedFieldValue() {
1643
- const selectedId = this.SearchForm.get(SearchInputEnum.FieldId)?.value;
1644
- const selectedItem = this.SearchFieldOptions?.find(item => item.id === selectedId);
1645
- return selectedItem ? selectedItem.value : "";
1646
- }
1647
- GetSelectedValues() {
1648
- return `${this.GetSelectedOperatorValue()}, ${this.GetSelectedFieldValue()}`;
1649
- }
1650
- SetSearchTextValue(text) {
1651
- this.SearchForm.get(SearchInputEnum.SearchText)?.setValue(text);
1652
- }
1653
- SetOperatorValue(value) {
1654
- this.SearchForm.get(SearchInputEnum.OperatorId)?.setValue(value ?? 0);
1655
- }
1656
- SetFieldValue(value) {
1657
- this.SearchForm.get(SearchInputEnum.FieldId)?.setValue(value ?? 0);
1658
- }
1659
- GetSearchOperatorOptions() {
1660
- return [
1661
- { id: 0, value: "Contains" },
1662
- { id: 1, value: "Exact" },
1663
- { id: 2, value: "Begin" },
1664
- { id: 3, value: "Ends" },
1665
- ];
1666
- }
1667
- GetSearchFieldOptions() {
1668
- return [
1669
- { id: 0, value: "code" },
1670
- { id: 1, value: "name" },
1671
- ];
1672
- }
1673
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1674
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: SearchComponent, isStandalone: true, selector: "intelica-search", inputs: { ComponentId: "ComponentId", ShowTooltip: "ShowTooltip", SearchFieldOptions: "SearchFieldOptions", SearchOnKeyup: "SearchOnKeyup", SimpleSearchInput: "SimpleSearchInput", Placeholder: "Placeholder" }, outputs: { OnSearchEvent: "OnSearch" }, providers: [
1675
- {
1676
- provide: NG_VALUE_ACCESSOR,
1677
- useExisting: forwardRef(() => SearchComponent),
1678
- },
1679
- ], ngImport: i0, template: "<form [formGroup]=\"SearchForm\">\r\n\t<div class=\"prSearchBar\">\r\n\t\t<div class=\"prSearchBar__dropdown\" (click)=\"op.toggle($event)\" *ngIf=\"!SimpleSearchInput\">\r\n\t\t\t<div\r\n\t\t\t\tclass=\"prSearchBar__dropdown--label\"\r\n\t\t\t\t[pTooltip]=\"ShowTooltip ? (GetSelectedOperatorValue() | term : GlobalTermService.languageCode) + ', ' + (GetSelectedFieldValue() | term : GlobalTermService.languageCode) : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t>\r\n\t\t\t\t{{ GetSelectedFieldValue() | term : GlobalTermService.languageCode }}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"prSearchBar__dropdown--icon\">\r\n\t\t\t\t<i [ngClass]=\"IsDropdownOpen ? 'icon-arrow-up' : 'icon-arrow-down'\"></i>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<p-popover #op (onShow)=\"DropDownChange(true)\" (onHide)=\"DropDownChange(false)\" class=\"prSearchBar__popover\">\r\n\t\t\t<div class=\"searchDropDown\">\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectoperator\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t<div class=\"searchDropDown__listOption\">\r\n\t\t\t\t\t\t@for ( option of SearchOperatorOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"operatorId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t\t<label [for]=\"ComponentId + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<hr />\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectfield\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t@for ( option of SearchFieldOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"fieldId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t<label [for]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</p-popover>\r\n\t\t<div class=\"prSearchBar__content\">\r\n\t\t\t<div class=\"prSearchBar__btn\">\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"ClearSearchText()\" *ngIf=\"HasSearchText\">\r\n\t\t\t\t\t<i class=\"icon-times\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"OnSearch()\">\r\n\t\t\t\t\t<i class=\"icon-search\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t</div>\r\n\t\t\t<input\r\n\t\t\t\tpInputText\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tclass=\"prSearchBar__input\"\r\n\t\t\t\tformControlName=\"searchText\"\r\n\t\t\t\t[placeholder]=\"Placeholder | term : GlobalTermService.languageCode\"\r\n\t\t\t\t(keyup.enter)=\"OnSearchEnter()\"\r\n\t\t\t\t(keyup)=\"OnSearchKeyup()\"\r\n\t\t\t/>\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i3.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "styleClass", "autofocus", "binary", "variant", "size"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: TermPipe, name: "term" }] });
1680
- }
1681
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SearchComponent, decorators: [{
1682
- type: Component,
1683
- args: [{ selector: "intelica-search", imports: [FormsModule, ReactiveFormsModule, RadioButtonModule, Popover, InputText, CommonModule, TooltipModule, TermPipe], providers: [
1684
- {
1685
- provide: NG_VALUE_ACCESSOR,
1686
- useExisting: forwardRef(() => SearchComponent),
1687
- },
1688
- ], template: "<form [formGroup]=\"SearchForm\">\r\n\t<div class=\"prSearchBar\">\r\n\t\t<div class=\"prSearchBar__dropdown\" (click)=\"op.toggle($event)\" *ngIf=\"!SimpleSearchInput\">\r\n\t\t\t<div\r\n\t\t\t\tclass=\"prSearchBar__dropdown--label\"\r\n\t\t\t\t[pTooltip]=\"ShowTooltip ? (GetSelectedOperatorValue() | term : GlobalTermService.languageCode) + ', ' + (GetSelectedFieldValue() | term : GlobalTermService.languageCode) : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t>\r\n\t\t\t\t{{ GetSelectedFieldValue() | term : GlobalTermService.languageCode }}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"prSearchBar__dropdown--icon\">\r\n\t\t\t\t<i [ngClass]=\"IsDropdownOpen ? 'icon-arrow-up' : 'icon-arrow-down'\"></i>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<p-popover #op (onShow)=\"DropDownChange(true)\" (onHide)=\"DropDownChange(false)\" class=\"prSearchBar__popover\">\r\n\t\t\t<div class=\"searchDropDown\">\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectoperator\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t<div class=\"searchDropDown__listOption\">\r\n\t\t\t\t\t\t@for ( option of SearchOperatorOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"operatorId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t\t<label [for]=\"ComponentId + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<hr />\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectfield\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t@for ( option of SearchFieldOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"fieldId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t<label [for]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</p-popover>\r\n\t\t<div class=\"prSearchBar__content\">\r\n\t\t\t<div class=\"prSearchBar__btn\">\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"ClearSearchText()\" *ngIf=\"HasSearchText\">\r\n\t\t\t\t\t<i class=\"icon-times\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"OnSearch()\">\r\n\t\t\t\t\t<i class=\"icon-search\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t</div>\r\n\t\t\t<input\r\n\t\t\t\tpInputText\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tclass=\"prSearchBar__input\"\r\n\t\t\t\tformControlName=\"searchText\"\r\n\t\t\t\t[placeholder]=\"Placeholder | term : GlobalTermService.languageCode\"\r\n\t\t\t\t(keyup.enter)=\"OnSearchEnter()\"\r\n\t\t\t\t(keyup)=\"OnSearchKeyup()\"\r\n\t\t\t/>\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n" }]
1689
- }], ctorParameters: () => [], propDecorators: { ComponentId: [{
1690
- type: Input
1691
- }], ShowTooltip: [{
1692
- type: Input
1693
- }], SearchFieldOptions: [{
1694
- type: Input
1695
- }], SearchOnKeyup: [{
1696
- type: Input
1697
- }], SimpleSearchInput: [{
1698
- type: Input
1699
- }], Placeholder: [{
1700
- type: Input
1701
- }], OnSearchEvent: [{
1702
- type: Output,
1703
- args: ["OnSearch"]
1704
- }] } });
1705
-
1706
- class ColumnComponent {
1707
- field;
1708
- header;
1709
- sortable = false;
1710
- width;
1711
- className;
1712
- headerTooltip = "";
1713
- headerTooltipPosition = "top";
1714
- tooltip = "";
1715
- tooltipPosition = "top";
1716
- showIndex = false;
1717
- showHeader = true;
1718
- minWidth;
1719
- isChecboxColumn = false;
1720
- //@Input() isGrouped: boolean = false;
1721
- //@Input() isGroup: boolean = false;
1722
- formatType = "string";
1723
- templateRef;
1724
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1725
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.1", type: ColumnComponent, isStandalone: true, selector: "column", inputs: { field: "field", header: "header", sortable: "sortable", width: "width", className: "className", headerTooltip: "headerTooltip", headerTooltipPosition: "headerTooltipPosition", tooltip: "tooltip", tooltipPosition: "tooltipPosition", showIndex: "showIndex", showHeader: "showHeader", minWidth: "minWidth", isChecboxColumn: "isChecboxColumn", formatType: "formatType" }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 });
1726
- }
1727
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ColumnComponent, decorators: [{
1728
- type: Directive,
1729
- args: [{ selector: "column" }]
1730
- }], propDecorators: { field: [{
1731
- type: Input
1732
- }], header: [{
1733
- type: Input
1734
- }], sortable: [{
1735
- type: Input
1736
- }], width: [{
1737
- type: Input
1738
- }], className: [{
1739
- type: Input
1740
- }], headerTooltip: [{
1741
- type: Input
1742
- }], headerTooltipPosition: [{
1743
- type: Input
1744
- }], tooltip: [{
1745
- type: Input
1746
- }], tooltipPosition: [{
1747
- type: Input
1748
- }], showIndex: [{
1749
- type: Input
1750
- }], showHeader: [{
1751
- type: Input
1752
- }], minWidth: [{
1753
- type: Input
1754
- }], isChecboxColumn: [{
1755
- type: Input
1756
- }], formatType: [{
1757
- type: Input
1758
- }], templateRef: [{
1759
- type: ContentChild,
1760
- args: [TemplateRef]
1520
+ }], width: [{
1521
+ type: Input
1522
+ }], className: [{
1523
+ type: Input
1524
+ }], headerTooltip: [{
1525
+ type: Input
1526
+ }], headerTooltipPosition: [{
1527
+ type: Input
1528
+ }], tooltip: [{
1529
+ type: Input
1530
+ }], tooltipPosition: [{
1531
+ type: Input
1532
+ }], showIndex: [{
1533
+ type: Input
1534
+ }], showHeader: [{
1535
+ type: Input
1536
+ }], minWidth: [{
1537
+ type: Input
1538
+ }], isChecboxColumn: [{
1539
+ type: Input
1540
+ }], formatType: [{
1541
+ type: Input
1542
+ }], templateRef: [{
1543
+ type: ContentChild,
1544
+ args: [TemplateRef]
1761
1545
  }] } });
1762
1546
  class ColumnGroupComponent {
1763
1547
  field;
@@ -1845,98 +1629,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
1845
1629
  type: Input
1846
1630
  }] } });
1847
1631
 
1848
- class FormatCellPipe {
1849
- datePipe = inject(DatePipe);
1850
- transform(value, type) {
1851
- if (value == null)
1852
- return "";
1853
- switch (type) {
1854
- case "date":
1855
- return this.formatDateValue(value, "day");
1856
- case "date2":
1857
- return this.formatDateValue(value, "month");
1858
- case "date3":
1859
- return this.formatDateValue(value, "year");
1860
- case "time":
1861
- return this.formatTime(value);
1862
- case "decimal2":
1863
- return this.formatDecimal(value, 2);
1864
- case "decimal4":
1865
- return this.formatDecimal(value, 4);
1866
- case "tarifa":
1867
- return this.formatTarifa(value);
1868
- default:
1869
- return value;
1870
- }
1871
- }
1872
- getDateFormat(mode) {
1873
- switch (mode) {
1874
- case "month":
1875
- return "M/yy";
1876
- case "year":
1877
- return "yy";
1878
- default:
1879
- return "d/M/yy";
1880
- }
1881
- }
1882
- formatDateValue(value, mode) {
1883
- const pattern = this.getDateFormat(mode);
1884
- if (Array.isArray(value) && value.length === 2) {
1885
- return `${this.datePipe.transform(value[0], pattern)} - ${this.datePipe.transform(value[1], pattern)}`;
1886
- }
1887
- if (value) {
1888
- return this.datePipe.transform(value, pattern) || "";
1889
- }
1890
- return "";
1891
- }
1892
- formatTime(value) {
1893
- const date = new Date(value);
1894
- if (isNaN(date.getTime()))
1895
- return "";
1896
- let hours = date.getHours();
1897
- const minutes = date.getMinutes();
1898
- const seconds = date.getSeconds();
1899
- const ampm = hours >= 12 ? "PM" : "AM";
1900
- hours = hours % 12;
1901
- hours = hours ? hours : 12;
1902
- const hh = hours.toString().padStart(2, "0");
1903
- const mm = minutes.toString().padStart(2, "0");
1904
- const ss = seconds.toString().padStart(2, "0");
1905
- return `${hh}:${mm}:${ss} ${ampm}`;
1906
- }
1907
- formatDecimal(value, digits) {
1908
- const num = parseFloat(value);
1909
- if (isNaN(num))
1910
- return "";
1911
- return num.toFixed(digits);
1912
- }
1913
- formatTarifa(value) {
1914
- const num = parseFloat(value);
1915
- if (isNaN(num))
1916
- return "";
1917
- const absNum = Math.abs(num);
1918
- if (absNum >= 0.000001 && absNum <= 0.1) {
1919
- // Mostrar hasta 6 decimales
1920
- return absNum.toFixed(6);
1921
- }
1922
- else if (absNum < 0.000001) {
1923
- return num.toString();
1924
- }
1925
- else {
1926
- return num.toString();
1927
- }
1928
- }
1929
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FormatCellPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1930
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.1", ngImport: i0, type: FormatCellPipe, isStandalone: true, name: "formatCell" });
1931
- }
1932
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FormatCellPipe, decorators: [{
1933
- type: Pipe,
1934
- args: [{
1935
- name: "formatCell",
1936
- standalone: true,
1937
- }]
1938
- }] });
1939
-
1940
1632
  class TableComponent {
1941
1633
  SharedService = inject(SharedService);
1942
1634
  GlobalTermService = inject(GlobalTermService);
@@ -1944,12 +1636,12 @@ class TableComponent {
1944
1636
  ListData = [];
1945
1637
  ShowRowPerPage = true;
1946
1638
  ShowSearch = false;
1947
- ListSearchOptions = [];
1639
+ // @Input() ListSearchOptions: SearchFieldModel[] = [];
1948
1640
  ShowPagination = false;
1949
1641
  RowsPerPage = 10;
1950
1642
  ShowCheckbox = false;
1951
1643
  ShowIndex = false;
1952
- ShowSearchTooltip = false;
1644
+ // @Input() ShowSearchTooltip: boolean = false;
1953
1645
  ListDataSelected = [];
1954
1646
  SelectedIdentifier = null;
1955
1647
  ClassName = "";
@@ -1971,7 +1663,7 @@ class TableComponent {
1971
1663
  else {
1972
1664
  this.ListDataSelectedTemp = [];
1973
1665
  this.ListDataSelectedFilter = [];
1974
- this.ExecuteSearch({});
1666
+ this.ExecuteSearch();
1975
1667
  }
1976
1668
  }
1977
1669
  }
@@ -1984,7 +1676,7 @@ class TableComponent {
1984
1676
  this.HeaderState[field] = { checked: false, indeterminate: false };
1985
1677
  return;
1986
1678
  }
1987
- const checked = this.ListDataFilter.filter((r) => r[field] === true).length;
1679
+ const checked = this.ListDataFilter.filter(r => r[field] === true).length;
1988
1680
  this.HeaderState[field] = {
1989
1681
  checked: checked === total,
1990
1682
  indeterminate: checked > 0 && checked < total,
@@ -1994,14 +1686,12 @@ class TableComponent {
1994
1686
  this.recomputeHeaderState(field);
1995
1687
  }
1996
1688
  refreshAllHeaderStates() {
1997
- this.ColumnList.filter((c) => c.isChecboxColumn).forEach((c) => this.recomputeHeaderState(c.field));
1689
+ this.ColumnList.filter(c => c.isChecboxColumn).forEach(c => this.recomputeHeaderState(c.field));
1998
1690
  }
1999
1691
  EmitSelectedItem = new EventEmitter();
2000
1692
  EmitListDataFilter = new EventEmitter();
2001
1693
  EmitSearchEvent = new EventEmitter();
2002
1694
  EmitSortEvent = new EventEmitter();
2003
- PaginatorTable;
2004
- SearchTable;
2005
1695
  Columns;
2006
1696
  ColumnGroups;
2007
1697
  RowResumenGroups;
@@ -2015,8 +1705,7 @@ class TableComponent {
2015
1705
  ListDataTable = [];
2016
1706
  ListDataSelectedFilter = [];
2017
1707
  ListDataSelectedTemp = [];
2018
- ListSearchOptionsSimple = [];
2019
- SearchInput = {};
1708
+ SearchInput = { searchText: "" };
2020
1709
  TotalRecords = 0;
2021
1710
  CurrentPage = 1;
2022
1711
  SortOrder = 1;
@@ -2024,22 +1713,21 @@ class TableComponent {
2024
1713
  MaxLevel = 0;
2025
1714
  Levels = [];
2026
1715
  ngOnChanges() {
2027
- this.LoadSearchOptions();
2028
1716
  if (!this.SortField && this.DefaultSortField) {
2029
1717
  this.SortField = this.DefaultSortField;
2030
1718
  this.SortOrder = this.DefaultSortOrder;
2031
1719
  }
2032
- this.ExecuteSearch({});
1720
+ this.ExecuteSearch();
2033
1721
  this.ValidateSelect();
2034
1722
  }
2035
1723
  ngAfterContentInit() {
2036
1724
  this.ColumnList = this.Columns?.toArray() ?? [];
2037
1725
  this.ColumnGroupList = this.ColumnGroups?.toArray() ?? [];
2038
1726
  this.RowResumenList = this.RowResumenGroups?.toArray() ?? [];
2039
- const levels = this.ColumnGroupList.map((c) => c.level);
1727
+ const levels = this.ColumnGroupList.map(c => c.level);
2040
1728
  this.MaxLevel = levels.length ? Math.max(...levels) + 1 : 1;
2041
1729
  this.Levels = Array.from({ length: this.MaxLevel }, (_, i) => i);
2042
- this.ColumnList.filter((c) => c.isChecboxColumn).forEach((c) => {
1730
+ this.ColumnList.filter(c => c.isChecboxColumn).forEach(c => {
2043
1731
  if (!this.HeaderState[c.field]) {
2044
1732
  this.HeaderState[c.field] = { checked: false, indeterminate: false };
2045
1733
  }
@@ -2048,18 +1736,12 @@ class TableComponent {
2048
1736
  this.ListDataSelectedTemp = [];
2049
1737
  this.ListDataSelectedFilter = [];
2050
1738
  this._pendingUncheck = false;
2051
- this.ExecuteSearch({});
1739
+ this.ExecuteSearch();
2052
1740
  }
2053
1741
  else {
2054
1742
  this.refreshAllHeaderStates();
2055
1743
  }
2056
1744
  }
2057
- LoadSearchOptions() {
2058
- this.ListSearchOptionsSimple = this.ListSearchOptions.map((item) => ({
2059
- id: item.id,
2060
- value: item.name,
2061
- }));
2062
- }
2063
1745
  OnSort(field) {
2064
1746
  if (this.SortField === field) {
2065
1747
  this.SortOrder *= -1;
@@ -2070,24 +1752,35 @@ class TableComponent {
2070
1752
  }
2071
1753
  this.SortPages();
2072
1754
  }
2073
- OnPageChange(pageIndex) {
2074
- this.CurrentPage = pageIndex;
1755
+ OnPageChange(event) {
1756
+ if (typeof event === "number") {
1757
+ this.CurrentPage = event;
1758
+ }
1759
+ else {
1760
+ if (typeof event?.rows === "number") {
1761
+ this.RowsPerPage = event.rows;
1762
+ }
1763
+ if (typeof event?.page === "number") {
1764
+ this.CurrentPage = event.page + 1;
1765
+ }
1766
+ }
2075
1767
  this.UpdatePages();
2076
1768
  }
2077
- ExecuteSearch(event) {
2078
- if (event?.fieldText !== undefined && event?.fieldText !== "")
2079
- this.SearchInput = event;
1769
+ ExecuteSearch(searchText) {
1770
+ if (typeof searchText === "string") {
1771
+ this.SearchInput = { ...(this.SearchInput ?? {}), searchText };
1772
+ }
2080
1773
  this.ListDataFilter = [...this.ListData];
2081
- if (this.SearchInput?.searchText !== undefined &&
2082
- this.SearchInput?.searchText !== "" &&
2083
- this.ListSearchOptions.length > 0) {
2084
- let Search = this.SearchInput.searchText?.trim()?.toLowerCase();
2085
- let searchValue = this.ListSearchOptions.find((item) => item.id === this.SearchInput.fieldId)?.field || "code";
2086
- this.ListDataFilter = this.SharedService.GetFilteredSearchKey([...this.ListData], searchValue, Search, this.SearchInput.operatorId);
2087
- if (this.PaginatorTable) {
2088
- this.PaginatorTable.CurrentPage = 1;
2089
- this.CurrentPage = 1;
2090
- }
1774
+ const search = this.SearchInput?.searchText?.trim()?.toLowerCase();
1775
+ if (search) {
1776
+ this.ListDataFilter = this.ListData.filter(item => {
1777
+ const searchableText = Object.values(item)
1778
+ .filter(v => v !== null && v !== undefined)
1779
+ .join(" ")
1780
+ .toLowerCase();
1781
+ return searchableText.includes(search);
1782
+ });
1783
+ this.CurrentPage = 1;
2091
1784
  }
2092
1785
  this.SortPages();
2093
1786
  }
@@ -2098,14 +1791,14 @@ class TableComponent {
2098
1791
  }
2099
1792
  const order = this.SortOrder === 1 ? "asc" : "desc";
2100
1793
  const field = this.SortField;
2101
- const colConfig = this.ColumnList.find((c) => c.field === field);
1794
+ const colConfig = this.ColumnList.find(c => c.field === field);
2102
1795
  if (!colConfig) {
2103
1796
  console.warn("Columna no encontrada:", field);
2104
1797
  this.UpdatePages();
2105
1798
  return;
2106
1799
  }
2107
1800
  const formatType = colConfig.formatType;
2108
- const sampleValue = this.ListDataFilter.find((item) => item[field] !== null && item[field] !== undefined)?.[field];
1801
+ const sampleValue = this.ListDataFilter.find(item => item[field] !== null && item[field] !== undefined)?.[field];
2109
1802
  if (typeof sampleValue === "number") {
2110
1803
  this.ListDataFilter = this.SharedService.SortRecursiveNumber([...this.ListDataFilter], field, order);
2111
1804
  }
@@ -2139,24 +1832,24 @@ class TableComponent {
2139
1832
  this.ShowCheckbox = false;
2140
1833
  return;
2141
1834
  }
2142
- const selectedIds = new Set(this.ListDataSelected.map((item) => item[this.SelectedIdentifier]));
2143
- this.ListDataSelectedTemp = this.ListData.filter((item) => selectedIds.has(item[this.SelectedIdentifier]));
1835
+ const selectedIds = new Set(this.ListDataSelected.map(item => item[this.SelectedIdentifier]));
1836
+ this.ListDataSelectedTemp = this.ListData.filter(item => selectedIds.has(item[this.SelectedIdentifier]));
2144
1837
  this.ListDataSelectedFilter = [...this.ListDataSelectedTemp];
2145
1838
  }
2146
1839
  SelectAll(event) {
2147
1840
  if (!this.SelectedIdentifier && this.ShowCheckbox)
2148
1841
  return;
2149
1842
  if (event.checked) {
2150
- const idsSelected = new Set(this.ListDataSelectedTemp.map((item) => item[this.SelectedIdentifier]));
2151
- this.ListDataFilter.forEach((item) => {
1843
+ const idsSelected = new Set(this.ListDataSelectedTemp.map(item => item[this.SelectedIdentifier]));
1844
+ this.ListDataFilter.forEach(item => {
2152
1845
  if (!idsSelected.has(item[this.SelectedIdentifier])) {
2153
1846
  this.ListDataSelectedTemp.push(item);
2154
1847
  }
2155
1848
  });
2156
1849
  }
2157
1850
  else {
2158
- const idsSelected = new Set(this.ListDataFilter.map((item) => item[this.SelectedIdentifier]));
2159
- this.ListDataSelectedTemp = this.ListDataSelectedTemp.filter((item) => !idsSelected.has(item[this.SelectedIdentifier]));
1851
+ const idsSelected = new Set(this.ListDataFilter.map(item => item[this.SelectedIdentifier]));
1852
+ this.ListDataSelectedTemp = this.ListDataSelectedTemp.filter(item => !idsSelected.has(item[this.SelectedIdentifier]));
2160
1853
  }
2161
1854
  this.EmitSelectedItem.emit(this.ListDataSelectedTemp);
2162
1855
  }
@@ -2164,8 +1857,7 @@ class TableComponent {
2164
1857
  if (!this.SelectedIdentifier && this.ShowCheckbox)
2165
1858
  return;
2166
1859
  const selectedItem = event.data;
2167
- const exists = this.ListDataSelectedTemp.some((item) => item[this.SelectedIdentifier] ===
2168
- selectedItem[this.SelectedIdentifier]);
1860
+ const exists = this.ListDataSelectedTemp.some(item => item[this.SelectedIdentifier] === selectedItem[this.SelectedIdentifier]);
2169
1861
  if (!exists) {
2170
1862
  this.ListDataSelectedTemp.push(selectedItem);
2171
1863
  }
@@ -2175,152 +1867,458 @@ class TableComponent {
2175
1867
  if (!this.SelectedIdentifier && this.ShowCheckbox)
2176
1868
  return;
2177
1869
  const unselectedItem = event.data;
2178
- this.ListDataSelectedTemp = this.ListDataSelectedTemp.filter((item) => item[this.SelectedIdentifier] !==
2179
- unselectedItem[this.SelectedIdentifier]);
1870
+ this.ListDataSelectedTemp = this.ListDataSelectedTemp.filter(item => item[this.SelectedIdentifier] !== unselectedItem[this.SelectedIdentifier]);
2180
1871
  this.EmitSelectedItem.emit(this.ListDataSelectedTemp);
2181
1872
  }
2182
1873
  ResetTable() {
2183
- if (this.PaginatorTable) {
2184
- this.PaginatorTable.CurrentPage = 1;
1874
+ this.CurrentPage = 1;
1875
+ this.SearchInput = { ...(this.SearchInput ?? {}), searchText: "" };
1876
+ this.ExecuteSearch();
1877
+ }
1878
+ EmitSearchValues() {
1879
+ this.EmitListDataFilter.emit(this.ListDataFilter);
1880
+ this.EmitSearchEvent.emit(this.SearchInput);
1881
+ this.EmitSortEvent.emit([
1882
+ {
1883
+ sortOrder: this.SortOrder,
1884
+ sortField: this.SortField?.toString() ?? "",
1885
+ },
1886
+ ]);
1887
+ }
1888
+ OnHeaderCheckboxChange(checked, field) {
1889
+ this.ListDataFilter.forEach(r => (r[field] = checked));
1890
+ this.HeaderState[field] = { checked, indeterminate: false };
1891
+ this.UpdatePages();
1892
+ }
1893
+ getHeaderScope() {
1894
+ return this.ShowPagination ? this.ListDataTable : this.ListDataFilter;
1895
+ }
1896
+ FilterData(field) {
1897
+ let c = this.ListData.filter(item => item[field]);
1898
+ }
1899
+ IsInderteminate(column) {
1900
+ const rowsChek = this.ListData.filter(item => item[column]).length;
1901
+ const element = [...document.querySelectorAll("[data-check]")].find(x => x.getAttribute("data-check") == column);
1902
+ if (element == undefined)
1903
+ return;
1904
+ if (rowsChek > 0 && rowsChek < this.ListData.length) {
1905
+ element.setAttribute("class", "prCheckbox--indeterminate");
1906
+ }
1907
+ else {
1908
+ element.removeAttribute("class");
1909
+ }
1910
+ }
1911
+ OnRowsPerPageChange(value) {
1912
+ this.RowsPerPage = value;
1913
+ this.CurrentPage = 1;
1914
+ this.UpdatePages();
1915
+ }
1916
+ ResetTableSelected() {
1917
+ this.ListDataSelectedTemp = [];
1918
+ this.ListDataSelectedFilter = [...this.ListDataSelectedTemp];
1919
+ }
1920
+ ClearSearch() {
1921
+ this.SearchInput.searchText = "";
1922
+ }
1923
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1924
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: TableComponent, isStandalone: true, selector: "intelica-table", inputs: { ComponentId: "ComponentId", ListData: "ListData", ShowRowPerPage: "ShowRowPerPage", ShowSearch: "ShowSearch", ShowPagination: "ShowPagination", RowsPerPage: "RowsPerPage", ShowCheckbox: "ShowCheckbox", ShowIndex: "ShowIndex", ListDataSelected: "ListDataSelected", SelectedIdentifier: "SelectedIdentifier", ClassName: "ClassName", DefaultSortField: "DefaultSortField", DefaultSortOrder: "DefaultSortOrder", scrollHeight: "scrollHeight", scrollable: "scrollable", AllowedPageSizes: "AllowedPageSizes", tableStyle: "tableStyle", IsTableDisabled: "IsTableDisabled" }, outputs: { EmitSelectedItem: "EmitSelectedItem", EmitListDataFilter: "EmitListDataFilter", EmitSearchEvent: "EmitSearchEvent", EmitSortEvent: "EmitSortEvent" }, providers: [FormatCellPipe, DatePipe], queries: [{ propertyName: "AdditionalTemplate", first: true, predicate: ["additionalTemplate"], descendants: true }, { propertyName: "AdditionalExtendedTemplate", first: true, predicate: ["additionalExtendedTemplate"], descendants: true }, { propertyName: "AdditionalCentralTemplate", first: true, predicate: ["additionalCentralTemplate"], descendants: true }, { propertyName: "Columns", predicate: ColumnComponent }, { propertyName: "ColumnGroups", predicate: ColumnGroupComponent }, { propertyName: "RowResumenGroups", predicate: RowResumenComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable\">\r\n\t<div class=\"grPanel\">\r\n\t\t<div class=\"prCard__row justify-content-end\">\r\n\t\t\t<div class=\"prCard__actionflex\">\r\n\t\t\t\t@if (AdditionalTemplate) {\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t@if (ShowSearch) {\r\n\t\t\t\t<!-- <input class=\"prInputtext\" type=\"text\" pInputText [(ngModel)]=\"SearchInput.searchText\" (keydown.enter)=\"ExecuteSearch()\" /> -->\r\n\t\t\t\t<div class=\"ptSearch\">\r\n\t\t\t\t\t<p-iconfield>\r\n\t\t\t\t\t\t<input type=\"text\" class=\"prInputText\" pInputText placeholder=\"Search text here\" [(ngModel)]=\"SearchInput.searchText\" (keydown.enter)=\"ExecuteSearch()\" />\r\n\t\t\t\t\t\t<p-inputicon>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--close\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-cancel\" *ngIf=\"SearchInput.searchText\" (click)=\"ClearSearch()\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t<span class=\"ptSearch__icon ptSearch__icon--divider\" *ngIf=\"SearchInput.searchText\"></span>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--search\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-search\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t</p-inputicon>\r\n\t\t\t\t\t</p-iconfield>\r\n\t\t\t\t</div>\r\n\t\t\t\t<!-- <input class=\"prInputtext\" type=\"text\" pInputText [(ngModel)]=\"SearchInput.searchText\" (keydown.enter)=\"ExecuteSearch()\" /> -->\r\n\t\t\t}\r\n\t\t\t@if (AdditionalCentralTemplate) {\r\n\t\t\t\t<div class=\"prTableTools__new prTableTools__new--right\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalCentralTemplate\"></ng-container>\r\n\t\t\t\t</div>\r\n\t\t\t}\r\n\t\t</div>\r\n\r\n\t\t@if (AdditionalExtendedTemplate) {\r\n\t\t\t<div class=\"prTableTools justify-content-start\">\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\t<p-table\r\n\t\tclass=\"prTable\"\r\n\t\t[ngClass]=\"ClassName\"\r\n\t\t[value]=\"ListDataTable\"\r\n\t\tresponsiveLayout=\"scroll\"\r\n\t\t[(selection)]=\"ListDataSelectedFilter\"\r\n\t\t(onHeaderCheckboxToggle)=\"SelectAll($event)\"\r\n\t\t(onRowSelect)=\"OnRowSelect($event)\"\r\n\t\t(onRowUnselect)=\"OnRowUnselect($event)\"\r\n\t\t[sortField]=\"DefaultSortField\"\r\n\t\t[scrollable]=\"scrollable\"\r\n\t\t[scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n\t\t[tableStyle]=\"tableStyle\"\r\n\t\t[sortOrder]=\"DefaultSortOrder\"\r\n\t>\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t@for (level of Levels; track $index) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t@for (col of ColumnGroupList; track $index) {\r\n\t\t\t\t\t\t@if (col.level === level) {\r\n\t\t\t\t\t\t\t<th [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\" [pSortableColumn]=\"col.sortable ? col.field : ''\" [style.min-width]=\"col.minWidth\" (click)=\"col.sortable && OnSort(col.field)\">\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t@if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n\t\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\" [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\">\r\n\t\t\t\t\t\t\t<p-tableHeaderCheckbox\r\n\t\t\t\t\t\t\t\tclass=\"prCheckbox\"\r\n\t\t\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t\t\t'prCheckbox--indeterminate': ListDataSelectedTemp.length > 0 && ListDataSelectedTemp.length < ListDataFilter.length,\r\n\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t@if (col.showHeader) {\r\n\t\t\t\t\t\t<th\r\n\t\t\t\t\t\t\t[class]=\"col.className\"\r\n\t\t\t\t\t\t\t[pSortableColumn]=\"!col.isChecboxColumn && col.sortable ? col.field : ''\"\r\n\t\t\t\t\t\t\t[style.width]=\"col.width\"\r\n\t\t\t\t\t\t\t[style.min-width]=\"col.minWidth\"\r\n\t\t\t\t\t\t\t(click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<div class=\"prTable__header\">\r\n\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t@if (!col.showIndex) {\r\n\t\t\t\t\t\t\t\t\t@if (col.isChecboxColumn) {\r\n\t\t\t\t\t\t\t\t\t\t<br />\r\n\t\t\t\t\t\t\t\t\t\t<p-checkbox\r\n\t\t\t\t\t\t\t\t\t\t\tclass=\"prCheckbox\"\r\n\t\t\t\t\t\t\t\t\t\t\t[binary]=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t\t(click)=\"$event.stopPropagation()\"\r\n\t\t\t\t\t\t\t\t\t\t\t[(ngModel)]=\"HeaderState[col.field].checked\"\r\n\t\t\t\t\t\t\t\t\t\t\t(ngModelChange)=\"OnHeaderCheckboxChange($event, col.field)\"\r\n\t\t\t\t\t\t\t\t\t\t\t[attr.data-check]=\"col.field\"\r\n\t\t\t\t\t\t\t\t\t\t\t[disabled]=\"IsTableDisabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t\t\t\t\t\t'prCheckbox--indeterminate': HeaderState[col.field].indeterminate,\r\n\t\t\t\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t\t\t\t></p-checkbox>\r\n\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\">\r\n\t\t\t\t\t\t<p-tableHeaderCheckbox\r\n\t\t\t\t\t\t\tclass=\"prCheckbox\"\r\n\t\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t\t'prCheckbox--indeterminate': ListDataSelectedTemp.length > 0 && ListDataSelectedTemp.length < ListDataFilter.length,\r\n\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t\t@if (ListDataFilter.length > 0) {\r\n\t\t\t\t<tr class=\"fixedRow\">\r\n\t\t\t\t\t@for (col of RowResumenList; track $index) {\r\n\t\t\t\t\t\t<td [ngClass]=\"col.className\" [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\">\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t<ng-template #defaultContent></ng-template>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</ng-template>\r\n\t\t<ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t<td [ngClass]=\"col.className\">\r\n\t\t\t\t\t\t@if (col.showIndex) {\r\n\t\t\t\t\t\t\t{{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"></ng-container>\r\n\t\t\t\t\t\t\t} @else if (col.isChecboxColumn) {\r\n\t\t\t\t\t\t\t\t<p-checkbox [binary]=\"true\" [(ngModel)]=\"rowData[col.field]\" (onChange)=\"onBodyCheckboxChange(col.field)\" [disabled]=\"IsTableDisabled\"></p-checkbox>\r\n\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t<span class=\"text-breakWord\" [pTooltip]=\"col.tooltip\" [tooltipPosition]=\"col.tooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t{{ rowData[col.field] | formatCell: col.formatType }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox) {\r\n\t\t\t\t\t<td class=\"text-center\">\r\n\t\t\t\t\t\t<p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t\t<ng-template #emptymessage>\r\n\t\t\t<tr>\r\n\t\t\t\t<td [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\" class=\"text-center\">\r\n\t\t\t\t\t{{ \"Nodata\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t</p-table>\r\n\t<div class=\"d-flex justify-content-end\">\r\n\t\t@if (TotalRecords !== 0 && ShowPagination) {\r\n\t\t\t<div class=\"ptTablePaginator\">\r\n\t\t\t\t<p-paginator\r\n\t\t\t\t\tclass=\"prPaginator\"\r\n\t\t\t\t\t[first]=\"(CurrentPage - 1) * RowsPerPage\"\r\n\t\t\t\t\t[rows]=\"RowsPerPage\"\r\n\t\t\t\t\t[totalRecords]=\"TotalRecords\"\r\n\t\t\t\t\t(onPageChange)=\"OnPageChange($event)\"\r\n\t\t\t\t\t[showJumpToPageInput]=\"false\"\r\n\t\t\t\t\t[showCurrentPageReport]=\"false\"\r\n\t\t\t\t\t[showPageLinks]=\"false\"\r\n\t\t\t\t\t[showFirstLastIcon]=\"false\"\r\n\t\t\t\t\t[templateLeft]=\"templateLeft\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<ng-template #previouspagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-left\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template #nextpagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-right\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template pTemplate=\"templateLeft\" let-state #templateLeft>\r\n\t\t\t\t\t\t<span>{{ \"ItemPerPage\" | term: GlobalTermService.languageCode }}</span>\r\n\t\t\t\t\t\t<p-select class=\"prSelect\" [options]=\"AllowedPageSizes\" [ngModel]=\"RowsPerPage\" appendTo=\"body\" (onChange)=\"OnRowsPerPageChange($event.value)\" />\r\n\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t{{ \"PAGE\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t\t\t\t<p-inputnumber class=\"p-paginator-jtp-input\" inputId=\"integeronly\" [(ngModel)]=\"CurrentPage\" />\r\n\t\t\t\t\t\t\t{{ \"Of\" | term: GlobalTermService.languageCode }} {{ TotalRecords }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t</p-paginator>\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: IconFieldModule }, { kind: "component", type: i2.IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["iconPosition", "styleClass"] }, { kind: "component", type: InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["styleClass"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "component", type: InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first", "appendTo"], outputs: ["onPageChange"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i3.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i3.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i3.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TermPipe, name: "term" }, { kind: "pipe", type: FormatCellPipe, name: "formatCell" }] });
1925
+ }
1926
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TableComponent, decorators: [{
1927
+ type: Component,
1928
+ args: [{ selector: "intelica-table", standalone: true, imports: [
1929
+ CommonModule,
1930
+ NgIf,
1931
+ IconFieldModule,
1932
+ InputIcon,
1933
+ InputText,
1934
+ InputTextModule,
1935
+ InputNumber,
1936
+ Paginator,
1937
+ TableModule,
1938
+ Select,
1939
+ BadgeModule,
1940
+ TooltipModule,
1941
+ TermPipe,
1942
+ CheckboxModule,
1943
+ FormsModule,
1944
+ FormatCellPipe,
1945
+ ], providers: [FormatCellPipe, DatePipe], template: "<div class=\"prTable\">\r\n\t<div class=\"grPanel\">\r\n\t\t<div class=\"prCard__row justify-content-end\">\r\n\t\t\t<div class=\"prCard__actionflex\">\r\n\t\t\t\t@if (AdditionalTemplate) {\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t@if (ShowSearch) {\r\n\t\t\t\t<!-- <input class=\"prInputtext\" type=\"text\" pInputText [(ngModel)]=\"SearchInput.searchText\" (keydown.enter)=\"ExecuteSearch()\" /> -->\r\n\t\t\t\t<div class=\"ptSearch\">\r\n\t\t\t\t\t<p-iconfield>\r\n\t\t\t\t\t\t<input type=\"text\" class=\"prInputText\" pInputText placeholder=\"Search text here\" [(ngModel)]=\"SearchInput.searchText\" (keydown.enter)=\"ExecuteSearch()\" />\r\n\t\t\t\t\t\t<p-inputicon>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--close\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-cancel\" *ngIf=\"SearchInput.searchText\" (click)=\"ClearSearch()\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t<span class=\"ptSearch__icon ptSearch__icon--divider\" *ngIf=\"SearchInput.searchText\"></span>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--search\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-search\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t</p-inputicon>\r\n\t\t\t\t\t</p-iconfield>\r\n\t\t\t\t</div>\r\n\t\t\t\t<!-- <input class=\"prInputtext\" type=\"text\" pInputText [(ngModel)]=\"SearchInput.searchText\" (keydown.enter)=\"ExecuteSearch()\" /> -->\r\n\t\t\t}\r\n\t\t\t@if (AdditionalCentralTemplate) {\r\n\t\t\t\t<div class=\"prTableTools__new prTableTools__new--right\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalCentralTemplate\"></ng-container>\r\n\t\t\t\t</div>\r\n\t\t\t}\r\n\t\t</div>\r\n\r\n\t\t@if (AdditionalExtendedTemplate) {\r\n\t\t\t<div class=\"prTableTools justify-content-start\">\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\t<p-table\r\n\t\tclass=\"prTable\"\r\n\t\t[ngClass]=\"ClassName\"\r\n\t\t[value]=\"ListDataTable\"\r\n\t\tresponsiveLayout=\"scroll\"\r\n\t\t[(selection)]=\"ListDataSelectedFilter\"\r\n\t\t(onHeaderCheckboxToggle)=\"SelectAll($event)\"\r\n\t\t(onRowSelect)=\"OnRowSelect($event)\"\r\n\t\t(onRowUnselect)=\"OnRowUnselect($event)\"\r\n\t\t[sortField]=\"DefaultSortField\"\r\n\t\t[scrollable]=\"scrollable\"\r\n\t\t[scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n\t\t[tableStyle]=\"tableStyle\"\r\n\t\t[sortOrder]=\"DefaultSortOrder\"\r\n\t>\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t@for (level of Levels; track $index) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t@for (col of ColumnGroupList; track $index) {\r\n\t\t\t\t\t\t@if (col.level === level) {\r\n\t\t\t\t\t\t\t<th [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\" [pSortableColumn]=\"col.sortable ? col.field : ''\" [style.min-width]=\"col.minWidth\" (click)=\"col.sortable && OnSort(col.field)\">\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t@if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n\t\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\" [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\">\r\n\t\t\t\t\t\t\t<p-tableHeaderCheckbox\r\n\t\t\t\t\t\t\t\tclass=\"prCheckbox\"\r\n\t\t\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t\t\t'prCheckbox--indeterminate': ListDataSelectedTemp.length > 0 && ListDataSelectedTemp.length < ListDataFilter.length,\r\n\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t@if (col.showHeader) {\r\n\t\t\t\t\t\t<th\r\n\t\t\t\t\t\t\t[class]=\"col.className\"\r\n\t\t\t\t\t\t\t[pSortableColumn]=\"!col.isChecboxColumn && col.sortable ? col.field : ''\"\r\n\t\t\t\t\t\t\t[style.width]=\"col.width\"\r\n\t\t\t\t\t\t\t[style.min-width]=\"col.minWidth\"\r\n\t\t\t\t\t\t\t(click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<div class=\"prTable__header\">\r\n\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t@if (!col.showIndex) {\r\n\t\t\t\t\t\t\t\t\t@if (col.isChecboxColumn) {\r\n\t\t\t\t\t\t\t\t\t\t<br />\r\n\t\t\t\t\t\t\t\t\t\t<p-checkbox\r\n\t\t\t\t\t\t\t\t\t\t\tclass=\"prCheckbox\"\r\n\t\t\t\t\t\t\t\t\t\t\t[binary]=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t\t(click)=\"$event.stopPropagation()\"\r\n\t\t\t\t\t\t\t\t\t\t\t[(ngModel)]=\"HeaderState[col.field].checked\"\r\n\t\t\t\t\t\t\t\t\t\t\t(ngModelChange)=\"OnHeaderCheckboxChange($event, col.field)\"\r\n\t\t\t\t\t\t\t\t\t\t\t[attr.data-check]=\"col.field\"\r\n\t\t\t\t\t\t\t\t\t\t\t[disabled]=\"IsTableDisabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t\t\t\t\t\t'prCheckbox--indeterminate': HeaderState[col.field].indeterminate,\r\n\t\t\t\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t\t\t\t></p-checkbox>\r\n\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\">\r\n\t\t\t\t\t\t<p-tableHeaderCheckbox\r\n\t\t\t\t\t\t\tclass=\"prCheckbox\"\r\n\t\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t\t'prCheckbox--indeterminate': ListDataSelectedTemp.length > 0 && ListDataSelectedTemp.length < ListDataFilter.length,\r\n\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t\t@if (ListDataFilter.length > 0) {\r\n\t\t\t\t<tr class=\"fixedRow\">\r\n\t\t\t\t\t@for (col of RowResumenList; track $index) {\r\n\t\t\t\t\t\t<td [ngClass]=\"col.className\" [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\">\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t<ng-template #defaultContent></ng-template>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</ng-template>\r\n\t\t<ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t<td [ngClass]=\"col.className\">\r\n\t\t\t\t\t\t@if (col.showIndex) {\r\n\t\t\t\t\t\t\t{{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"></ng-container>\r\n\t\t\t\t\t\t\t} @else if (col.isChecboxColumn) {\r\n\t\t\t\t\t\t\t\t<p-checkbox [binary]=\"true\" [(ngModel)]=\"rowData[col.field]\" (onChange)=\"onBodyCheckboxChange(col.field)\" [disabled]=\"IsTableDisabled\"></p-checkbox>\r\n\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t<span class=\"text-breakWord\" [pTooltip]=\"col.tooltip\" [tooltipPosition]=\"col.tooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t{{ rowData[col.field] | formatCell: col.formatType }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox) {\r\n\t\t\t\t\t<td class=\"text-center\">\r\n\t\t\t\t\t\t<p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t\t<ng-template #emptymessage>\r\n\t\t\t<tr>\r\n\t\t\t\t<td [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\" class=\"text-center\">\r\n\t\t\t\t\t{{ \"Nodata\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t</p-table>\r\n\t<div class=\"d-flex justify-content-end\">\r\n\t\t@if (TotalRecords !== 0 && ShowPagination) {\r\n\t\t\t<div class=\"ptTablePaginator\">\r\n\t\t\t\t<p-paginator\r\n\t\t\t\t\tclass=\"prPaginator\"\r\n\t\t\t\t\t[first]=\"(CurrentPage - 1) * RowsPerPage\"\r\n\t\t\t\t\t[rows]=\"RowsPerPage\"\r\n\t\t\t\t\t[totalRecords]=\"TotalRecords\"\r\n\t\t\t\t\t(onPageChange)=\"OnPageChange($event)\"\r\n\t\t\t\t\t[showJumpToPageInput]=\"false\"\r\n\t\t\t\t\t[showCurrentPageReport]=\"false\"\r\n\t\t\t\t\t[showPageLinks]=\"false\"\r\n\t\t\t\t\t[showFirstLastIcon]=\"false\"\r\n\t\t\t\t\t[templateLeft]=\"templateLeft\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<ng-template #previouspagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-left\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template #nextpagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-right\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template pTemplate=\"templateLeft\" let-state #templateLeft>\r\n\t\t\t\t\t\t<span>{{ \"ItemPerPage\" | term: GlobalTermService.languageCode }}</span>\r\n\t\t\t\t\t\t<p-select class=\"prSelect\" [options]=\"AllowedPageSizes\" [ngModel]=\"RowsPerPage\" appendTo=\"body\" (onChange)=\"OnRowsPerPageChange($event.value)\" />\r\n\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t{{ \"PAGE\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t\t\t\t<p-inputnumber class=\"p-paginator-jtp-input\" inputId=\"integeronly\" [(ngModel)]=\"CurrentPage\" />\r\n\t\t\t\t\t\t\t{{ \"Of\" | term: GlobalTermService.languageCode }} {{ TotalRecords }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t</p-paginator>\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n</div>\r\n" }]
1946
+ }], propDecorators: { ComponentId: [{
1947
+ type: Input
1948
+ }], ListData: [{
1949
+ type: Input
1950
+ }], ShowRowPerPage: [{
1951
+ type: Input
1952
+ }], ShowSearch: [{
1953
+ type: Input
1954
+ }], ShowPagination: [{
1955
+ type: Input
1956
+ }], RowsPerPage: [{
1957
+ type: Input
1958
+ }], ShowCheckbox: [{
1959
+ type: Input
1960
+ }], ShowIndex: [{
1961
+ type: Input
1962
+ }], ListDataSelected: [{
1963
+ type: Input
1964
+ }], SelectedIdentifier: [{
1965
+ type: Input
1966
+ }], ClassName: [{
1967
+ type: Input
1968
+ }], DefaultSortField: [{
1969
+ type: Input
1970
+ }], DefaultSortOrder: [{
1971
+ type: Input
1972
+ }], scrollHeight: [{
1973
+ type: Input
1974
+ }], scrollable: [{
1975
+ type: Input
1976
+ }], AllowedPageSizes: [{
1977
+ type: Input
1978
+ }], tableStyle: [{
1979
+ type: Input
1980
+ }], IsTableDisabled: [{
1981
+ type: Input
1982
+ }], EmitSelectedItem: [{
1983
+ type: Output
1984
+ }], EmitListDataFilter: [{
1985
+ type: Output
1986
+ }], EmitSearchEvent: [{
1987
+ type: Output
1988
+ }], EmitSortEvent: [{
1989
+ type: Output
1990
+ }], Columns: [{
1991
+ type: ContentChildren,
1992
+ args: [ColumnComponent]
1993
+ }], ColumnGroups: [{
1994
+ type: ContentChildren,
1995
+ args: [ColumnGroupComponent]
1996
+ }], RowResumenGroups: [{
1997
+ type: ContentChildren,
1998
+ args: [RowResumenComponent]
1999
+ }], AdditionalTemplate: [{
2000
+ type: ContentChild,
2001
+ args: ["additionalTemplate"]
2002
+ }], AdditionalExtendedTemplate: [{
2003
+ type: ContentChild,
2004
+ args: ["additionalExtendedTemplate"]
2005
+ }], AdditionalCentralTemplate: [{
2006
+ type: ContentChild,
2007
+ args: ["additionalCentralTemplate"]
2008
+ }] } });
2009
+
2010
+ class PositiveNumberDirective {
2011
+ el;
2012
+ constructor(el) {
2013
+ this.el = el;
2014
+ }
2015
+ onInputChange(event) {
2016
+ const initalValue = this.el.nativeElement.value;
2017
+ this.el.nativeElement.value = initalValue.replace(/[^0-9]*/g, "");
2018
+ if (initalValue !== this.el.nativeElement.value) {
2019
+ event.stopPropagation();
2020
+ }
2021
+ }
2022
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PositiveNumberDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2023
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.1", type: PositiveNumberDirective, isStandalone: true, selector: "[positiveNumber]", host: { listeners: { "input": "onInputChange($event)" } }, ngImport: i0 });
2024
+ }
2025
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PositiveNumberDirective, decorators: [{
2026
+ type: Directive,
2027
+ args: [{
2028
+ selector: "[positiveNumber]",
2029
+ }]
2030
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { onInputChange: [{
2031
+ type: HostListener,
2032
+ args: ["input", ["$event"]]
2033
+ }] } });
2034
+
2035
+ class PaginatorComponent {
2036
+ GlobalTermService = inject(GlobalTermService);
2037
+ /**
2038
+ * Número total de elementos que se están paginando.
2039
+ * @type {number}
2040
+ */
2041
+ TotalItems = 0;
2042
+ /**
2043
+ * Página actual.
2044
+ * @type {number}
2045
+ */
2046
+ CurrentPage = 1;
2047
+ /**
2048
+ * Número de elementos por página.
2049
+ * @type {number}
2050
+ * @default 10
2051
+ */
2052
+ ItemsPerPage = 10;
2053
+ /**
2054
+ * Evento emitido cuando cambia la página.
2055
+ * @type {EventEmitter<any>}
2056
+ */
2057
+ PageChange = new EventEmitter();
2058
+ /**
2059
+ * Número total de páginas calculado internamente.
2060
+ * @type {number}
2061
+ */
2062
+ TotalPages = 1;
2063
+ ngOnChanges(changes) {
2064
+ this.TotalPageCalculator();
2065
+ }
2066
+ TotalPageCalculator() {
2067
+ this.TotalPages = Math.ceil(this.TotalItems / this.ItemsPerPage);
2068
+ }
2069
+ GoToFirstPage() {
2070
+ this.CurrentPage = 1;
2071
+ this.EmitPageChange();
2072
+ }
2073
+ GoToPreviousPage() {
2074
+ const pageNumber = Number(this.CurrentPage);
2075
+ this.CurrentPage = isNaN(pageNumber) || pageNumber === 0 ? 1 : pageNumber;
2076
+ if (this.CurrentPage > 1)
2077
+ this.CurrentPage -= 1;
2078
+ this.EmitPageChange();
2079
+ }
2080
+ GoToNextPage() {
2081
+ const pageNumber = Number(this.CurrentPage);
2082
+ this.CurrentPage = isNaN(pageNumber) ? 0 : pageNumber;
2083
+ if (this.CurrentPage < this.TotalPages)
2084
+ this.CurrentPage += 1;
2085
+ this.EmitPageChange();
2086
+ }
2087
+ GoToLastPage() {
2088
+ this.CurrentPage = this.TotalPages;
2089
+ this.EmitPageChange();
2090
+ }
2091
+ EmitPageChange() {
2092
+ this.PageChange.emit(this.CurrentPage);
2093
+ }
2094
+ onKeyUp(event) {
2095
+ const eventValue = event.target.value;
2096
+ if (eventValue === "" || isNaN(parseInt(eventValue)) || eventValue === "0" || eventValue.indexOf("-") >= 0) {
2185
2097
  this.CurrentPage = 1;
2098
+ this.EmitPageChange();
2099
+ return;
2186
2100
  }
2187
- if (this.SearchTable) {
2188
- this.SearchTable.ClearSearchText();
2189
- this.SearchInput.fieldText = "";
2101
+ this.CurrentPage = parseInt(eventValue);
2102
+ if (this.CurrentPage > this.TotalPages) {
2103
+ this.CurrentPage = this.TotalPages;
2104
+ }
2105
+ this.EmitPageChange();
2106
+ }
2107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2108
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: PaginatorComponent, isStandalone: true, selector: "intelica-paginator", inputs: { TotalItems: "TotalItems", CurrentPage: "CurrentPage", ItemsPerPage: "ItemsPerPage" }, outputs: { PageChange: "PageChange" }, usesOnChanges: true, ngImport: i0, template: "<div \r\n\tclass=\"prPaginator\" \r\n\t[ngClass]=\"{\r\n\t\t'prPaginator--leftdis': CurrentPage === 1 || TotalItems === 0,\r\n\t\t'prPaginator--rightdis': CurrentPage === TotalPages || TotalItems === 0\r\n\t}\">\r\n\t<div class=\"prPaginator__controls\">\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--first\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToFirstPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--previous\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToPreviousPage()\"></button>\r\n\t\t<span class=\"prPaginator__label--left\">{{ \"Previous\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<input pInputText type=\"text\" [disabled]=\"TotalItems === 0\" (keydown.enter)=\"$event.preventDefault()\" [(ngModel)]=\"CurrentPage\" positiveNumber class=\"prPaginator__input\" (keyup.enter)=\"onKeyUp($event)\" />\r\n\t\t<span class=\"prPaginator__total\">{{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalPages }}</span>\r\n\t\t<span class=\"prPaginator__label--right\">{{ \"Next\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--next\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToNextPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--last\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToLastPage()\"></button>\r\n\t</div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "fluid", "label", "icon", "buttonProps"] }, { kind: "directive", type: PositiveNumberDirective, selector: "[positiveNumber]" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: TermPipe, name: "term" }] });
2109
+ }
2110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: PaginatorComponent, decorators: [{
2111
+ type: Component,
2112
+ args: [{ selector: "intelica-paginator", imports: [FormsModule, ButtonModule, PositiveNumberDirective, CommonModule, TermPipe], template: "<div \r\n\tclass=\"prPaginator\" \r\n\t[ngClass]=\"{\r\n\t\t'prPaginator--leftdis': CurrentPage === 1 || TotalItems === 0,\r\n\t\t'prPaginator--rightdis': CurrentPage === TotalPages || TotalItems === 0\r\n\t}\">\r\n\t<div class=\"prPaginator__controls\">\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--first\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToFirstPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--previous\" [disabled]=\"CurrentPage === 1 || TotalItems === 0\" (click)=\"GoToPreviousPage()\"></button>\r\n\t\t<span class=\"prPaginator__label--left\">{{ \"Previous\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<input pInputText type=\"text\" [disabled]=\"TotalItems === 0\" (keydown.enter)=\"$event.preventDefault()\" [(ngModel)]=\"CurrentPage\" positiveNumber class=\"prPaginator__input\" (keyup.enter)=\"onKeyUp($event)\" />\r\n\t\t<span class=\"prPaginator__total\">{{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalPages }}</span>\r\n\t\t<span class=\"prPaginator__label--right\">{{ \"Next\" | term : GlobalTermService.languageCode }}</span>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--next\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToNextPage()\"></button>\r\n\t\t<button pButton type=\"button\" class=\"prPaginator__btn prPaginator__btn--last\" [disabled]=\"CurrentPage === TotalPages || TotalItems === 0\" (click)=\"GoToLastPage()\"></button>\r\n\t</div>\r\n</div>\r\n" }]
2113
+ }], propDecorators: { TotalItems: [{
2114
+ type: Input
2115
+ }], CurrentPage: [{
2116
+ type: Input
2117
+ }], ItemsPerPage: [{
2118
+ type: Input
2119
+ }], PageChange: [{
2120
+ type: Output
2121
+ }] } });
2122
+
2123
+ var SearchInputEnum;
2124
+ (function (SearchInputEnum) {
2125
+ SearchInputEnum["OperatorId"] = "operatorId";
2126
+ SearchInputEnum["FieldId"] = "fieldId";
2127
+ SearchInputEnum["SearchText"] = "searchText";
2128
+ })(SearchInputEnum || (SearchInputEnum = {}));
2129
+
2130
+ class SearchComponent {
2131
+ GlobalTermService = inject(GlobalTermService);
2132
+ /**
2133
+ * Indica el componente del que proviene.
2134
+ * @type {string}
2135
+ */
2136
+ ComponentId = "";
2137
+ ShowTooltip = false;
2138
+ /**
2139
+ * Opciones para campos de búsqueda.
2140
+ * @type {{ id: number; value: string }[]}
2141
+ */
2142
+ SearchFieldOptions;
2143
+ /**
2144
+ * Indica si realizar la búsqueda al soltar una tecla.
2145
+ * @type {boolean}
2146
+ */
2147
+ SearchOnKeyup;
2148
+ /**
2149
+ * @deprecated No debe ser utilizado. Es sólo para uso interno y no para módulos.
2150
+ * @type {boolean}
2151
+ * @default false
2152
+ */
2153
+ SimpleSearchInput = false;
2154
+ /**
2155
+ * Placeholder para el componente de búsqueda.
2156
+ * @type {string}
2157
+ */
2158
+ Placeholder = "";
2159
+ /**
2160
+ * Evento emitido al realizar una búsqueda.
2161
+ * @type {EventEmitter<{ operatorId: number; operatorText: string, fieldId: number, fieldText: string, searchText: string }>}
2162
+ */
2163
+ OnSearchEvent = new EventEmitter();
2164
+ FormBuilder = inject(FormBuilder);
2165
+ // Option!: string;
2166
+ // Placeholder!: string;
2167
+ /**
2168
+ * Indica si el dropdown está abierto
2169
+ * @type {boolean}
2170
+ * @default false
2171
+ */
2172
+ IsDropdownOpen = false;
2173
+ /**
2174
+ * Formulario para manejar los parámetros de búsqueda
2175
+ * @type {FormGroup}
2176
+ */
2177
+ SearchForm;
2178
+ /**
2179
+ * Suscripción a los valores del formulario.
2180
+ * @type {Subscription}
2181
+ */
2182
+ FormValuesSubscription;
2183
+ /**
2184
+ * Opciones para operadores de búsqueda.
2185
+ * @type {{ id: number; value: string }[]}
2186
+ */
2187
+ SearchOperatorOptions;
2188
+ /**
2189
+ * Función llamada cuando cambia el valor del campo de búsqueda.
2190
+ * @type {() => void}
2191
+ */
2192
+ OnChange = () => { };
2193
+ /**
2194
+ * Función llamada cuando el componente de búsqueda es tocado.
2195
+ * @type {() => void}
2196
+ */
2197
+ OnTouched = () => { };
2198
+ constructor() { }
2199
+ ngOnInit() {
2200
+ this.SearchForm = this.FormBuilder.group({
2201
+ operatorId: 0,
2202
+ fieldId: 0,
2203
+ searchText: "",
2204
+ });
2205
+ this.FormValuesSubscription = this.SearchForm.valueChanges.subscribe(value => {
2206
+ this.OnChange(value);
2207
+ });
2208
+ //loadTerms
2209
+ if (this.Placeholder === "")
2210
+ this.Placeholder = "SearchPlaceholder";
2211
+ this.SearchOperatorOptions ??= this.GetSearchOperatorOptions();
2212
+ this.SearchFieldOptions ??= this.GetSearchFieldOptions();
2213
+ this.InitializeForm();
2214
+ }
2215
+ ngOnDestroy() {
2216
+ this.FormValuesSubscription.unsubscribe();
2217
+ }
2218
+ InitializeForm() {
2219
+ this.SearchForm.setValue({
2220
+ operatorId: this.SearchOperatorOptions[0].id,
2221
+ fieldId: this.SearchFieldOptions.length > 0 ? this.SearchFieldOptions[0].id : 0,
2222
+ searchText: "",
2223
+ });
2224
+ this.OnSearch();
2225
+ }
2226
+ DropDownChange(isOpen) {
2227
+ this.IsDropdownOpen = isOpen;
2228
+ }
2229
+ OnSearchEnter() {
2230
+ if (!this.SearchOnKeyup)
2231
+ this.OnSearch();
2232
+ }
2233
+ OnSearchKeyup() {
2234
+ if (this.SearchOnKeyup)
2235
+ this.OnSearch();
2236
+ }
2237
+ OnSearch() {
2238
+ const value = this.SearchForm.value;
2239
+ value.operatorText = this.SearchOperatorOptions.find(o => o.id === value.operatorId)?.value || "";
2240
+ value.fieldText = this.SearchFieldOptions.find(f => f.id === value.fieldId)?.value || "";
2241
+ this.OnChange(value);
2242
+ this.OnTouched();
2243
+ this.OnSearchEvent.emit(value);
2244
+ }
2245
+ ClearSearchText(emitEvent = true) {
2246
+ this.SearchForm.get(SearchInputEnum.SearchText)?.setValue("");
2247
+ if (emitEvent) {
2248
+ this.OnSearch();
2190
2249
  }
2191
- this.ExecuteSearch({});
2192
2250
  }
2193
- EmitSearchValues() {
2194
- this.EmitListDataFilter.emit(this.ListDataFilter);
2195
- this.EmitSearchEvent.emit(this.SearchInput);
2196
- this.EmitSortEvent.emit([
2197
- {
2198
- sortOrder: this.SortOrder,
2199
- sortField: this.SortField?.toString() ?? "",
2200
- },
2201
- ]);
2251
+ get HasSearchText() {
2252
+ const searchText = this.SearchForm.get(SearchInputEnum.SearchText)?.value;
2253
+ return searchText && searchText.length > 0;
2202
2254
  }
2203
- OnHeaderCheckboxChange(checked, field) {
2204
- this.ListDataFilter.forEach((r) => (r[field] = checked));
2205
- this.HeaderState[field] = { checked, indeterminate: false };
2206
- this.UpdatePages();
2255
+ GetSelectedOperatorValue() {
2256
+ const selectedId = this.SearchForm.get(SearchInputEnum.OperatorId)?.value;
2257
+ const selectedItem = this.SearchOperatorOptions?.find(item => item.id === selectedId);
2258
+ return selectedItem ? selectedItem.value : "";
2207
2259
  }
2208
- getHeaderScope() {
2209
- return this.ShowPagination ? this.ListDataTable : this.ListDataFilter;
2260
+ GetSelectedFieldValue() {
2261
+ const selectedId = this.SearchForm.get(SearchInputEnum.FieldId)?.value;
2262
+ const selectedItem = this.SearchFieldOptions?.find(item => item.id === selectedId);
2263
+ return selectedItem ? selectedItem.value : "";
2210
2264
  }
2211
- FilterData(field) {
2212
- let c = this.ListData.filter((item) => item[field]);
2265
+ GetSelectedValues() {
2266
+ return `${this.GetSelectedOperatorValue()}, ${this.GetSelectedFieldValue()}`;
2213
2267
  }
2214
- IsInderteminate(column) {
2215
- const rowsChek = this.ListData.filter((item) => item[column]).length;
2216
- const element = [...document.querySelectorAll("[data-check]")].find((x) => x.getAttribute("data-check") == column);
2217
- if (element == undefined)
2218
- return;
2219
- if (rowsChek > 0 && rowsChek < this.ListData.length) {
2220
- element.setAttribute("class", "prCheckbox--indeterminate");
2221
- }
2222
- else {
2223
- element.removeAttribute("class");
2224
- }
2268
+ SetSearchTextValue(text) {
2269
+ this.SearchForm.get(SearchInputEnum.SearchText)?.setValue(text);
2225
2270
  }
2226
- OnRowsPerPageChange(value) {
2227
- this.RowsPerPage = value;
2228
- this.ResetTable();
2271
+ SetOperatorValue(value) {
2272
+ this.SearchForm.get(SearchInputEnum.OperatorId)?.setValue(value ?? 0);
2229
2273
  }
2230
- ResetTableSelected() {
2231
- this.ListDataSelectedTemp = [];
2232
- this.ListDataSelectedFilter = [...this.ListDataSelectedTemp];
2274
+ SetFieldValue(value) {
2275
+ this.SearchForm.get(SearchInputEnum.FieldId)?.setValue(value ?? 0);
2233
2276
  }
2234
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2235
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: TableComponent, isStandalone: true, selector: "intelica-table", inputs: { ComponentId: "ComponentId", ListData: "ListData", ShowRowPerPage: "ShowRowPerPage", ShowSearch: "ShowSearch", ListSearchOptions: "ListSearchOptions", ShowPagination: "ShowPagination", RowsPerPage: "RowsPerPage", ShowCheckbox: "ShowCheckbox", ShowIndex: "ShowIndex", ShowSearchTooltip: "ShowSearchTooltip", ListDataSelected: "ListDataSelected", SelectedIdentifier: "SelectedIdentifier", ClassName: "ClassName", DefaultSortField: "DefaultSortField", DefaultSortOrder: "DefaultSortOrder", scrollHeight: "scrollHeight", scrollable: "scrollable", AllowedPageSizes: "AllowedPageSizes", tableStyle: "tableStyle", IsTableDisabled: "IsTableDisabled" }, outputs: { EmitSelectedItem: "EmitSelectedItem", EmitListDataFilter: "EmitListDataFilter", EmitSearchEvent: "EmitSearchEvent", EmitSortEvent: "EmitSortEvent" }, providers: [FormatCellPipe, DatePipe], queries: [{ propertyName: "AdditionalTemplate", first: true, predicate: ["additionalTemplate"], descendants: true }, { propertyName: "AdditionalExtendedTemplate", first: true, predicate: ["additionalExtendedTemplate"], descendants: true }, { propertyName: "AdditionalCentralTemplate", first: true, predicate: ["additionalCentralTemplate"], descendants: true }, { propertyName: "Columns", predicate: ColumnComponent }, { propertyName: "ColumnGroups", predicate: ColumnGroupComponent }, { propertyName: "RowResumenGroups", predicate: RowResumenComponent }], viewQueries: [{ propertyName: "PaginatorTable", first: true, predicate: ["paginatorTable"], descendants: true }, { propertyName: "SearchTable", first: true, predicate: ["searchTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable\">\r\n <div class=\"prTableTools\">\r\n <div class=\"prTableTools__new prTableTools__new--left\">\r\n @if (AdditionalTemplate) {\r\n <ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n }\r\n </div>\r\n @if (ShowSearch) {\r\n <intelica-search\r\n #searchTable\r\n [ComponentId]=\"ComponentId + 'Search'\"\r\n (OnSearch)=\"ExecuteSearch($event)\"\r\n [SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n [SearchOnKeyup]=\"false\"\r\n [SimpleSearchInput]=\"false\"\r\n [ShowTooltip]=\"ShowSearchTooltip\"\r\n ></intelica-search>\r\n } @if (AdditionalCentralTemplate) {\r\n <div class=\"prTableTools__new prTableTools__new--right\">\r\n <ng-container\r\n *ngTemplateOutlet=\"AdditionalCentralTemplate\"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n\r\n @if (AdditionalExtendedTemplate) {\r\n <div class=\"prTableTools justify-content-start\">\r\n <ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n </div>\r\n\r\n }\r\n <p-table\r\n class=\"prTableBasic\"\r\n [ngClass]=\"ClassName\"\r\n [value]=\"ListDataTable\"\r\n responsiveLayout=\"scroll\"\r\n [(selection)]=\"ListDataSelectedFilter\"\r\n (onHeaderCheckboxToggle)=\"SelectAll($event)\"\r\n (onRowSelect)=\"OnRowSelect($event)\"\r\n (onRowUnselect)=\"OnRowUnselect($event)\"\r\n [sortField]=\"DefaultSortField\"\r\n [scrollable]=\"scrollable\"\r\n [scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n [tableStyle]=\"tableStyle\"\r\n [sortOrder]=\"DefaultSortOrder\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n @for (level of Levels; track $index) {\r\n <tr>\r\n @for (col of ColumnGroupList; track $index) { @if (col.level === level)\r\n {\r\n <th\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n [pSortableColumn]=\"col.sortable ? col.field : ''\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span \r\n [pTooltip]=\"col.headerTooltip || col.header\"\r\n [tooltipPosition]=\"col.headerTooltipPosition || 'top'\"\r\n >\r\n {{ col.header }}\r\n </span>\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n <th\r\n class=\"text-center\"\r\n style=\"width: 4%\"\r\n [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\"\r\n >\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n }\r\n <tr>\r\n @for (col of ColumnList; track $index) { @if(col.showHeader ){\r\n <th\r\n [class]=\"col.className\"\r\n [pSortableColumn]=\"\r\n !col.isChecboxColumn && col.sortable ? col.field : ''\r\n \"\r\n [style.width]=\"col.width\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span\r\n [pTooltip]=\"col.headerTooltip || col.header\"\r\n [tooltipPosition]=\"col.headerTooltipPosition || 'top'\"\r\n >\r\n {{ col.header }}\r\n </span>\r\n @if(!col.showIndex) { @if(col.isChecboxColumn){\r\n <br />\r\n <p-checkbox\r\n class=\"prCheckbox\"\r\n [binary]=\"true\"\r\n (click)=\"$event.stopPropagation()\"\r\n [(ngModel)]=\"HeaderState[col.field].checked\"\r\n (ngModelChange)=\"OnHeaderCheckboxChange($event, col.field)\"\r\n [attr.data-check]=\"col.field\"\r\n [disabled]=\"IsTableDisabled\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n HeaderState[col.field].indeterminate\r\n }\"\r\n ></p-checkbox>\r\n } @else {\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n } }\r\n </div>\r\n </th>\r\n } } @if(ShowCheckbox && ColumnGroupList.length == 0 ){\r\n <th class=\"text-center\" style=\"width: 4%\">\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n @if (ListDataFilter.length > 0) {\r\n <tr class=\"fixedRow\">\r\n @for (col of RowResumenList; track $index) {\r\n <td\r\n [ngClass]=\"col.className\"\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n >\r\n @if (col.templateRef) {\r\n <span>\r\n <ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n </span>\r\n } @else {\r\n <ng-template #defaultContent></ng-template>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n <tr>\r\n @for (col of ColumnList; track $index) {\r\n <td [ngClass]=\"col.className\">\r\n @if (col.showIndex) {\r\n {{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n } @else { @if (col.templateRef) {\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"\r\n ></ng-container>\r\n } @else if(col.isChecboxColumn){\r\n <p-checkbox\r\n [binary]=\"true\"\r\n [(ngModel)]=\"rowData[col.field]\"\r\n (onChange)=\"onBodyCheckboxChange(col.field)\"\r\n [disabled]=\"IsTableDisabled\"\r\n ></p-checkbox>\r\n } @else {\r\n <span\r\n class=\"text-breakWord\"\r\n [pTooltip]=\"col.tooltip\"\r\n [tooltipPosition]=\"col.tooltipPosition || 'top'\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n } }\r\n </td>\r\n } @if (ShowCheckbox) {\r\n <td class=\"text-center\">\r\n <p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template #emptymessage>\r\n <tr>\r\n <td\r\n [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\"\r\n class=\"text-center\"\r\n >\r\n {{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n <div class=\"prTableToolsBottom\">\r\n @if(TotalRecords !== 0){\r\n @if(ShowRowPerPage){\r\n <div class=\"prTableToolsBottom__itemPerPage\">\r\n {{ \"ItemPerPage\" | term : GlobalTermService.languageCode }}\r\n <p-select\r\n [options]=\"AllowedPageSizes\"\r\n [ngModel]=\"RowsPerPage\"\r\n appendTo=\"body\"\r\n (onChange)=\"OnRowsPerPageChange($event.value)\"\r\n [disabled]=\"TotalRecords === 0\"\r\n />\r\n <label for=\"pageSize\" class=\"control-label\">\r\n {{ 1 + RowsPerPage * (CurrentPage - 1) }} -\r\n {{\r\n CurrentPage * RowsPerPage >= TotalRecords\r\n ? TotalRecords\r\n : CurrentPage * RowsPerPage\r\n }}\r\n {{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalRecords }}\r\n {{ \"Items\" | term : GlobalTermService.languageCode }}\r\n </label>\r\n </div>\r\n } @if (ShowPagination) {\r\n <intelica-paginator\r\n #paginatorTable\r\n [TotalItems]=\"ListDataFilter.length\"\r\n [ItemsPerPage]=\"RowsPerPage\"\r\n (PageChange)=\"OnPageChange($event)\"\r\n ></intelica-paginator>\r\n }\r\n }\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SearchComponent, selector: "intelica-search", inputs: ["ComponentId", "ShowTooltip", "SearchFieldOptions", "SearchOnKeyup", "SimpleSearchInput", "Placeholder"], outputs: ["OnSearch"] }, { kind: "component", type: PaginatorComponent, selector: "intelica-paginator", inputs: ["TotalItems", "CurrentPage", "ItemsPerPage"], outputs: ["PageChange"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i2$1.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i2$1.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2$1.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i2$1.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i2$1.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TermPipe, name: "term" }, { kind: "pipe", type: FormatCellPipe, name: "formatCell" }] });
2277
+ GetSearchOperatorOptions() {
2278
+ return [
2279
+ { id: 0, value: "Contains" },
2280
+ { id: 1, value: "Exact" },
2281
+ { id: 2, value: "Begin" },
2282
+ { id: 3, value: "Ends" },
2283
+ ];
2284
+ }
2285
+ GetSearchFieldOptions() {
2286
+ return [
2287
+ { id: 0, value: "code" },
2288
+ { id: 1, value: "name" },
2289
+ ];
2290
+ }
2291
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2292
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: SearchComponent, isStandalone: true, selector: "intelica-search", inputs: { ComponentId: "ComponentId", ShowTooltip: "ShowTooltip", SearchFieldOptions: "SearchFieldOptions", SearchOnKeyup: "SearchOnKeyup", SimpleSearchInput: "SimpleSearchInput", Placeholder: "Placeholder" }, outputs: { OnSearchEvent: "OnSearch" }, providers: [
2293
+ {
2294
+ provide: NG_VALUE_ACCESSOR,
2295
+ useExisting: forwardRef(() => SearchComponent),
2296
+ },
2297
+ ], ngImport: i0, template: "<form [formGroup]=\"SearchForm\">\r\n\t<div class=\"prSearchBar\">\r\n\t\t<div class=\"prSearchBar__dropdown\" (click)=\"op.toggle($event)\" *ngIf=\"!SimpleSearchInput\">\r\n\t\t\t<div\r\n\t\t\t\tclass=\"prSearchBar__dropdown--label\"\r\n\t\t\t\t[pTooltip]=\"ShowTooltip ? (GetSelectedOperatorValue() | term : GlobalTermService.languageCode) + ', ' + (GetSelectedFieldValue() | term : GlobalTermService.languageCode) : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t>\r\n\t\t\t\t{{ GetSelectedFieldValue() | term : GlobalTermService.languageCode }}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"prSearchBar__dropdown--icon\">\r\n\t\t\t\t<i [ngClass]=\"IsDropdownOpen ? 'icon-arrow-up' : 'icon-arrow-down'\"></i>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<p-popover #op (onShow)=\"DropDownChange(true)\" (onHide)=\"DropDownChange(false)\" class=\"prSearchBar__popover\">\r\n\t\t\t<div class=\"searchDropDown\">\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectoperator\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t<div class=\"searchDropDown__listOption\">\r\n\t\t\t\t\t\t@for ( option of SearchOperatorOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"operatorId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t\t<label [for]=\"ComponentId + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<hr />\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectfield\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t@for ( option of SearchFieldOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"fieldId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t<label [for]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</p-popover>\r\n\t\t<div class=\"prSearchBar__content\">\r\n\t\t\t<div class=\"prSearchBar__btn\">\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"ClearSearchText()\" *ngIf=\"HasSearchText\">\r\n\t\t\t\t\t<i class=\"icon-times\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"OnSearch()\">\r\n\t\t\t\t\t<i class=\"icon-search\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t</div>\r\n\t\t\t<input\r\n\t\t\t\tpInputText\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tclass=\"prSearchBar__input\"\r\n\t\t\t\tformControlName=\"searchText\"\r\n\t\t\t\t[placeholder]=\"Placeholder | term : GlobalTermService.languageCode\"\r\n\t\t\t\t(keyup.enter)=\"OnSearchEnter()\"\r\n\t\t\t\t(keyup)=\"OnSearchKeyup()\"\r\n\t\t\t/>\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i3$1.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "styleClass", "autofocus", "binary", "variant", "size"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: TermPipe, name: "term" }] });
2236
2298
  }
2237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TableComponent, decorators: [{
2299
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SearchComponent, decorators: [{
2238
2300
  type: Component,
2239
- args: [{ selector: "intelica-table", standalone: true, imports: [
2240
- CommonModule,
2241
- SearchComponent,
2242
- PaginatorComponent,
2243
- TableModule,
2244
- Select,
2245
- BadgeModule,
2246
- TooltipModule,
2247
- TermPipe,
2248
- CheckboxModule,
2249
- FormsModule,
2250
- FormatCellPipe,
2251
- ], providers: [FormatCellPipe, DatePipe], template: "<div class=\"prTable\">\r\n <div class=\"prTableTools\">\r\n <div class=\"prTableTools__new prTableTools__new--left\">\r\n @if (AdditionalTemplate) {\r\n <ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n }\r\n </div>\r\n @if (ShowSearch) {\r\n <intelica-search\r\n #searchTable\r\n [ComponentId]=\"ComponentId + 'Search'\"\r\n (OnSearch)=\"ExecuteSearch($event)\"\r\n [SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n [SearchOnKeyup]=\"false\"\r\n [SimpleSearchInput]=\"false\"\r\n [ShowTooltip]=\"ShowSearchTooltip\"\r\n ></intelica-search>\r\n } @if (AdditionalCentralTemplate) {\r\n <div class=\"prTableTools__new prTableTools__new--right\">\r\n <ng-container\r\n *ngTemplateOutlet=\"AdditionalCentralTemplate\"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n\r\n @if (AdditionalExtendedTemplate) {\r\n <div class=\"prTableTools justify-content-start\">\r\n <ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n </div>\r\n\r\n }\r\n <p-table\r\n class=\"prTableBasic\"\r\n [ngClass]=\"ClassName\"\r\n [value]=\"ListDataTable\"\r\n responsiveLayout=\"scroll\"\r\n [(selection)]=\"ListDataSelectedFilter\"\r\n (onHeaderCheckboxToggle)=\"SelectAll($event)\"\r\n (onRowSelect)=\"OnRowSelect($event)\"\r\n (onRowUnselect)=\"OnRowUnselect($event)\"\r\n [sortField]=\"DefaultSortField\"\r\n [scrollable]=\"scrollable\"\r\n [scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n [tableStyle]=\"tableStyle\"\r\n [sortOrder]=\"DefaultSortOrder\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n @for (level of Levels; track $index) {\r\n <tr>\r\n @for (col of ColumnGroupList; track $index) { @if (col.level === level)\r\n {\r\n <th\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n [pSortableColumn]=\"col.sortable ? col.field : ''\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span \r\n [pTooltip]=\"col.headerTooltip || col.header\"\r\n [tooltipPosition]=\"col.headerTooltipPosition || 'top'\"\r\n >\r\n {{ col.header }}\r\n </span>\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n <th\r\n class=\"text-center\"\r\n style=\"width: 4%\"\r\n [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\"\r\n >\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n }\r\n <tr>\r\n @for (col of ColumnList; track $index) { @if(col.showHeader ){\r\n <th\r\n [class]=\"col.className\"\r\n [pSortableColumn]=\"\r\n !col.isChecboxColumn && col.sortable ? col.field : ''\r\n \"\r\n [style.width]=\"col.width\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span\r\n [pTooltip]=\"col.headerTooltip || col.header\"\r\n [tooltipPosition]=\"col.headerTooltipPosition || 'top'\"\r\n >\r\n {{ col.header }}\r\n </span>\r\n @if(!col.showIndex) { @if(col.isChecboxColumn){\r\n <br />\r\n <p-checkbox\r\n class=\"prCheckbox\"\r\n [binary]=\"true\"\r\n (click)=\"$event.stopPropagation()\"\r\n [(ngModel)]=\"HeaderState[col.field].checked\"\r\n (ngModelChange)=\"OnHeaderCheckboxChange($event, col.field)\"\r\n [attr.data-check]=\"col.field\"\r\n [disabled]=\"IsTableDisabled\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n HeaderState[col.field].indeterminate\r\n }\"\r\n ></p-checkbox>\r\n } @else {\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n } }\r\n </div>\r\n </th>\r\n } } @if(ShowCheckbox && ColumnGroupList.length == 0 ){\r\n <th class=\"text-center\" style=\"width: 4%\">\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n @if (ListDataFilter.length > 0) {\r\n <tr class=\"fixedRow\">\r\n @for (col of RowResumenList; track $index) {\r\n <td\r\n [ngClass]=\"col.className\"\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n >\r\n @if (col.templateRef) {\r\n <span>\r\n <ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n </span>\r\n } @else {\r\n <ng-template #defaultContent></ng-template>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n <tr>\r\n @for (col of ColumnList; track $index) {\r\n <td [ngClass]=\"col.className\">\r\n @if (col.showIndex) {\r\n {{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n } @else { @if (col.templateRef) {\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"\r\n ></ng-container>\r\n } @else if(col.isChecboxColumn){\r\n <p-checkbox\r\n [binary]=\"true\"\r\n [(ngModel)]=\"rowData[col.field]\"\r\n (onChange)=\"onBodyCheckboxChange(col.field)\"\r\n [disabled]=\"IsTableDisabled\"\r\n ></p-checkbox>\r\n } @else {\r\n <span\r\n class=\"text-breakWord\"\r\n [pTooltip]=\"col.tooltip\"\r\n [tooltipPosition]=\"col.tooltipPosition || 'top'\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n } }\r\n </td>\r\n } @if (ShowCheckbox) {\r\n <td class=\"text-center\">\r\n <p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template #emptymessage>\r\n <tr>\r\n <td\r\n [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\"\r\n class=\"text-center\"\r\n >\r\n {{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n <div class=\"prTableToolsBottom\">\r\n @if(TotalRecords !== 0){\r\n @if(ShowRowPerPage){\r\n <div class=\"prTableToolsBottom__itemPerPage\">\r\n {{ \"ItemPerPage\" | term : GlobalTermService.languageCode }}\r\n <p-select\r\n [options]=\"AllowedPageSizes\"\r\n [ngModel]=\"RowsPerPage\"\r\n appendTo=\"body\"\r\n (onChange)=\"OnRowsPerPageChange($event.value)\"\r\n [disabled]=\"TotalRecords === 0\"\r\n />\r\n <label for=\"pageSize\" class=\"control-label\">\r\n {{ 1 + RowsPerPage * (CurrentPage - 1) }} -\r\n {{\r\n CurrentPage * RowsPerPage >= TotalRecords\r\n ? TotalRecords\r\n : CurrentPage * RowsPerPage\r\n }}\r\n {{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalRecords }}\r\n {{ \"Items\" | term : GlobalTermService.languageCode }}\r\n </label>\r\n </div>\r\n } @if (ShowPagination) {\r\n <intelica-paginator\r\n #paginatorTable\r\n [TotalItems]=\"ListDataFilter.length\"\r\n [ItemsPerPage]=\"RowsPerPage\"\r\n (PageChange)=\"OnPageChange($event)\"\r\n ></intelica-paginator>\r\n }\r\n }\r\n </div>\r\n</div>\r\n" }]
2252
- }], propDecorators: { ComponentId: [{
2253
- type: Input
2254
- }], ListData: [{
2255
- type: Input
2256
- }], ShowRowPerPage: [{
2257
- type: Input
2258
- }], ShowSearch: [{
2259
- type: Input
2260
- }], ListSearchOptions: [{
2261
- type: Input
2262
- }], ShowPagination: [{
2263
- type: Input
2264
- }], RowsPerPage: [{
2265
- type: Input
2266
- }], ShowCheckbox: [{
2267
- type: Input
2268
- }], ShowIndex: [{
2269
- type: Input
2270
- }], ShowSearchTooltip: [{
2271
- type: Input
2272
- }], ListDataSelected: [{
2273
- type: Input
2274
- }], SelectedIdentifier: [{
2275
- type: Input
2276
- }], ClassName: [{
2277
- type: Input
2278
- }], DefaultSortField: [{
2279
- type: Input
2280
- }], DefaultSortOrder: [{
2301
+ args: [{ selector: "intelica-search", imports: [FormsModule, ReactiveFormsModule, RadioButtonModule, Popover, InputText, CommonModule, TooltipModule, TermPipe], providers: [
2302
+ {
2303
+ provide: NG_VALUE_ACCESSOR,
2304
+ useExisting: forwardRef(() => SearchComponent),
2305
+ },
2306
+ ], template: "<form [formGroup]=\"SearchForm\">\r\n\t<div class=\"prSearchBar\">\r\n\t\t<div class=\"prSearchBar__dropdown\" (click)=\"op.toggle($event)\" *ngIf=\"!SimpleSearchInput\">\r\n\t\t\t<div\r\n\t\t\t\tclass=\"prSearchBar__dropdown--label\"\r\n\t\t\t\t[pTooltip]=\"ShowTooltip ? (GetSelectedOperatorValue() | term : GlobalTermService.languageCode) + ', ' + (GetSelectedFieldValue() | term : GlobalTermService.languageCode) : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t>\r\n\t\t\t\t{{ GetSelectedFieldValue() | term : GlobalTermService.languageCode }}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"prSearchBar__dropdown--icon\">\r\n\t\t\t\t<i [ngClass]=\"IsDropdownOpen ? 'icon-arrow-up' : 'icon-arrow-down'\"></i>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<p-popover #op (onShow)=\"DropDownChange(true)\" (onHide)=\"DropDownChange(false)\" class=\"prSearchBar__popover\">\r\n\t\t\t<div class=\"searchDropDown\">\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectoperator\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t<div class=\"searchDropDown__listOption\">\r\n\t\t\t\t\t\t@for ( option of SearchOperatorOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"operatorId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t\t<label [for]=\"ComponentId + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<hr />\r\n\t\t\t\t<div class=\"searchDropDown__group\">\r\n\t\t\t\t\t<div class=\"searchDropDown__title\">{{ \"Selectfield\" | term : GlobalTermService.languageCode }}</div>\r\n\t\t\t\t\t@for ( option of SearchFieldOptions ; track option.id; let index = $index){\r\n\t\t\t\t\t<div class=\"searchDropDown__option\">\r\n\t\t\t\t\t\t<p-radiobutton [inputId]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton\" [value]=\"option.id\" formControlName=\"fieldId\" (change)=\"OnSearchKeyup()\" />\r\n\t\t\t\t\t\t<label [for]=\"ComponentId + 'fieldId_' + option.id\" class=\"prRadioButton--label\">{{ option.value | term : GlobalTermService.languageCode }}</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</p-popover>\r\n\t\t<div class=\"prSearchBar__content\">\r\n\t\t\t<div class=\"prSearchBar__btn\">\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"ClearSearchText()\" *ngIf=\"HasSearchText\">\r\n\t\t\t\t\t<i class=\"icon-times\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t\t<button pButton type=\"button\" class=\"prSearchBar__btn-action\" (click)=\"OnSearch()\">\r\n\t\t\t\t\t<i class=\"icon-search\"></i>\r\n\t\t\t\t</button>\r\n\t\t\t</div>\r\n\t\t\t<input\r\n\t\t\t\tpInputText\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tclass=\"prSearchBar__input\"\r\n\t\t\t\tformControlName=\"searchText\"\r\n\t\t\t\t[placeholder]=\"Placeholder | term : GlobalTermService.languageCode\"\r\n\t\t\t\t(keyup.enter)=\"OnSearchEnter()\"\r\n\t\t\t\t(keyup)=\"OnSearchKeyup()\"\r\n\t\t\t/>\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n" }]
2307
+ }], ctorParameters: () => [], propDecorators: { ComponentId: [{
2281
2308
  type: Input
2282
- }], scrollHeight: [{
2309
+ }], ShowTooltip: [{
2283
2310
  type: Input
2284
- }], scrollable: [{
2311
+ }], SearchFieldOptions: [{
2285
2312
  type: Input
2286
- }], AllowedPageSizes: [{
2313
+ }], SearchOnKeyup: [{
2287
2314
  type: Input
2288
- }], tableStyle: [{
2315
+ }], SimpleSearchInput: [{
2289
2316
  type: Input
2290
- }], IsTableDisabled: [{
2317
+ }], Placeholder: [{
2291
2318
  type: Input
2292
- }], EmitSelectedItem: [{
2293
- type: Output
2294
- }], EmitListDataFilter: [{
2295
- type: Output
2296
- }], EmitSearchEvent: [{
2297
- type: Output
2298
- }], EmitSortEvent: [{
2299
- type: Output
2300
- }], PaginatorTable: [{
2301
- type: ViewChild,
2302
- args: ["paginatorTable"]
2303
- }], SearchTable: [{
2304
- type: ViewChild,
2305
- args: ["searchTable"]
2306
- }], Columns: [{
2307
- type: ContentChildren,
2308
- args: [ColumnComponent]
2309
- }], ColumnGroups: [{
2310
- type: ContentChildren,
2311
- args: [ColumnGroupComponent]
2312
- }], RowResumenGroups: [{
2313
- type: ContentChildren,
2314
- args: [RowResumenComponent]
2315
- }], AdditionalTemplate: [{
2316
- type: ContentChild,
2317
- args: ["additionalTemplate"]
2318
- }], AdditionalExtendedTemplate: [{
2319
- type: ContentChild,
2320
- args: ["additionalExtendedTemplate"]
2321
- }], AdditionalCentralTemplate: [{
2322
- type: ContentChild,
2323
- args: ["additionalCentralTemplate"]
2319
+ }], OnSearchEvent: [{
2320
+ type: Output,
2321
+ args: ["OnSearch"]
2324
2322
  }] } });
2325
2323
 
2326
2324
  class TreeColumnComponent {
@@ -2650,7 +2648,7 @@ class TreeTableComponent {
2650
2648
  this.ResetTable();
2651
2649
  }
2652
2650
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TreeTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2653
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: TreeTableComponent, isStandalone: true, selector: "intelica-tree-table", inputs: { ComponentId: "ComponentId", ListData: "ListData", ClassName: "ClassName", groupRowsBy: "groupRowsBy", dataKey: "dataKey", DefaultSortField: "DefaultSortField", DefaultSortOrder: "DefaultSortOrder", scrollHeight: "scrollHeight", scrollable: "scrollable", tableStyle: "tableStyle", ShowSearch: "ShowSearch", ShowPagination: "ShowPagination", RowsPerPage: "RowsPerPage", AllowedPageSizes: "AllowedPageSizes", ShowCheckbox: "ShowCheckbox", ShowIndex: "ShowIndex", ShowSearchTooltip: "ShowSearchTooltip", ListDataSelected: "ListDataSelected", SelectedIdentifier: "SelectedIdentifier", ListSearchOptions: "ListSearchOptions", ShowRowPerPage: "ShowRowPerPage" }, outputs: { EmitSelectedItem: "EmitSelectedItem", EmitListDataFilter: "EmitListDataFilter", EmitSearchEvent: "EmitSearchEvent", EmitSortEvent: "EmitSortEvent" }, providers: [FormatCellPipe, DatePipe], queries: [{ propertyName: "AdditionalTemplate", first: true, predicate: ["additionalTemplate"], descendants: true }, { propertyName: "AdditionalCentralTemplate", first: true, predicate: ["additionalCentralTemplate"], descendants: true }, { propertyName: "AdditionalExtendedTemplate", first: true, predicate: ["additionalExtendedTemplate"], descendants: true }, { propertyName: "Columns", predicate: TreeColumnComponent }, { propertyName: "ColumnGroups", predicate: TreeColumnGroupComponent }, { propertyName: "RowResumenGroups", predicate: RowResumenTreeComponent }], viewQueries: [{ propertyName: "PaginatorTable", first: true, predicate: ["paginatorTable"], descendants: true }, { propertyName: "SearchTable", first: true, predicate: ["searchTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable\">\r\n <div class=\"prTableTools\">\r\n <div class=\"prTableTools__new prTableTools__new--left\">\r\n @if (AdditionalTemplate) {\r\n <ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n }\r\n </div>\r\n\r\n @if (ShowSearch) {\r\n <intelica-search\r\n #searchTable\r\n [ComponentId]=\"ComponentId + 'Search'\"\r\n (OnSearch)=\"ExecuteSearch($event)\"\r\n [SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n [SearchOnKeyup]=\"false\"\r\n [SimpleSearchInput]=\"false\"\r\n [ShowTooltip]=\"ShowSearchTooltip\"\r\n ></intelica-search>\r\n } @if (AdditionalCentralTemplate) {\r\n <div class=\"prTableTools__new prTableTools__new--right\">\r\n <ng-container\r\n *ngTemplateOutlet=\"AdditionalCentralTemplate\"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (AdditionalExtendedTemplate) {\r\n <div class=\"prTableTools justify-content-start\">\r\n <ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n </div>\r\n\r\n }\r\n <p-table\r\n class=\"prTableBasic\"\r\n [value]=\"ListDataTable\"\r\n [ngClass]=\"ClassName\"\r\n responsiveLayout=\"scroll\"\r\n [(selection)]=\"ListDataSelected\"\r\n (onHeaderCheckboxToggle)=\"SelectAll($event)\"\r\n (onRowSelect)=\"OnRowSelect($event)\"\r\n (onRowUnselect)=\"OnRowUnselect($event)\"\r\n [groupRowsBy]=\"groupRowsBy\"\r\n [dataKey]=\"dataKey\"\r\n [sortField]=\"DefaultSortField\"\r\n [scrollable]=\"scrollable\"\r\n [scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n [tableStyle]=\"tableStyle\"\r\n [sortOrder]=\"SortOrder\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n @for (level of Levels; track $index) {\r\n <tr>\r\n @for (col of ColumnGroupList; track $index) { @if (col.level === level)\r\n {\r\n <th\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n [pSortableColumn]=\"col.sortable ? col.field : ''\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span pTooltip=\"{{ col.header }}\">{{ col.header }}</span>\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n <th\r\n class=\"text-center\"\r\n style=\"width: 4%\"\r\n [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\"\r\n >\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n }\r\n\r\n <tr>\r\n @for (col of ColumnList; track $index) { @if(col.showHeader) {\r\n <th\r\n [class]=\"col.className\"\r\n [pSortableColumn]=\"\r\n !col.isChecboxColumn && col.sortable ? col.field : ''\r\n \"\r\n [style.width]=\"col.width\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span\r\n pTooltip=\"{{ col.headerTooltip }}\"\r\n tooltipPosition=\"{{ col.headerTooltipPosition }}\"\r\n >\r\n {{ col.header }}\r\n </span>\r\n @if (!col.showIndex) { @if (col.isChecboxColumn) {\r\n <br />\r\n <p-checkbox\r\n [binary]=\"true\"\r\n (click)=\"$event.stopPropagation()\"\r\n (onChange)=\"OnHeaderCheckboxChange($event, col.field)\"\r\n [attr.data-check]=\"col.field\"\r\n ></p-checkbox>\r\n } @else {\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n } }\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n <th class=\"text-center\" style=\"width: 4%\">\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n\r\n @if (ListDataFilter.length > 0) {\r\n <tr class=\"fixedRow\">\r\n @for (col of RowResumenList; track $index) {\r\n <td\r\n [ngClass]=\"col.className\"\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n >\r\n @if (col.templateRef) {\r\n <span\r\n ><ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container\r\n ></span>\r\n } @else {\r\n <ng-template #defaultContent></ng-template>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-rowIndex=\"rowIndex\"\r\n let-expanded=\"expanded\"\r\n >\r\n <tr>\r\n @for (col of ColumnList; track $index) {\r\n <td [ngClass]=\"col.className\">\r\n @if (col.showIndex) {\r\n {{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n } @else if (col.field === 'name' && rowData.children &&\r\n rowData.children.length > 0) {\r\n <div class=\"prTable__expandToggleRow\">\r\n <p-button\r\n [pRowToggler]=\"rowData\"\r\n class=\"prButton prButton--icon prButton--iconBlue\"\r\n >\r\n <i\r\n [class]=\"\r\n expanded ? 'icon icon-collapse-rows' : 'icon icon-expand-rows'\r\n \"\r\n ></i>\r\n </p-button>\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n </div>\r\n } @else { @if (col.templateRef) {\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"\r\n ></ng-container>\r\n } @else if (col.isChecboxColumn) {\r\n <p-checkbox\r\n [binary]=\"true\"\r\n [(ngModel)]=\"rowData[col.field]\"\r\n (onChange)=\"IsInderteminate(col.field)\"\r\n ></p-checkbox>\r\n } @else {\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n } }\r\n </td>\r\n } @if (ShowCheckbox) {\r\n <td class=\"text-center\">\r\n <p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"expandedrow\" let-rowData let-rowIndex=\"rowIndex\">\r\n <ng-container *ngIf=\"rowData.children?.length\">\r\n <tr\r\n *ngFor=\"let childRow of rowData.children; let i = index\"\r\n class=\"subRow\"\r\n >\r\n <td\r\n *ngFor=\"let col of ColumnList; let j = index\"\r\n [ngClass]=\"col.className\"\r\n >\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n <ng-container *ngIf=\"col.showIndex && j === 0; else normalCell\">\r\n {{ rowIndex + 1 + \".\" + getLetter(i) }}\r\n </ng-container>\r\n <ng-template #normalCell>\r\n @if (col.field === \"id\" && i < 26) {\r\n <span>{{ childRow[col.field] + \".\" + getLetter(i) }}</span>\r\n } @else {\r\n <ng-container *ngIf=\"col.templateRef; else defaultExpandedContent\">\r\n <ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: childRow }\"></ng-container>\r\n </ng-container>\r\n <ng-template #defaultExpandedContent>\r\n <span [class]=\"col.field === 'name' ? 'prTable__expandIdentText' : ''\">\r\n {{ childRow[col.field] | formatCell : col.formatType }}\r\n </span>\r\n </ng-template> \r\n }\r\n </ng-template>\r\n </span>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template #emptymessage>\r\n <tr>\r\n <td\r\n [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\"\r\n class=\"text-center\"\r\n >\r\n {{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n\r\n <div class=\"prTableToolsBottom\">\r\n @if(TotalRecords !== 0){\r\n @if (ShowRowPerPage) {\r\n <div class=\"prTableToolsBottom__itemPerPage\">\r\n {{ \"ItemPerPage\" | term : GlobalTermService.languageCode }}\r\n <p-select\r\n [options]=\"AllowedPageSizes\"\r\n [ngModel]=\"RowsPerPage\"\r\n appendTo=\"body\"\r\n (onChange)=\"OnRowsPerPageChange($event.value)\"\r\n />\r\n <label for=\"pageSize\" class=\"control-label\">\r\n {{ 1 + RowsPerPage * (CurrentPage - 1) }} -\r\n {{\r\n CurrentPage * RowsPerPage >= TotalRecords\r\n ? TotalRecords\r\n : CurrentPage * RowsPerPage\r\n }}\r\n {{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalRecords }}\r\n {{ \"Items\" | term : GlobalTermService.languageCode }}\r\n </label>\r\n </div>\r\n } @if (ShowPagination) {\r\n <intelica-paginator\r\n #paginatorTable\r\n [TotalItems]=\"ListDataFilter.length\"\r\n [ItemsPerPage]=\"RowsPerPage\"\r\n (PageChange)=\"OnPageChange($event)\"\r\n >\r\n </intelica-paginator>\r\n }\r\n }\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SearchComponent, selector: "intelica-search", inputs: ["ComponentId", "ShowTooltip", "SearchFieldOptions", "SearchOnKeyup", "SimpleSearchInput", "Placeholder"], outputs: ["OnSearch"] }, { kind: "component", type: PaginatorComponent, selector: "intelica-paginator", inputs: ["TotalItems", "CurrentPage", "ItemsPerPage"], outputs: ["PageChange"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i2$1.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i2$1.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i2$1.RowToggler, selector: "[pRowToggler]", inputs: ["pRowToggler", "pRowTogglerDisabled"] }, { kind: "component", type: i2$1.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i2$1.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i2$1.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TermPipe, name: "term" }, { kind: "pipe", type: FormatCellPipe, name: "formatCell" }] });
2651
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: TreeTableComponent, isStandalone: true, selector: "intelica-tree-table", inputs: { ComponentId: "ComponentId", ListData: "ListData", ClassName: "ClassName", groupRowsBy: "groupRowsBy", dataKey: "dataKey", DefaultSortField: "DefaultSortField", DefaultSortOrder: "DefaultSortOrder", scrollHeight: "scrollHeight", scrollable: "scrollable", tableStyle: "tableStyle", ShowSearch: "ShowSearch", ShowPagination: "ShowPagination", RowsPerPage: "RowsPerPage", AllowedPageSizes: "AllowedPageSizes", ShowCheckbox: "ShowCheckbox", ShowIndex: "ShowIndex", ShowSearchTooltip: "ShowSearchTooltip", ListDataSelected: "ListDataSelected", SelectedIdentifier: "SelectedIdentifier", ListSearchOptions: "ListSearchOptions", ShowRowPerPage: "ShowRowPerPage" }, outputs: { EmitSelectedItem: "EmitSelectedItem", EmitListDataFilter: "EmitListDataFilter", EmitSearchEvent: "EmitSearchEvent", EmitSortEvent: "EmitSortEvent" }, providers: [FormatCellPipe, DatePipe], queries: [{ propertyName: "AdditionalTemplate", first: true, predicate: ["additionalTemplate"], descendants: true }, { propertyName: "AdditionalCentralTemplate", first: true, predicate: ["additionalCentralTemplate"], descendants: true }, { propertyName: "AdditionalExtendedTemplate", first: true, predicate: ["additionalExtendedTemplate"], descendants: true }, { propertyName: "Columns", predicate: TreeColumnComponent }, { propertyName: "ColumnGroups", predicate: TreeColumnGroupComponent }, { propertyName: "RowResumenGroups", predicate: RowResumenTreeComponent }], viewQueries: [{ propertyName: "PaginatorTable", first: true, predicate: ["paginatorTable"], descendants: true }, { propertyName: "SearchTable", first: true, predicate: ["searchTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable\">\r\n <div class=\"prTableTools\">\r\n <div class=\"prTableTools__new prTableTools__new--left\">\r\n @if (AdditionalTemplate) {\r\n <ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n }\r\n </div>\r\n\r\n @if (ShowSearch) {\r\n <intelica-search\r\n #searchTable\r\n [ComponentId]=\"ComponentId + 'Search'\"\r\n (OnSearch)=\"ExecuteSearch($event)\"\r\n [SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n [SearchOnKeyup]=\"false\"\r\n [SimpleSearchInput]=\"false\"\r\n [ShowTooltip]=\"ShowSearchTooltip\"\r\n ></intelica-search>\r\n } @if (AdditionalCentralTemplate) {\r\n <div class=\"prTableTools__new prTableTools__new--right\">\r\n <ng-container\r\n *ngTemplateOutlet=\"AdditionalCentralTemplate\"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (AdditionalExtendedTemplate) {\r\n <div class=\"prTableTools justify-content-start\">\r\n <ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n </div>\r\n\r\n }\r\n <p-table\r\n class=\"prTableBasic\"\r\n [value]=\"ListDataTable\"\r\n [ngClass]=\"ClassName\"\r\n responsiveLayout=\"scroll\"\r\n [(selection)]=\"ListDataSelected\"\r\n (onHeaderCheckboxToggle)=\"SelectAll($event)\"\r\n (onRowSelect)=\"OnRowSelect($event)\"\r\n (onRowUnselect)=\"OnRowUnselect($event)\"\r\n [groupRowsBy]=\"groupRowsBy\"\r\n [dataKey]=\"dataKey\"\r\n [sortField]=\"DefaultSortField\"\r\n [scrollable]=\"scrollable\"\r\n [scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n [tableStyle]=\"tableStyle\"\r\n [sortOrder]=\"SortOrder\"\r\n >\r\n <ng-template pTemplate=\"header\">\r\n @for (level of Levels; track $index) {\r\n <tr>\r\n @for (col of ColumnGroupList; track $index) { @if (col.level === level)\r\n {\r\n <th\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n [pSortableColumn]=\"col.sortable ? col.field : ''\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span pTooltip=\"{{ col.header }}\">{{ col.header }}</span>\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n <th\r\n class=\"text-center\"\r\n style=\"width: 4%\"\r\n [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\"\r\n >\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n }\r\n\r\n <tr>\r\n @for (col of ColumnList; track $index) { @if(col.showHeader) {\r\n <th\r\n [class]=\"col.className\"\r\n [pSortableColumn]=\"\r\n !col.isChecboxColumn && col.sortable ? col.field : ''\r\n \"\r\n [style.width]=\"col.width\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span\r\n pTooltip=\"{{ col.headerTooltip }}\"\r\n tooltipPosition=\"{{ col.headerTooltipPosition }}\"\r\n >\r\n {{ col.header }}\r\n </span>\r\n @if (!col.showIndex) { @if (col.isChecboxColumn) {\r\n <br />\r\n <p-checkbox\r\n [binary]=\"true\"\r\n (click)=\"$event.stopPropagation()\"\r\n (onChange)=\"OnHeaderCheckboxChange($event, col.field)\"\r\n [attr.data-check]=\"col.field\"\r\n ></p-checkbox>\r\n } @else {\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n } }\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n <th class=\"text-center\" style=\"width: 4%\">\r\n <p-tableHeaderCheckbox\r\n class=\"prCheckbox\"\r\n [ngClass]=\"{\r\n 'prCheckbox--indeterminate':\r\n ListDataSelectedTemp.length > 0 &&\r\n ListDataSelectedTemp.length < ListDataFilter.length\r\n }\"\r\n />\r\n </th>\r\n }\r\n </tr>\r\n\r\n @if (ListDataFilter.length > 0) {\r\n <tr class=\"fixedRow\">\r\n @for (col of RowResumenList; track $index) {\r\n <td\r\n [ngClass]=\"col.className\"\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n >\r\n @if (col.templateRef) {\r\n <span\r\n ><ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container\r\n ></span>\r\n } @else {\r\n <ng-template #defaultContent></ng-template>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-rowIndex=\"rowIndex\"\r\n let-expanded=\"expanded\"\r\n >\r\n <tr>\r\n @for (col of ColumnList; track $index) {\r\n <td [ngClass]=\"col.className\">\r\n @if (col.showIndex) {\r\n {{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n } @else if (col.field === 'name' && rowData.children &&\r\n rowData.children.length > 0) {\r\n <div class=\"prTable__expandToggleRow\">\r\n <p-button\r\n [pRowToggler]=\"rowData\"\r\n class=\"prButton prButton--icon prButton--iconBlue\"\r\n >\r\n <i\r\n [class]=\"\r\n expanded ? 'icon icon-collapse-rows' : 'icon icon-expand-rows'\r\n \"\r\n ></i>\r\n </p-button>\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n </div>\r\n } @else { @if (col.templateRef) {\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"\r\n ></ng-container>\r\n } @else if (col.isChecboxColumn) {\r\n <p-checkbox\r\n [binary]=\"true\"\r\n [(ngModel)]=\"rowData[col.field]\"\r\n (onChange)=\"IsInderteminate(col.field)\"\r\n ></p-checkbox>\r\n } @else {\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n } }\r\n </td>\r\n } @if (ShowCheckbox) {\r\n <td class=\"text-center\">\r\n <p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"expandedrow\" let-rowData let-rowIndex=\"rowIndex\">\r\n <ng-container *ngIf=\"rowData.children?.length\">\r\n <tr\r\n *ngFor=\"let childRow of rowData.children; let i = index\"\r\n class=\"subRow\"\r\n >\r\n <td\r\n *ngFor=\"let col of ColumnList; let j = index\"\r\n [ngClass]=\"col.className\"\r\n >\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n <ng-container *ngIf=\"col.showIndex && j === 0; else normalCell\">\r\n {{ rowIndex + 1 + \".\" + getLetter(i) }}\r\n </ng-container>\r\n <ng-template #normalCell>\r\n @if (col.field === \"id\" && i < 26) {\r\n <span>{{ childRow[col.field] + \".\" + getLetter(i) }}</span>\r\n } @else {\r\n <ng-container *ngIf=\"col.templateRef; else defaultExpandedContent\">\r\n <ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: childRow }\"></ng-container>\r\n </ng-container>\r\n <ng-template #defaultExpandedContent>\r\n <span [class]=\"col.field === 'name' ? 'prTable__expandIdentText' : ''\">\r\n {{ childRow[col.field] | formatCell : col.formatType }}\r\n </span>\r\n </ng-template> \r\n }\r\n </ng-template>\r\n </span>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template #emptymessage>\r\n <tr>\r\n <td\r\n [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\"\r\n class=\"text-center\"\r\n >\r\n {{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n\r\n <div class=\"prTableToolsBottom\">\r\n @if(TotalRecords !== 0){\r\n @if (ShowRowPerPage) {\r\n <div class=\"prTableToolsBottom__itemPerPage\">\r\n {{ \"ItemPerPage\" | term : GlobalTermService.languageCode }}\r\n <p-select\r\n [options]=\"AllowedPageSizes\"\r\n [ngModel]=\"RowsPerPage\"\r\n appendTo=\"body\"\r\n (onChange)=\"OnRowsPerPageChange($event.value)\"\r\n />\r\n <label for=\"pageSize\" class=\"control-label\">\r\n {{ 1 + RowsPerPage * (CurrentPage - 1) }} -\r\n {{\r\n CurrentPage * RowsPerPage >= TotalRecords\r\n ? TotalRecords\r\n : CurrentPage * RowsPerPage\r\n }}\r\n {{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalRecords }}\r\n {{ \"Items\" | term : GlobalTermService.languageCode }}\r\n </label>\r\n </div>\r\n } @if (ShowPagination) {\r\n <intelica-paginator\r\n #paginatorTable\r\n [TotalItems]=\"ListDataFilter.length\"\r\n [ItemsPerPage]=\"RowsPerPage\"\r\n (PageChange)=\"OnPageChange($event)\"\r\n >\r\n </intelica-paginator>\r\n }\r\n }\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SearchComponent, selector: "intelica-search", inputs: ["ComponentId", "ShowTooltip", "SearchFieldOptions", "SearchOnKeyup", "SimpleSearchInput", "Placeholder"], outputs: ["OnSearch"] }, { kind: "component", type: PaginatorComponent, selector: "intelica-paginator", inputs: ["TotalItems", "CurrentPage", "ItemsPerPage"], outputs: ["PageChange"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i3.RowToggler, selector: "[pRowToggler]", inputs: ["pRowToggler", "pRowTogglerDisabled"] }, { kind: "component", type: i3.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i3.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i3.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TermPipe, name: "term" }, { kind: "pipe", type: FormatCellPipe, name: "formatCell" }] });
2654
2652
  }
2655
2653
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TreeTableComponent, decorators: [{
2656
2654
  type: Component,
@@ -2856,7 +2854,7 @@ class MatrixTableComponent {
2856
2854
  this.Levels = Array.from({ length: this.MaxLevel }, (_, i) => i);
2857
2855
  }
2858
2856
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: MatrixTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2859
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: MatrixTableComponent, isStandalone: true, selector: "intelica-matrix-table", inputs: { ComponentId: "ComponentId", ListData: "ListData", ShowIndex: "ShowIndex", ClassName: "ClassName", dataKey: "dataKey", scrollHeight: "scrollHeight", scrollable: "scrollable", tableStyle: "tableStyle" }, queries: [{ propertyName: "Columns", predicate: MatrixColumnComponent }, { propertyName: "ColumnGroups", predicate: MatrixColumnGroupComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable prTable--blueLeft\">\r\n\t<p-table\r\n\t\tclass=\"prTableBasic\"\r\n\t\t[ngClass]=\"ClassName\"\r\n\t\t[value]=\"ListData\"\r\n\t\tresponsiveLayout=\"scroll\"\r\n\t\t[sortOrder]=\"-1\"\r\n\t\tdataKey=\"dataKey\"\r\n\t\t[scrollable]=\"scrollable\"\r\n\t\t[scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n\t\t[tableStyle]=\"tableStyle\"\r\n\t>\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t@for (level of Levels; track $index) {\r\n\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnGroupList; track $index) { @if (col.level === level) {\r\n\t\t\t\r\n\t\t\t\t<th [ngClass]=\"col.className\" [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\"\r\n\t\t\t\t\t[style.min-width]=\"col.minWidth\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</th>\r\n\t\t\t\r\n\t\t\t\t} }\r\n\t\t\t</tr>\r\n\t\t\t}\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) { @if(col.showHeader ){\r\n\t\t\t\t<th [class]=\"col.className\" [style.width]=\"col.width\" [style.min-width]=\"col.minWidth\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</th>\r\n\t\t\t\t} }\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t\t<ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track col; let i = $index) {\r\n\t\t\t\t<td [ngClass]=\"col.className\" [class.left-header]=\"i === 0\">\r\n\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"></ng-container>\r\n\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t<span class=\"text-breakWord\" [pTooltip]=\"col.tooltip\" [tooltipPosition]=\"col.tooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t{{ rowData[col.field] ?? \"-\" }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t}\r\n\t\t\t\t</td>\r\n\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t\t<ng-container *ngIf=\"rowData.children?.length > 0\">\r\n\t\t\t\t<tr *ngFor=\"let childRow of rowData.children\">\r\n\t\t\t\t\t<td *ngFor=\"let col of ColumnList; let i = index\" [ngClass]=\"col.className\" [class.child-cell-padding]=\"i === 0\" [class.left-header]=\"i === 0\">\r\n\t\t\t\t\t\t{{ childRow[col.field] }}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</ng-container>\r\n\t\t</ng-template>\r\n\t\t<ng-template #emptymessage>\r\n\t\t\t<tr>\r\n\t\t\t\t<td [attr.colspan]=\"ColumnList.length\" class=\"text-center\">\r\n\t\t\t\t\t{{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t</p-table>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i2$1.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "pipe", type: TermPipe, name: "term" }] });
2857
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: MatrixTableComponent, isStandalone: true, selector: "intelica-matrix-table", inputs: { ComponentId: "ComponentId", ListData: "ListData", ShowIndex: "ShowIndex", ClassName: "ClassName", dataKey: "dataKey", scrollHeight: "scrollHeight", scrollable: "scrollable", tableStyle: "tableStyle" }, queries: [{ propertyName: "Columns", predicate: MatrixColumnComponent }, { propertyName: "ColumnGroups", predicate: MatrixColumnGroupComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable prTable--blueLeft\">\r\n\t<p-table\r\n\t\tclass=\"prTableBasic\"\r\n\t\t[ngClass]=\"ClassName\"\r\n\t\t[value]=\"ListData\"\r\n\t\tresponsiveLayout=\"scroll\"\r\n\t\t[sortOrder]=\"-1\"\r\n\t\tdataKey=\"dataKey\"\r\n\t\t[scrollable]=\"scrollable\"\r\n\t\t[scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n\t\t[tableStyle]=\"tableStyle\"\r\n\t>\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t@for (level of Levels; track $index) {\r\n\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnGroupList; track $index) { @if (col.level === level) {\r\n\t\t\t\r\n\t\t\t\t<th [ngClass]=\"col.className\" [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\"\r\n\t\t\t\t\t[style.min-width]=\"col.minWidth\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</th>\r\n\t\t\t\r\n\t\t\t\t} }\r\n\t\t\t</tr>\r\n\t\t\t}\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) { @if(col.showHeader ){\r\n\t\t\t\t<th [class]=\"col.className\" [style.width]=\"col.width\" [style.min-width]=\"col.minWidth\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</th>\r\n\t\t\t\t} }\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t\t<ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track col; let i = $index) {\r\n\t\t\t\t<td [ngClass]=\"col.className\" [class.left-header]=\"i === 0\">\r\n\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"></ng-container>\r\n\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t<span class=\"text-breakWord\" [pTooltip]=\"col.tooltip\" [tooltipPosition]=\"col.tooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t{{ rowData[col.field] ?? \"-\" }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t}\r\n\t\t\t\t</td>\r\n\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t\t<ng-container *ngIf=\"rowData.children?.length > 0\">\r\n\t\t\t\t<tr *ngFor=\"let childRow of rowData.children\">\r\n\t\t\t\t\t<td *ngFor=\"let col of ColumnList; let i = index\" [ngClass]=\"col.className\" [class.child-cell-padding]=\"i === 0\" [class.left-header]=\"i === 0\">\r\n\t\t\t\t\t\t{{ childRow[col.field] }}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</ng-container>\r\n\t\t</ng-template>\r\n\t\t<ng-template #emptymessage>\r\n\t\t\t<tr>\r\n\t\t\t\t<td [attr.colspan]=\"ColumnList.length\" class=\"text-center\">\r\n\t\t\t\t\t{{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t</p-table>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "pipe", type: TermPipe, name: "term" }] });
2860
2858
  }
2861
2859
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: MatrixTableComponent, decorators: [{
2862
2860
  type: Component,
@@ -3249,7 +3247,7 @@ class FilterChipsComponent {
3249
3247
  return value ?? null;
3250
3248
  }
3251
3249
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FilterChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3252
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: FilterChipsComponent, isStandalone: true, selector: "filter-chips", inputs: { filters: "filters" }, outputs: { remove: "remove", openPopUp: "openPopUp" }, providers: [DatePipe], ngImport: i0, template: "<div class=\"d-flex gap-2 flex-wrap\">\r\n\t@for (item of filters; track $index) {\r\n\t<button\r\n\t\tclass=\"prPill\"\r\n\t\tpInputText\r\n\t\t(click)=\"onTapChip(item)\"\r\n\t\t[pTooltip]=\"item.isTooltipForm ? tooltipFormContent : item.valueName!.length > 1 ? tooltipContent : item.title ?? ''\"\r\n\t\ttooltipPosition=\"top\"\r\n\t>\r\n\t\t<!-- Templates de tooltip -->\r\n\t\t<ng-template #tooltipFormContent>\r\n\t\t\t<span>{{ item.text?.toString() }}</span>\r\n\t\t\t<br />\r\n\t\t\t<ul *ngIf=\"item.valueName!.length > 1\" class=\"tooltip-list list-unlisted text-start filterChipsList\">\r\n\t\t\t\t<li *ngFor=\"let value of item.valueName\">{{ value }}</li>\r\n\t\t\t</ul>\r\n\t\t</ng-template>\r\n\r\n\t\t<ng-template #tooltipContent>\r\n\t\t\t<ul *ngIf=\"item.valueName!.length > 1\" class=\"tooltip-list list-unlisted text-start filterChipsList\">\r\n\t\t\t\t<li *ngFor=\"let value of sortList(item.valueName)\">\r\n\t\t\t\t\t{{ value }}\r\n\t\t\t\t</li>\r\n\t\t\t</ul>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- Texto del chip -->\r\n\t\t<span class=\"prPill__value\">\r\n\t\t\t<ng-container *ngIf=\"isBooleanTrue(item.value)\">{{ item.title | slice : 0 : 15 }}{{ item.title && item.title.length > 15 ? \"...\" : \"\" }}</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"(!item.valueName || item.valueName.length === 0) && item.value && item.value.length > 0 && !item.dateFormat\">\r\n\t\t\t\t{{ item.text | slice : 0 : 15 }}{{ item.text && item.text.length > 15 ? \"...\" : \"\" }}\r\n\t\t\t</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.dateFormat\">\r\n\t\t\t\t{{ formatDateValue(item.value, item.dateFormat) }}\r\n\t\t\t</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.valueName?.length === 1\">{{ item.text | slice : 0 : 15 }}{{ item.text!.length > 15 ? \"...\" : \"\" }}</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.valueName!.length > 1\">{{ item.title | slice : 0 : 15 }}{{ item.title!.length > 15 ? \"...\" : \"\" }}</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.valueName!.length > 1 && !item.isTooltipForm\">({{ item.valueName?.length }})</ng-container>\r\n\t\t</span>\r\n\r\n\t\t<!-- Bot\u00F3n de cierre -->\r\n\t\t<i class=\"icon-close1\" (click)=\"onRemove(item); $event.stopPropagation()\"></i>\r\n\t</button>\r\n\t}\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }] });
3250
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: FilterChipsComponent, isStandalone: true, selector: "filter-chips", inputs: { filters: "filters" }, outputs: { remove: "remove", openPopUp: "openPopUp" }, providers: [DatePipe], ngImport: i0, template: "<div class=\"d-flex gap-2 flex-wrap\">\r\n\t@for (item of filters; track $index) {\r\n\t<button\r\n\t\tclass=\"prPill\"\r\n\t\tpInputText\r\n\t\t(click)=\"onTapChip(item)\"\r\n\t\t[pTooltip]=\"item.isTooltipForm ? tooltipFormContent : item.valueName!.length > 1 ? tooltipContent : item.title ?? ''\"\r\n\t\ttooltipPosition=\"top\"\r\n\t>\r\n\t\t<!-- Templates de tooltip -->\r\n\t\t<ng-template #tooltipFormContent>\r\n\t\t\t<span>{{ item.text?.toString() }}</span>\r\n\t\t\t<br />\r\n\t\t\t<ul *ngIf=\"item.valueName!.length > 1\" class=\"tooltip-list list-unlisted text-start filterChipsList\">\r\n\t\t\t\t<li *ngFor=\"let value of item.valueName\">{{ value }}</li>\r\n\t\t\t</ul>\r\n\t\t</ng-template>\r\n\r\n\t\t<ng-template #tooltipContent>\r\n\t\t\t<ul *ngIf=\"item.valueName!.length > 1\" class=\"tooltip-list list-unlisted text-start filterChipsList\">\r\n\t\t\t\t<li *ngFor=\"let value of sortList(item.valueName)\">\r\n\t\t\t\t\t{{ value }}\r\n\t\t\t\t</li>\r\n\t\t\t</ul>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- Texto del chip -->\r\n\t\t<span class=\"prPill__value\">\r\n\t\t\t<ng-container *ngIf=\"isBooleanTrue(item.value)\">{{ item.title | slice : 0 : 15 }}{{ item.title && item.title.length > 15 ? \"...\" : \"\" }}</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"(!item.valueName || item.valueName.length === 0) && item.value && item.value.length > 0 && !item.dateFormat\">\r\n\t\t\t\t{{ item.text | slice : 0 : 15 }}{{ item.text && item.text.length > 15 ? \"...\" : \"\" }}\r\n\t\t\t</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.dateFormat\">\r\n\t\t\t\t{{ formatDateValue(item.value, item.dateFormat) }}\r\n\t\t\t</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.valueName?.length === 1\">{{ item.text | slice : 0 : 15 }}{{ item.text!.length > 15 ? \"...\" : \"\" }}</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.valueName!.length > 1\">{{ item.title | slice : 0 : 15 }}{{ item.title!.length > 15 ? \"...\" : \"\" }}</ng-container>\r\n\r\n\t\t\t<ng-container *ngIf=\"item.valueName!.length > 1 && !item.isTooltipForm\">({{ item.valueName?.length }})</ng-container>\r\n\t\t</span>\r\n\r\n\t\t<!-- Bot\u00F3n de cierre -->\r\n\t\t<i class=\"icon-close1\" (click)=\"onRemove(item); $event.stopPropagation()\"></i>\r\n\t</button>\r\n\t}\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }] });
3253
3251
  }
3254
3252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FilterChipsComponent, decorators: [{
3255
3253
  type: Component,
@@ -4269,7 +4267,7 @@ class FiltersComponent {
4269
4267
  return response;
4270
4268
  }
4271
4269
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FiltersComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
4272
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: FiltersComponent, isStandalone: true, selector: "intelica-filters", inputs: { showButtons: "showButtons", customClass: "customClass", columns: "columns" }, outputs: { EmitApply: "EmitApply", EmitCancel: "EmitCancel" }, queries: [{ propertyName: "filterActionsButtonTemplate", first: true, predicate: ["filterActionsButton"], descendants: true, static: true }, { propertyName: "filterDirectives", predicate: FilterDirective }], usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"container overflow-hidden\"\r\n [ngStyle]=\"{ 'min-width': 313 * columns + 'px' }\"\r\n>\r\n <div class=\"row gy-3 filtersAnalytics\">\r\n @for (colIndex of columnsLengthArray; track colIndex) {\r\n <div class=\"inputRowGap\" [ngClass]=\"setColumnSize()\">\r\n @for (filter of filterDirectives; track filter) { @if (filter.visible &&\r\n !filter.parent && filter.index == colIndex) {\r\n <div class=\"mb-3\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n template;\r\n context: { item: filter, index: getIndex(filter) }\r\n \"\r\n ></ng-container>\r\n </div>\r\n\r\n @for (child of filterDirectives; track child) { @if (child.visible &&\r\n child.parent === filter.name && child.index == colIndex) {\r\n <div class=\"mb-3\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n template;\r\n context: { item: child, index: getIndex(child, filter) }\r\n \"\r\n ></ng-container>\r\n </div>\r\n } } } }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n@if (showButtons) {\r\n<div class=\"btnBox btnBox--center mt-4\">\r\n <button\r\n pRipple\r\n class=\"grButton grButton--primary applyAnalytics\"\r\n (click)=\"clickApply()\"\r\n >\r\n <span>{{ \"Apply\" | term : GlobalTermService.languageCode }}</span>\r\n </button>\r\n <button\r\n pRipple\r\n class=\"grButton grButton--secondary cleanAnalytics\"\r\n (click)=\"clickCancel()\"\r\n >\r\n <span>{{ \"Clear\" | term : GlobalTermService.languageCode }}</span>\r\n </button>\r\n</div>\r\n}\r\n\r\n<!-- Template general -->\r\n<ng-template #template let-item=\"item\" let-index=\"index\">\r\n @if (item.visible) {\r\n <div\r\n class=\"formRowInput {{ item.filterClass }}\"\r\n [ngClass]=\"{ required: item.required }\"\r\n >\r\n @if (item.label && item.label.length > 0) {\r\n <div class=\"formRowInputLeft\">\r\n <div class=\"formRowInputNumber\">\r\n <span>{{ index }}</span>\r\n </div>\r\n <label [for]=\"item.name\">\r\n <span>{{ item.label }}</span>\r\n </label>\r\n </div>\r\n }\r\n <div class=\"formRowInputWrap align-items-center\">\r\n @if (item.type === filterTypeEnum.Select) {\r\n <ng-container\r\n *ngTemplateOutlet=\"select; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Text) {\r\n <ng-container\r\n *ngTemplateOutlet=\"text; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Checkbox) {\r\n <ng-container\r\n *ngTemplateOutlet=\"checkbox; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Date) {\r\n <ng-container\r\n *ngTemplateOutlet=\"date; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Template) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n template_filter;\r\n context: { item: item, index: index }\r\n \"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.TextArea) {\r\n <ng-container\r\n *ngTemplateOutlet=\"text_area; context: { item: item, index: index }\"\r\n ></ng-container>\r\n } @if (filterActionsButtonTemplate && item.hasFilterActionsButton) {\r\n <ng-container\r\n *ngTemplateOutlet=\"filterActionsButtonTemplate\"\r\n ></ng-container>\r\n }\r\n </div>\r\n @if (item.showClean && hasValue(item)) {\r\n <button class=\"desactive formRowInputClear\" (click)=\"cleanValue(item)\">\r\n <i class=\"icon-times\"></i>\r\n </button>\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n\r\n<!-- Tipos de filtros -->\r\n<ng-template #select let-item=\"item\" let-index=\"index\">\r\n @if (item.multiple) {\r\n <intelica-multi-select\r\n [placeholder]=\"item.placeholder\"\r\n [options]=\"item.options\"\r\n [showFilter]=\"getOptionCount(item) > filterThreshold\"\r\n [resetFilterOnHide]=\"item.resetFilterOnHide\"\r\n [showAll]=\"item.showAll\"\r\n [optionLabel]=\"item.optionLabel\"\r\n [optionValue]=\"item.optionValue\"\r\n [disabled]=\"!item.enabled\"\r\n [(ngModel)]=\"item.value\"\r\n (onChange)=\"onChangeMultiple($event, item)\"\r\n [appendTo]=\"item.appendTo\"\r\n [panelStyleClass]=\"item.panelStyleClass\"\r\n [allText]=\"item.allText\"\r\n [maxSelectedLabels]=\"item.maxSelectedLabels\"\r\n [virtualScroll]=\"item.virtualScroll\"\r\n [selectedItemsLabel]=\"item.selectedItemsLabel\"\r\n [group]=\"item.group\"\r\n [customClass]=\"isUnselected(item) ? ' is-unselected' : ''\"\r\n [class]=\"'fullWidth'\"\r\n ></intelica-multi-select>\r\n } @else {\r\n <p-select\r\n [options]=\"item.options\"\r\n [(ngModel)]=\"item.value\"\r\n [optionLabel]=\"item.optionLabel\"\r\n [optionValue]=\"item.optionValue\"\r\n [placeholder]=\"item.placeholder\"\r\n [disabled]=\"!item.enabled\"\r\n (onChange)=\"onChange($event, item)\"\r\n [filter]=\"getOptionCount(item) > filterThreshold\"\r\n [resetFilterOnHide]=\"item.resetFilterOnHide\"\r\n [appendTo]=\"item.appendTo\"\r\n [panelStyleClass]=\"item.panelStyleClass\"\r\n [virtualScroll]=\"item.virtualScroll\"\r\n [virtualScrollItemSize]=\"25\"\r\n [group]=\"item.group\"\r\n [ngClass]=\"{ prSelect: true, 'is-unselected': isUnselected(item) }\"\r\n appendTo=\"body\"\r\n >\r\n <ng-template let-group #group *ngIf=\"item.group\">\r\n <div class=\"flex items-center\">\r\n <span>{{ group.label }}</span>\r\n </div>\r\n </ng-template>\r\n </p-select>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #text let-item=\"item\" let-index=\"index\">\r\n <input\r\n pInputText\r\n class=\"prInputText\"\r\n type=\"text\"\r\n [disabled]=\"!item.enabled\"\r\n [(ngModel)]=\"item.value\"\r\n [placeholder]=\"item.placeholder\"\r\n (keyup)=\"onKeyUp($event, item)\"\r\n [maxlength]=\"item.maxlength\"\r\n />\r\n</ng-template>\r\n\r\n<ng-template #checkbox let-item=\"item\" let-index=\"index\">\r\n <p-checkbox\r\n class=\"prCheckbox\"\r\n [(ngModel)]=\"item.value\"\r\n [binary]=\"true\"\r\n [disabled]=\"!item.enabled\"\r\n (onChange)=\"onChangeCheck($event, item)\"\r\n ></p-checkbox>\r\n</ng-template>\r\n\r\n<ng-template #date let-item=\"item\" let-index=\"index\">\r\n <p-datepicker\r\n [(ngModel)]=\"item.value\"\r\n [selectionMode]=\"item.range ? 'range' : 'single'\"\r\n [disabled]=\"!item.enabled\"\r\n [iconDisplay]=\"'input'\"\r\n [showIcon]=\"true\"\r\n (ngModelChange)=\"onChange($event, item)\"\r\n [view]=\"getDateView(item.dateMode)\"\r\n [dateFormat]=\"getDateFormat(item.dateMode)\"\r\n class=\"prDatePicker\"\r\n appendTo=\"body\"\r\n panelStyleClass=\"prDatePicker\"\r\n [placeholder]=\"getDateFormatPlaceholder(item.dateMode)\"\r\n [readonlyInput]=\"item.isReadOnly\"\r\n [minDate]=\"item.min\"\r\n [maxDate]=\"item.max\"\r\n ></p-datepicker>\r\n</ng-template>\r\n\r\n<ng-template #template_filter let-item=\"item\" let-index=\"index\">\r\n <ng-container *ngTemplateOutlet=\"item.content\"></ng-container>\r\n</ng-template>\r\n\r\n<ng-template #text_area let-item=\"item\" let-index=\"index\">\r\n <textarea\r\n pTextarea\r\n class=\"prInputText\"\r\n [disabled]=\"!item.enabled\"\r\n [(ngModel)]=\"item.value\"\r\n [placeholder]=\"item.placeholder\"\r\n (keyup)=\"onKeyUp($event, item)\"\r\n ></textarea>\r\n</ng-template>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i2$3.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "styleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "readonlyInput", "shortYearCutoff", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "view", "defaultDate", "appendTo"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i6.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "ngmodule", type: TextareaModule }, { kind: "directive", type: i7.Textarea, selector: "[pTextarea], [pInputTextarea]", inputs: ["autoResize", "pSize", "variant", "fluid", "invalid"], outputs: ["onResize"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i3$2.Ripple, selector: "[pRipple]" }, { kind: "component", type: MultiSelectComponent, selector: "intelica-multi-select", inputs: ["id", "options", "optionLabel", "optionValue", "placeholder", "showFilter", "showAll", "allText", "maxSelectedLabels", "appendTo", "panelStyleClass", "virtualScroll", "disabled", "selectedItemsLabel", "textColorClass", "group", "resetFilterOnHide", "customClass"], outputs: ["onChange", "onPanelShow", "onPanelHide"] }, { kind: "pipe", type: TermPipe, name: "term" }] });
4270
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: FiltersComponent, isStandalone: true, selector: "intelica-filters", inputs: { showButtons: "showButtons", customClass: "customClass", columns: "columns" }, outputs: { EmitApply: "EmitApply", EmitCancel: "EmitCancel" }, queries: [{ propertyName: "filterActionsButtonTemplate", first: true, predicate: ["filterActionsButton"], descendants: true, static: true }, { propertyName: "filterDirectives", predicate: FilterDirective }], usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"container overflow-hidden\"\r\n [ngStyle]=\"{ 'min-width': 313 * columns + 'px' }\"\r\n>\r\n <div class=\"row gy-3 filtersAnalytics\">\r\n @for (colIndex of columnsLengthArray; track colIndex) {\r\n <div class=\"inputRowGap\" [ngClass]=\"setColumnSize()\">\r\n @for (filter of filterDirectives; track filter) { @if (filter.visible &&\r\n !filter.parent && filter.index == colIndex) {\r\n <div class=\"mb-3\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n template;\r\n context: { item: filter, index: getIndex(filter) }\r\n \"\r\n ></ng-container>\r\n </div>\r\n\r\n @for (child of filterDirectives; track child) { @if (child.visible &&\r\n child.parent === filter.name && child.index == colIndex) {\r\n <div class=\"mb-3\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n template;\r\n context: { item: child, index: getIndex(child, filter) }\r\n \"\r\n ></ng-container>\r\n </div>\r\n } } } }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n@if (showButtons) {\r\n<div class=\"btnBox btnBox--center mt-4\">\r\n <button\r\n pRipple\r\n class=\"grButton grButton--primary applyAnalytics\"\r\n (click)=\"clickApply()\"\r\n >\r\n <span>{{ \"Apply\" | term : GlobalTermService.languageCode }}</span>\r\n </button>\r\n <button\r\n pRipple\r\n class=\"grButton grButton--secondary cleanAnalytics\"\r\n (click)=\"clickCancel()\"\r\n >\r\n <span>{{ \"Clear\" | term : GlobalTermService.languageCode }}</span>\r\n </button>\r\n</div>\r\n}\r\n\r\n<!-- Template general -->\r\n<ng-template #template let-item=\"item\" let-index=\"index\">\r\n @if (item.visible) {\r\n <div\r\n class=\"formRowInput {{ item.filterClass }}\"\r\n [ngClass]=\"{ required: item.required }\"\r\n >\r\n @if (item.label && item.label.length > 0) {\r\n <div class=\"formRowInputLeft\">\r\n <div class=\"formRowInputNumber\">\r\n <span>{{ index }}</span>\r\n </div>\r\n <label [for]=\"item.name\">\r\n <span>{{ item.label }}</span>\r\n </label>\r\n </div>\r\n }\r\n <div class=\"formRowInputWrap align-items-center\">\r\n @if (item.type === filterTypeEnum.Select) {\r\n <ng-container\r\n *ngTemplateOutlet=\"select; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Text) {\r\n <ng-container\r\n *ngTemplateOutlet=\"text; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Checkbox) {\r\n <ng-container\r\n *ngTemplateOutlet=\"checkbox; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Date) {\r\n <ng-container\r\n *ngTemplateOutlet=\"date; context: { item: item, index: index }\"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.Template) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n template_filter;\r\n context: { item: item, index: index }\r\n \"\r\n ></ng-container>\r\n }\r\n <!---->\r\n @if (item.type === filterTypeEnum.TextArea) {\r\n <ng-container\r\n *ngTemplateOutlet=\"text_area; context: { item: item, index: index }\"\r\n ></ng-container>\r\n } @if (filterActionsButtonTemplate && item.hasFilterActionsButton) {\r\n <ng-container\r\n *ngTemplateOutlet=\"filterActionsButtonTemplate\"\r\n ></ng-container>\r\n }\r\n </div>\r\n @if (item.showClean && hasValue(item)) {\r\n <button class=\"desactive formRowInputClear\" (click)=\"cleanValue(item)\">\r\n <i class=\"icon-times\"></i>\r\n </button>\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n\r\n<!-- Tipos de filtros -->\r\n<ng-template #select let-item=\"item\" let-index=\"index\">\r\n @if (item.multiple) {\r\n <intelica-multi-select\r\n [placeholder]=\"item.placeholder\"\r\n [options]=\"item.options\"\r\n [showFilter]=\"getOptionCount(item) > filterThreshold\"\r\n [resetFilterOnHide]=\"item.resetFilterOnHide\"\r\n [showAll]=\"item.showAll\"\r\n [optionLabel]=\"item.optionLabel\"\r\n [optionValue]=\"item.optionValue\"\r\n [disabled]=\"!item.enabled\"\r\n [(ngModel)]=\"item.value\"\r\n (onChange)=\"onChangeMultiple($event, item)\"\r\n [appendTo]=\"item.appendTo\"\r\n [panelStyleClass]=\"item.panelStyleClass\"\r\n [allText]=\"item.allText\"\r\n [maxSelectedLabels]=\"item.maxSelectedLabels\"\r\n [virtualScroll]=\"item.virtualScroll\"\r\n [selectedItemsLabel]=\"item.selectedItemsLabel\"\r\n [group]=\"item.group\"\r\n [customClass]=\"isUnselected(item) ? ' is-unselected' : ''\"\r\n [class]=\"'fullWidth'\"\r\n ></intelica-multi-select>\r\n } @else {\r\n <p-select\r\n [options]=\"item.options\"\r\n [(ngModel)]=\"item.value\"\r\n [optionLabel]=\"item.optionLabel\"\r\n [optionValue]=\"item.optionValue\"\r\n [placeholder]=\"item.placeholder\"\r\n [disabled]=\"!item.enabled\"\r\n (onChange)=\"onChange($event, item)\"\r\n [filter]=\"getOptionCount(item) > filterThreshold\"\r\n [resetFilterOnHide]=\"item.resetFilterOnHide\"\r\n [appendTo]=\"item.appendTo\"\r\n [panelStyleClass]=\"item.panelStyleClass\"\r\n [virtualScroll]=\"item.virtualScroll\"\r\n [virtualScrollItemSize]=\"25\"\r\n [group]=\"item.group\"\r\n [ngClass]=\"{ prSelect: true, 'is-unselected': isUnselected(item) }\"\r\n appendTo=\"body\"\r\n >\r\n <ng-template let-group #group *ngIf=\"item.group\">\r\n <div class=\"flex items-center\">\r\n <span>{{ group.label }}</span>\r\n </div>\r\n </ng-template>\r\n </p-select>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #text let-item=\"item\" let-index=\"index\">\r\n <input\r\n pInputText\r\n class=\"prInputText\"\r\n type=\"text\"\r\n [disabled]=\"!item.enabled\"\r\n [(ngModel)]=\"item.value\"\r\n [placeholder]=\"item.placeholder\"\r\n (keyup)=\"onKeyUp($event, item)\"\r\n [maxlength]=\"item.maxlength\"\r\n />\r\n</ng-template>\r\n\r\n<ng-template #checkbox let-item=\"item\" let-index=\"index\">\r\n <p-checkbox\r\n class=\"prCheckbox\"\r\n [(ngModel)]=\"item.value\"\r\n [binary]=\"true\"\r\n [disabled]=\"!item.enabled\"\r\n (onChange)=\"onChangeCheck($event, item)\"\r\n ></p-checkbox>\r\n</ng-template>\r\n\r\n<ng-template #date let-item=\"item\" let-index=\"index\">\r\n <p-datepicker\r\n [(ngModel)]=\"item.value\"\r\n [selectionMode]=\"item.range ? 'range' : 'single'\"\r\n [disabled]=\"!item.enabled\"\r\n [iconDisplay]=\"'input'\"\r\n [showIcon]=\"true\"\r\n (ngModelChange)=\"onChange($event, item)\"\r\n [view]=\"getDateView(item.dateMode)\"\r\n [dateFormat]=\"getDateFormat(item.dateMode)\"\r\n class=\"prDatePicker\"\r\n appendTo=\"body\"\r\n panelStyleClass=\"prDatePicker\"\r\n [placeholder]=\"getDateFormatPlaceholder(item.dateMode)\"\r\n [readonlyInput]=\"item.isReadOnly\"\r\n [minDate]=\"item.min\"\r\n [maxDate]=\"item.max\"\r\n ></p-datepicker>\r\n</ng-template>\r\n\r\n<ng-template #template_filter let-item=\"item\" let-index=\"index\">\r\n <ng-container *ngTemplateOutlet=\"item.content\"></ng-container>\r\n</ng-template>\r\n\r\n<ng-template #text_area let-item=\"item\" let-index=\"index\">\r\n <textarea\r\n pTextarea\r\n class=\"prInputText\"\r\n [disabled]=\"!item.enabled\"\r\n [(ngModel)]=\"item.value\"\r\n [placeholder]=\"item.placeholder\"\r\n (keyup)=\"onKeyUp($event, item)\"\r\n ></textarea>\r\n</ng-template>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i2$3.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "styleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "readonlyInput", "shortYearCutoff", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "view", "defaultDate", "appendTo"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$2.InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i5.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i6.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "ngmodule", type: TextareaModule }, { kind: "directive", type: i7.Textarea, selector: "[pTextarea], [pInputTextarea]", inputs: ["autoResize", "pSize", "variant", "fluid", "invalid"], outputs: ["onResize"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i3$2.Ripple, selector: "[pRipple]" }, { kind: "component", type: MultiSelectComponent, selector: "intelica-multi-select", inputs: ["id", "options", "optionLabel", "optionValue", "placeholder", "showFilter", "showAll", "allText", "maxSelectedLabels", "appendTo", "panelStyleClass", "virtualScroll", "disabled", "selectedItemsLabel", "textColorClass", "group", "resetFilterOnHide", "customClass"], outputs: ["onChange", "onPanelShow", "onPanelHide"] }, { kind: "pipe", type: TermPipe, name: "term" }] });
4273
4271
  }
4274
4272
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: FiltersComponent, decorators: [{
4275
4273
  type: Component,
@@ -4349,7 +4347,7 @@ class ModalDialogComponent {
4349
4347
  this.EmmitCloseModal.emit(false);
4350
4348
  }
4351
4349
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ModalDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4352
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: ModalDialogComponent, isStandalone: true, selector: "intelica-modal-dialog", inputs: { Title: "Title", Size: "Size", Draggable: "Draggable", DisableMaskClose: "DisableMaskClose" }, outputs: { EmmitCloseModal: "EmmitCloseModal" }, queries: [{ propertyName: "modalContentTemplate", first: true, predicate: ["modalContent"], descendants: true }], ngImport: i0, template: "<p-dialog\r\n class=\"prDialog prDialog--{{ Size }}\"\r\n [modal]=\"true\"\r\n [(visible)]=\"Visible\"\r\n [draggable]=\"Draggable\"\r\n [dismissableMask]=\"!DisableMaskClose\"\r\n (onHide)=\"closeDialog()\"\r\n>\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"custom-header\">\r\n <h2>\r\n <ng-content select=\"[titleHeaderMenu]\"></ng-content>\r\n </h2>\r\n <button class=\"grButton--icon-close-modal\" (click)=\"closeDialog()\">\r\n <i class=\"icon-close1\"></i>\r\n </button>\r\n </div>\r\n </ng-template>\r\n <div class=\"prDialog__content\">\r\n <ng-container>\r\n <ng-container *ngTemplateOutlet=\"modalContentTemplate\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</p-dialog>\r\n", dependencies: [{ kind: "component", type: Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "appendTo", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
4350
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: ModalDialogComponent, isStandalone: true, selector: "intelica-modal-dialog", inputs: { Title: "Title", Size: "Size", Draggable: "Draggable", DisableMaskClose: "DisableMaskClose" }, outputs: { EmmitCloseModal: "EmmitCloseModal" }, queries: [{ propertyName: "modalContentTemplate", first: true, predicate: ["modalContent"], descendants: true }], ngImport: i0, template: "<p-dialog\r\n class=\"prDialog prDialog--{{ Size }}\"\r\n [modal]=\"true\"\r\n [(visible)]=\"Visible\"\r\n [draggable]=\"Draggable\"\r\n [dismissableMask]=\"!DisableMaskClose\"\r\n (onHide)=\"closeDialog()\"\r\n>\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"custom-header\">\r\n <h2>\r\n <ng-content select=\"[titleHeaderMenu]\"></ng-content>\r\n </h2>\r\n <button class=\"grButton--icon-close-modal\" (click)=\"closeDialog()\">\r\n <i class=\"icon-close1\"></i>\r\n </button>\r\n </div>\r\n </ng-template>\r\n <div class=\"prDialog__content\">\r\n <ng-container>\r\n <ng-container *ngTemplateOutlet=\"modalContentTemplate\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</p-dialog>\r\n", dependencies: [{ kind: "component", type: Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "appendTo", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
4353
4351
  }
4354
4352
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: ModalDialogComponent, decorators: [{
4355
4353
  type: Component,
@@ -4527,7 +4525,7 @@ class RecordPerPageComponent {
4527
4525
  this.PageSize = this.Records[0];
4528
4526
  }
4529
4527
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: RecordPerPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4530
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: RecordPerPageComponent, isStandalone: true, selector: "intelica-record-per-page", inputs: { Properties: "Properties" }, outputs: { ReturnPage: "ReturnPage" }, usesOnChanges: true, ngImport: i0, template: "<div style=\"width: 400px\">\r\n\t<div class=\"recordsPerPageCtr\">\r\n\t\t<ng-container *ngFor=\"let record of Records; let i = index\">\r\n\t\t\t<div class=\"form-check form-check-inline\">\r\n\t\t\t\t<p-radiobutton class=\"prRadioButton\" [inputId]=\"'radio-' + i\" name=\"optSortRP1\" [(ngModel)]=\"PageSize\" [value]=\"record\" [tabindex]=\"i\" />\r\n\t\t\t\t<label [for]=\"'radio-' + i\">{{ record }}</label>\r\n\t\t\t</div>\r\n\t\t</ng-container>\r\n\t</div>\r\n\t<div class=\"recordsPerPageBtnCtr\">\r\n\t\t<button class=\"grButton grButton--primary applyAnalytics\" (click)=\"ChangePageSize()\">\r\n\t\t\t<span>Apply</span>\r\n\t\t</button>\r\n\t</div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i3.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "styleClass", "autofocus", "binary", "variant", "size"], outputs: ["onClick", "onFocus", "onBlur"] }] });
4528
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: RecordPerPageComponent, isStandalone: true, selector: "intelica-record-per-page", inputs: { Properties: "Properties" }, outputs: { ReturnPage: "ReturnPage" }, usesOnChanges: true, ngImport: i0, template: "<div style=\"width: 400px\">\r\n\t<div class=\"recordsPerPageCtr\">\r\n\t\t<ng-container *ngFor=\"let record of Records; let i = index\">\r\n\t\t\t<div class=\"form-check form-check-inline\">\r\n\t\t\t\t<p-radiobutton class=\"prRadioButton\" [inputId]=\"'radio-' + i\" name=\"optSortRP1\" [(ngModel)]=\"PageSize\" [value]=\"record\" [tabindex]=\"i\" />\r\n\t\t\t\t<label [for]=\"'radio-' + i\">{{ record }}</label>\r\n\t\t\t</div>\r\n\t\t</ng-container>\r\n\t</div>\r\n\t<div class=\"recordsPerPageBtnCtr\">\r\n\t\t<button class=\"grButton grButton--primary applyAnalytics\" (click)=\"ChangePageSize()\">\r\n\t\t\t<span>Apply</span>\r\n\t\t</button>\r\n\t</div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i3$1.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "styleClass", "autofocus", "binary", "variant", "size"], outputs: ["onClick", "onFocus", "onBlur"] }] });
4531
4529
  }
4532
4530
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: RecordPerPageComponent, decorators: [{
4533
4531
  type: Component,
@@ -4706,7 +4704,7 @@ class SortingComponent {
4706
4704
  return this.LCascadefilter.some(e => e.id == id);
4707
4705
  }
4708
4706
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SortingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4709
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: SortingComponent, isStandalone: true, selector: "intelica-sorting", inputs: { Sorters: "Sorters", OrderBy: "OrderBy", OrderByDefault: "OrderByDefault", OneRender: "OneRender" }, outputs: { ReturnSorting: "ReturnSorting", AlertOrder: "AlertOrder" }, usesOnChanges: true, ngImport: i0, template: "<ng-container>\r\n\t<div class=\"sortingAnalytics\">\r\n\t\t<div class=\"sortingCtr\">\r\n\t\t\t<div></div>\r\n\t\t\t<div class=\"triangle-top\"></div>\r\n\t\t\t<div class=\"triangle-down\"></div>\r\n\t\t\t<ng-container *ngIf=\"OneRender; else multiple_render\">\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"one_render; context: { Sorters: Sorters }\"></ng-container>\r\n\t\t\t</ng-container>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"sortingBtnCtr\">\r\n\t\t\t<!-- <span>{{'BTN_APPLY_SORT' | term : terms}}</span> -->\r\n\t\t\t<p-button pRipple class=\"prButton applyAnalytics\" label=\"{{ 'Apply sort' }}\" (onClick)=\"CheckCascadeOrder()\" />\r\n\t\t\t<!-- <span>{{'BTN_CLEAR_SORT' | term : terms}}</span> -->\r\n\t\t\t<p-button pRipple class=\"prButton cleanAnalytics\" label=\"{{ 'Clear sort' }}\" severity=\"secondary\" (onClick)=\"ClearCascadeOrder()\" />\r\n\t\t</div>\r\n\t</div>\r\n</ng-container>\r\n\r\n<ng-template #one_render let-Sorters=\"Sorters\">\r\n\t<ng-container *ngFor=\"let row of Sorters; let i = index\">\r\n\t\t<ng-container *ngIf=\"LCascadefilter.length > 0 && i <= NumMaxSorting\">\r\n\t\t\t<ng-container *ngIf=\"OneRender && i == 0\">\r\n\t\t\t\t<div class=\"idx-select\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t\t<div class=\"formRowInputNumber\">\r\n\t\t\t\t\t\t<span>{{ i + 1 }}</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<select class=\"grSelect\" [(ngModel)]=\"LCascadefilter[i].id\">\r\n\t\t\t\t\t\t<option *ngIf=\"i === 0\" [value]=\"0\">\r\n\t\t\t\t\t\t\t--\r\n\t\t\t\t\t\t\t<!-- <span>{{ \"LBL_SORT_BY\" | term : terms }}</span> -->\r\n\t\t\t\t\t\t\t<span>Sort By</span>\r\n\t\t\t\t\t\t\t--\r\n\t\t\t\t\t\t</option>\r\n\t\t\t\t\t\t<option *ngFor=\"let sort of Sorters\" [ngValue]=\"sort.field\" [disabled]=\"CheckCascadeDisabled(sort.field, i)\">\r\n\t\t\t\t\t\t\t{{ sort.headerText }}\r\n\t\t\t\t\t\t</option>\r\n\t\t\t\t\t</select>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_ASC\" [inputId]=\"'test{{ i + i + 1 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t\t<label for=\"test{{ i + i + 1 }}\"></label>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_DESC\" [inputId]=\"'test{{ i + i + 2 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t\t<label for=\"test{{ i + i + 2 }}\"></label>\r\n\t\t\t\t</div>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</ng-template>\r\n\r\n<ng-template #multiple_render>\r\n\t<ng-container *ngFor=\"let row of Sorters; let i = index\">\r\n\t\t<ng-container *ngIf=\"LCascadefilter.length > 0 && i <= NumMaxSorting\">\r\n\t\t\t<div class=\"idx-select\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t<div class=\"formRowInputNumber\">\r\n\t\t\t\t\t<span>{{ i + 1 }}</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t<select class=\"grSelect\" [(ngModel)]=\"LCascadefilter[i].id\">\r\n\t\t\t\t\t<option *ngIf=\"i === 0\" [value]=\"0\">\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t\t<!-- <span>{{ \"LBL_SORT_BY\" | term : terms }}</span> -->\r\n\t\t\t\t\t\t<span>Sort By</span>\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t</option>\r\n\t\t\t\t\t<option *ngIf=\"i > 0\" [value]=\"0\">\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t\t<!-- <span>{{ \"LBL_SORT_THEN\" | term : terms }}</span> -->\r\n\t\t\t\t\t\t<span>Then by</span>\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t</option>\r\n\t\t\t\t\t<option *ngFor=\"let sort of Sorters\" [ngValue]=\"sort.field\" [disabled]=\"CheckCascadeDisabled(sort.field, i)\">\r\n\t\t\t\t\t\t{{ sort.headerText }}\r\n\t\t\t\t\t</option>\r\n\t\t\t\t</select>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_ASC\" [inputId]=\"'test{{ i + i + 1 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t<label for=\"test{{ i + i + 1 }}\"></label>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_DESC\" [inputId]=\"'test{{ i + i + 2 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t<label for=\"test{{ i + i + 2 }}\"></label>\r\n\t\t\t</div>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</ng-template>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i3.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "styleClass", "autofocus", "binary", "variant", "size"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] });
4707
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: SortingComponent, isStandalone: true, selector: "intelica-sorting", inputs: { Sorters: "Sorters", OrderBy: "OrderBy", OrderByDefault: "OrderByDefault", OneRender: "OneRender" }, outputs: { ReturnSorting: "ReturnSorting", AlertOrder: "AlertOrder" }, usesOnChanges: true, ngImport: i0, template: "<ng-container>\r\n\t<div class=\"sortingAnalytics\">\r\n\t\t<div class=\"sortingCtr\">\r\n\t\t\t<div></div>\r\n\t\t\t<div class=\"triangle-top\"></div>\r\n\t\t\t<div class=\"triangle-down\"></div>\r\n\t\t\t<ng-container *ngIf=\"OneRender; else multiple_render\">\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"one_render; context: { Sorters: Sorters }\"></ng-container>\r\n\t\t\t</ng-container>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"sortingBtnCtr\">\r\n\t\t\t<!-- <span>{{'BTN_APPLY_SORT' | term : terms}}</span> -->\r\n\t\t\t<p-button pRipple class=\"prButton applyAnalytics\" label=\"{{ 'Apply sort' }}\" (onClick)=\"CheckCascadeOrder()\" />\r\n\t\t\t<!-- <span>{{'BTN_CLEAR_SORT' | term : terms}}</span> -->\r\n\t\t\t<p-button pRipple class=\"prButton cleanAnalytics\" label=\"{{ 'Clear sort' }}\" severity=\"secondary\" (onClick)=\"ClearCascadeOrder()\" />\r\n\t\t</div>\r\n\t</div>\r\n</ng-container>\r\n\r\n<ng-template #one_render let-Sorters=\"Sorters\">\r\n\t<ng-container *ngFor=\"let row of Sorters; let i = index\">\r\n\t\t<ng-container *ngIf=\"LCascadefilter.length > 0 && i <= NumMaxSorting\">\r\n\t\t\t<ng-container *ngIf=\"OneRender && i == 0\">\r\n\t\t\t\t<div class=\"idx-select\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t\t<div class=\"formRowInputNumber\">\r\n\t\t\t\t\t\t<span>{{ i + 1 }}</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<select class=\"grSelect\" [(ngModel)]=\"LCascadefilter[i].id\">\r\n\t\t\t\t\t\t<option *ngIf=\"i === 0\" [value]=\"0\">\r\n\t\t\t\t\t\t\t--\r\n\t\t\t\t\t\t\t<!-- <span>{{ \"LBL_SORT_BY\" | term : terms }}</span> -->\r\n\t\t\t\t\t\t\t<span>Sort By</span>\r\n\t\t\t\t\t\t\t--\r\n\t\t\t\t\t\t</option>\r\n\t\t\t\t\t\t<option *ngFor=\"let sort of Sorters\" [ngValue]=\"sort.field\" [disabled]=\"CheckCascadeDisabled(sort.field, i)\">\r\n\t\t\t\t\t\t\t{{ sort.headerText }}\r\n\t\t\t\t\t\t</option>\r\n\t\t\t\t\t</select>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_ASC\" [inputId]=\"'test{{ i + i + 1 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t\t<label for=\"test{{ i + i + 1 }}\"></label>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_DESC\" [inputId]=\"'test{{ i + i + 2 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t\t<label for=\"test{{ i + i + 2 }}\"></label>\r\n\t\t\t\t</div>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</ng-template>\r\n\r\n<ng-template #multiple_render>\r\n\t<ng-container *ngFor=\"let row of Sorters; let i = index\">\r\n\t\t<ng-container *ngIf=\"LCascadefilter.length > 0 && i <= NumMaxSorting\">\r\n\t\t\t<div class=\"idx-select\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t<div class=\"formRowInputNumber\">\r\n\t\t\t\t\t<span>{{ i + 1 }}</span>\r\n\t\t\t\t</div>\r\n\t\t\t\t<select class=\"grSelect\" [(ngModel)]=\"LCascadefilter[i].id\">\r\n\t\t\t\t\t<option *ngIf=\"i === 0\" [value]=\"0\">\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t\t<!-- <span>{{ \"LBL_SORT_BY\" | term : terms }}</span> -->\r\n\t\t\t\t\t\t<span>Sort By</span>\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t</option>\r\n\t\t\t\t\t<option *ngIf=\"i > 0\" [value]=\"0\">\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t\t<!-- <span>{{ \"LBL_SORT_THEN\" | term : terms }}</span> -->\r\n\t\t\t\t\t\t<span>Then by</span>\r\n\t\t\t\t\t\t--\r\n\t\t\t\t\t</option>\r\n\t\t\t\t\t<option *ngFor=\"let sort of Sorters\" [ngValue]=\"sort.field\" [disabled]=\"CheckCascadeDisabled(sort.field, i)\">\r\n\t\t\t\t\t\t{{ sort.headerText }}\r\n\t\t\t\t\t</option>\r\n\t\t\t\t</select>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_ASC\" [inputId]=\"'test{{ i + i + 1 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t<label for=\"test{{ i + i + 1 }}\"></label>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"form-check\" *ngIf=\"i < LCascadefilter.length\">\r\n\t\t\t\t<p-radiobutton class=\"prRadioButton\" name=\"optSort{{ i }}\" [value]=\"Order.ORDER_BY_DESC\" [inputId]=\"'test{{ i + i + 2 }}'\" [(ngModel)]=\"LCascadefilter[i].order\" tabindex=\"0\" />\r\n\t\t\t\t<label for=\"test{{ i + i + 2 }}\"></label>\r\n\t\t\t</div>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</ng-template>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i3$1.RadioButton, selector: "p-radioButton, p-radiobutton, p-radio-button", inputs: ["value", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "styleClass", "autofocus", "binary", "variant", "size"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] });
4710
4708
  }
4711
4709
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: SortingComponent, decorators: [{
4712
4710
  type: Component,
@@ -5368,7 +5366,7 @@ class DatepickerComponent {
5368
5366
  useExisting: forwardRef(() => DatepickerComponent),
5369
5367
  multi: true,
5370
5368
  },
5371
- ], viewQueries: [{ propertyName: "datepickerRef", first: true, predicate: ["datepicker"], descendants: true }], ngImport: i0, template: "<p-datepicker\r\n\t#datepicker\r\n\t[class]=\"panelStyleClass\"\r\n\t[ngModel]=\"internalModel\"\r\n\t(ngModelChange)=\"onModelChange($event)\"\r\n\t[selectionMode]=\"selectionMode\"\r\n\t[numberOfMonths]=\"numberOfMonths\"\r\n\t[readonlyInput]=\"readonlyInput\"\r\n\t[showIcon]=\"showIcon\"\r\n\t[view]=\"view\"\r\n\t[dateFormat]=\"getDateFormat()\"\r\n\t[defaultDate]=\"defaultDate\"\r\n\t(onMonthChange)=\"onMonthChange($event)\"\r\n\t(onYearChange)=\"onYearChange($event)\"\r\n\t(onShow)=\"handleOpen()\"\r\n\t(onHide)=\"handleClose()\"\r\n\t>\r\n\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"prDatapicker__header\">\r\n\t\t\t<div class=\"prDatapicker__content\">\r\n\r\n\t\t\t\t<!-- MES -->\r\n\t\t\t\t<p-select\r\n\t\t\t\t\t*ngIf=\"view === 'date'\"\r\n\t\t\t\t\tclass=\"prSelect\"\r\n\t\t\t\t\t[options]=\"filteredMonths\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\toptionValue=\"value\"\r\n\t\t\t\t\t[(ngModel)]=\"viewMonth\"\r\n\t\t\t\t\t(ngModelChange)=\"onViewChange()\"\r\n\t\t\t\t\tdropdownIcon=\"icon icon-arrow-down\">\r\n\t\t\t\t</p-select>\r\n\r\n\t\t\t\t<!-- A\u00D1O -->\r\n\t\t\t\t<p-select\r\n\t\t\t\t\t*ngIf=\"view === 'date' || view === 'month'\"\r\n\t\t\t\t\tclass=\"prSelect\"\r\n\t\t\t\t\t[options]=\"years\"\r\n\t\t\t\t\t[(ngModel)]=\"viewYear\"\r\n\t\t\t\t\t(ngModelChange)=\"onViewChange()\"\r\n\t\t\t\t\tdropdownIcon=\"icon icon-arrow-down\"\r\n\t\t\t\t\t[virtualScroll]=\"true\"\r\n\t\t\t\t\t[virtualScrollItemSize]=\"38\">\r\n\t\t\t\t</p-select>\r\n\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"footer\" *ngIf=\"selectionMode === 'range'\">\r\n\t\t<div class=\"footerDatapicker footerDatapicker--range\">\r\n\t\t\t<div class=\"footerDatapicker__box\">\r\n\t\t\t\t<!-- TODAY button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.TODAY)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.TODAY)\"\r\n\t\t\t\t\tlabel=\"Today\"\r\n\t\t\t\t\t(click)=\"todayCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- LAST 12 MONTHS button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.LAST_12_MONTHS)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.LAST_12_MONTHS)\"\r\n\t\t\t\t\tlabel=\"Last 12 months\"\r\n\t\t\t\t\t(click)=\"last12MonthsCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- CURRENT YEAR button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.CURRENT_YEAR)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.CURRENT_YEAR)\"\r\n\t\t\t\t\tlabel=\"Current year\"\r\n\t\t\t\t\t(click)=\"currentYearCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- CURRENT MONTH button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.CURRENT_MONTH)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.CURRENT_MONTH)\"\r\n\t\t\t\t\tlabel=\"Current month\"\r\n\t\t\t\t\t(click)=\"currentMonthCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"footerDatapicker__box\">\r\n\t\t\t\t<!-- Apply button - shown only in manual apply mode -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"manualApply\"\r\n\t\t\t\t\tclass=\"btnPrimary\"\r\n\t\t\t\t\tlabel=\"Apply\"\r\n\t\t\t\t\t(click)=\"applyCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- Clear button - always shown -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\tclass=\"btnSecond\"\r\n\t\t\t\t\tlabel=\"Clear\"\r\n\t\t\t\t\t(click)=\"clearCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n</p-datepicker>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "styleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "readonlyInput", "shortYearCutoff", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "view", "defaultDate", "appendTo"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i6.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] });
5369
+ ], viewQueries: [{ propertyName: "datepickerRef", first: true, predicate: ["datepicker"], descendants: true }], ngImport: i0, template: "<p-datepicker\r\n\t#datepicker\r\n\t[class]=\"panelStyleClass\"\r\n\t[ngModel]=\"internalModel\"\r\n\t(ngModelChange)=\"onModelChange($event)\"\r\n\t[selectionMode]=\"selectionMode\"\r\n\t[numberOfMonths]=\"numberOfMonths\"\r\n\t[readonlyInput]=\"readonlyInput\"\r\n\t[showIcon]=\"showIcon\"\r\n\t[view]=\"view\"\r\n\t[dateFormat]=\"getDateFormat()\"\r\n\t[defaultDate]=\"defaultDate\"\r\n\t(onMonthChange)=\"onMonthChange($event)\"\r\n\t(onYearChange)=\"onYearChange($event)\"\r\n\t(onShow)=\"handleOpen()\"\r\n\t(onHide)=\"handleClose()\"\r\n\t>\r\n\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"prDatapicker__header\">\r\n\t\t\t<div class=\"prDatapicker__content\">\r\n\r\n\t\t\t\t<!-- MES -->\r\n\t\t\t\t<p-select\r\n\t\t\t\t\t*ngIf=\"view === 'date'\"\r\n\t\t\t\t\tclass=\"prSelect\"\r\n\t\t\t\t\t[options]=\"filteredMonths\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\toptionValue=\"value\"\r\n\t\t\t\t\t[(ngModel)]=\"viewMonth\"\r\n\t\t\t\t\t(ngModelChange)=\"onViewChange()\"\r\n\t\t\t\t\tdropdownIcon=\"icon icon-arrow-down\">\r\n\t\t\t\t</p-select>\r\n\r\n\t\t\t\t<!-- A\u00D1O -->\r\n\t\t\t\t<p-select\r\n\t\t\t\t\t*ngIf=\"view === 'date' || view === 'month'\"\r\n\t\t\t\t\tclass=\"prSelect\"\r\n\t\t\t\t\t[options]=\"years\"\r\n\t\t\t\t\t[(ngModel)]=\"viewYear\"\r\n\t\t\t\t\t(ngModelChange)=\"onViewChange()\"\r\n\t\t\t\t\tdropdownIcon=\"icon icon-arrow-down\"\r\n\t\t\t\t\t[virtualScroll]=\"true\"\r\n\t\t\t\t\t[virtualScrollItemSize]=\"38\">\r\n\t\t\t\t</p-select>\r\n\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\t<ng-template pTemplate=\"footer\" *ngIf=\"selectionMode === 'range'\">\r\n\t\t<div class=\"footerDatapicker footerDatapicker--range\">\r\n\t\t\t<div class=\"footerDatapicker__box\">\r\n\t\t\t\t<!-- TODAY button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.TODAY)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.TODAY)\"\r\n\t\t\t\t\tlabel=\"Today\"\r\n\t\t\t\t\t(click)=\"todayCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- LAST 12 MONTHS button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.LAST_12_MONTHS)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.LAST_12_MONTHS)\"\r\n\t\t\t\t\tlabel=\"Last 12 months\"\r\n\t\t\t\t\t(click)=\"last12MonthsCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- CURRENT YEAR button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.CURRENT_YEAR)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.CURRENT_YEAR)\"\r\n\t\t\t\t\tlabel=\"Current year\"\r\n\t\t\t\t\t(click)=\"currentYearCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- CURRENT MONTH button -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"shouldShowButton(DATEPICKER_BUTTON_TYPES.CURRENT_MONTH)\"\r\n\t\t\t\t\t[class]=\"getButtonClass(DATEPICKER_BUTTON_TYPES.CURRENT_MONTH)\"\r\n\t\t\t\t\tlabel=\"Current month\"\r\n\t\t\t\t\t(click)=\"currentMonthCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"footerDatapicker__box\">\r\n\t\t\t\t<!-- Apply button - shown only in manual apply mode -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\t*ngIf=\"manualApply\"\r\n\t\t\t\t\tclass=\"btnPrimary\"\r\n\t\t\t\t\tlabel=\"Apply\"\r\n\t\t\t\t\t(click)=\"applyCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t\t<!-- Clear button - always shown -->\r\n\t\t\t\t<p-button\r\n\t\t\t\t\tclass=\"btnSecond\"\r\n\t\t\t\t\tlabel=\"Clear\"\r\n\t\t\t\t\t(click)=\"clearCallback($event)\">\r\n\t\t\t\t</p-button>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n</p-datepicker>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "styleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "readonlyInput", "shortYearCutoff", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "view", "defaultDate", "appendTo"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i6.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] });
5372
5370
  }
5373
5371
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DatepickerComponent, decorators: [{
5374
5372
  type: Component,
@@ -5592,12 +5590,12 @@ class TableFetchComponent {
5592
5590
  ComponentId = "";
5593
5591
  ShowRowPerPage = true;
5594
5592
  ShowSearch = false;
5595
- ListSearchOptions = [];
5593
+ // @Input() ListSearchOptions: SearchFieldModel[] = [];
5596
5594
  ShowPagination = false;
5597
5595
  RowsPerPage = 10;
5598
5596
  ShowCheckbox = false;
5599
5597
  ShowIndex = false;
5600
- ShowSearchTooltip = false;
5598
+ // @Input() ShowSearchTooltip: boolean = false;
5601
5599
  ClassName = "";
5602
5600
  DefaultSortField = "";
5603
5601
  scrollHeight = "400px";
@@ -5610,7 +5608,6 @@ class TableFetchComponent {
5610
5608
  TotalRecords = 0;
5611
5609
  IsPaginatorInputSearch = false;
5612
5610
  EmitQueryParametersChange = new EventEmitter();
5613
- PaginatorTable;
5614
5611
  SearchTable;
5615
5612
  Columns;
5616
5613
  ColumnGroups;
@@ -5622,26 +5619,29 @@ class TableFetchComponent {
5622
5619
  ColumnList = [];
5623
5620
  ColumnGroupList = [];
5624
5621
  RowResumenList = [];
5625
- SearchInput = {};
5622
+ // SearchInput: SearchInputModel = {} as SearchInputModel;
5626
5623
  CurrentPage = 1;
5627
5624
  SortOrder = 1;
5628
5625
  SortField = null;
5629
- ListSearchOptionsSimple = [];
5626
+ // ListSearchOptionsSimple: { id: number; value: string }[] = [];
5630
5627
  MaxLevel = 0;
5631
5628
  ListDataTable = [];
5629
+ SearchInput = "";
5632
5630
  constructor(cdr) {
5633
5631
  this.cdr = cdr;
5634
5632
  }
5635
5633
  ngOnChanges(changes) {
5636
- this.LoadSearchOptions();
5634
+ // this.LoadSearchOptions();
5637
5635
  if (changes["FilteredList"] || changes["RowsPerPage"] || changes["CurrentPage"]) {
5638
5636
  this.UpdatePages();
5639
5637
  }
5640
5638
  if (changes["SortField"] || changes["SortOrder"]) {
5641
- this.EmitSortEvent.emit([{
5639
+ this.EmitSortEvent.emit([
5640
+ {
5642
5641
  sortOrder: this.SortOrder,
5643
5642
  sortField: this.SortField?.toString() ?? "",
5644
- }]);
5643
+ },
5644
+ ]);
5645
5645
  }
5646
5646
  }
5647
5647
  ngAfterContentInit() {
@@ -5673,12 +5673,12 @@ class TableFetchComponent {
5673
5673
  captureResumen() {
5674
5674
  this.RowResumenList = this.RowResumenGroups?.toArray() ?? [];
5675
5675
  }
5676
- LoadSearchOptions() {
5677
- this.ListSearchOptionsSimple = this.ListSearchOptions.map((item) => ({
5678
- id: item.id,
5679
- value: item.name,
5680
- }));
5681
- }
5676
+ // LoadSearchOptions() {
5677
+ // this.ListSearchOptionsSimple = this.ListSearchOptions.map((item) => ({
5678
+ // id: item.id,
5679
+ // value: item.name,
5680
+ // }));
5681
+ // }
5682
5682
  OnSort(field) {
5683
5683
  if (this.SortField === field) {
5684
5684
  this.SortOrder *= -1;
@@ -5700,19 +5700,27 @@ class TableFetchComponent {
5700
5700
  this.ListDataTable = this.FilteredList;
5701
5701
  }
5702
5702
  }
5703
- OnPageChange(pageIndex) {
5704
- this.CurrentPage = pageIndex;
5703
+ OnPageChange(event) {
5704
+ if (typeof event === "number") {
5705
+ this.CurrentPage = event;
5706
+ }
5707
+ else {
5708
+ if (typeof event?.rows === "number") {
5709
+ this.RowsPerPage = event.rows;
5710
+ }
5711
+ if (typeof event?.page === "number") {
5712
+ this.CurrentPage = event.page + 1;
5713
+ }
5714
+ }
5705
5715
  this.IsPaginatorInputSearch = true;
5706
5716
  this.ExecuteSearch({});
5707
5717
  }
5708
5718
  ResetTable() {
5709
- if (this.PaginatorTable) {
5710
- this.PaginatorTable.CurrentPage = 1;
5711
- this.CurrentPage = 1;
5712
- }
5719
+ this.CurrentPage = 1;
5713
5720
  if (this.SearchTable) {
5714
5721
  this.SearchTable.ClearSearchText();
5715
- this.SearchInput.fieldText = "";
5722
+ // this.SearchInput.fieldText = "";
5723
+ this.SearchInput = "";
5716
5724
  }
5717
5725
  this.ExecuteSearch({});
5718
5726
  }
@@ -5720,20 +5728,22 @@ class TableFetchComponent {
5720
5728
  if (event?.fieldText !== undefined && event?.fieldText !== "") {
5721
5729
  this.SearchInput = event;
5722
5730
  }
5723
- const field = this.ListSearchOptions.find((item) => item.id === this.SearchInput.fieldId)?.field;
5724
- if (this.SearchInput?.searchText !== undefined &&
5725
- this.SearchInput?.searchText !== "" &&
5726
- this.ListSearchOptions.length > 0 &&
5731
+ // const field = this.ListSearchOptions.find(
5732
+ // (item) => item.id === this.SearchInput.fieldId
5733
+ // )?.field;
5734
+ if (this.SearchInput !== undefined &&
5735
+ this.SearchInput !== "" &&
5736
+ // this.SearchInput?.searchText !== undefined &&
5737
+ // this.SearchInput?.searchText !== "" &&
5738
+ // this.ListSearchOptions.length > 0 &&
5727
5739
  !this.IsPaginatorInputSearch) {
5728
- if (this.PaginatorTable) {
5729
- this.PaginatorTable.CurrentPage = 1;
5730
- this.CurrentPage = 1;
5731
- }
5740
+ this.CurrentPage = 1;
5732
5741
  }
5733
5742
  const newQueryParameters = {
5734
- FilterBy: field || undefined,
5735
- FilterValue: this.SearchInput.searchText?.trim(),
5736
- FilterOperator: this.SearchInput.operatorId?.toString(),
5743
+ // FilterBy: field || undefined,
5744
+ // FilterValue: this.SearchInput.searchText?.trim(),
5745
+ FilterValue: this.SearchInput.trim(),
5746
+ // FilterOperator: this.SearchInput.operatorId?.toString(),
5737
5747
  OrderBy: this.SortField ? String(this.SortField) : undefined,
5738
5748
  SortDirection: this.SortOrder === 1 ? "asc" : "desc",
5739
5749
  PageNumber: this.CurrentPage,
@@ -5748,12 +5758,22 @@ class TableFetchComponent {
5748
5758
  this.CurrentPage = 1;
5749
5759
  this.ExecuteSearch({});
5750
5760
  }
5761
+ ClearSearch() {
5762
+ this.SearchInput = "";
5763
+ }
5751
5764
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TableFetchComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5752
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: TableFetchComponent, isStandalone: true, selector: "intelica-table-fetch", inputs: { ComponentId: "ComponentId", ShowRowPerPage: "ShowRowPerPage", ShowSearch: "ShowSearch", ListSearchOptions: "ListSearchOptions", ShowPagination: "ShowPagination", RowsPerPage: "RowsPerPage", ShowCheckbox: "ShowCheckbox", ShowIndex: "ShowIndex", ShowSearchTooltip: "ShowSearchTooltip", ClassName: "ClassName", DefaultSortField: "DefaultSortField", scrollHeight: "scrollHeight", scrollable: "scrollable", AllowedPageSizes: "AllowedPageSizes", tableStyle: "tableStyle", FilteredList: "FilteredList", TotalItems: "TotalItems", CurrentPage: "CurrentPage", SortOrder: "SortOrder", SortField: "SortField" }, outputs: { EmitQueryParametersChange: "EmitQueryParametersChange", EmitSortEvent: "EmitSortEvent" }, providers: [FormatCellPipe, DatePipe], queries: [{ propertyName: "AdditionalTemplate", first: true, predicate: ["additionalTemplate"], descendants: true }, { propertyName: "AdditionalCentralTemplate", first: true, predicate: ["additionalCentralTemplate"], descendants: true }, { propertyName: "AdditionalExtendedTemplate", first: true, predicate: ["additionalExtendedTemplate"], descendants: true }, { propertyName: "Columns", predicate: ColumnComponent }, { propertyName: "ColumnGroups", predicate: ColumnGroupComponent }, { propertyName: "RowResumenGroups", predicate: RowResumenComponent }], viewQueries: [{ propertyName: "PaginatorTable", first: true, predicate: ["paginatorTable"], descendants: true }, { propertyName: "SearchTable", first: true, predicate: ["searchTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable\">\r\n <div class=\"prTableTools\">\r\n <div class=\"prTableTools__new prTableTools__new--left\">\r\n @if (AdditionalTemplate) {\r\n <ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n }\r\n </div>\r\n\r\n @if (ShowSearch) {\r\n <intelica-search\r\n #searchTable\r\n [ComponentId]=\"ComponentId + 'Search'\"\r\n (OnSearch)=\"ExecuteSearch($event)\"\r\n [SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n [SearchOnKeyup]=\"false\"\r\n [SimpleSearchInput]=\"false\"\r\n [ShowTooltip]=\"ShowSearchTooltip\"\r\n ></intelica-search>\r\n } @if (AdditionalCentralTemplate) {\r\n <div class=\"prTableTools__new prTableTools__new--right\">\r\n <ng-container\r\n *ngTemplateOutlet=\"AdditionalCentralTemplate\"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (AdditionalExtendedTemplate) {\r\n <div class=\"prTableTools justify-content-start\">\r\n <ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n </div>\r\n\r\n }\r\n <!-- Tabla que muestra FilteredList -->\r\n <p-table\r\n class=\"prTableBasic\"\r\n [ngClass]=\"ClassName\"\r\n [value]=\"FilteredList\"\r\n responsiveLayout=\"scroll\"\r\n [sortField]=\"DefaultSortField\"\r\n [sortOrder]=\"SortOrder\"\r\n [scrollable]=\"scrollable\"\r\n [scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n [tableStyle]=\"tableStyle\"\r\n >\r\n <!-- Cabecera con columnas agrupadas -->\r\n <ng-template pTemplate=\"header\">\r\n @for (level of Levels; track $index) {\r\n <tr>\r\n @for (col of ColumnGroupList; track $index) { @if (col.level === level)\r\n {\r\n <th\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n [pSortableColumn]=\"col.sortable ? col.field : ''\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n {{ col.header }}\r\n </span>\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n <th\r\n class=\"text-center\"\r\n style=\"width: 4%\"\r\n [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\"\r\n >\r\n <p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n </th>\r\n }\r\n </tr>\r\n }\r\n\r\n <tr>\r\n @for (col of ColumnList; track $index) { @if (col.showHeader) {\r\n <th\r\n [class]=\"col.className\"\r\n [pSortableColumn]=\"\r\n !col.isChecboxColumn && col.sortable ? col.field : ''\r\n \"\r\n [style.width]=\"col.width\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n {{ col.header }}\r\n </span>\r\n @if (!col.showIndex) {\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n }\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n <th class=\"text-center\" style=\"width: 4%\">\r\n <p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n </th>\r\n }\r\n </tr>\r\n\r\n @if (FilteredList.length > 0 && RowResumenList.length > 0) {\r\n <tr class=\"fixedRow\">\r\n @for (col of RowResumenList; track $index) {\r\n <td\r\n [ngClass]=\"col.className\"\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n >\r\n @if (col.templateRef) {\r\n <span>\r\n <ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n </span>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </ng-template>\r\n\r\n <!-- Cuerpo de la tabla -->\r\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n <tr>\r\n @for (col of ColumnList; track $index) {\r\n <td [ngClass]=\"col.className\">\r\n @if (col.showIndex) {\r\n {{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n } @else { @if (col.templateRef) {\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"\r\n ></ng-container>\r\n } @else {\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n } }\r\n </td>\r\n } @if (ShowCheckbox) {\r\n <td class=\"text-center\">\r\n <p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <!-- Mensaje cuando no hay datos -->\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td\r\n [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\"\r\n class=\"text-center\"\r\n >\r\n {{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n\r\n <div class=\"prTableToolsBottom\">\r\n @if(TotalRecords !== 0){\r\n @if(ShowRowPerPage){\r\n <div class=\"prTableToolsBottom__itemPerPage\">\r\n {{ \"ItemPerPage\" | term : GlobalTermService.languageCode }}\r\n <p-select\r\n [options]=\"AllowedPageSizes\"\r\n [ngModel]=\"RowsPerPage\"\r\n appendTo=\"body\"\r\n (onChange)=\"OnRowsPerPageChange($event.value)\"\r\n />\r\n <label for=\"pageSize\" class=\"control-label\">\r\n {{ 1 + RowsPerPage * (CurrentPage - 1) }} -\r\n {{\r\n CurrentPage * RowsPerPage >= TotalRecords\r\n ? TotalRecords\r\n : CurrentPage * RowsPerPage\r\n }}\r\n {{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalRecords }}\r\n {{ \"Items\" | term : GlobalTermService.languageCode }}\r\n </label>\r\n </div>\r\n } @if (ShowPagination) {\r\n <intelica-paginator\r\n #paginatorTable\r\n [TotalItems]=\"TotalRecords\"\r\n [CurrentPage]=\"CurrentPage\"\r\n [ItemsPerPage]=\"RowsPerPage\"\r\n (PageChange)=\"OnPageChange($event)\"\r\n ></intelica-paginator>\r\n }\r\n }\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i2$1.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i2$1.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i2$1.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i2$1.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i2$1.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SearchComponent, selector: "intelica-search", inputs: ["ComponentId", "ShowTooltip", "SearchFieldOptions", "SearchOnKeyup", "SimpleSearchInput", "Placeholder"], outputs: ["OnSearch"] }, { kind: "component", type: PaginatorComponent, selector: "intelica-paginator", inputs: ["TotalItems", "CurrentPage", "ItemsPerPage"], outputs: ["PageChange"] }, { kind: "pipe", type: TermPipe, name: "term" }, { kind: "pipe", type: FormatCellPipe, name: "formatCell" }] });
5765
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: TableFetchComponent, isStandalone: true, selector: "intelica-table-fetch", inputs: { ComponentId: "ComponentId", ShowRowPerPage: "ShowRowPerPage", ShowSearch: "ShowSearch", ShowPagination: "ShowPagination", RowsPerPage: "RowsPerPage", ShowCheckbox: "ShowCheckbox", ShowIndex: "ShowIndex", ClassName: "ClassName", DefaultSortField: "DefaultSortField", scrollHeight: "scrollHeight", scrollable: "scrollable", AllowedPageSizes: "AllowedPageSizes", tableStyle: "tableStyle", FilteredList: "FilteredList", TotalItems: "TotalItems", CurrentPage: "CurrentPage", SortOrder: "SortOrder", SortField: "SortField" }, outputs: { EmitQueryParametersChange: "EmitQueryParametersChange", EmitSortEvent: "EmitSortEvent" }, providers: [FormatCellPipe, DatePipe], queries: [{ propertyName: "AdditionalTemplate", first: true, predicate: ["additionalTemplate"], descendants: true }, { propertyName: "AdditionalCentralTemplate", first: true, predicate: ["additionalCentralTemplate"], descendants: true }, { propertyName: "AdditionalExtendedTemplate", first: true, predicate: ["additionalExtendedTemplate"], descendants: true }, { propertyName: "Columns", predicate: ColumnComponent }, { propertyName: "ColumnGroups", predicate: ColumnGroupComponent }, { propertyName: "RowResumenGroups", predicate: RowResumenComponent }], viewQueries: [{ propertyName: "SearchTable", first: true, predicate: ["searchTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"prTable\">\r\n\t<div class=\"grPanel\">\r\n\t\t<div class=\"prCard__row justify-content-end\">\r\n\t\t\t<div class=\"prCard__actionflex\">\r\n\t\t\t\t@if (AdditionalTemplate) {\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\r\n\t\t\t@if (ShowSearch) {\r\n\t\t\t\t<div class=\"ptSearch\">\r\n\t\t\t\t\t<p-iconfield>\r\n\t\t\t\t\t\t<input type=\"text\" class=\"prInputText\" pInputText placeholder=\"Search text here\" [(ngModel)]=\"SearchInput\" (keydown.enter)=\"ExecuteSearch()\" />\r\n\t\t\t\t\t\t<p-inputicon>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--close\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-cancel\" *ngIf=\"SearchInput\" (click)=\"ClearSearch()\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t<span class=\"ptSearch__icon ptSearch__icon--divider\" *ngIf=\"SearchInput\"></span>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--search\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-search\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t</p-inputicon>\r\n\t\t\t\t\t</p-iconfield>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<!-- <intelica-search\r\n\t\t\t#searchTable\r\n\t\t\t[ComponentId]=\"ComponentId + 'Search'\"\r\n\t\t\t(OnSearch)=\"ExecuteSearch($event)\"\r\n\t\t\t[SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n\t\t\t[SearchOnKeyup]=\"false\"\r\n\t\t\t[SimpleSearchInput]=\"false\"\r\n\t\t\t[ShowTooltip]=\"ShowSearchTooltip\"\r\n\t\t></intelica-search> -->\r\n\t\t\t}\r\n\t\t\t<!-- -->\r\n\t\t\t@if (AdditionalCentralTemplate) {\r\n\t\t\t\t<div class=\"prTableTools__new prTableTools__new--right\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalCentralTemplate\"></ng-container>\r\n\t\t\t\t</div>\r\n\t\t\t}\r\n\t\t</div>\r\n\t</div>\r\n\t@if (AdditionalExtendedTemplate) {\r\n\t\t<div class=\"prTableTools justify-content-start\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n\t\t</div>\r\n\t}\r\n\t<!-- Tabla que muestra FilteredList -->\r\n\t<p-table\r\n\t\tclass=\"prTable\"\r\n\t\t[ngClass]=\"ClassName\"\r\n\t\t[value]=\"FilteredList\"\r\n\t\tresponsiveLayout=\"scroll\"\r\n\t\t[sortField]=\"DefaultSortField\"\r\n\t\t[sortOrder]=\"SortOrder\"\r\n\t\t[scrollable]=\"scrollable\"\r\n\t\t[scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n\t\t[tableStyle]=\"tableStyle\"\r\n\t>\r\n\t\t<!-- Cabecera con columnas agrupadas -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t@for (level of Levels; track $index) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t@for (col of ColumnGroupList; track $index) {\r\n\t\t\t\t\t\t@if (col.level === level) {\r\n\t\t\t\t\t\t\t<th [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\" [pSortableColumn]=\"col.sortable ? col.field : ''\" [style.min-width]=\"col.minWidth\" (click)=\"col.sortable && OnSort(col.field)\">\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t@if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n\t\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\" [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\">\r\n\t\t\t\t\t\t\t<p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t@if (col.showHeader) {\r\n\t\t\t\t\t\t<th\r\n\t\t\t\t\t\t\t[class]=\"col.className\"\r\n\t\t\t\t\t\t\t[pSortableColumn]=\"!col.isChecboxColumn && col.sortable ? col.field : ''\"\r\n\t\t\t\t\t\t\t[style.width]=\"col.width\"\r\n\t\t\t\t\t\t\t[style.min-width]=\"col.minWidth\"\r\n\t\t\t\t\t\t\t(click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<div class=\"prTable__header\">\r\n\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t@if (!col.showIndex) {\r\n\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\">\r\n\t\t\t\t\t\t<p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\r\n\t\t\t@if (FilteredList.length > 0 && RowResumenList.length > 0) {\r\n\t\t\t\t<tr class=\"fixedRow\">\r\n\t\t\t\t\t@for (col of RowResumenList; track $index) {\r\n\t\t\t\t\t\t<td [ngClass]=\"col.className\" [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\">\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- Cuerpo de la tabla -->\r\n\t\t<ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t<td [ngClass]=\"col.className\">\r\n\t\t\t\t\t\t@if (col.showIndex) {\r\n\t\t\t\t\t\t\t{{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"></ng-container>\r\n\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t<span class=\"text-breakWord\" pTooltip=\"{{ col.tooltip }}\" tooltipPosition=\"{{ col.tooltipPosition }}\">\r\n\t\t\t\t\t\t\t\t\t{{ rowData[col.field] | formatCell: col.formatType }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox) {\r\n\t\t\t\t\t<td class=\"text-center\">\r\n\t\t\t\t\t\t<p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- Mensaje cuando no hay datos -->\r\n\t\t<ng-template pTemplate=\"emptymessage\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\" class=\"text-center\">\r\n\t\t\t\t\t{{ \"Nodata\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t</p-table>\r\n\r\n\t<!-- <div class=\"prTableToolsBottom\"> -->\r\n\t<div class=\"d-flex justify-content-end\">\r\n\t\t@if (TotalRecords !== 0 && ShowPagination) {\r\n\t\t\t<div class=\"ptTablePaginator\">\r\n\t\t\t\t<p-paginator\r\n\t\t\t\t\tclass=\"prPaginator\"\r\n\t\t\t\t\t[first]=\"(CurrentPage - 1) * RowsPerPage\"\r\n\t\t\t\t\t[rows]=\"RowsPerPage\"\r\n\t\t\t\t\t[totalRecords]=\"TotalRecords\"\r\n\t\t\t\t\t(onPageChange)=\"OnPageChange($event)\"\r\n\t\t\t\t\t[showJumpToPageInput]=\"false\"\r\n\t\t\t\t\t[showCurrentPageReport]=\"false\"\r\n\t\t\t\t\t[showPageLinks]=\"false\"\r\n\t\t\t\t\t[showFirstLastIcon]=\"false\"\r\n\t\t\t\t\t[templateLeft]=\"templateLeft\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<ng-template #previouspagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-left\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template #nextpagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-right\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template pTemplate=\"templateLeft\" let-state #templateLeft>\r\n\t\t\t\t\t\t<span>{{ \"ItemPerPage\" | term: GlobalTermService.languageCode }}</span>\r\n\t\t\t\t\t\t<p-select class=\"prSelect\" [options]=\"AllowedPageSizes\" [ngModel]=\"RowsPerPage\" appendTo=\"body\" (onChange)=\"OnRowsPerPageChange($event.value)\" />\r\n\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t{{ \"PAGE\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t\t\t\t<p-inputnumber class=\"p-paginator-jtp-input\" inputId=\"integeronly\" [(ngModel)]=\"CurrentPage\" />\r\n\t\t\t\t\t\t\t{{ \"Of\" | term: GlobalTermService.languageCode }} {{ TotalRecords }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t</p-paginator>\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n</div>\r\n", dependencies: [{ kind: "component", type: InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["styleClass"] }, { kind: "component", type: IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["iconPosition", "styleClass"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "component", type: InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first", "appendTo"], outputs: ["onPageChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i3.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i3.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i3.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i3.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "pipe", type: TermPipe, name: "term" }, { kind: "pipe", type: FormatCellPipe, name: "formatCell" }] });
5753
5766
  }
5754
5767
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: TableFetchComponent, decorators: [{
5755
5768
  type: Component,
5756
5769
  args: [{ selector: "intelica-table-fetch", standalone: true, imports: [
5770
+ InputIcon,
5771
+ IconField,
5772
+ InputText,
5773
+ InputTextModule,
5774
+ InputNumber,
5775
+ Paginator,
5776
+ FormsModule,
5757
5777
  CommonModule,
5758
5778
  TableModule,
5759
5779
  Select,
@@ -5762,18 +5782,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
5762
5782
  TermPipe,
5763
5783
  CheckboxModule,
5764
5784
  FormsModule,
5765
- SearchComponent,
5766
- PaginatorComponent,
5767
5785
  FormatCellPipe,
5768
- ], providers: [FormatCellPipe, DatePipe], template: "<div class=\"prTable\">\r\n <div class=\"prTableTools\">\r\n <div class=\"prTableTools__new prTableTools__new--left\">\r\n @if (AdditionalTemplate) {\r\n <ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n }\r\n </div>\r\n\r\n @if (ShowSearch) {\r\n <intelica-search\r\n #searchTable\r\n [ComponentId]=\"ComponentId + 'Search'\"\r\n (OnSearch)=\"ExecuteSearch($event)\"\r\n [SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n [SearchOnKeyup]=\"false\"\r\n [SimpleSearchInput]=\"false\"\r\n [ShowTooltip]=\"ShowSearchTooltip\"\r\n ></intelica-search>\r\n } @if (AdditionalCentralTemplate) {\r\n <div class=\"prTableTools__new prTableTools__new--right\">\r\n <ng-container\r\n *ngTemplateOutlet=\"AdditionalCentralTemplate\"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (AdditionalExtendedTemplate) {\r\n <div class=\"prTableTools justify-content-start\">\r\n <ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n </div>\r\n\r\n }\r\n <!-- Tabla que muestra FilteredList -->\r\n <p-table\r\n class=\"prTableBasic\"\r\n [ngClass]=\"ClassName\"\r\n [value]=\"FilteredList\"\r\n responsiveLayout=\"scroll\"\r\n [sortField]=\"DefaultSortField\"\r\n [sortOrder]=\"SortOrder\"\r\n [scrollable]=\"scrollable\"\r\n [scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n [tableStyle]=\"tableStyle\"\r\n >\r\n <!-- Cabecera con columnas agrupadas -->\r\n <ng-template pTemplate=\"header\">\r\n @for (level of Levels; track $index) {\r\n <tr>\r\n @for (col of ColumnGroupList; track $index) { @if (col.level === level)\r\n {\r\n <th\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n [pSortableColumn]=\"col.sortable ? col.field : ''\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n {{ col.header }}\r\n </span>\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n <th\r\n class=\"text-center\"\r\n style=\"width: 4%\"\r\n [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\"\r\n >\r\n <p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n </th>\r\n }\r\n </tr>\r\n }\r\n\r\n <tr>\r\n @for (col of ColumnList; track $index) { @if (col.showHeader) {\r\n <th\r\n [class]=\"col.className\"\r\n [pSortableColumn]=\"\r\n !col.isChecboxColumn && col.sortable ? col.field : ''\r\n \"\r\n [style.width]=\"col.width\"\r\n [style.min-width]=\"col.minWidth\"\r\n (click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n >\r\n <div>\r\n <span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n {{ col.header }}\r\n </span>\r\n @if (!col.showIndex) {\r\n <p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n }\r\n </div>\r\n </th>\r\n } } @if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n <th class=\"text-center\" style=\"width: 4%\">\r\n <p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n </th>\r\n }\r\n </tr>\r\n\r\n @if (FilteredList.length > 0 && RowResumenList.length > 0) {\r\n <tr class=\"fixedRow\">\r\n @for (col of RowResumenList; track $index) {\r\n <td\r\n [ngClass]=\"col.className\"\r\n [attr.colspan]=\"col.colspan\"\r\n [attr.rowspan]=\"col.rowspan\"\r\n >\r\n @if (col.templateRef) {\r\n <span>\r\n <ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n </span>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </ng-template>\r\n\r\n <!-- Cuerpo de la tabla -->\r\n <ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n <tr>\r\n @for (col of ColumnList; track $index) {\r\n <td [ngClass]=\"col.className\">\r\n @if (col.showIndex) {\r\n {{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n } @else { @if (col.templateRef) {\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"\r\n ></ng-container>\r\n } @else {\r\n <span\r\n class=\"text-breakWord\"\r\n pTooltip=\"{{ col.tooltip }}\"\r\n tooltipPosition=\"{{ col.tooltipPosition }}\"\r\n >\r\n {{ rowData[col.field] | formatCell : col.formatType }}\r\n </span>\r\n } }\r\n </td>\r\n } @if (ShowCheckbox) {\r\n <td class=\"text-center\">\r\n <p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <!-- Mensaje cuando no hay datos -->\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td\r\n [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\"\r\n class=\"text-center\"\r\n >\r\n {{ \"Nodata\" | term : GlobalTermService.languageCode }}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n\r\n <div class=\"prTableToolsBottom\">\r\n @if(TotalRecords !== 0){\r\n @if(ShowRowPerPage){\r\n <div class=\"prTableToolsBottom__itemPerPage\">\r\n {{ \"ItemPerPage\" | term : GlobalTermService.languageCode }}\r\n <p-select\r\n [options]=\"AllowedPageSizes\"\r\n [ngModel]=\"RowsPerPage\"\r\n appendTo=\"body\"\r\n (onChange)=\"OnRowsPerPageChange($event.value)\"\r\n />\r\n <label for=\"pageSize\" class=\"control-label\">\r\n {{ 1 + RowsPerPage * (CurrentPage - 1) }} -\r\n {{\r\n CurrentPage * RowsPerPage >= TotalRecords\r\n ? TotalRecords\r\n : CurrentPage * RowsPerPage\r\n }}\r\n {{ \"Of\" | term : GlobalTermService.languageCode }} {{ TotalRecords }}\r\n {{ \"Items\" | term : GlobalTermService.languageCode }}\r\n </label>\r\n </div>\r\n } @if (ShowPagination) {\r\n <intelica-paginator\r\n #paginatorTable\r\n [TotalItems]=\"TotalRecords\"\r\n [CurrentPage]=\"CurrentPage\"\r\n [ItemsPerPage]=\"RowsPerPage\"\r\n (PageChange)=\"OnPageChange($event)\"\r\n ></intelica-paginator>\r\n }\r\n }\r\n </div>\r\n</div>\r\n" }]
5786
+ ], providers: [FormatCellPipe, DatePipe], template: "<div class=\"prTable\">\r\n\t<div class=\"grPanel\">\r\n\t\t<div class=\"prCard__row justify-content-end\">\r\n\t\t\t<div class=\"prCard__actionflex\">\r\n\t\t\t\t@if (AdditionalTemplate) {\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalTemplate\"></ng-container>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\r\n\t\t\t@if (ShowSearch) {\r\n\t\t\t\t<div class=\"ptSearch\">\r\n\t\t\t\t\t<p-iconfield>\r\n\t\t\t\t\t\t<input type=\"text\" class=\"prInputText\" pInputText placeholder=\"Search text here\" [(ngModel)]=\"SearchInput\" (keydown.enter)=\"ExecuteSearch()\" />\r\n\t\t\t\t\t\t<p-inputicon>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--close\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-cancel\" *ngIf=\"SearchInput\" (click)=\"ClearSearch()\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t<span class=\"ptSearch__icon ptSearch__icon--divider\" *ngIf=\"SearchInput\"></span>\r\n\t\t\t\t\t\t\t<button class=\"ptSearch__icon ptSearch__icon--search\">\r\n\t\t\t\t\t\t\t\t<i class=\"icon icon-search\"></i>\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t</p-inputicon>\r\n\t\t\t\t\t</p-iconfield>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<!-- <intelica-search\r\n\t\t\t#searchTable\r\n\t\t\t[ComponentId]=\"ComponentId + 'Search'\"\r\n\t\t\t(OnSearch)=\"ExecuteSearch($event)\"\r\n\t\t\t[SearchFieldOptions]=\"ListSearchOptionsSimple\"\r\n\t\t\t[SearchOnKeyup]=\"false\"\r\n\t\t\t[SimpleSearchInput]=\"false\"\r\n\t\t\t[ShowTooltip]=\"ShowSearchTooltip\"\r\n\t\t></intelica-search> -->\r\n\t\t\t}\r\n\t\t\t<!-- -->\r\n\t\t\t@if (AdditionalCentralTemplate) {\r\n\t\t\t\t<div class=\"prTableTools__new prTableTools__new--right\">\r\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalCentralTemplate\"></ng-container>\r\n\t\t\t\t</div>\r\n\t\t\t}\r\n\t\t</div>\r\n\t</div>\r\n\t@if (AdditionalExtendedTemplate) {\r\n\t\t<div class=\"prTableTools justify-content-start\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"AdditionalExtendedTemplate\"></ng-container>\r\n\t\t</div>\r\n\t}\r\n\t<!-- Tabla que muestra FilteredList -->\r\n\t<p-table\r\n\t\tclass=\"prTable\"\r\n\t\t[ngClass]=\"ClassName\"\r\n\t\t[value]=\"FilteredList\"\r\n\t\tresponsiveLayout=\"scroll\"\r\n\t\t[sortField]=\"DefaultSortField\"\r\n\t\t[sortOrder]=\"SortOrder\"\r\n\t\t[scrollable]=\"scrollable\"\r\n\t\t[scrollHeight]=\"scrollable ? scrollHeight : 'auto'\"\r\n\t\t[tableStyle]=\"tableStyle\"\r\n\t>\r\n\t\t<!-- Cabecera con columnas agrupadas -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t@for (level of Levels; track $index) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t@for (col of ColumnGroupList; track $index) {\r\n\t\t\t\t\t\t@if (col.level === level) {\r\n\t\t\t\t\t\t\t<th [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\" [pSortableColumn]=\"col.sortable ? col.field : ''\" [style.min-width]=\"col.minWidth\" (click)=\"col.sortable && OnSort(col.field)\">\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t@if (ShowCheckbox && level === 0 && ColumnGroupList.length != 0) {\r\n\t\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\" [attr.rowspan]=\"MaxLevel === 1 ? 2 : MaxLevel\">\r\n\t\t\t\t\t\t\t<p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t@if (col.showHeader) {\r\n\t\t\t\t\t\t<th\r\n\t\t\t\t\t\t\t[class]=\"col.className\"\r\n\t\t\t\t\t\t\t[pSortableColumn]=\"!col.isChecboxColumn && col.sortable ? col.field : ''\"\r\n\t\t\t\t\t\t\t[style.width]=\"col.width\"\r\n\t\t\t\t\t\t\t[style.min-width]=\"col.minWidth\"\r\n\t\t\t\t\t\t\t(click)=\"!col.isChecboxColumn && col.sortable && OnSort(col.field)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<div class=\"prTable__header\">\r\n\t\t\t\t\t\t\t\t<span [pTooltip]=\"col.headerTooltip || col.header\" [tooltipPosition]=\"col.headerTooltipPosition || 'top'\">\r\n\t\t\t\t\t\t\t\t\t{{ col.header }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t@if (!col.showIndex) {\r\n\t\t\t\t\t\t\t\t\t<p-sortIcon *ngIf=\"col.sortable\" [field]=\"col.field\"></p-sortIcon>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</th>\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox && ColumnGroupList.length == 0) {\r\n\t\t\t\t\t<th class=\"text-center\" style=\"width: 4%\">\r\n\t\t\t\t\t\t<p-tableHeaderCheckbox class=\"prCheckbox\" />\r\n\t\t\t\t\t</th>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\r\n\t\t\t@if (FilteredList.length > 0 && RowResumenList.length > 0) {\r\n\t\t\t\t<tr class=\"fixedRow\">\r\n\t\t\t\t\t@for (col of RowResumenList; track $index) {\r\n\t\t\t\t\t\t<td [ngClass]=\"col.className\" [attr.colspan]=\"col.colspan\" [attr.rowspan]=\"col.rowspan\">\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef\"></ng-container>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t}\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- Cuerpo de la tabla -->\r\n\t\t<ng-template pTemplate=\"body\" let-rowData let-rowIndex=\"rowIndex\">\r\n\t\t\t<tr>\r\n\t\t\t\t@for (col of ColumnList; track $index) {\r\n\t\t\t\t\t<td [ngClass]=\"col.className\">\r\n\t\t\t\t\t\t@if (col.showIndex) {\r\n\t\t\t\t\t\t\t{{ rowIndex + 1 + (CurrentPage - 1) * RowsPerPage }}\r\n\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t@if (col.templateRef) {\r\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"col.templateRef; context: { $implicit: rowData }\"></ng-container>\r\n\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t<span class=\"text-breakWord\" pTooltip=\"{{ col.tooltip }}\" tooltipPosition=\"{{ col.tooltipPosition }}\">\r\n\t\t\t\t\t\t\t\t\t{{ rowData[col.field] | formatCell: col.formatType }}\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t\t@if (ShowCheckbox) {\r\n\t\t\t\t\t<td class=\"text-center\">\r\n\t\t\t\t\t\t<p-tableCheckbox [value]=\"rowData\" class=\"prCheckbox\" />\r\n\t\t\t\t\t</td>\r\n\t\t\t\t}\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- Mensaje cuando no hay datos -->\r\n\t\t<ng-template pTemplate=\"emptymessage\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td [attr.colspan]=\"ColumnList.length + (ShowCheckbox ? 1 : 0)\" class=\"text-center\">\r\n\t\t\t\t\t{{ \"Nodata\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</ng-template>\r\n\t</p-table>\r\n\r\n\t<!-- <div class=\"prTableToolsBottom\"> -->\r\n\t<div class=\"d-flex justify-content-end\">\r\n\t\t@if (TotalRecords !== 0 && ShowPagination) {\r\n\t\t\t<div class=\"ptTablePaginator\">\r\n\t\t\t\t<p-paginator\r\n\t\t\t\t\tclass=\"prPaginator\"\r\n\t\t\t\t\t[first]=\"(CurrentPage - 1) * RowsPerPage\"\r\n\t\t\t\t\t[rows]=\"RowsPerPage\"\r\n\t\t\t\t\t[totalRecords]=\"TotalRecords\"\r\n\t\t\t\t\t(onPageChange)=\"OnPageChange($event)\"\r\n\t\t\t\t\t[showJumpToPageInput]=\"false\"\r\n\t\t\t\t\t[showCurrentPageReport]=\"false\"\r\n\t\t\t\t\t[showPageLinks]=\"false\"\r\n\t\t\t\t\t[showFirstLastIcon]=\"false\"\r\n\t\t\t\t\t[templateLeft]=\"templateLeft\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<ng-template #previouspagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-left\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template #nextpagelinkicon>\r\n\t\t\t\t\t\t<i class=\"icon icon-arrow-right\"></i>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<ng-template pTemplate=\"templateLeft\" let-state #templateLeft>\r\n\t\t\t\t\t\t<span>{{ \"ItemPerPage\" | term: GlobalTermService.languageCode }}</span>\r\n\t\t\t\t\t\t<p-select class=\"prSelect\" [options]=\"AllowedPageSizes\" [ngModel]=\"RowsPerPage\" appendTo=\"body\" (onChange)=\"OnRowsPerPageChange($event.value)\" />\r\n\t\t\t\t\t\t<span>\r\n\t\t\t\t\t\t\t{{ \"PAGE\" | term: GlobalTermService.languageCode }}\r\n\t\t\t\t\t\t\t<p-inputnumber class=\"p-paginator-jtp-input\" inputId=\"integeronly\" [(ngModel)]=\"CurrentPage\" />\r\n\t\t\t\t\t\t\t{{ \"Of\" | term: GlobalTermService.languageCode }} {{ TotalRecords }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t</p-paginator>\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n</div>\r\n" }]
5769
5787
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { ComponentId: [{
5770
5788
  type: Input
5771
5789
  }], ShowRowPerPage: [{
5772
5790
  type: Input
5773
5791
  }], ShowSearch: [{
5774
5792
  type: Input
5775
- }], ListSearchOptions: [{
5776
- type: Input
5777
5793
  }], ShowPagination: [{
5778
5794
  type: Input
5779
5795
  }], RowsPerPage: [{
@@ -5782,8 +5798,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
5782
5798
  type: Input
5783
5799
  }], ShowIndex: [{
5784
5800
  type: Input
5785
- }], ShowSearchTooltip: [{
5786
- type: Input
5787
5801
  }], ClassName: [{
5788
5802
  type: Input
5789
5803
  }], DefaultSortField: [{
@@ -5802,9 +5816,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
5802
5816
  type: Input
5803
5817
  }], EmitQueryParametersChange: [{
5804
5818
  type: Output
5805
- }], PaginatorTable: [{
5806
- type: ViewChild,
5807
- args: ["paginatorTable"]
5808
5819
  }], SearchTable: [{
5809
5820
  type: ViewChild,
5810
5821
  args: ["searchTable"]
@@ -5838,7 +5849,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
5838
5849
 
5839
5850
  class IntelicaAlertComponent {
5840
5851
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: IntelicaAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5841
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: IntelicaAlertComponent, isStandalone: true, selector: "intelica-alert", ngImport: i0, template: "<p-confirmDialog key=\"intelica-alert-dialog\" [style]=\"{width: 'auto', 'max-width': '90cw'}\" [closable]=\"false\"\r\n [visible]=\"undefined\">\r\n <!-- \r\n We use the headless template. \r\n 'message' contains the confirmation object.\r\n 'message.data' contains our custom 'presentationData' object from AlertService.\r\n -->\r\n <ng-template pTemplate=\"headless\" let-message let-onAccept=\"onAccept\" let-onReject=\"onReject\">\r\n <div [style]=\"message.data.dialogStyle\"\r\n style=\"background: white; display: flex; flex-direction: column; align-items: center; padding: 2rem; position: relative; text-align: center;\">\r\n\r\n <!-- Close Button -->\r\n @if (message.data.config.showCloseButton) {\r\n <button type=\"button\"\r\n style=\"position: absolute; top: 0.75rem; right: 0.75rem; background: transparent; border: none; cursor: pointer; padding: 0.5rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: background-color 0.2s;\"\r\n (click)=\"onReject()\" aria-label=\"Cerrar\">\r\n <i class=\"pi pi-times\" style=\"font-size: 1.25rem; color: #6c757d;\"></i>\r\n </button>\r\n }\r\n\r\n <!-- Icon -->\r\n <div [style.backgroundColor]=\"message.data.iconBackgroundColor\"\r\n style=\"width: 80px; height: 80px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 1.5rem;\">\r\n @if (message.data.config.customImageUrl) {\r\n <img [src]=\"message.data.config.customImageUrl\" style=\"width: 60px; height: 60px; object-fit: contain;\"\r\n alt=\"Alert icon\" />\r\n } @else {\r\n <i [class]=\"message.data.iconClass\" [style.color]=\"message.data.iconColor\"\r\n style=\"font-size: 2.5rem;\"></i>\r\n }\r\n </div>\r\n\r\n <!-- Title -->\r\n <h2 [style.color]=\"message.data.titleColor\"\r\n style=\"margin: 0 0 0.75rem 0; font-size: 1.5rem; font-weight: 600;\">{{ message.header }}</h2>\r\n\r\n <!-- Subtitle / Message -->\r\n @if (message.message) {\r\n <p [style.color]=\"message.data.config.styles?.subtitleColor ?? '#555'\"\r\n style=\"margin: 0 0 1.5rem 0; font-size: 1rem; line-height: 1.5;\">{{ message.message }}</p>\r\n }\r\n\r\n <!-- HTML Content -->\r\n @if (message.data.config.htmlContent) {\r\n <div [innerHTML]=\"message.data.config.htmlContent\"\r\n [style.color]=\"message.data.config.styles?.subtitleColor ?? '#555'\"\r\n style=\"margin-bottom: 1.5rem; width: 100%;\"></div>\r\n }\r\n\r\n <!-- Buttons -->\r\n <div style=\"display: flex; gap: 0.75rem; justify-content: center; width: 100%; margin-top: 0.5rem;\">\r\n <!-- Cancel Button -->\r\n @if (message.data.showCancelButton) {\r\n <p-button [label]=\"message.data.cancelText\" [style]=\"message.data.cancelButtonStyle\"\r\n severity=\"secondary\" [outlined]=\"true\" (onClick)=\"onReject()\" />\r\n }\r\n <!-- Confirm Button -->\r\n <p-button [label]=\"message.data.confirmText\" [style]=\"message.data.confirmButtonStyle\"\r\n (onClick)=\"onAccept()\" />\r\n </div>\r\n </div>\r\n </ng-template>\r\n</p-confirmDialog>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i1$3.ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "directive", type: i3$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] });
5852
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: IntelicaAlertComponent, isStandalone: true, selector: "intelica-alert", ngImport: i0, template: "<p-confirmDialog key=\"intelica-alert-dialog\" [style]=\"{width: 'auto', 'max-width': '90cw'}\" [closable]=\"false\"\r\n [visible]=\"undefined\">\r\n <!-- \r\n We use the headless template. \r\n 'message' contains the confirmation object.\r\n 'message.data' contains our custom 'presentationData' object from AlertService.\r\n -->\r\n <ng-template pTemplate=\"headless\" let-message let-onAccept=\"onAccept\" let-onReject=\"onReject\">\r\n <div [style]=\"message.data.dialogStyle\"\r\n style=\"background: white; display: flex; flex-direction: column; align-items: center; padding: 2rem; position: relative; text-align: center;\">\r\n\r\n <!-- Close Button -->\r\n @if (message.data.config.showCloseButton) {\r\n <button type=\"button\"\r\n style=\"position: absolute; top: 0.75rem; right: 0.75rem; background: transparent; border: none; cursor: pointer; padding: 0.5rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: background-color 0.2s;\"\r\n (click)=\"onReject()\" aria-label=\"Cerrar\">\r\n <i class=\"pi pi-times\" style=\"font-size: 1.25rem; color: #6c757d;\"></i>\r\n </button>\r\n }\r\n\r\n <!-- Icon -->\r\n <div [style.backgroundColor]=\"message.data.iconBackgroundColor\"\r\n style=\"width: 80px; height: 80px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 1.5rem;\">\r\n @if (message.data.config.customImageUrl) {\r\n <img [src]=\"message.data.config.customImageUrl\" style=\"width: 60px; height: 60px; object-fit: contain;\"\r\n alt=\"Alert icon\" />\r\n } @else {\r\n <i [class]=\"message.data.iconClass\" [style.color]=\"message.data.iconColor\"\r\n style=\"font-size: 2.5rem;\"></i>\r\n }\r\n </div>\r\n\r\n <!-- Title -->\r\n <h2 [style.color]=\"message.data.titleColor\"\r\n style=\"margin: 0 0 0.75rem 0; font-size: 1.5rem; font-weight: 600;\">{{ message.header }}</h2>\r\n\r\n <!-- Subtitle / Message -->\r\n @if (message.message) {\r\n <p [style.color]=\"message.data.config.styles?.subtitleColor ?? '#555'\"\r\n style=\"margin: 0 0 1.5rem 0; font-size: 1rem; line-height: 1.5;\">{{ message.message }}</p>\r\n }\r\n\r\n <!-- HTML Content -->\r\n @if (message.data.config.htmlContent) {\r\n <div [innerHTML]=\"message.data.config.htmlContent\"\r\n [style.color]=\"message.data.config.styles?.subtitleColor ?? '#555'\"\r\n style=\"margin-bottom: 1.5rem; width: 100%;\"></div>\r\n }\r\n\r\n <!-- Buttons -->\r\n <div style=\"display: flex; gap: 0.75rem; justify-content: center; width: 100%; margin-top: 0.5rem;\">\r\n <!-- Cancel Button -->\r\n @if (message.data.showCancelButton) {\r\n <p-button [label]=\"message.data.cancelText\" [style]=\"message.data.cancelButtonStyle\"\r\n severity=\"secondary\" [outlined]=\"true\" (onClick)=\"onReject()\" />\r\n }\r\n <!-- Confirm Button -->\r\n <p-button [label]=\"message.data.confirmText\" [style]=\"message.data.confirmButtonStyle\"\r\n (onClick)=\"onAccept()\" />\r\n </div>\r\n </div>\r\n </ng-template>\r\n</p-confirmDialog>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i1$3.ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] });
5842
5853
  }
5843
5854
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: IntelicaAlertComponent, decorators: [{
5844
5855
  type: Component,
@@ -7578,18 +7589,34 @@ class EchartService {
7578
7589
  const safeValue = Math.max(0, Math.min(value, safeTotal));
7579
7590
  const START_ANGLE = 210;
7580
7591
  const END_ANGLE = -30;
7581
- const THICKNESS = 22;
7592
+ const THICKNESS = 11;
7582
7593
  const BACKGROUND_COLOR = "#D9D9E3";
7583
7594
  const TEXT_COLOR = "#4F5470";
7584
7595
  const MIN_LABEL = "0";
7585
7596
  const MAX_LABEL = String(safeTotal);
7586
7597
  const MIN_MAX_FONT_SIZE = 15;
7587
- return {
7598
+ const RADIUS = "96%";
7599
+ const CENTER = ["50%", "50%"];
7600
+ const dotSizePx = THICKNESS + 5;
7601
+ const BASE_RADIUS_PERCENT = 96;
7602
+ const BASE_THICKNESS = 11;
7603
+ const BASE_DOT_SIZE = THICKNESS + 5;
7604
+ const BASE_POINTER_LENGTH = 196; // tu valor comprobado
7605
+ const radiusPercent = parseFloat(RADIUS);
7606
+ const radiusFactor = radiusPercent / BASE_RADIUS_PERCENT;
7607
+ const thicknessFactor = THICKNESS / BASE_THICKNESS;
7608
+ const dotFactor = dotSizePx / BASE_DOT_SIZE;
7609
+ const scale = radiusFactor * 0.5 + thicknessFactor * 0.3 + dotFactor * 0.2;
7610
+ const pointerLengthPercent = Math.round(BASE_POINTER_LENGTH * scale);
7611
+ const POINTER_LENGTH = `${pointerLengthPercent}%`;
7612
+ const option = {
7588
7613
  tooltip: { trigger: "none", appendTo: "body" },
7589
7614
  series: [
7590
7615
  /* ================= GAUGE 1: PROGRESS ================= */
7591
7616
  {
7592
7617
  type: "gauge",
7618
+ radius: RADIUS,
7619
+ center: CENTER,
7593
7620
  startAngle: START_ANGLE,
7594
7621
  endAngle: END_ANGLE,
7595
7622
  min: 0,
@@ -7647,6 +7674,8 @@ class EchartService {
7647
7674
  /* ================= GAUGE 2: END DOT ================= */
7648
7675
  {
7649
7676
  type: "gauge",
7677
+ radius: RADIUS,
7678
+ center: CENTER,
7650
7679
  startAngle: START_ANGLE,
7651
7680
  endAngle: END_ANGLE,
7652
7681
  min: 0,
@@ -7659,19 +7688,19 @@ class EchartService {
7659
7688
  detail: { show: false },
7660
7689
  pointer: {
7661
7690
  show: true,
7662
- length: "183%",
7663
- width: 38,
7664
7691
  icon: "circle",
7692
+ length: POINTER_LENGTH,
7693
+ width: dotSizePx,
7665
7694
  itemStyle: {
7666
7695
  color,
7667
- borderColor: BACKGROUND_COLOR,
7668
- borderWidth: 4,
7696
+ borderWidth: 0,
7669
7697
  },
7670
7698
  },
7671
7699
  data: [{ value: safeValue }],
7672
7700
  },
7673
7701
  ],
7674
7702
  };
7703
+ return option;
7675
7704
  }
7676
7705
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EchartService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7677
7706
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EchartService, providedIn: "root" });
@@ -7777,6 +7806,154 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
7777
7806
  args: [{ providedIn: "root" }]
7778
7807
  }] });
7779
7808
 
7809
+ class IntelicaSessionService {
7810
+ configService = inject(ConfigService);
7811
+ prefix = "itl.session.";
7812
+ sessionIdKey = "itl.session.__sessionId";
7813
+ pageRoot = "";
7814
+ sessionId = null;
7815
+ constructor() {
7816
+ this.ensureSessionId();
7817
+ this.cleanupForeignSessions();
7818
+ }
7819
+ /**
7820
+ * Actualiza el pageRoot actual, es necesario matricularlo en el app.component
7821
+ */
7822
+ setPageRoot(pageRoot) {
7823
+ this.pageRoot = pageRoot;
7824
+ }
7825
+ /**
7826
+ * Retorna la key de usuario con scope si necesitas reutilizarla manualmente.
7827
+ */
7828
+ getUserKey(key) {
7829
+ return this.buildScopedKey(key, "user");
7830
+ }
7831
+ ensureSessionId() {
7832
+ if (this.sessionId)
7833
+ return this.sessionId;
7834
+ const stored = localStorage.getItem(this.sessionIdKey);
7835
+ if (stored) {
7836
+ this.sessionId = stored;
7837
+ return stored;
7838
+ }
7839
+ const id = this.createGuid();
7840
+ this.sessionId = id;
7841
+ localStorage.setItem(this.sessionIdKey, id);
7842
+ return id;
7843
+ }
7844
+ createGuid() {
7845
+ return Guid.create().toString();
7846
+ }
7847
+ buildScopedKey(key, scope = "user-profile") {
7848
+ const parts = [];
7849
+ if (this.pageRoot)
7850
+ parts.push(this.pageRoot);
7851
+ parts.push(key);
7852
+ const userId = this.configService.SessionInformation?.businessUserID;
7853
+ const profileId = this.configService.SessionInformation?.businessUserProfile;
7854
+ if (scope === "user" || scope === "user-profile") {
7855
+ if (userId)
7856
+ parts.push(`user:${userId}`);
7857
+ }
7858
+ if (scope === "profile" || scope === "user-profile") {
7859
+ if (profileId)
7860
+ parts.push(`profile:${profileId}`);
7861
+ }
7862
+ return parts.join("|");
7863
+ }
7864
+ set(key, value, scope = "user-profile") {
7865
+ this.ensureSessionId();
7866
+ const storageKey = this.buildScopedKey(key, scope);
7867
+ const envelope = {
7868
+ sessionId: this.sessionId,
7869
+ updatedAt: Date.now(),
7870
+ value,
7871
+ };
7872
+ localStorage.setItem(this.prefix + storageKey, JSON.stringify(envelope));
7873
+ }
7874
+ get(key, scope = "user-profile") {
7875
+ const storageKey = this.buildScopedKey(key, scope);
7876
+ const raw = localStorage.getItem(this.prefix + storageKey);
7877
+ if (!raw)
7878
+ return null;
7879
+ try {
7880
+ const env = JSON.parse(raw);
7881
+ if (!this.sessionId || env.sessionId !== this.sessionId)
7882
+ return null;
7883
+ return env.value;
7884
+ }
7885
+ catch {
7886
+ return null;
7887
+ }
7888
+ }
7889
+ /**
7890
+ * Limpia todo lo que haya en localStorage para este servicio (todas las sesiones).
7891
+ * Úsalo al iniciar sesión/cerrar sesión para evitar acumulación.
7892
+ */
7893
+ clearAll() {
7894
+ Object.keys(localStorage)
7895
+ .filter(k => k.startsWith(this.prefix))
7896
+ .forEach(k => localStorage.removeItem(k));
7897
+ localStorage.removeItem(this.sessionIdKey);
7898
+ this.sessionId = null;
7899
+ }
7900
+ /**
7901
+ * Limpia los valores de la sesión actual para el pageRoot vigente.
7902
+ */
7903
+ clearCurrentPageRoot() {
7904
+ if (!this.pageRoot)
7905
+ return;
7906
+ this.clearPageRoot(this.pageRoot);
7907
+ }
7908
+ clearPageRoot(pageRoot) {
7909
+ const prefix = `${this.prefix}${pageRoot}|`;
7910
+ Object.keys(localStorage)
7911
+ .filter(k => k.startsWith(prefix))
7912
+ .forEach(k => {
7913
+ const raw = localStorage.getItem(k);
7914
+ if (!raw)
7915
+ return;
7916
+ const env = this.tryParseEnvelope(raw);
7917
+ if (!env || env.sessionId !== this.sessionId)
7918
+ return;
7919
+ localStorage.removeItem(k);
7920
+ });
7921
+ }
7922
+ cleanupForeignSessions() {
7923
+ if (!this.sessionId)
7924
+ return;
7925
+ Object.keys(localStorage)
7926
+ .filter(k => k.startsWith(this.prefix))
7927
+ .forEach(k => {
7928
+ const raw = localStorage.getItem(k);
7929
+ if (!raw)
7930
+ return;
7931
+ const env = this.tryParseEnvelope(raw);
7932
+ if (!env)
7933
+ return;
7934
+ if (env.sessionId !== this.sessionId) {
7935
+ localStorage.removeItem(k);
7936
+ }
7937
+ });
7938
+ }
7939
+ tryParseEnvelope(raw) {
7940
+ try {
7941
+ return JSON.parse(raw);
7942
+ }
7943
+ catch {
7944
+ return null;
7945
+ }
7946
+ }
7947
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: IntelicaSessionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7948
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: IntelicaSessionService, providedIn: "root" });
7949
+ }
7950
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: IntelicaSessionService, decorators: [{
7951
+ type: Injectable,
7952
+ args: [{
7953
+ providedIn: "root",
7954
+ }]
7955
+ }], ctorParameters: () => [] });
7956
+
7780
7957
  /**
7781
7958
  * Función de comparación genérica para ordenar objetos por un campo específico.
7782
7959
  *
@@ -10163,5 +10340,5 @@ const IntelicaTheme = definePreset(Aura, {
10163
10340
  * Generated bundle index. Do not edit.
10164
10341
  */
10165
10342
 
10166
- export { ALERT_DEFAULTS, ALERT_ICON_PATHS, ALERT_TYPE_CONFIG, ActionDirective, ActionsMenuComponent, AddFavoritesComponent, AlertButtonMode, AlertService, AlertType, ButtonSplitComponent, CheckboxFilterDirective, Color, ColumnComponent, ColumnGroupComponent, CompareByField, ConfigService, CookieAttributesGeneral, DATEPICKER_BUTTON_TYPES, DataDirective, DateFilterDirective, DateModeOptions, DatepickerComponent, DynamicInputValidation, EchartComponent, EchartService, ElementService, EmailInputValidation, ErrorInterceptor, FeatureFlagService, FilterChipsComponent, FiltersComponent, FormatAmountPipe, GetCookieAttributes, GlobalFeatureFlagService, GlobalTermService, HtmlToExcelService, InitializeConfigService, InputValidation, IntelicaAlertComponent, IntelicaCellCheckboxDirective, IntelicaTheme, ItemSplitDirective, LanguageService, MatrixColumnComponent, MatrixColumnGroupComponent, MatrixTableComponent, ModalDialogComponent, MultiSelectComponent, OrderConstants, PaginatorComponent, Patterns, PopoverComponent, ProfileService, RecordPerPageComponent, RefreshTokenInterceptor, RouteGuard, RowResumenComponent, RowResumenTreeComponent, SearchComponent, SelectDetailFilterDirective, SelectFilterDirective, SharedService, SkeletonChartComponent, SkeletonComponent, SkeletonService, SkeletonTableComponent, SortingComponent, SpinnerComponent, SpinnerService, SweetAlertService, TableComponent, TableFetchComponent, TableSortOrder, TemplateDirective, TemplateMenuComponent, TermGuard, TermPipe, TermService, TextAreaFilterDirective, TextFilterDirective, TextRangeFilterDirective, TreeColumnComponent, TreeColumnGroupComponent, TreeTableComponent, TruncatePipe, decryptData, encryptData, getColor };
10343
+ export { ALERT_DEFAULTS, ALERT_ICON_PATHS, ALERT_TYPE_CONFIG, ActionDirective, ActionsMenuComponent, AddFavoritesComponent, AlertButtonMode, AlertService, AlertType, ButtonSplitComponent, CheckboxFilterDirective, Color, ColumnComponent, ColumnGroupComponent, CompareByField, ConfigService, CookieAttributesGeneral, DATEPICKER_BUTTON_TYPES, DataDirective, DateFilterDirective, DateModeOptions, DatepickerComponent, DynamicInputValidation, EchartComponent, EchartService, ElementService, EmailInputValidation, ErrorInterceptor, FeatureFlagService, FilterChipsComponent, FiltersComponent, FormatAmountPipe, GetCookieAttributes, GlobalFeatureFlagService, GlobalTermService, HtmlToExcelService, InitializeConfigService, InputValidation, IntelicaAlertComponent, IntelicaCellCheckboxDirective, IntelicaSessionService, IntelicaTheme, ItemSplitDirective, LanguageService, MatrixColumnComponent, MatrixColumnGroupComponent, MatrixTableComponent, ModalDialogComponent, MultiSelectComponent, OrderConstants, PaginatorComponent, Patterns, PopoverComponent, ProfileService, RecordPerPageComponent, RefreshTokenInterceptor, RouteGuard, RowResumenComponent, RowResumenTreeComponent, SearchComponent, SelectDetailFilterDirective, SelectFilterDirective, SharedService, SkeletonChartComponent, SkeletonComponent, SkeletonService, SkeletonTableComponent, SortingComponent, SpinnerComponent, SpinnerService, SweetAlertService, TableComponent, TableFetchComponent, TableSortOrder, TemplateDirective, TemplateMenuComponent, TermGuard, TermPipe, TermService, TextAreaFilterDirective, TextFilterDirective, TextRangeFilterDirective, TreeColumnComponent, TreeColumnGroupComponent, TreeTableComponent, TruncatePipe, decryptData, encryptData, getColor };
10167
10344
  //# sourceMappingURL=intelica-library-components.mjs.map