libey-ng-component-library 0.0.1 → 0.0.3

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.
@@ -0,0 +1,32 @@
1
+ import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LibeyColumnDirective {
4
+ }
5
+ LibeyColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
+ LibeyColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: LibeyColumnDirective, selector: "libey-ng-column", inputs: { header: "header", property: "property", width: "width", arrayMap: "arrayMap", isArray: "isArray", expandable: "expandable", class: "class", childTableTemplate: "childTableTemplate" }, queries: [{ propertyName: "cellTemplate", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, decorators: [{
8
+ type: Directive,
9
+ args: [{
10
+ selector: 'libey-ng-column'
11
+ }]
12
+ }], propDecorators: { header: [{
13
+ type: Input
14
+ }], property: [{
15
+ type: Input
16
+ }], width: [{
17
+ type: Input
18
+ }], arrayMap: [{
19
+ type: Input
20
+ }], isArray: [{
21
+ type: Input
22
+ }], expandable: [{
23
+ type: Input
24
+ }], class: [{
25
+ type: Input
26
+ }], childTableTemplate: [{
27
+ type: Input
28
+ }], cellTemplate: [{
29
+ type: ContentChild,
30
+ args: [TemplateRef]
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvdGFibGUvZGlyZWN0aXZlcy9saWJleS1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzVFLE1BQU0sT0FBTyxvQkFBb0I7O2tIQUFwQixvQkFBb0I7c0dBQXBCLG9CQUFvQixtU0FTakIsV0FBVzs0RkFUZCxvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OEJBRVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDcUIsWUFBWTtzQkFBdEMsWUFBWTt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudENoaWxkLCBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdsaWJleS1uZy1jb2x1bW4nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMaWJleUNvbHVtbkRpcmVjdGl2ZSB7XHJcbiAgQElucHV0KCkgaGVhZGVyITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHByb3BlcnR5ITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHdpZHRoITogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGFycmF5TWFwPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzQXJyYXk/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGV4cGFuZGFibGU/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNoaWxkVGFibGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAQ29udGVudENoaWxkKFRlbXBsYXRlUmVmKSBjZWxsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG59Il19
@@ -1,60 +1,196 @@
1
- import { Component } from '@angular/core';
1
+ import { Component, ContentChildren, EventEmitter, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
+ import { LibeyColumnDirective } from './directives/libey-column.directive';
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "@angular/common";
5
+ class DataKey {
6
+ }
4
7
  export class LibeyNgTableComponent {
5
- constructor(datepipe) {
6
- this.datepipe = datepipe;
7
- this.providers = [
8
- { width: "1150px", class: "bg-white", label: "", appendTo: "container" },
9
- { width: "793px", class: "div-cabecera-tariff", label: "PROVEEDOR FACTURADOR N° 1" },
10
- { width: "792px", class: "div-cabecera-patient", label: "PROVEEDOR FACTURADOR N° 2" },
11
- { width: "792px", class: "div-cabecera-insurance", label: "PROVEEDOR FACTURADOR N° 3" },
12
- { width: "792px", class: "div-header-text bg-purple", label: "PROVEEDOR FACTURADOR N° 4" },
13
- { width: "793px", class: "div-administrative-data me-0", label: "PROVEEDOR FACTURADOR N° 5" }
14
- ];
15
- this.columns = [
16
- { width: "135px", text: "Cód. producto", class: "color-sky-blue" },
17
- { width: "500px", text: "Descrip. producto", class: "color-sky-blue" },
18
- { width: "385px", text: "Proveedor facturador sugerido", class: "competitionPrice" },
19
- { width: "130px", text: "Último valor de compra S/IGV sugerido", class: "competitionPrice" },
20
- { width: "135px", text: "RUC", class: "color-sky-blue" },
21
- { width: "260px", text: "Razón Social", class: "color-sky-blue" },
22
- { width: "120px", text: "Último valor de compra S/IGV", class: "color-sky-blue" },
23
- { width: "115px", text: "Cód. EM", class: "color-sky-blue" },
24
- { width: "165px", text: "Fecha y hora ingreso EM", class: "color-sky-blue" },
25
- { width: "135px", text: "RUC", class: "color-sky-blue" },
26
- { width: "260px", text: "Razón Social", class: "color-sky-blue" },
27
- { width: "120px", text: "Último valor de compra S/IGV", class: "color-sky-blue" },
28
- { width: "115px", text: "Cód. EM", class: "color-sky-blue" },
29
- { width: "165px", text: "Fecha y hora ingreso EM", class: "color-sky-blue" },
30
- { width: "135px", text: "RUC", class: "color-sky-blue" },
31
- { width: "260px", text: "Razón Social", class: "color-sky-blue" },
32
- { width: "120px", text: "Último valor de compra S/IGV", class: "color-sky-blue" },
33
- { width: "115px", text: "Cód. EM", class: "color-sky-blue" },
34
- { width: "165px", text: "Fecha y hora ingreso EM", class: "color-sky-blue" },
35
- { width: "135px", text: "RUC", class: "color-sky-blue" },
36
- { width: "260px", text: "Razón Social", class: "color-sky-blue" },
37
- { width: "120px", text: "Último valor de compra S/IGV", class: "color-sky-blue" },
38
- { width: "115px", text: "Cód. EM", class: "color-sky-blue" },
39
- { width: "165px", text: "Fecha y hora ingreso EM", class: "color-sky-blue" },
40
- { width: "135px", text: "RUC", class: "color-sky-blue" },
41
- { width: "260px", text: "Razón Social", class: "color-sky-blue" },
42
- { width: "120px", text: "Último valor de compra S/IGV", class: "color-sky-blue" },
43
- { width: "115px", text: "Cód. EM", class: "color-sky-blue" },
44
- { width: "165px", text: "Fecha y hora ingreso EM", class: "color-sky-blue" }
45
- ];
8
+ constructor(cdr) {
9
+ this.cdr = cdr;
10
+ this.pageSize = 10;
11
+ this.totalSize = 0;
12
+ this.maxPageButtons = 5;
13
+ this.expandable = false;
14
+ this.viewPaginate = true;
15
+ this.headerfixed = false;
16
+ this.pageChange = new EventEmitter();
17
+ this.rowExpandable = [];
18
+ this.rowExpandableDetail = [];
19
+ this.currentPage = 1;
20
+ this.paginatedData = [];
21
+ this._data = [];
22
+ this.columnWidths = [];
23
+ this.resizingColumnIndex = null;
24
+ this.startX = 0;
25
+ this.startWidth = 0;
26
+ this.onResizeMove = (event) => {
27
+ if (this.resizingColumnIndex !== null) {
28
+ const diff = event.pageX - this.startX;
29
+ this.columnWidths[this.resizingColumnIndex] = Math.max(this.startWidth + diff, 50);
30
+ }
31
+ };
32
+ this.onResizeEnd = () => {
33
+ this.resizingColumnIndex = null;
34
+ document.removeEventListener('mousemove', this.onResizeMove);
35
+ document.removeEventListener('mouseup', this.onResizeEnd);
36
+ };
37
+ }
38
+ set data(value) {
39
+ this._data = value;
40
+ }
41
+ get data() {
42
+ return this._data;
46
43
  }
47
44
  ngOnInit() {
45
+ this.updatePaginatedData();
46
+ }
47
+ ngAfterViewInit() {
48
+ this.initializeColumnWidths();
49
+ this.adjustTableWidth();
50
+ this.cdr.detectChanges();
51
+ }
52
+ initializeColumnWidths() {
53
+ var padding = 31;
54
+ var widthDefault = 150;
55
+ this.columnWidths = this.columns.map(column => column.width);
56
+ const containerWidth = this.tableContainer.nativeElement.offsetWidth;
57
+ const autoColumns = this.columns.filter(column => column.width == null);
58
+ const totalFixedWidth = this.columns.reduce((sum, column) => column.width != null ? (sum + this.getWidthValue(column.width)) : sum, 0);
59
+ const remainingWidth = containerWidth - (totalFixedWidth + (((this.columns.length - autoColumns.length) * padding) + (this.expandable ? 61 : 0)));
60
+ if (autoColumns.length > 0) {
61
+ var autoColumnWidth = 0;
62
+ if (remainingWidth < widthDefault)
63
+ autoColumnWidth = widthDefault;
64
+ else
65
+ autoColumnWidth = Math.max(0, remainingWidth / autoColumns.length);
66
+ autoColumns.forEach(column => column.width = autoColumnWidth - padding);
67
+ }
68
+ this.columnWidths = this.columns.map(column => column.width);
69
+ }
70
+ adjustTableWidth() {
71
+ const totalWidth = this.columns.reduce((sum, column) => sum + this.getWidthValue(column.width), 0);
72
+ this.tableElement.nativeElement.style.width = `${totalWidth}px`;
73
+ }
74
+ getWidthValue(width) {
75
+ return width === null ? 100 : width;
76
+ }
77
+ get totalPages() {
78
+ return Math.ceil(this.totalSize / this.pageSize);
79
+ }
80
+ getCellValue(item, column) {
81
+ const value = this.getNestedValue(item, column.property);
82
+ if (Array.isArray(value) && column.arrayMap) {
83
+ return value.map(v => this.getNestedValue(v, column.arrayMap)).join(', ');
84
+ }
85
+ return value;
86
+ }
87
+ getNestedValue(obj, path) {
88
+ return path.split('.').reduce((o, key) => {
89
+ if (o && typeof o === 'object' && key in o) {
90
+ return o[key];
91
+ }
92
+ return undefined;
93
+ }, obj);
94
+ }
95
+ updatePaginatedData() {
96
+ console.log(this.pageSize);
97
+ const start = (this.currentPage - 1) * this.pageSize;
98
+ const end = start + this.pageSize;
99
+ this.paginatedData = this.data.slice(start, end);
100
+ }
101
+ pageRange() {
102
+ const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));
103
+ const end = Math.min(this.totalPages, start + this.maxPageButtons - 1);
104
+ return Array.from({ length: end - start + 1 }, (_, i) => start + i);
105
+ }
106
+ goToPage(page) {
107
+ this.currentPage = Math.max(1, Math.min(page, this.totalPages));
108
+ this.updatePaginatedData();
109
+ this.pageChange.emit(this.currentPage);
110
+ }
111
+ // hasChildren(row: any): boolean{
112
+ // return Array.isArray(row.child) && row.child.length > 0;
113
+ // }
114
+ toggleRow(index) {
115
+ this.rowExpandable[index] = !this.rowExpandable[index];
116
+ }
117
+ toggleRowDetail(key, indexData, propertyChild) {
118
+ var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);
119
+ this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key && x.dataKey != indexData);
120
+ if (exist == null) {
121
+ var item = new DataKey();
122
+ item.key = key;
123
+ item.dataKey = indexData;
124
+ item.childTableTemplate = propertyChild;
125
+ // item.data = this.getNestedValue(item, propertyChild);
126
+ this.rowExpandableDetail.push(item);
127
+ console.log(this.rowExpandableDetail);
128
+ }
129
+ }
130
+ getChildren(fila) {
131
+ return fila.hijos || [];
132
+ }
133
+ onResizeStart(index, event) {
134
+ this.resizingColumnIndex = index;
135
+ this.startX = event.pageX;
136
+ this.startWidth = this.columnWidths[index];
137
+ document.addEventListener('mousemove', this.onResizeMove);
138
+ document.addEventListener('mouseup', this.onResizeEnd);
139
+ }
140
+ existRowExpandableDetail(key, indexData) {
141
+ return this.rowExpandableDetail.filter(x => x.key == key && x.dataKey == indexData).length > 0;
142
+ }
143
+ viewRowExpandableDetail(indexData) {
144
+ return this.rowExpandableDetail.filter(x => x.dataKey == indexData).length > 0;
145
+ }
146
+ findRowExpandableDetail(indexData) {
147
+ var find = this.rowExpandableDetail.find(x => x.dataKey == indexData);
148
+ if (find)
149
+ return find.childTableTemplate;
150
+ else
151
+ return null;
48
152
  }
49
153
  }
50
- LibeyNgTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableComponent, deps: [{ token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
51
- LibeyNgTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LibeyNgTableComponent, selector: "libey-ng-table", ngImport: i0, template: "<div class=\"col-12 mb-5 table-scroll h-auto mh-600px\">\r\n <div class=\"div-header-sticky w-5125px mb-1\">\r\n <div class=\"d-flex\">\r\n <div *ngFor=\"let provider of providers\"\r\n [style.width]=\"provider.width\"\r\n [attr.appendTo]=\"provider.appendTo ? provider.appendTo : null\">\r\n <label>{{ provider.label }}</label>\r\n </div>\r\n </div>\r\n </div>\r\n <table class=\"table mb-0 p-0\">\r\n <thead class=\"div-table-header h-50px\">\r\n <tr style=\"vertical-align: middle;position: sticky !important;z-index: 10;top: 23px;\">\r\n <th *ngFor=\"let col of columns\" [style.width]=\"col.width\" class=\"table-header font-detalle3 py-0\">\r\n {{ col.text }}\r\n </th>\r\n </tr>\r\n </thead>\r\n <ng-container>\r\n <tbody>\r\n\r\n <ng-container *ngFor=\"let group of materialSupplier\">\r\n <tr style=\"border-bottom: 1px solid #EFEFEF !important;\">\r\n <td colspan=\"1\" class=\"table-body py-1 px-15\">\r\n <label class=\"align-middle\">{{ group.materialCode }}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body py-1 px-15\">\r\n <label class=\"align-middle\">{{ group.materialDescription }}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body competitionPricerow py-1 px-15\">\r\n <label class=\"align-middle\">{{ group.suggestedBillingProvider.businessName}}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body competitionPricerow py-1 px-15 text-end\">\r\n <label class=\"align-middle\">{{ group.suggestedBillingProvider.purchaseValue }}</label>\r\n </td>\r\n <ng-container *ngFor=\"let item of group.items.slice(0, 5)\">\r\n <td colspan=\"1\" class=\"table-body py-1 px-15\">\r\n <label class=\"align-middle\">{{ item.providerTaxIdentificationCode }}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body py-1 px-15\">\r\n <label class=\"align-middle\">{{ item.businessName }}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body py-1 px-15 text-end\">\r\n <label class=\"align-middle\">{{ item.purchaseValue }}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body py-1 px-15\">\r\n <label class=\"align-middle\">{{ item.merchandiseMaterialDocumentCode }}</label>\r\n </td>\r\n <td colspan=\"1\" class=\"table-body py-1\">\r\n <label class=\"align-middle\">{{ item.createdDateTime }}</label>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </tbody>\r\n </ng-container>\r\n </table>\r\n</div>", styles: [""] });
154
+ LibeyNgTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
155
+ LibeyNgTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LibeyNgTableComponent, selector: "libey-ng-table", inputs: { data: "data", pageSize: "pageSize", totalSize: "totalSize", maxPageButtons: "maxPageButtons", height: "height", expandable: "expandable", viewPaginate: "viewPaginate", childTableTemplate: "childTableTemplate", headerfixed: "headerfixed", class: "class" }, outputs: { pageChange: "pageChange" }, queries: [{ propertyName: "columns", predicate: LibeyColumnDirective }], viewQueries: [{ propertyName: "tableContainer", first: true, predicate: ["tableContainer"], descendants: true }, { propertyName: "tableElement", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<div class=\"table-container\" #tableContainer [style.height]=\"height == null ? 'auto':(height + 'px')\">\r\n <!-- <table cdkDropList (cdkDropListDropped)=\"drop($event)\"> -->\r\n <table #table [ngClass]=\"class\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"expandable\" [ngClass]=\"headerfixed == true ? 'th-fixed':''\" style=\"width: 25px;\"></th>\r\n <ng-container *ngFor=\"let column of columns; let i = index\">\r\n <th [style.width]=\"columnWidths[i] == null ? 'auto':(columnWidths[i] + 'px')\" [ngClass]=\"headerfixed == true ? 'th-fixed':''\">\r\n {{ column.header }}\r\n <div class=\"resize-handle\" (mousedown)=\"onResizeStart(i, $event)\"></div>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngIf=\"paginatedData.length == 0\">\r\n <tr>\r\n <td [colSpan]=\"expandable ? (columns.length + 1) : (columns.length)\" class=\"text-center\">\r\n No existen datos disponibles\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <ng-container *ngIf=\"paginatedData.length != 0\">\r\n <ng-container *ngFor=\"let item of paginatedData; let a = index\">\r\n <tr>\r\n <td *ngIf=\"expandable\">\r\n <button (click)=\"toggleRow(a)\">\r\n <i [ngClass]=\"rowExpandable[a] ? 'icon-arrow-up':'icon-arrow-down'\"></i>\r\n </button>\r\n </td>\r\n <ng-container *ngFor=\"let column of columns; let i = index\">\r\n <td [ngClass]=\"column.class\">\r\n <ng-container *ngIf=\"column.cellTemplate; else defaultCell\">\r\n <div style=\"display: flex; justify-content: space-between;\">\r\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: item }\"></ng-container>\r\n <button *ngIf=\"column.expandable\" (click)=\"toggleRowDetail(i, a, column.childTableTemplate)\">\r\n <i [ngClass]=\"existRowExpandableDetail(i, a) ? 'icon-arrow-up':'icon-arrow-down'\"></i>\r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultCell>\r\n <div style=\"display: flex; justify-content: space-between;\">\r\n {{ getCellValue(item, column) }}\r\n <button *ngIf=\"column.expandable\" (click)=\"toggleRowDetail(i, a, column.childTableTemplate)\">\r\n <i [ngClass]=\"existRowExpandableDetail(i, a) ? 'icon-arrow-up':'icon-arrow-down'\"></i>\r\n </button>\r\n </div>\r\n </ng-template>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n <tr *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </tr>\r\n <tr *ngIf=\"rowExpandable[a]\">\r\n <td [attr.colspan]=\"columns.length + (expandable ? 1 : 0)\">\r\n <ng-container [ngTemplateOutlet]=\"childTableTemplate\"\r\n [ngTemplateOutletContext]=\"{ parentRow: item }\">\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n </table>\r\n</div>\r\n<div *ngIf=\"viewPaginate && paginatedData.length != 0\" class=\"pagination-controls\">\r\n <div class=\"d-align-center\">\r\n <label class=\"lbl-footer me-20px\"># Registros: {{this.totalSize}}</label>\r\n <label class=\"lbl-footer\"># Filas: {{this.pageSize}}</label>\r\n </div>\r\n <div>\r\n <button (click)=\"goToPage(1)\" [disabled]=\"currentPage === 1\">\r\n <i class=\"icon-first-page\"></i>\r\n </button>\r\n <button (click)=\"goToPage(currentPage - 1)\" [disabled]=\"currentPage === 1\">\r\n <i class=\"icon-previous-page\"></i>\r\n </button>\r\n <ng-container *ngFor=\"let page of pageRange()\">\r\n <button\r\n (click)=\"goToPage(page)\"\r\n [class.active]=\"currentPage === page\"\r\n [disabled]=\"currentPage === page\">\r\n {{ page }}\r\n </button>\r\n </ng-container>\r\n <button (click)=\"goToPage(currentPage + 1)\" [disabled]=\"currentPage === totalPages\">\r\n <i class=\"icon-next-page\"></i>\r\n </button>\r\n <button (click)=\"goToPage(totalPages)\" [disabled]=\"currentPage === totalPages\">\r\n <i class=\"icon-last-page\"></i>\r\n </button>\r\n </div>\r\n</div>\r\n", styles: ["table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.table-container{width:100%;overflow-x:auto}td,th{padding:5px 15px;text-align:left;position:relative;overflow:hidden}th{font-weight:500;color:#1087e8;border-top:1px solid #D6DEE5;background-color:#eef5fc;border-right:1px solid #fff}th:last-child{border-right:1px solid #D6DEE5}td{border:1px solid #D6DEE5;border-style:none solid solid none}th.sortable{cursor:pointer}.th-fixed{position:sticky!important;top:0!important;z-index:1!important}.th-fixed:after{content:\"\";position:absolute;left:0;bottom:0;width:100%}.table-actions{margin-bottom:10px;display:flex;justify-content:space-between}.table-pagination{margin-top:10px;display:flex;justify-content:space-between}.pagination-controls{border-radius:10px;justify-content:space-between;border:1px solid #D6DEE5;padding:5px 15px;display:flex;align-items:center;margin-top:10px;grid-gap:5px;gap:5px}button{font-size:14px;border:0px;padding:5px;cursor:pointer;background-color:transparent}button.active{font-weight:600;color:#224051}tr:first-child th:first-child{border-top-left-radius:10px;border-left:1px solid #D6DEE5}tr:first-child th:last-child{border-top-right-radius:10px;border-right:1px solid #D6DEE5}tr:last-child td:first-child{border-bottom-left-radius:10px}tr:last-child td:last-child{border-bottom-right-radius:10px}tr:first-child td{border-top-style:solid}tr td:first-child{border-left-style:solid}.d-align-center{display:flex!important;align-items:center!important}.lbl-footer{height:19px}.me-20px{margin-right:20px}.icon-first-page{background-repeat:no-repeat;display:block;width:12px;height:10px;background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M10.0922 0.292893C10.4827 -0.0976311 11.1159 -0.0976311 11.5064 0.292893C11.8969 0.683417 11.8969 1.31658 11.5064 1.70711L8.21353 5L11.5064 8.29289C11.8969 8.68342 11.8969 9.31658 11.5064 9.70711C11.1159 10.0976 10.4827 10.0976 10.0922 9.70711L6.09221 5.70711C5.70169 5.31658 5.70169 4.68342 6.09221 4.29289L10.0922 0.292893ZM4.49211 0.292893C4.88264 -0.0976311 5.5158 -0.0976311 5.90633 0.292893C6.29685 0.683417 6.29685 1.31658 5.90633 1.70711L2.61343 5L5.90633 8.29289C6.29685 8.68342 6.29685 9.31658 5.90633 9.70711C5.5158 10.0976 4.88264 10.0976 4.49211 9.70711L0.492111 5.70711C0.101587 5.31658 0.101587 4.68342 0.492111 4.29289L4.49211 0.292893Z' fill='%2338E8C6'/%3E%3C/svg%3E%0A\")}button:disabled .icon-first-page{background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M10.0922 0.292893C10.4827 -0.0976311 11.1159 -0.0976311 11.5064 0.292893C11.8969 0.683417 11.8969 1.31658 11.5064 1.70711L8.21353 5L11.5064 8.29289C11.8969 8.68342 11.8969 9.31658 11.5064 9.70711C11.1159 10.0976 10.4827 10.0976 10.0922 9.70711L6.09221 5.70711C5.70169 5.31658 5.70169 4.68342 6.09221 4.29289L10.0922 0.292893ZM4.49211 0.292893C4.88264 -0.0976311 5.5158 -0.0976311 5.90633 0.292893C6.29685 0.683417 6.29685 1.31658 5.90633 1.70711L2.61343 5L5.90633 8.29289C6.29685 8.68342 6.29685 9.31658 5.90633 9.70711C5.5158 10.0976 4.88264 10.0976 4.49211 9.70711L0.492111 5.70711C0.101587 5.31658 0.101587 4.68342 0.492111 4.29289L4.49211 0.292893Z' fill='%23D0D0D0'/%3E%3C/svg%3E%0A\")}.icon-previous-page{background-repeat:no-repeat;display:block;width:7px;height:10px;background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 7 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.90681 0.292893C6.29734 0.683417 6.29734 1.31658 5.90681 1.70711L2.61392 5L5.90681 8.29289C6.29734 8.68342 6.29734 9.31658 5.90681 9.70711C5.51629 10.0976 4.88312 10.0976 4.4926 9.70711L0.4926 5.70711C0.102076 5.31658 0.102076 4.68342 0.4926 4.29289L4.4926 0.292893C4.88312 -0.0976311 5.51629 -0.0976311 5.90681 0.292893Z' fill='%2338E8C6'/%3E%3C/svg%3E%0A\")}button:disabled .icon-previous-page{background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 7 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.90681 0.292893C6.29734 0.683417 6.29734 1.31658 5.90681 1.70711L2.61392 5L5.90681 8.29289C6.29734 8.68342 6.29734 9.31658 5.90681 9.70711C5.51629 10.0976 4.88312 10.0976 4.4926 9.70711L0.4926 5.70711C0.102076 5.31658 0.102076 4.68342 0.4926 4.29289L4.4926 0.292893C4.88312 -0.0976311 5.51629 -0.0976311 5.90681 0.292893Z' fill='%23D0D0D0'/%3E%3C/svg%3E%0A\")}.icon-next-page{background-repeat:no-repeat;display:block;width:7px;height:10px;background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 7 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.4926 0.292893C0.102076 0.683417 0.102076 1.31658 0.4926 1.70711L3.78549 5L0.4926 8.29289C0.102076 8.68342 0.102076 9.31658 0.4926 9.70711C0.883124 10.0976 1.51629 10.0976 1.90681 9.70711L5.90681 5.70711C6.29734 5.31658 6.29734 4.68342 5.90681 4.29289L1.90681 0.292893C1.51629 -0.0976311 0.883124 -0.0976311 0.4926 0.292893Z' fill='%2338E8C6'/%3E%3C/svg%3E%0A\")}button:disabled .icon-next-page{background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 7 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.4926 0.292893C0.102076 0.683417 0.102076 1.31658 0.4926 1.70711L3.78549 5L0.4926 8.29289C0.102076 8.68342 0.102076 9.31658 0.4926 9.70711C0.883124 10.0976 1.51629 10.0976 1.90681 9.70711L5.90681 5.70711C6.29734 5.31658 6.29734 4.68342 5.90681 4.29289L1.90681 0.292893C1.51629 -0.0976311 0.883124 -0.0976311 0.4926 0.292893Z' fill='%23D0D0D0'/%3E%3C/svg%3E%0A\")}.icon-last-page{background-repeat:no-repeat;display:block;width:12px;height:10px;background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.10701 0.292893C1.71648 -0.0976311 1.08332 -0.0976311 0.692796 0.292893C0.302271 0.683417 0.302271 1.31658 0.692796 1.70711L3.98569 5L0.692796 8.29289C0.302271 8.68342 0.302271 9.31658 0.692796 9.70711C1.08332 10.0976 1.71648 10.0976 2.10701 9.70711L6.10701 5.70711C6.49753 5.31658 6.49753 4.68342 6.10701 4.29289L2.10701 0.292893ZM7.70711 0.292893C7.31658 -0.0976311 6.68342 -0.0976311 6.29289 0.292893C5.90237 0.683417 5.90237 1.31658 6.29289 1.70711L9.58579 5L6.29289 8.29289C5.90237 8.68342 5.90237 9.31658 6.29289 9.70711C6.68342 10.0976 7.31658 10.0976 7.70711 9.70711L11.7071 5.70711C12.0976 5.31658 12.0976 4.68342 11.7071 4.29289L7.70711 0.292893Z' fill='%2338E8C6'/%3E%3C/svg%3E%0A\")}button:disabled .icon-last-page{background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.10701 0.292893C1.71648 -0.0976311 1.08332 -0.0976311 0.692796 0.292893C0.302271 0.683417 0.302271 1.31658 0.692796 1.70711L3.98569 5L0.692796 8.29289C0.302271 8.68342 0.302271 9.31658 0.692796 9.70711C1.08332 10.0976 1.71648 10.0976 2.10701 9.70711L6.10701 5.70711C6.49753 5.31658 6.49753 4.68342 6.10701 4.29289L2.10701 0.292893ZM7.70711 0.292893C7.31658 -0.0976311 6.68342 -0.0976311 6.29289 0.292893C5.90237 0.683417 5.90237 1.31658 6.29289 1.70711L9.58579 5L6.29289 8.29289C5.90237 8.68342 5.90237 9.31658 6.29289 9.70711C6.68342 10.0976 7.31658 10.0976 7.70711 9.70711L11.7071 5.70711C12.0976 5.31658 12.0976 4.68342 11.7071 4.29289L7.70711 0.292893Z' fill='%23D0D0D0'/%3E%3C/svg%3E%0A\")}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px;cursor:col-resize;background-color:transparent}::-webkit-scrollbar{width:.7rem;height:.7rem}::-webkit-scrollbar-thumb{background-color:#d9d9d9!important;border-radius:20px!important;border:3px solid #d9d9d9!important}.icon-arrow-up{background-repeat:no-repeat;display:block;width:12px;height:8px;background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 19 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.347794 9.61517C0.825615 10.1134 1.6169 10.13 2.11517 9.65221L9.07106 2.98186L16.0269 9.65221C16.5252 10.13 17.3165 10.1134 17.7943 9.61517C18.2721 9.11689 18.2556 8.32561 17.7573 7.84779L9.93623 0.347793C9.45266 -0.115931 8.68946 -0.115931 8.20589 0.347793L0.38483 7.84779C-0.113445 8.32561 -0.130027 9.11689 0.347794 9.61517Z' fill='%23224051'/%3E%3C/svg%3E%0A\")}.icon-arrow-down{background-repeat:no-repeat;display:block;width:12px;height:8px;background-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 18 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M17.6234 0.387653C17.1213 -0.129218 16.3073 -0.129218 15.8051 0.387653L9 7.39295L2.19485 0.387652C1.69275 -0.129219 0.878679 -0.129219 0.376577 0.387651C-0.125527 0.904522 -0.125527 1.74253 0.376577 2.25941L8.09086 10.2006C8.59296 10.7175 9.40703 10.7175 9.90914 10.2006L17.6234 2.25941C18.1255 1.74254 18.1255 0.904523 17.6234 0.387653Z' fill='%23224051'/%3E%3C/svg%3E%0A\")}.text-center{text-align:center!important}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0.ViewEncapsulation.None });
52
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableComponent, decorators: [{
53
157
  type: Component,
54
158
  args: [{
55
159
  selector: 'libey-ng-table',
56
160
  templateUrl: './libey-ng-table.component.html',
57
- styleUrls: ['./libey-ng-table.component.css']
161
+ styleUrls: ['./libey-ng-table.component.css'],
162
+ encapsulation: ViewEncapsulation.None
58
163
  }]
59
- }], ctorParameters: function () { return [{ type: i1.DatePipe }]; } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7QUFPekQsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUFvQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRXRDLGNBQVMsR0FBRztZQUNWLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRTtZQUN4RSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLHFCQUFxQixFQUFFLEtBQUssRUFBRSwyQkFBMkIsRUFBRTtZQUNwRixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSwyQkFBMkIsRUFBRTtZQUNyRixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLHdCQUF3QixFQUFFLEtBQUssRUFBRSwyQkFBMkIsRUFBRTtZQUN2RixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFLEtBQUssRUFBRSwyQkFBMkIsRUFBRTtZQUMxRixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLDhCQUE4QixFQUFFLEtBQUssRUFBRSwyQkFBMkIsRUFBRTtTQUM5RixDQUFDO1FBRUYs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QUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRTtZQUN4RCxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUU7WUFDakUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSw4QkFBOEIsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUU7WUFDakYsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFO1lBQzVELEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFO1NBQzdFLENBQUM7SUE5Q3dDLENBQUM7SUErQzNDLFFBQVE7SUFDUixDQUFDOzttSEFsRFUscUJBQXFCO3VHQUFyQixxQkFBcUIsc0RDUGxDLGk2RkF5RE07NEZEbERPLHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsaUNBQWlDO29CQUM5QyxTQUFTLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztpQkFDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYmV5LW5nLXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGliZXktbmctdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliZXlOZ1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVwaXBlOiBEYXRlUGlwZSkgeyB9XHJcblxyXG4gIHByb3ZpZGVycyA9IFtcclxuICAgIHsgd2lkdGg6IFwiMTE1MHB4XCIsIGNsYXNzOiBcImJnLXdoaXRlXCIsIGxhYmVsOiBcIlwiLCBhcHBlbmRUbzogXCJjb250YWluZXJcIiB9LFxyXG4gICAgeyB3aWR0aDogXCI3OTNweFwiLCBjbGFzczogXCJkaXYtY2FiZWNlcmEtdGFyaWZmXCIsIGxhYmVsOiBcIlBST1ZFRURPUiBGQUNUVVJBRE9SIE7CsCAxXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiNzkycHhcIiwgY2xhc3M6IFwiZGl2LWNhYmVjZXJhLXBhdGllbnRcIiwgbGFiZWw6IFwiUFJPVkVFRE9SIEZBQ1RVUkFET1IgTsKwIDJcIiB9LFxyXG4gICAgeyB3aWR0aDogXCI3OTJweFwiLCBjbGFzczogXCJkaXYtY2FiZWNlcmEtaW5zdXJhbmNlXCIsIGxhYmVsOiBcIlBST1ZFRURPUiBGQUNUVVJBRE9SIE7CsCAzXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiNzkycHhcIiwgY2xhc3M6IFwiZGl2LWhlYWRlci10ZXh0IGJnLXB1cnBsZVwiLCBsYWJlbDogXCJQUk9WRUVET1IgRkFDVFVSQURPUiBOwrAgNFwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjc5M3B4XCIsIGNsYXNzOiBcImRpdi1hZG1pbmlzdHJhdGl2ZS1kYXRhIG1lLTBcIiwgbGFiZWw6IFwiUFJPVkVFRE9SIEZBQ1RVUkFET1IgTsKwIDVcIiB9XHJcbiAgXTtcclxuXHJcbiAgY29sdW1ucyA9IFtcclxuICAgIHsgd2lkdGg6IFwiMTM1cHhcIiwgdGV4dDogXCJDw7NkLiBwcm9kdWN0b1wiLCBjbGFzczogXCJjb2xvci1za3ktYmx1ZVwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjUwMHB4XCIsIHRleHQ6IFwiRGVzY3JpcC4gcHJvZHVjdG9cIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIzODVweFwiLCB0ZXh0OiBcIlByb3ZlZWRvciBmYWN0dXJhZG9yIHN1Z2VyaWRvXCIsIGNsYXNzOiBcImNvbXBldGl0aW9uUHJpY2VcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIxMzBweFwiLCB0ZXh0OiBcIsOabHRpbW8gdmFsb3IgZGUgY29tcHJhIFMvSUdWIHN1Z2VyaWRvXCIsIGNsYXNzOiBcImNvbXBldGl0aW9uUHJpY2VcIiB9LFxyXG5cclxuICAgIHsgd2lkdGg6IFwiMTM1cHhcIiwgdGV4dDogXCJSVUNcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIyNjBweFwiLCB0ZXh0OiBcIlJhesOzbiBTb2NpYWxcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIxMjBweFwiLCB0ZXh0OiBcIsOabHRpbW8gdmFsb3IgZGUgY29tcHJhIFMvSUdWXCIsIGNsYXNzOiBcImNvbG9yLXNreS1ibHVlXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiMTE1cHhcIiwgdGV4dDogXCJDw7NkLiBFTVwiLCBjbGFzczogXCJjb2xvci1za3ktYmx1ZVwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjE2NXB4XCIsIHRleHQ6IFwiRmVjaGEgeSBob3JhIGluZ3Jlc28gRU1cIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG5cclxuICAgIHsgd2lkdGg6IFwiMTM1cHhcIiwgdGV4dDogXCJSVUNcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIyNjBweFwiLCB0ZXh0OiBcIlJhesOzbiBTb2NpYWxcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIxMjBweFwiLCB0ZXh0OiBcIsOabHRpbW8gdmFsb3IgZGUgY29tcHJhIFMvSUdWXCIsIGNsYXNzOiBcImNvbG9yLXNreS1ibHVlXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiMTE1cHhcIiwgdGV4dDogXCJDw7NkLiBFTVwiLCBjbGFzczogXCJjb2xvci1za3ktYmx1ZVwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjE2NXB4XCIsIHRleHQ6IFwiRmVjaGEgeSBob3JhIGluZ3Jlc28gRU1cIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG5cclxuICAgIHsgd2lkdGg6IFwiMTM1cHhcIiwgdGV4dDogXCJSVUNcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIyNjBweFwiLCB0ZXh0OiBcIlJhesOzbiBTb2NpYWxcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIxMjBweFwiLCB0ZXh0OiBcIsOabHRpbW8gdmFsb3IgZGUgY29tcHJhIFMvSUdWXCIsIGNsYXNzOiBcImNvbG9yLXNreS1ibHVlXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiMTE1cHhcIiwgdGV4dDogXCJDw7NkLiBFTVwiLCBjbGFzczogXCJjb2xvci1za3ktYmx1ZVwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjE2NXB4XCIsIHRleHQ6IFwiRmVjaGEgeSBob3JhIGluZ3Jlc28gRU1cIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG5cclxuICAgIHsgd2lkdGg6IFwiMTM1cHhcIiwgdGV4dDogXCJSVUNcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIyNjBweFwiLCB0ZXh0OiBcIlJhesOzbiBTb2NpYWxcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIxMjBweFwiLCB0ZXh0OiBcIsOabHRpbW8gdmFsb3IgZGUgY29tcHJhIFMvSUdWXCIsIGNsYXNzOiBcImNvbG9yLXNreS1ibHVlXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiMTE1cHhcIiwgdGV4dDogXCJDw7NkLiBFTVwiLCBjbGFzczogXCJjb2xvci1za3ktYmx1ZVwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjE2NXB4XCIsIHRleHQ6IFwiRmVjaGEgeSBob3JhIGluZ3Jlc28gRU1cIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG5cclxuICAgIHsgd2lkdGg6IFwiMTM1cHhcIiwgdGV4dDogXCJSVUNcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIyNjBweFwiLCB0ZXh0OiBcIlJhesOzbiBTb2NpYWxcIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9LFxyXG4gICAgeyB3aWR0aDogXCIxMjBweFwiLCB0ZXh0OiBcIsOabHRpbW8gdmFsb3IgZGUgY29tcHJhIFMvSUdWXCIsIGNsYXNzOiBcImNvbG9yLXNreS1ibHVlXCIgfSxcclxuICAgIHsgd2lkdGg6IFwiMTE1cHhcIiwgdGV4dDogXCJDw7NkLiBFTVwiLCBjbGFzczogXCJjb2xvci1za3ktYmx1ZVwiIH0sXHJcbiAgICB7IHdpZHRoOiBcIjE2NXB4XCIsIHRleHQ6IFwiRmVjaGEgeSBob3JhIGluZ3Jlc28gRU1cIiwgY2xhc3M6IFwiY29sb3Itc2t5LWJsdWVcIiB9XHJcbiAgXTtcclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb2wtMTIgbWItNSB0YWJsZS1zY3JvbGwgaC1hdXRvIG1oLTYwMHB4XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGl2LWhlYWRlci1zdGlja3kgdy01MTI1cHggbWItMVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgcHJvdmlkZXIgb2YgcHJvdmlkZXJzXCJcclxuICAgICAgICAgICAgIFtzdHlsZS53aWR0aF09XCJwcm92aWRlci53aWR0aFwiXHJcbiAgICAgICAgICAgICBbYXR0ci5hcHBlbmRUb109XCJwcm92aWRlci5hcHBlbmRUbyA/IHByb3ZpZGVyLmFwcGVuZFRvIDogbnVsbFwiPlxyXG4gICAgICAgICAgPGxhYmVsPnt7IHByb3ZpZGVyLmxhYmVsIH19PC9sYWJlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIG1iLTAgcC0wXCI+XHJcbiAgICAgICAgPHRoZWFkIGNsYXNzPVwiZGl2LXRhYmxlLWhlYWRlciBoLTUwcHhcIj5cclxuICAgICAgICAgICAgPHRyIHN0eWxlPVwidmVydGljYWwtYWxpZ246IG1pZGRsZTtwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7ei1pbmRleDogMTA7dG9wOiAyM3B4O1wiPlxyXG4gICAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIiBbc3R5bGUud2lkdGhdPVwiY29sLndpZHRoXCIgY2xhc3M9XCJ0YWJsZS1oZWFkZXIgZm9udC1kZXRhbGxlMyBweS0wXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBjb2wudGV4dCB9fVxyXG4gICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90aGVhZD5cclxuICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPHRib2R5PlxyXG5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgbWF0ZXJpYWxTdXBwbGllclwiPlxyXG4gICAgICAgICAgICA8dHIgc3R5bGU9XCJib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VGRUZFRiAhaW1wb3J0YW50O1wiPlxyXG4gICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMVwiIGNsYXNzPVwidGFibGUtYm9keSBweS0xIHB4LTE1XCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhbGlnbi1taWRkbGVcIj57eyBncm91cC5tYXRlcmlhbENvZGUgfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIxXCIgY2xhc3M9XCJ0YWJsZS1ib2R5IHB5LTEgcHgtMTVcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImFsaWduLW1pZGRsZVwiPnt7IGdyb3VwLm1hdGVyaWFsRGVzY3JpcHRpb24gfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIxXCIgY2xhc3M9XCJ0YWJsZS1ib2R5IGNvbXBldGl0aW9uUHJpY2Vyb3cgcHktMSBweC0xNVwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYWxpZ24tbWlkZGxlXCI+e3sgZ3JvdXAuc3VnZ2VzdGVkQmlsbGluZ1Byb3ZpZGVyLmJ1c2luZXNzTmFtZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMVwiIGNsYXNzPVwidGFibGUtYm9keSBjb21wZXRpdGlvblByaWNlcm93IHB5LTEgcHgtMTUgdGV4dC1lbmRcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImFsaWduLW1pZGRsZVwiPnt7IGdyb3VwLnN1Z2dlc3RlZEJpbGxpbmdQcm92aWRlci5wdXJjaGFzZVZhbHVlICB9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtcy5zbGljZSgwLCA1KVwiPlxyXG4gICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMVwiIGNsYXNzPVwidGFibGUtYm9keSBweS0xIHB4LTE1XCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhbGlnbi1taWRkbGVcIj57eyBpdGVtLnByb3ZpZGVyVGF4SWRlbnRpZmljYXRpb25Db2RlIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMVwiIGNsYXNzPVwidGFibGUtYm9keSBweS0xIHB4LTE1XCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhbGlnbi1taWRkbGVcIj57eyBpdGVtLmJ1c2luZXNzTmFtZSB9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjFcIiBjbGFzcz1cInRhYmxlLWJvZHkgcHktMSBweC0xNSB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYWxpZ24tbWlkZGxlXCI+e3sgaXRlbS5wdXJjaGFzZVZhbHVlIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMVwiIGNsYXNzPVwidGFibGUtYm9keSBweS0xIHB4LTE1XCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhbGlnbi1taWRkbGVcIj57eyBpdGVtLm1lcmNoYW5kaXNlTWF0ZXJpYWxEb2N1bWVudENvZGUgfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIxXCIgY2xhc3M9XCJ0YWJsZS1ib2R5IHB5LTFcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImFsaWduLW1pZGRsZVwiPnt7IGl0ZW0uY3JlYXRlZERhdGVUaW1lIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC90YWJsZT5cclxuPC9kaXY+Il19
164
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
165
+ type: Input
166
+ }], pageSize: [{
167
+ type: Input
168
+ }], totalSize: [{
169
+ type: Input
170
+ }], maxPageButtons: [{
171
+ type: Input
172
+ }], height: [{
173
+ type: Input
174
+ }], expandable: [{
175
+ type: Input
176
+ }], viewPaginate: [{
177
+ type: Input
178
+ }], childTableTemplate: [{
179
+ type: Input
180
+ }], headerfixed: [{
181
+ type: Input
182
+ }], class: [{
183
+ type: Input
184
+ }], pageChange: [{
185
+ type: Output
186
+ }], columns: [{
187
+ type: ContentChildren,
188
+ args: [LibeyColumnDirective]
189
+ }], tableContainer: [{
190
+ type: ViewChild,
191
+ args: ['tableContainer']
192
+ }], tableElement: [{
193
+ type: ViewChild,
194
+ args: ['table']
195
+ }] } });
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLGVBQWUsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBMEIsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBNLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUFRM0UsTUFBTSxPQUFPO0NBS1o7QUFTRCxNQUFNLE9BQU8scUJBQXFCO0lBK0JoQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXhCakMsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBRTNCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFFN0IsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFNUIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFJbEQsa0JBQWEsR0FBYyxFQUFFLENBQUM7UUFDOUIsd0JBQW1CLEdBQWUsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBQ3hCLGtCQUFhLEdBQVUsRUFBRSxDQUFDO1FBQ2xCLFVBQUssR0FBVSxFQUFFLENBQUM7UUFDMUIsaUJBQVksR0FBYSxFQUFFLENBQUM7UUFDNUIsd0JB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O3NCQUE3QyxlQUFlO3VCQUFDLG9CQUFvQjtnQkFXUixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFDUCxZQUFZO3NCQUEvQixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBRdWVyeUxpc3QsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgTGliZXlDb2x1bW5EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbGliZXktY29sdW1uLmRpcmVjdGl2ZSc7XHJcbmludGVyZmFjZSBJRGF0YUtleSB7XHJcbiAga2V5OiBudW1iZXI7XHJcbiAgZGF0YUtleTogbnVtYmVyO1xyXG4gIGNoaWxkVGFibGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBkYXRhOiBhbnlbXVxyXG59XHJcblxyXG5jbGFzcyBEYXRhS2V5IGltcGxlbWVudHMgSURhdGFLZXkge1xyXG4gIGtleTogbnVtYmVyO1xyXG4gIGRhdGFLZXk6IG51bWJlcjtcclxuICBjaGlsZFRhYmxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgZGF0YTogYW55W11cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWJleS1uZy10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9saWJleS1uZy10YWJsZS5jb21wb25lbnQuY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIExpYmV5TmdUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgc2V0IGRhdGEodmFsdWU6IGFueVtdKSB7XHJcbiAgICB0aGlzLl9kYXRhID0gdmFsdWU7XHJcbiAgfVxyXG4gIGdldCBkYXRhKCk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLl9kYXRhO1xyXG4gIH1cclxuICBASW5wdXQoKSBwYWdlU2l6ZTogbnVtYmVyID0gMTA7XHJcbiAgQElucHV0KCkgdG90YWxTaXplOiBudW1iZXIgPSAwO1xyXG4gIEBJbnB1dCgpIG1heFBhZ2VCdXR0b25zOiBudW1iZXIgPSA1O1xyXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGV4cGFuZGFibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSB2aWV3UGFnaW5hdGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGNoaWxkVGFibGVUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgaGVhZGVyZml4ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBjbGFzczogc3RyaW5nO1xyXG4gIEBPdXRwdXQoKSBwYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMaWJleUNvbHVtbkRpcmVjdGl2ZSkgY29sdW1ucyE6IFF1ZXJ5TGlzdDxMaWJleUNvbHVtbkRpcmVjdGl2ZT47XHJcblxyXG4gIHJvd0V4cGFuZGFibGU6IGJvb2xlYW5bXSA9IFtdO1xyXG4gIHJvd0V4cGFuZGFibGVEZXRhaWw6IElEYXRhS2V5W10gPSBbXTtcclxuICBjdXJyZW50UGFnZTogbnVtYmVyID0gMTtcclxuICBwYWdpbmF0ZWREYXRhOiBhbnlbXSA9IFtdO1xyXG4gIHByaXZhdGUgX2RhdGE6IGFueVtdID0gW107XHJcbiAgY29sdW1uV2lkdGhzOiBudW1iZXJbXSA9IFtdO1xyXG4gIHJlc2l6aW5nQ29sdW1uSW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIHN0YXJ0WDogbnVtYmVyID0gMDtcclxuICBzdGFydFdpZHRoOiBudW1iZXIgPSAwO1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlQ29udGFpbmVyJykgdGFibGVDb250YWluZXIhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlJykgdGFibGVFbGVtZW50ITogRWxlbWVudFJlZjtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZVBhZ2luYXRlZERhdGEoKTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5pbml0aWFsaXplQ29sdW1uV2lkdGhzKCk7XHJcbiAgICB0aGlzLmFkanVzdFRhYmxlV2lkdGgoKVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZUNvbHVtbldpZHRocygpIHtcclxuICAgIHZhciBwYWRkaW5nID0gMzFcclxuICAgIHZhciB3aWR0aERlZmF1bHQgPSAxNTBcclxuICAgIHRoaXMuY29sdW1uV2lkdGhzID0gdGhpcy5jb2x1bW5zLm1hcChjb2x1bW4gPT4gY29sdW1uLndpZHRoKTtcclxuICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gdGhpcy50YWJsZUNvbnRhaW5lci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgY29uc3QgYXV0b0NvbHVtbnMgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGggPT0gbnVsbCk7XHJcbiAgICBjb25zdCB0b3RhbEZpeGVkV2lkdGggPSB0aGlzLmNvbHVtbnMucmVkdWNlKChzdW0sIGNvbHVtbikgPT5cclxuICAgICAgY29sdW1uLndpZHRoICE9IG51bGwgPyAoc3VtICsgdGhpcy5nZXRXaWR0aFZhbHVlKGNvbHVtbi53aWR0aCkpIDogc3VtLCAwKTtcclxuICAgIGNvbnN0IHJlbWFpbmluZ1dpZHRoID0gY29udGFpbmVyV2lkdGggLSAodG90YWxGaXhlZFdpZHRoICsgKCgodGhpcy5jb2x1bW5zLmxlbmd0aCAtIGF1dG9Db2x1bW5zLmxlbmd0aCkgKiBwYWRkaW5nKSsgKHRoaXMuZXhwYW5kYWJsZSA/IDYxIDogMCkpKTtcclxuXHJcbiAgICBpZiAoYXV0b0NvbHVtbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB2YXIgYXV0b0NvbHVtbldpZHRoID0gMDtcclxuICAgICAgaWYocmVtYWluaW5nV2lkdGggPCB3aWR0aERlZmF1bHQpXHJcbiAgICAgICAgYXV0b0NvbHVtbldpZHRoID0gd2lkdGhEZWZhdWx0O1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgYXV0b0NvbHVtbldpZHRoID0gTWF0aC5tYXgoMCwgcmVtYWluaW5nV2lkdGggLyBhdXRvQ29sdW1ucy5sZW5ndGgpO1xyXG4gICAgICBhdXRvQ29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGggPSBhdXRvQ29sdW1uV2lkdGgtIHBhZGRpbmcpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb2x1bW5XaWR0aHMgPSB0aGlzLmNvbHVtbnMubWFwKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGgpO1xyXG4gIH1cclxuICBhZGp1c3RUYWJsZVdpZHRoKCkge1xyXG4gICAgY29uc3QgdG90YWxXaWR0aCA9IHRoaXMuY29sdW1ucy5yZWR1Y2UoKHN1bSwgY29sdW1uKSA9PiBzdW0gKyB0aGlzLmdldFdpZHRoVmFsdWUoY29sdW1uLndpZHRoKSwgMCk7XHJcbiAgICB0aGlzLnRhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLndpZHRoID0gYCR7dG90YWxXaWR0aH1weGA7XHJcbiAgfVxyXG4gIGdldFdpZHRoVmFsdWUod2lkdGg6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICByZXR1cm4gd2lkdGggPT09IG51bGwgPyAxMDAgOiB3aWR0aDtcclxuICB9XHJcblxyXG4gIGdldCB0b3RhbFBhZ2VzKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gTWF0aC5jZWlsKHRoaXMudG90YWxTaXplIC8gdGhpcy5wYWdlU2l6ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRDZWxsVmFsdWUoaXRlbTogYW55LCBjb2x1bW46IExpYmV5Q29sdW1uRGlyZWN0aXZlKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXROZXN0ZWRWYWx1ZShpdGVtLCBjb2x1bW4ucHJvcGVydHkpO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIGNvbHVtbi5hcnJheU1hcCkge1xyXG4gICAgICByZXR1cm4gdmFsdWUubWFwKHYgPT4gdGhpcy5nZXROZXN0ZWRWYWx1ZSh2LCBjb2x1bW4uYXJyYXlNYXAhKSkuam9pbignLCAnKTtcclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0TmVzdGVkVmFsdWUob2JqOiBhbnksIHBhdGg6IHN0cmluZyk6IGFueSB7XHJcbiAgICByZXR1cm4gcGF0aC5zcGxpdCgnLicpLnJlZHVjZSgobywga2V5KSA9PiB7XHJcbiAgICAgIGlmIChvICYmIHR5cGVvZiBvID09PSAnb2JqZWN0JyAmJiBrZXkgaW4gbykge1xyXG4gICAgICAgIHJldHVybiBvW2tleV07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH0sIG9iaik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRlZERhdGEoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLnBhZ2VTaXplKTtcclxuICAgIGNvbnN0IHN0YXJ0ID0gKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemU7XHJcbiAgICBjb25zdCBlbmQgPSBzdGFydCArIHRoaXMucGFnZVNpemU7XHJcbiAgICB0aGlzLnBhZ2luYXRlZERhdGEgPSB0aGlzLmRhdGEuc2xpY2Uoc3RhcnQsIGVuZCk7XHJcbiAgfVxyXG4gIHBhZ2VSYW5nZSgpOiBudW1iZXJbXSB7XHJcbiAgICBjb25zdCBzdGFydCA9IE1hdGgubWF4KDEsIHRoaXMuY3VycmVudFBhZ2UgLSBNYXRoLmZsb29yKHRoaXMubWF4UGFnZUJ1dHRvbnMgLyAyKSk7XHJcbiAgICBjb25zdCBlbmQgPSBNYXRoLm1pbih0aGlzLnRvdGFsUGFnZXMsIHN0YXJ0ICsgdGhpcy5tYXhQYWdlQnV0dG9ucyAtIDEpO1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogZW5kIC0gc3RhcnQgKyAxfSwgKF8sIGkpID0+IHN0YXJ0ICsgaSk7XHJcbiAgfVxyXG4gIGdvVG9QYWdlKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jdXJyZW50UGFnZSA9IE1hdGgubWF4KDEsIE1hdGgubWluKHBhZ2UsIHRoaXMudG90YWxQYWdlcykpO1xyXG4gICAgdGhpcy51cGRhdGVQYWdpbmF0ZWREYXRhKCk7XHJcbiAgICB0aGlzLnBhZ2VDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRQYWdlKTtcclxuICB9XHJcbiAgLy8gaGFzQ2hpbGRyZW4ocm93OiBhbnkpOiBib29sZWFue1xyXG4gIC8vICAgcmV0dXJuIEFycmF5LmlzQXJyYXkocm93LmNoaWxkKSAmJiByb3cuY2hpbGQubGVuZ3RoID4gMDtcclxuICAvLyB9XHJcbiAgdG9nZ2xlUm93KGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5yb3dFeHBhbmRhYmxlW2luZGV4XSA9ICF0aGlzLnJvd0V4cGFuZGFibGVbaW5kZXhdO1xyXG4gIH1cclxuICB0b2dnbGVSb3dEZXRhaWwoa2V5OiBudW1iZXIsIGluZGV4RGF0YTogbnVtYmVyLCBwcm9wZXJ0eUNoaWxkOiBUZW1wbGF0ZVJlZjxhbnk+KXtcclxuICAgIHZhciBleGlzdCA9IHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maW5kKHggPT4geC5rZXkgPT0ga2V5ICYmIHguZGF0YUtleSA9PSBpbmRleERhdGEpO1xyXG4gICAgdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsID0gdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsLmZpbHRlcih4ID0+IHgua2V5ICE9IGtleSAmJiB4LmRhdGFLZXkgIT0gaW5kZXhEYXRhKTtcclxuICAgIGlmKGV4aXN0ID09IG51bGwpe1xyXG4gICAgICB2YXIgaXRlbSA9IG5ldyBEYXRhS2V5KCk7XHJcbiAgICAgIGl0ZW0ua2V5ID0ga2V5O1xyXG4gICAgICBpdGVtLmRhdGFLZXkgPSBpbmRleERhdGE7XHJcbiAgICAgIGl0ZW0uY2hpbGRUYWJsZVRlbXBsYXRlID0gcHJvcGVydHlDaGlsZDtcclxuICAgICAgLy8gaXRlbS5kYXRhID0gdGhpcy5nZXROZXN0ZWRWYWx1ZShpdGVtLCBwcm9wZXJ0eUNoaWxkKTtcclxuICAgICAgdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsLnB1c2goaXRlbSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMucm93RXhwYW5kYWJsZURldGFpbCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldENoaWxkcmVuKGZpbGE6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBmaWxhLmhpam9zIHx8IFtdO1xyXG4gIH1cclxuICBvblJlc2l6ZVN0YXJ0KGluZGV4OiBudW1iZXIsIGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICB0aGlzLnJlc2l6aW5nQ29sdW1uSW5kZXggPSBpbmRleDtcclxuICAgIHRoaXMuc3RhcnRYID0gZXZlbnQucGFnZVg7XHJcbiAgICB0aGlzLnN0YXJ0V2lkdGggPSB0aGlzLmNvbHVtbldpZHRoc1tpbmRleF07XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uUmVzaXplTW92ZSk7XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5vblJlc2l6ZUVuZCk7XHJcbiAgfVxyXG4gIG9uUmVzaXplTW92ZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xyXG4gICAgaWYgKHRoaXMucmVzaXppbmdDb2x1bW5JbmRleCAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBkaWZmID0gZXZlbnQucGFnZVggLSB0aGlzLnN0YXJ0WDtcclxuICAgICAgdGhpcy5jb2x1bW5XaWR0aHNbdGhpcy5yZXNpemluZ0NvbHVtbkluZGV4XSA9IE1hdGgubWF4KHRoaXMuc3RhcnRXaWR0aCArIGRpZmYsIDUwKTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uUmVzaXplRW5kID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZXNpemluZ0NvbHVtbkluZGV4ID0gbnVsbDtcclxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25SZXNpemVNb3ZlKTtcclxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm9uUmVzaXplRW5kKTtcclxuICB9XHJcbiAgZXhpc3RSb3dFeHBhbmRhYmxlRGV0YWlsKGtleTogbnVtYmVyLCBpbmRleERhdGE6IG51bWJlcikgOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maWx0ZXIoeCA9PiB4LmtleSA9PSBrZXkgJiYgeC5kYXRhS2V5ID09IGluZGV4RGF0YSkubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgdmlld1Jvd0V4cGFuZGFibGVEZXRhaWwoaW5kZXhEYXRhOiBudW1iZXIpIDpib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maWx0ZXIoeCA9PiB4LmRhdGFLZXkgPT0gaW5kZXhEYXRhKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuICBmaW5kUm93RXhwYW5kYWJsZURldGFpbChpbmRleERhdGE6IG51bWJlcikgOlRlbXBsYXRlUmVmPGFueT57XHJcbiAgICB2YXIgZmluZCA9IHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maW5kKHggPT4geC5kYXRhS2V5ID09IGluZGV4RGF0YSk7XHJcbiAgICBpZihmaW5kKVxyXG4gICAgICByZXR1cm4gZmluZC5jaGlsZFRhYmxlVGVtcGxhdGU7IFxyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lclwiICAjdGFibGVDb250YWluZXIgW3N0eWxlLmhlaWdodF09XCJoZWlnaHQgPT0gbnVsbCA/ICdhdXRvJzooaGVpZ2h0ICsgJ3B4JylcIj5cclxuICA8IS0tIDx0YWJsZSBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiPiAtLT5cclxuICA8dGFibGUgI3RhYmxlIFtuZ0NsYXNzXT1cImNsYXNzXCI+XHJcbiAgICA8dGhlYWQ+XHJcbiAgICAgIDx0cj5cclxuICAgICAgICA8dGggKm5nSWY9XCJleHBhbmRhYmxlXCIgW25nQ2xhc3NdPVwiaGVhZGVyZml4ZWQgPT0gdHJ1ZSA/ICd0aC1maXhlZCc6JydcIiBzdHlsZT1cIndpZHRoOiAyNXB4O1wiPjwvdGg+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgIDx0aCBbc3R5bGUud2lkdGhdPVwiY29sdW1uV2lkdGhzW2ldID09IG51bGwgPyAnYXV0byc6KGNvbHVtbldpZHRoc1tpXSArICdweCcpXCIgW25nQ2xhc3NdPVwiaGVhZGVyZml4ZWQgPT0gdHJ1ZSA/ICd0aC1maXhlZCc6JydcIj5cclxuICAgICAgICAgICAge3sgY29sdW1uLmhlYWRlciB9fVxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVzaXplLWhhbmRsZVwiIChtb3VzZWRvd24pPVwib25SZXNpemVTdGFydChpLCAkZXZlbnQpXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC90aGVhZD5cclxuICAgIDx0Ym9keT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBhZ2luYXRlZERhdGEubGVuZ3RoID09IDBcIj5cclxuICAgICAgICA8dHI+XHJcbiAgICAgICAgICA8dGQgW2NvbFNwYW5dPVwiZXhwYW5kYWJsZSA/IChjb2x1bW5zLmxlbmd0aCArIDEpIDogKGNvbHVtbnMubGVuZ3RoKVwiIGNsYXNzPVwidGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgTm8gZXhpc3RlbiBkYXRvcyBkaXNwb25pYmxlc1xyXG4gICAgICAgICAgPC90ZD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBhZ2luYXRlZERhdGEubGVuZ3RoICE9IDBcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBhZ2luYXRlZERhdGE7IGxldCBhID0gaW5kZXhcIj5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRkICpuZ0lmPVwiZXhwYW5kYWJsZVwiPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInRvZ2dsZVJvdyhhKVwiPlxyXG4gICAgICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RXhwYW5kYWJsZVthXSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICA8dGQgW25nQ2xhc3NdPVwiY29sdW1uLmNsYXNzXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLmNlbGxUZW1wbGF0ZTsgZWxzZSBkZWZhdWx0Q2VsbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW4uY2VsbFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbHVtbi5leHBhbmRhYmxlXCIgKGNsaWNrKT1cInRvZ2dsZVJvd0RldGFpbChpLCBhLCBjb2x1bW4uY2hpbGRUYWJsZVRlbXBsYXRlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwiZXhpc3RSb3dFeHBhbmRhYmxlRGV0YWlsKGksIGEpID8gJ2ljb24tYXJyb3ctdXAnOidpY29uLWFycm93LWRvd24nXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q2VsbD5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyBnZXRDZWxsVmFsdWUoaXRlbSwgY29sdW1uKSB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb2x1bW4uZXhwYW5kYWJsZVwiIChjbGljayk9XCJ0b2dnbGVSb3dEZXRhaWwoaSwgYSwgY29sdW1uLmNoaWxkVGFibGVUZW1wbGF0ZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cImV4aXN0Um93RXhwYW5kYWJsZURldGFpbChpLCBhKSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDx0ciAqbmdJZj1cInZpZXdSb3dFeHBhbmRhYmxlRGV0YWlsKGEpXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaW5kUm93RXhwYW5kYWJsZURldGFpbChhKTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0gfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDx0ciAqbmdJZj1cInJvd0V4cGFuZGFibGVbYV1cIj5cclxuICAgICAgICAgICAgPHRkIFthdHRyLmNvbHNwYW5dPVwiY29sdW1ucy5sZW5ndGggKyAoZXhwYW5kYWJsZSA/IDEgOiAwKVwiPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpbGRUYWJsZVRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHBhcmVudFJvdzogaXRlbSB9XCI+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvdGJvZHk+XHJcbiAgPC90YWJsZT5cclxuPC9kaXY+XHJcbjxkaXYgKm5nSWY9XCJ2aWV3UGFnaW5hdGUgJiYgcGFnaW5hdGVkRGF0YS5sZW5ndGggIT0gMFwiIGNsYXNzPVwicGFnaW5hdGlvbi1jb250cm9sc1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWFsaWduLWNlbnRlclwiPlxyXG4gICAgPGxhYmVsIGNsYXNzPVwibGJsLWZvb3RlciBtZS0yMHB4XCI+IyBSZWdpc3Ryb3M6IHt7dGhpcy50b3RhbFNpemV9fTwvbGFiZWw+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJsYmwtZm9vdGVyXCI+IyBGaWxhczoge3t0aGlzLnBhZ2VTaXplfX08L2xhYmVsPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXY+XHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJnb1RvUGFnZSgxKVwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gMVwiPlxyXG4gICAgICA8aSBjbGFzcz1cImljb24tZmlyc3QtcGFnZVwiPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiZ29Ub1BhZ2UoY3VycmVudFBhZ2UgLSAxKVwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gMVwiPlxyXG4gICAgICA8aSBjbGFzcz1cImljb24tcHJldmlvdXMtcGFnZVwiPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlUmFuZ2UoKVwiPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgKGNsaWNrKT1cImdvVG9QYWdlKHBhZ2UpXCJcclxuICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImN1cnJlbnRQYWdlID09PSBwYWdlXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IHBhZ2VcIj5cclxuICAgICAgICB7eyBwYWdlIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJnb1RvUGFnZShjdXJyZW50UGFnZSArIDEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSB0b3RhbFBhZ2VzXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1uZXh0LXBhZ2VcIj48L2k+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cImdvVG9QYWdlKHRvdGFsUGFnZXMpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSB0b3RhbFBhZ2VzXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1sYXN0LXBhZ2VcIj48L2k+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ // table.module.ts
2
+ import { NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { LibeyColumnDirective } from './directives/libey-column.directive';
5
+ import { FormsModule } from '@angular/forms';
6
+ import { LibeyNgTableComponent } from './libey-ng-table.component';
7
+ import * as i0 from "@angular/core";
8
+ export class LibeyNgTableModule {
9
+ }
10
+ LibeyNgTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ LibeyNgTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableModule, declarations: [LibeyNgTableComponent, LibeyColumnDirective], imports: [CommonModule, FormsModule], exports: [LibeyNgTableComponent, LibeyColumnDirective] });
12
+ LibeyNgTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableModule, imports: [[CommonModule, FormsModule]] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ declarations: [LibeyNgTableComponent, LibeyColumnDirective],
17
+ imports: [CommonModule, FormsModule],
18
+ exports: [LibeyNgTableComponent, LibeyColumnDirective]
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0JBQWtCO0FBQ2xCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPbkUsTUFBTSxPQUFPLGtCQUFrQjs7Z0hBQWxCLGtCQUFrQjtpSEFBbEIsa0JBQWtCLGlCQUpkLHFCQUFxQixFQUFFLG9CQUFvQixhQUNoRCxZQUFZLEVBQUMsV0FBVyxhQUN4QixxQkFBcUIsRUFBRSxvQkFBb0I7aUhBRTFDLGtCQUFrQixZQUhwQixDQUFDLFlBQVksRUFBQyxXQUFXLENBQUM7NEZBR3hCLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxvQkFBb0IsQ0FBQztvQkFDM0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFDLFdBQVcsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsb0JBQW9CLENBQUM7aUJBQ3ZEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdGFibGUubW9kdWxlLnRzXHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IExpYmV5Q29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2xpYmV5LWNvbHVtbi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTGliZXlOZ1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9saWJleS1uZy10YWJsZS5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtMaWJleU5nVGFibGVDb21wb25lbnQsIExpYmV5Q29sdW1uRGlyZWN0aXZlXSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLEZvcm1zTW9kdWxlXSxcclxuICBleHBvcnRzOiBbTGliZXlOZ1RhYmxlQ29tcG9uZW50LCBMaWJleUNvbHVtbkRpcmVjdGl2ZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIExpYmV5TmdUYWJsZU1vZHVsZSB7IH0iXX0=
@@ -4,5 +4,7 @@
4
4
  export * from './lib/libey-ng-component-library.service';
5
5
  export * from './lib/libey-ng-component-library.component';
6
6
  export * from './lib/libey-ng-component-library.module';
7
+ export * from './lib/table/libey-ng-table.module';
7
8
  export * from './lib/table/libey-ng-table.component';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxzQ0FBc0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbGliZXktbmctY29tcG9uZW50LWxpYnJhcnlcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUvbGliZXktbmctdGFibGUuY29tcG9uZW50JzsiXX0=
9
+ export * from './lib/table/directives/libey-column.directive';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0NBQStDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGxpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUvZGlyZWN0aXZlcy9saWJleS1jb2x1bW4uZGlyZWN0aXZlJzsiXX0=