libey-ng-component-library 0.0.7 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/libey-ng-component-library.umd.js +49 -19
- package/bundles/libey-ng-component-library.umd.js.map +1 -1
- package/esm2015/lib/table/directives/libey-column.directive.js +7 -2
- package/esm2015/lib/table/libey-ng-table.component.js +45 -19
- package/fesm2015/libey-ng-component-library.js +50 -19
- package/fesm2015/libey-ng-component-library.js.map +1 -1
- package/lib/table/directives/libey-column.directive.d.ts +2 -1
- package/lib/table/libey-ng-table.component.d.ts +8 -5
- package/package.json +2 -3
|
@@ -59,11 +59,12 @@
|
|
|
59
59
|
|
|
60
60
|
var LibeyColumnDirective = /** @class */ (function () {
|
|
61
61
|
function LibeyColumnDirective() {
|
|
62
|
+
this.isAutoClose = function () { return true; };
|
|
62
63
|
}
|
|
63
64
|
return LibeyColumnDirective;
|
|
64
65
|
}());
|
|
65
66
|
LibeyColumnDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LibeyColumnDirective, deps: [], target: i0__namespace.ɵɵFactoryTarget.Directive });
|
|
66
|
-
LibeyColumnDirective.ɵdir = i0__namespace.ɵɵ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: i0.TemplateRef, descendants: true }], ngImport: i0__namespace });
|
|
67
|
+
LibeyColumnDirective.ɵdir = i0__namespace.ɵɵ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", isAutoClose: "isAutoClose" }, queries: [{ propertyName: "cellTemplate", first: true, predicate: i0.TemplateRef, descendants: true }], ngImport: i0__namespace });
|
|
67
68
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LibeyColumnDirective, decorators: [{
|
|
68
69
|
type: i0.Directive,
|
|
69
70
|
args: [{
|
|
@@ -85,6 +86,8 @@
|
|
|
85
86
|
type: i0.Input
|
|
86
87
|
}], childTableTemplate: [{
|
|
87
88
|
type: i0.Input
|
|
89
|
+
}], isAutoClose: [{
|
|
90
|
+
type: i0.Input
|
|
88
91
|
}], cellTemplate: [{
|
|
89
92
|
type: i0.ContentChild,
|
|
90
93
|
args: [i0.TemplateRef]
|
|
@@ -105,6 +108,7 @@
|
|
|
105
108
|
this.expandable = false;
|
|
106
109
|
this.viewPaginate = true;
|
|
107
110
|
this.headerfixed = false;
|
|
111
|
+
this.internalPagination = true;
|
|
108
112
|
this.pageChange = new i0.EventEmitter();
|
|
109
113
|
this.rowExpandable = [];
|
|
110
114
|
this.rowExpandableDetail = [];
|
|
@@ -137,6 +141,18 @@
|
|
|
137
141
|
enumerable: false,
|
|
138
142
|
configurable: true
|
|
139
143
|
});
|
|
144
|
+
LibeyNgTableComponent.prototype.ngOnChanges = function (changes) {
|
|
145
|
+
var _this = this;
|
|
146
|
+
if (changes.data.previousValue) {
|
|
147
|
+
changes.data.currentValue.forEach(function (value, index) {
|
|
148
|
+
var findData = _this.rowExpandableDetail.find(function (x) { return x.dataKey == index; });
|
|
149
|
+
if (findData != null)
|
|
150
|
+
findData.autoClose = value.autoClose;
|
|
151
|
+
});
|
|
152
|
+
this._data = changes.data.currentValue;
|
|
153
|
+
this.updatePaginatedData();
|
|
154
|
+
}
|
|
155
|
+
};
|
|
140
156
|
LibeyNgTableComponent.prototype.ngOnInit = function () {
|
|
141
157
|
this.updatePaginatedData();
|
|
142
158
|
};
|
|
@@ -195,10 +211,14 @@
|
|
|
195
211
|
}, obj);
|
|
196
212
|
};
|
|
197
213
|
LibeyNgTableComponent.prototype.updatePaginatedData = function () {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
214
|
+
if (this.viewPaginate && this.internalPagination) {
|
|
215
|
+
var start = (this.currentPage - 1) * this.pageSize;
|
|
216
|
+
var end = start + this.pageSize;
|
|
217
|
+
this.paginatedData = this.data.slice(start, end);
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
this.paginatedData = this.data;
|
|
221
|
+
}
|
|
202
222
|
};
|
|
203
223
|
LibeyNgTableComponent.prototype.pageRange = function () {
|
|
204
224
|
var start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));
|
|
@@ -207,8 +227,12 @@
|
|
|
207
227
|
};
|
|
208
228
|
LibeyNgTableComponent.prototype.goToPage = function (page) {
|
|
209
229
|
this.currentPage = Math.max(1, Math.min(page, this.totalPages));
|
|
210
|
-
this.
|
|
211
|
-
|
|
230
|
+
if (this.internalPagination) {
|
|
231
|
+
this.updatePaginatedData();
|
|
232
|
+
}
|
|
233
|
+
else {
|
|
234
|
+
this.pageChange.emit(this.currentPage);
|
|
235
|
+
}
|
|
212
236
|
};
|
|
213
237
|
// hasChildren(row: any): boolean{
|
|
214
238
|
// return Array.isArray(row.child) && row.child.length > 0;
|
|
@@ -216,17 +240,21 @@
|
|
|
216
240
|
LibeyNgTableComponent.prototype.toggleRow = function (index) {
|
|
217
241
|
this.rowExpandable[index] = !this.rowExpandable[index];
|
|
218
242
|
};
|
|
219
|
-
LibeyNgTableComponent.prototype.toggleRowDetail = function (key, indexData,
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
243
|
+
LibeyNgTableComponent.prototype.toggleRowDetail = function (key, indexData, column, data) {
|
|
244
|
+
if (column.expandable) {
|
|
245
|
+
var exist = this.rowExpandableDetail.find(function (x) { return x.key == key && x.dataKey == indexData; });
|
|
246
|
+
if (exist == null) {
|
|
247
|
+
this.rowExpandableDetail = this.rowExpandableDetail.filter(function (x) { return (x.key != key || x.dataKey != indexData) && x.autoClose == false; });
|
|
248
|
+
var item = new DataKey();
|
|
249
|
+
item.key = key;
|
|
250
|
+
item.dataKey = indexData;
|
|
251
|
+
item.childTableTemplate = column.childTableTemplate;
|
|
252
|
+
item.autoClose = column.isAutoClose(data);
|
|
253
|
+
this.rowExpandableDetail.push(item);
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
this.rowExpandableDetail = this.rowExpandableDetail.filter(function (x) { return x.key != key || x.dataKey != indexData; });
|
|
257
|
+
}
|
|
230
258
|
}
|
|
231
259
|
};
|
|
232
260
|
LibeyNgTableComponent.prototype.getChildren = function (fila) {
|
|
@@ -255,7 +283,7 @@
|
|
|
255
283
|
return LibeyNgTableComponent;
|
|
256
284
|
}());
|
|
257
285
|
LibeyNgTableComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LibeyNgTableComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
258
|
-
LibeyNgTableComponent.ɵcmp = i0__namespace.ɵɵ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__namespace, 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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0__namespace.ViewEncapsulation.None });
|
|
286
|
+
LibeyNgTableComponent.ɵcmp = i0__namespace.ɵɵ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", internalPagination: "internalPagination" }, 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 }], usesOnChanges: true, ngImport: i0__namespace, 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 <span style=\"white-space: nowrap;\">{{ column.header }}</span>\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=\"_data.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\" (click)=\"toggleRowDetail(i, a, column, item)\" [class]=\"column.expandable ? 'cursor-pointer': ''\">\r\n <ng-container *ngIf=\"column.cellTemplate; else defaultCell\">\r\n <div style=\"display: flex; justify-content: space-between; white-space: nowrap;\">\r\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: item }\"></ng-container>\r\n <button *ngIf=\"column.expandable\">\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; white-space: nowrap;\">\r\n {{ getCellValue(item, column) }}\r\n <button *ngIf=\"column.expandable\">\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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 && _data.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}.cursor-pointer{cursor:pointer}\n"], directives: [{ type: i1__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0__namespace.ViewEncapsulation.None });
|
|
259
287
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LibeyNgTableComponent, decorators: [{
|
|
260
288
|
type: i0.Component,
|
|
261
289
|
args: [{
|
|
@@ -284,6 +312,8 @@
|
|
|
284
312
|
type: i0.Input
|
|
285
313
|
}], class: [{
|
|
286
314
|
type: i0.Input
|
|
315
|
+
}], internalPagination: [{
|
|
316
|
+
type: i0.Input
|
|
287
317
|
}], pageChange: [{
|
|
288
318
|
type: i0.Output
|
|
289
319
|
}], columns: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libey-ng-component-library.umd.js","sources":["../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.service.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.component.ts","../../../projects/libey-ng-component-library/src/lib/table/directives/libey-column.directive.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.html","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.module.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.module.ts","../../../projects/libey-ng-component-library/src/public-api.ts","../../../projects/libey-ng-component-library/src/libey-ng-component-library.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LibeyNgComponentLibraryService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-libey-ngComponent-library',\n template: `\n <p>\n libey-ng-component-library works!\n </p>\n `,\n styles: [\n ]\n})\nexport class LibeyNgComponentLibraryComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'libey-ng-column'\r\n})\r\nexport class LibeyColumnDirective {\r\n @Input() header!: string;\r\n @Input() property!: string;\r\n @Input() width!: number;\r\n @Input() arrayMap?: string;\r\n @Input() isArray?: boolean;\r\n @Input() expandable?: boolean;\r\n @Input() class?: string;\r\n @Input() childTableTemplate: TemplateRef<any>;\r\n @ContentChild(TemplateRef) cellTemplate!: TemplateRef<any>;\r\n}","import { AfterViewInit, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, Input, OnInit, Output, QueryList, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\ninterface IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[]\r\n}\r\n\r\nclass DataKey implements IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[]\r\n}\r\n\r\n@Component({\r\n selector: 'libey-ng-table',\r\n templateUrl: './libey-ng-table.component.html',\r\n styleUrls: ['./libey-ng-table.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class LibeyNgTableComponent implements OnInit, AfterViewInit {\r\n @Input() set data(value: any[]) {\r\n this._data = value;\r\n }\r\n get data(): any[] {\r\n return this._data;\r\n }\r\n @Input() pageSize: number = 10;\r\n @Input() totalSize: number = 0;\r\n @Input() maxPageButtons: number = 5;\r\n @Input() height: number;\r\n @Input() expandable: boolean = false;\r\n @Input() viewPaginate: boolean = true;\r\n @Input() childTableTemplate!: TemplateRef<any>;\r\n @Input() headerfixed: boolean = false;\r\n @Input() class: string;\r\n @Output() pageChange = new EventEmitter<number>();\r\n \r\n @ContentChildren(LibeyColumnDirective) columns!: QueryList<LibeyColumnDirective>;\r\n\r\n rowExpandable: boolean[] = [];\r\n rowExpandableDetail: IDataKey[] = [];\r\n currentPage: number = 1;\r\n paginatedData: any[] = [];\r\n private _data: any[] = [];\r\n columnWidths: number[] = [];\r\n resizingColumnIndex: number | null = null;\r\n startX: number = 0;\r\n startWidth: number = 0;\r\n @ViewChild('tableContainer') tableContainer!: ElementRef;\r\n @ViewChild('table') tableElement!: ElementRef;\r\n constructor(private cdr: ChangeDetectorRef) {}\r\n ngOnInit(): void {\r\n this.updatePaginatedData();\r\n }\r\n ngAfterViewInit() {\r\n this.initializeColumnWidths();\r\n // this.adjustTableWidth()\r\n this.cdr.detectChanges();\r\n }\r\n\r\n initializeColumnWidths() {\r\n var padding = 31\r\n var widthDefault = 150\r\n this.columnWidths = this.columns.map(column => column.width);\r\n const containerWidth = this.tableContainer.nativeElement.offsetWidth;\r\n const autoColumns = this.columns.filter(column => column.width == null);\r\n const totalFixedWidth = this.columns.reduce((sum, column) =>\r\n column.width != null ? (sum + this.getWidthValue(column.width)) : sum, 0);\r\n const remainingWidth = containerWidth - (totalFixedWidth + (((this.columns.length - autoColumns.length) * padding)+ (this.expandable ? 61 : 0)));\r\n\r\n if (autoColumns.length > 0) {\r\n var autoColumnWidth = 0;\r\n if(remainingWidth < widthDefault)\r\n autoColumnWidth = widthDefault;\r\n else\r\n autoColumnWidth = Math.max(0, remainingWidth / autoColumns.length);\r\n autoColumns.forEach(column => column.width = autoColumnWidth- padding);\r\n }\r\n this.columnWidths = this.columns.map(column => column.width);\r\n }\r\n // adjustTableWidth() {\r\n // const totalWidth = this.columns.reduce((sum, column) => sum + this.getWidthValue(column.width), 0);\r\n // this.tableElement.nativeElement.style.width = `${totalWidth}px`;\r\n // }\r\n getWidthValue(width: number): number {\r\n return width === null ? 100 : width;\r\n }\r\n\r\n get totalPages(): number {\r\n return Math.ceil(this.totalSize / this.pageSize);\r\n }\r\n\r\n getCellValue(item: any, column: LibeyColumnDirective): string {\r\n const value = this.getNestedValue(item, column.property);\r\n if (Array.isArray(value) && column.arrayMap) {\r\n return value.map(v => this.getNestedValue(v, column.arrayMap!)).join(', ');\r\n }\r\n return value;\r\n }\r\n\r\n private getNestedValue(obj: any, path: string): any {\r\n return path.split('.').reduce((o, key) => {\r\n if (o && typeof o === 'object' && key in o) {\r\n return o[key];\r\n }\r\n return undefined;\r\n }, obj);\r\n }\r\n\r\n private updatePaginatedData(): void {\r\n console.log(this.pageSize);\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n this.paginatedData = this.data.slice(start, end);\r\n }\r\n pageRange(): number[] {\r\n const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));\r\n const end = Math.min(this.totalPages, start + this.maxPageButtons - 1);\r\n return Array.from({length: end - start + 1}, (_, i) => start + i);\r\n }\r\n goToPage(page: number): void {\r\n this.currentPage = Math.max(1, Math.min(page, this.totalPages));\r\n this.updatePaginatedData();\r\n this.pageChange.emit(this.currentPage);\r\n }\r\n // hasChildren(row: any): boolean{\r\n // return Array.isArray(row.child) && row.child.length > 0;\r\n // }\r\n toggleRow(index: number){\r\n this.rowExpandable[index] = !this.rowExpandable[index];\r\n }\r\n toggleRowDetail(key: number, indexData: number, propertyChild: TemplateRef<any>){\r\n var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);\r\n this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key && x.dataKey != indexData);\r\n if(exist == null){\r\n var item = new DataKey();\r\n item.key = key;\r\n item.dataKey = indexData;\r\n item.childTableTemplate = propertyChild;\r\n // item.data = this.getNestedValue(item, propertyChild);\r\n this.rowExpandableDetail.push(item);\r\n console.log(this.rowExpandableDetail);\r\n }\r\n }\r\n getChildren(fila: any): any[] {\r\n return fila.hijos || [];\r\n }\r\n onResizeStart(index: number, event: MouseEvent) {\r\n this.resizingColumnIndex = index;\r\n this.startX = event.pageX;\r\n this.startWidth = this.columnWidths[index];\r\n document.addEventListener('mousemove', this.onResizeMove);\r\n document.addEventListener('mouseup', this.onResizeEnd);\r\n }\r\n onResizeMove = (event: MouseEvent) => {\r\n if (this.resizingColumnIndex !== null) {\r\n const diff = event.pageX - this.startX;\r\n this.columnWidths[this.resizingColumnIndex] = Math.max(this.startWidth + diff, 50);\r\n\r\n }\r\n }\r\n onResizeEnd = () => {\r\n this.resizingColumnIndex = null;\r\n document.removeEventListener('mousemove', this.onResizeMove);\r\n document.removeEventListener('mouseup', this.onResizeEnd);\r\n }\r\n existRowExpandableDetail(key: number, indexData: number) : boolean{\r\n return this.rowExpandableDetail.filter(x => x.key == key && x.dataKey == indexData).length > 0;\r\n }\r\n viewRowExpandableDetail(indexData: number) :boolean{\r\n return this.rowExpandableDetail.filter(x => x.dataKey == indexData).length > 0;\r\n }\r\n findRowExpandableDetail(indexData: number) :TemplateRef<any>{\r\n var find = this.rowExpandableDetail.find(x => x.dataKey == indexData);\r\n if(find)\r\n return find.childTableTemplate; \r\n else\r\n return null;\r\n }\r\n}\r\n","<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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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","// table.module.ts\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LibeyNgTableComponent } from './libey-ng-table.component';\r\n\r\n@NgModule({\r\n declarations: [LibeyNgTableComponent, LibeyColumnDirective],\r\n imports: [CommonModule,FormsModule],\r\n exports: [LibeyNgTableComponent, LibeyColumnDirective]\r\n})\r\nexport class LibeyNgTableModule { }","import { NgModule } from '@angular/core';\nimport { LibeyNgComponentLibraryComponent } from './libey-ng-component-library.component';\nimport { LibeyNgTableComponent } from './table/libey-ng-table.component';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { LibeyNgTableModule } from './table/libey-ng-table.module';\n\n\n\n@NgModule({\n declarations: [\n ],\n imports: [\n CommonModule,\n FormsModule,\n LibeyNgTableModule\n ],\n exports: [LibeyNgTableModule],\n providers: [DatePipe]\n})\nexport class LibeyNgComponentLibraryModule { }\n","/*\n * Public API Surface of libey-ng-component-library\n */\n\nexport * from './lib/libey-ng-component-library.service';\nexport * from './lib/libey-ng-component-library.component';\nexport * from './lib/libey-ng-component-library.module';\nexport * from './lib/table/libey-ng-table.module';\nexport * from './lib/table/libey-ng-table.component';\nexport * from './lib/table/directives/libey-column.directive';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i0","Injectable","Component","TemplateRef","Directive","Input","ContentChild","EventEmitter","i1","ViewEncapsulation","Output","ContentChildren","ViewChild","CommonModule","FormsModule","NgModule","DatePipe"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"libey-ng-component-library.umd.js","sources":["../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.service.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.component.ts","../../../projects/libey-ng-component-library/src/lib/table/directives/libey-column.directive.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.html","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.module.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.module.ts","../../../projects/libey-ng-component-library/src/public-api.ts","../../../projects/libey-ng-component-library/src/libey-ng-component-library.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LibeyNgComponentLibraryService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-libey-ngComponent-library',\n template: `\n <p>\n libey-ng-component-library works!\n </p>\n `,\n styles: [\n ]\n})\nexport class LibeyNgComponentLibraryComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'libey-ng-column'\r\n})\r\nexport class LibeyColumnDirective {\r\n @Input() header!: string;\r\n @Input() property!: string;\r\n @Input() width!: number;\r\n @Input() arrayMap?: string;\r\n @Input() isArray?: boolean;\r\n @Input() expandable?: boolean;\r\n @Input() class?: string;\r\n @Input() childTableTemplate: TemplateRef<any>;\r\n @Input() isAutoClose: (item: any) => boolean = () => true;\r\n @ContentChild(TemplateRef) cellTemplate!: TemplateRef<any>;\r\n}","import { AfterViewInit, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, Input, OnChanges, OnInit, Output, QueryList, SimpleChanges, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\ninterface IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[];\r\n autoClose: boolean;\r\n}\r\n\r\nclass DataKey implements IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[];\r\n autoClose: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'libey-ng-table',\r\n templateUrl: './libey-ng-table.component.html',\r\n styleUrls: ['./libey-ng-table.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class LibeyNgTableComponent implements OnInit, AfterViewInit, OnChanges {\r\n @Input() set data(value: any[]) {\r\n this._data = value;\r\n }\r\n get data(): any[] {\r\n return this._data;\r\n }\r\n @Input() pageSize: number = 10;\r\n @Input() totalSize: number = 0;\r\n @Input() maxPageButtons: number = 5;\r\n @Input() height: number;\r\n @Input() expandable: boolean = false;\r\n @Input() viewPaginate: boolean = true;\r\n @Input() childTableTemplate!: TemplateRef<any>;\r\n @Input() headerfixed: boolean = false;\r\n @Input() class: string;\r\n @Input() internalPagination: boolean = true;\r\n @Output() pageChange = new EventEmitter<number>();\r\n \r\n @ContentChildren(LibeyColumnDirective) columns!: QueryList<LibeyColumnDirective>;\r\n\r\n rowExpandable: boolean[] = [];\r\n rowExpandableDetail: IDataKey[] = [];\r\n currentPage: number = 1;\r\n paginatedData: any[] = [];\r\n _data: any[] = [];\r\n columnWidths: number[] = [];\r\n resizingColumnIndex: number | null = null;\r\n startX: number = 0;\r\n startWidth: number = 0;\r\n @ViewChild('tableContainer') tableContainer!: ElementRef;\r\n @ViewChild('table') tableElement!: ElementRef;\r\n constructor(private cdr: ChangeDetectorRef) {}\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.data.previousValue){\r\n changes.data.currentValue.forEach((value, index) => {\r\n var findData = this.rowExpandableDetail.find(x => x.dataKey == index);\r\n if(findData != null)\r\n findData.autoClose = value.autoClose;\r\n });\r\n this._data = changes.data.currentValue;\r\n this.updatePaginatedData();\r\n }\r\n }\r\n ngOnInit(): void {\r\n this.updatePaginatedData();\r\n }\r\n ngAfterViewInit() {\r\n this.initializeColumnWidths();\r\n // this.adjustTableWidth()\r\n this.cdr.detectChanges();\r\n }\r\n\r\n initializeColumnWidths() {\r\n var padding = 31\r\n var widthDefault = 150\r\n this.columnWidths = this.columns.map(column => column.width);\r\n const containerWidth = this.tableContainer.nativeElement.offsetWidth;\r\n const autoColumns = this.columns.filter(column => column.width == null);\r\n const totalFixedWidth = this.columns.reduce((sum, column) =>\r\n column.width != null ? (sum + this.getWidthValue(column.width)) : sum, 0);\r\n const remainingWidth = containerWidth - (totalFixedWidth + (((this.columns.length - autoColumns.length) * padding)+ (this.expandable ? 61 : 0)));\r\n\r\n if (autoColumns.length > 0) {\r\n var autoColumnWidth = 0;\r\n if(remainingWidth < widthDefault)\r\n autoColumnWidth = widthDefault;\r\n else\r\n autoColumnWidth = Math.max(0, remainingWidth / autoColumns.length);\r\n autoColumns.forEach(column => column.width = autoColumnWidth- padding);\r\n }\r\n this.columnWidths = this.columns.map(column => column.width);\r\n }\r\n // adjustTableWidth() {\r\n // const totalWidth = this.columns.reduce((sum, column) => sum + this.getWidthValue(column.width), 0);\r\n // this.tableElement.nativeElement.style.width = `${totalWidth}px`;\r\n // }\r\n getWidthValue(width: number): number {\r\n return width === null ? 100 : width;\r\n }\r\n\r\n get totalPages(): number {\r\n return Math.ceil(this.totalSize / this.pageSize);\r\n }\r\n\r\n getCellValue(item: any, column: LibeyColumnDirective): string {\r\n const value = this.getNestedValue(item, column.property);\r\n if (Array.isArray(value) && column.arrayMap) {\r\n return value.map(v => this.getNestedValue(v, column.arrayMap!)).join(', ');\r\n }\r\n return value;\r\n }\r\n\r\n private getNestedValue(obj: any, path: string): any {\r\n return path.split('.').reduce((o, key) => {\r\n if (o && typeof o === 'object' && key in o) {\r\n return o[key];\r\n }\r\n return undefined;\r\n }, obj);\r\n }\r\n\r\n private updatePaginatedData(): void {\r\n if(this.viewPaginate && this.internalPagination){\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n this.paginatedData = this.data.slice(start, end);\r\n }else{\r\n this.paginatedData = this.data;\r\n } \r\n }\r\n pageRange(): number[] {\r\n const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));\r\n const end = Math.min(this.totalPages, start + this.maxPageButtons - 1);\r\n return Array.from({length: end - start + 1}, (_, i) => start + i);\r\n }\r\n goToPage(page: number): void {\r\n this.currentPage = Math.max(1, Math.min(page, this.totalPages));\r\n if(this.internalPagination){ \r\n this.updatePaginatedData(); \r\n }else{\r\n this.pageChange.emit(this.currentPage);\r\n }\r\n }\r\n // hasChildren(row: any): boolean{\r\n // return Array.isArray(row.child) && row.child.length > 0;\r\n // }\r\n toggleRow(index: number){\r\n this.rowExpandable[index] = !this.rowExpandable[index];\r\n }\r\n toggleRowDetail(key: number, indexData: number, column: LibeyColumnDirective, data: any){\r\n if(column.expandable){\r\n var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);\r\n if(exist == null){\r\n this.rowExpandableDetail = this.rowExpandableDetail.filter(x => (x.key != key || x.dataKey != indexData) && x.autoClose == false);\r\n var item = new DataKey();\r\n item.key = key;\r\n item.dataKey = indexData;\r\n item.childTableTemplate = column.childTableTemplate;\r\n item.autoClose = column.isAutoClose(data);\r\n this.rowExpandableDetail.push(item);\r\n }else{\r\n this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key || x.dataKey != indexData);\r\n }\r\n }\r\n }\r\n getChildren(fila: any): any[] {\r\n return fila.hijos || [];\r\n }\r\n onResizeStart(index: number, event: MouseEvent) {\r\n this.resizingColumnIndex = index;\r\n this.startX = event.pageX;\r\n this.startWidth = this.columnWidths[index];\r\n document.addEventListener('mousemove', this.onResizeMove);\r\n document.addEventListener('mouseup', this.onResizeEnd);\r\n }\r\n onResizeMove = (event: MouseEvent) => {\r\n if (this.resizingColumnIndex !== null) {\r\n const diff = event.pageX - this.startX;\r\n this.columnWidths[this.resizingColumnIndex] = Math.max(this.startWidth + diff, 50);\r\n\r\n }\r\n }\r\n onResizeEnd = () => {\r\n this.resizingColumnIndex = null;\r\n document.removeEventListener('mousemove', this.onResizeMove);\r\n document.removeEventListener('mouseup', this.onResizeEnd);\r\n }\r\n existRowExpandableDetail(key: number, indexData: number) : boolean{\r\n return this.rowExpandableDetail.filter(x => x.key == key && x.dataKey == indexData).length > 0;\r\n }\r\n viewRowExpandableDetail(indexData: number) :boolean{\r\n return this.rowExpandableDetail.filter(x => x.dataKey == indexData).length > 0;\r\n }\r\n findRowExpandableDetail(indexData: number) :TemplateRef<any>{\r\n var find = this.rowExpandableDetail.find(x => x.dataKey == indexData);\r\n if(find)\r\n return find.childTableTemplate; \r\n else\r\n return null;\r\n }\r\n}\r\n","<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 <span style=\"white-space: nowrap;\">{{ column.header }}</span>\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=\"_data.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\" (click)=\"toggleRowDetail(i, a, column, item)\" [class]=\"column.expandable ? 'cursor-pointer': ''\">\r\n <ng-container *ngIf=\"column.cellTemplate; else defaultCell\">\r\n <div style=\"display: flex; justify-content: space-between; white-space: nowrap;\">\r\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: item }\"></ng-container>\r\n <button *ngIf=\"column.expandable\">\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; white-space: nowrap;\">\r\n {{ getCellValue(item, column) }}\r\n <button *ngIf=\"column.expandable\">\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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 && _data.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","// table.module.ts\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LibeyNgTableComponent } from './libey-ng-table.component';\r\n\r\n@NgModule({\r\n declarations: [LibeyNgTableComponent, LibeyColumnDirective],\r\n imports: [CommonModule,FormsModule],\r\n exports: [LibeyNgTableComponent, LibeyColumnDirective]\r\n})\r\nexport class LibeyNgTableModule { }","import { NgModule } from '@angular/core';\nimport { LibeyNgComponentLibraryComponent } from './libey-ng-component-library.component';\nimport { LibeyNgTableComponent } from './table/libey-ng-table.component';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { LibeyNgTableModule } from './table/libey-ng-table.module';\n\n\n\n@NgModule({\n declarations: [\n ],\n imports: [\n CommonModule,\n FormsModule,\n LibeyNgTableModule\n ],\n exports: [LibeyNgTableModule],\n providers: [DatePipe]\n})\nexport class LibeyNgComponentLibraryModule { }\n","/*\n * Public API Surface of libey-ng-component-library\n */\n\nexport * from './lib/libey-ng-component-library.service';\nexport * from './lib/libey-ng-component-library.component';\nexport * from './lib/libey-ng-component-library.module';\nexport * from './lib/table/libey-ng-table.module';\nexport * from './lib/table/libey-ng-table.component';\nexport * from './lib/table/directives/libey-column.directive';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i0","Injectable","Component","TemplateRef","Directive","Input","ContentChild","EventEmitter","i1","ViewEncapsulation","Output","ContentChildren","ViewChild","CommonModule","FormsModule","NgModule","DatePipe"],"mappings":"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"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class LibeyColumnDirective {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.isAutoClose = () => true;
|
|
6
|
+
}
|
|
4
7
|
}
|
|
5
8
|
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 });
|
|
9
|
+
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", isAutoClose: "isAutoClose" }, queries: [{ propertyName: "cellTemplate", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 });
|
|
7
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, decorators: [{
|
|
8
11
|
type: Directive,
|
|
9
12
|
args: [{
|
|
@@ -25,8 +28,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
25
28
|
type: Input
|
|
26
29
|
}], childTableTemplate: [{
|
|
27
30
|
type: Input
|
|
31
|
+
}], isAutoClose: [{
|
|
32
|
+
type: Input
|
|
28
33
|
}], cellTemplate: [{
|
|
29
34
|
type: ContentChild,
|
|
30
35
|
args: [TemplateRef]
|
|
31
36
|
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvdGFibGUvZGlyZWN0aXZlcy9saWJleS1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzVFLE1BQU0sT0FBTyxvQkFBb0I7SUFIakM7UUFZVyxnQkFBVyxHQUEyQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7S0FFM0Q7O2tIQVhZLG9CQUFvQjtzR0FBcEIsb0JBQW9CLCtUQVVqQixXQUFXOzRGQVZkLG9CQUFvQjtrQkFIaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2lCQUM1Qjs4QkFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ3FCLFlBQVk7c0JBQXRDLFlBQVk7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnbGliZXktbmctY29sdW1uJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliZXlDb2x1bW5EaXJlY3RpdmUge1xyXG4gIEBJbnB1dCgpIGhlYWRlciE6IHN0cmluZztcclxuICBASW5wdXQoKSBwcm9wZXJ0eSE6IHN0cmluZztcclxuICBASW5wdXQoKSB3aWR0aCE6IG51bWJlcjtcclxuICBASW5wdXQoKSBhcnJheU1hcD86IHN0cmluZztcclxuICBASW5wdXQoKSBpc0FycmF5PzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBleHBhbmRhYmxlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjbGFzcz86IHN0cmluZztcclxuICBASW5wdXQoKSBjaGlsZFRhYmxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgaXNBdXRvQ2xvc2U6IChpdGVtOiBhbnkpID0+IGJvb2xlYW4gPSAoKSA9PiB0cnVlO1xyXG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpIGNlbGxUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbn0iXX0=
|
|
@@ -13,6 +13,7 @@ export class LibeyNgTableComponent {
|
|
|
13
13
|
this.expandable = false;
|
|
14
14
|
this.viewPaginate = true;
|
|
15
15
|
this.headerfixed = false;
|
|
16
|
+
this.internalPagination = true;
|
|
16
17
|
this.pageChange = new EventEmitter();
|
|
17
18
|
this.rowExpandable = [];
|
|
18
19
|
this.rowExpandableDetail = [];
|
|
@@ -41,6 +42,17 @@ export class LibeyNgTableComponent {
|
|
|
41
42
|
get data() {
|
|
42
43
|
return this._data;
|
|
43
44
|
}
|
|
45
|
+
ngOnChanges(changes) {
|
|
46
|
+
if (changes.data.previousValue) {
|
|
47
|
+
changes.data.currentValue.forEach((value, index) => {
|
|
48
|
+
var findData = this.rowExpandableDetail.find(x => x.dataKey == index);
|
|
49
|
+
if (findData != null)
|
|
50
|
+
findData.autoClose = value.autoClose;
|
|
51
|
+
});
|
|
52
|
+
this._data = changes.data.currentValue;
|
|
53
|
+
this.updatePaginatedData();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
44
56
|
ngOnInit() {
|
|
45
57
|
this.updatePaginatedData();
|
|
46
58
|
}
|
|
@@ -93,10 +105,14 @@ export class LibeyNgTableComponent {
|
|
|
93
105
|
}, obj);
|
|
94
106
|
}
|
|
95
107
|
updatePaginatedData() {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
108
|
+
if (this.viewPaginate && this.internalPagination) {
|
|
109
|
+
const start = (this.currentPage - 1) * this.pageSize;
|
|
110
|
+
const end = start + this.pageSize;
|
|
111
|
+
this.paginatedData = this.data.slice(start, end);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
this.paginatedData = this.data;
|
|
115
|
+
}
|
|
100
116
|
}
|
|
101
117
|
pageRange() {
|
|
102
118
|
const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));
|
|
@@ -105,8 +121,12 @@ export class LibeyNgTableComponent {
|
|
|
105
121
|
}
|
|
106
122
|
goToPage(page) {
|
|
107
123
|
this.currentPage = Math.max(1, Math.min(page, this.totalPages));
|
|
108
|
-
this.
|
|
109
|
-
|
|
124
|
+
if (this.internalPagination) {
|
|
125
|
+
this.updatePaginatedData();
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
this.pageChange.emit(this.currentPage);
|
|
129
|
+
}
|
|
110
130
|
}
|
|
111
131
|
// hasChildren(row: any): boolean{
|
|
112
132
|
// return Array.isArray(row.child) && row.child.length > 0;
|
|
@@ -114,17 +134,21 @@ export class LibeyNgTableComponent {
|
|
|
114
134
|
toggleRow(index) {
|
|
115
135
|
this.rowExpandable[index] = !this.rowExpandable[index];
|
|
116
136
|
}
|
|
117
|
-
toggleRowDetail(key, indexData,
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
137
|
+
toggleRowDetail(key, indexData, column, data) {
|
|
138
|
+
if (column.expandable) {
|
|
139
|
+
var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);
|
|
140
|
+
if (exist == null) {
|
|
141
|
+
this.rowExpandableDetail = this.rowExpandableDetail.filter(x => (x.key != key || x.dataKey != indexData) && x.autoClose == false);
|
|
142
|
+
var item = new DataKey();
|
|
143
|
+
item.key = key;
|
|
144
|
+
item.dataKey = indexData;
|
|
145
|
+
item.childTableTemplate = column.childTableTemplate;
|
|
146
|
+
item.autoClose = column.isAutoClose(data);
|
|
147
|
+
this.rowExpandableDetail.push(item);
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key || x.dataKey != indexData);
|
|
151
|
+
}
|
|
128
152
|
}
|
|
129
153
|
}
|
|
130
154
|
getChildren(fila) {
|
|
@@ -152,7 +176,7 @@ export class LibeyNgTableComponent {
|
|
|
152
176
|
}
|
|
153
177
|
}
|
|
154
178
|
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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 });
|
|
179
|
+
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", internalPagination: "internalPagination" }, 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 }], usesOnChanges: 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 <span style=\"white-space: nowrap;\">{{ column.header }}</span>\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=\"_data.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\" (click)=\"toggleRowDetail(i, a, column, item)\" [class]=\"column.expandable ? 'cursor-pointer': ''\">\r\n <ng-container *ngIf=\"column.cellTemplate; else defaultCell\">\r\n <div style=\"display: flex; justify-content: space-between; white-space: nowrap;\">\r\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: item }\"></ng-container>\r\n <button *ngIf=\"column.expandable\">\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; white-space: nowrap;\">\r\n {{ getCellValue(item, column) }}\r\n <button *ngIf=\"column.expandable\">\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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 && _data.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}.cursor-pointer{cursor:pointer}\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 });
|
|
156
180
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableComponent, decorators: [{
|
|
157
181
|
type: Component,
|
|
158
182
|
args: [{
|
|
@@ -181,6 +205,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
181
205
|
type: Input
|
|
182
206
|
}], class: [{
|
|
183
207
|
type: Input
|
|
208
|
+
}], internalPagination: [{
|
|
209
|
+
type: Input
|
|
184
210
|
}], pageChange: [{
|
|
185
211
|
type: Output
|
|
186
212
|
}], columns: [{
|
|
@@ -193,4 +219,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
193
219
|
type: ViewChild,
|
|
194
220
|
args: ['table']
|
|
195
221
|
}] } });
|
|
196
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLGVBQWUsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBMEIsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBNLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUFRM0UsTUFBTSxPQUFPO0NBS1o7QUFTRCxNQUFNLE9BQU8scUJBQXFCO0lBK0JoQyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQXhCakMsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBRTNCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFFN0IsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFNUIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFJbEQsa0JBQWEsR0FBYyxFQUFFLENBQUM7UUFDOUIsd0JBQW1CLEdBQWUsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBQ3hCLGtCQUFhLEdBQVUsRUFBRSxDQUFDO1FBQ2xCLFVBQUssR0FBVSxFQUFFLENBQUM7UUFDMUIsaUJBQVksR0FBYSxFQUFFLENBQUM7UUFDNUIsd0JB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QUMsU0FBaUI7UUFDdkMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLENBQUM7UUFDdEUsSUFBRyxJQUFJO1lBQ0wsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7O1lBRS9CLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7O21IQS9KVSxxQkFBcUI7dUdBQXJCLHFCQUFxQiwrWEFrQmYsb0JBQW9CLHVPQzFDdkMsOGpKQThGQTs0RkR0RWEscUJBQXFCO2tCQVBqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO29CQUM3QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7d0dBR2MsSUFBSTtzQkFBaEIsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNO2dCQUVnQyxPQUFPO3NCQUE3QyxlQUFlO3VCQUFDLG9CQUFvQjtnQkFXUixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFDUCxZQUFZO3NCQUEvQixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBRdWVyeUxpc3QsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgTGliZXlDb2x1bW5EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbGliZXktY29sdW1uLmRpcmVjdGl2ZSc7XHJcbmludGVyZmFjZSBJRGF0YUtleSB7XHJcbiAga2V5OiBudW1iZXI7XHJcbiAgZGF0YUtleTogbnVtYmVyO1xyXG4gIGNoaWxkVGFibGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBkYXRhOiBhbnlbXVxyXG59XHJcblxyXG5jbGFzcyBEYXRhS2V5IGltcGxlbWVudHMgSURhdGFLZXkge1xyXG4gIGtleTogbnVtYmVyO1xyXG4gIGRhdGFLZXk6IG51bWJlcjtcclxuICBjaGlsZFRhYmxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgZGF0YTogYW55W11cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWJleS1uZy10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9saWJleS1uZy10YWJsZS5jb21wb25lbnQuY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIExpYmV5TmdUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgc2V0IGRhdGEodmFsdWU6IGFueVtdKSB7XHJcbiAgICB0aGlzLl9kYXRhID0gdmFsdWU7XHJcbiAgfVxyXG4gIGdldCBkYXRhKCk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLl9kYXRhO1xyXG4gIH1cclxuICBASW5wdXQoKSBwYWdlU2l6ZTogbnVtYmVyID0gMTA7XHJcbiAgQElucHV0KCkgdG90YWxTaXplOiBudW1iZXIgPSAwO1xyXG4gIEBJbnB1dCgpIG1heFBhZ2VCdXR0b25zOiBudW1iZXIgPSA1O1xyXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGV4cGFuZGFibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSB2aWV3UGFnaW5hdGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGNoaWxkVGFibGVUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgaGVhZGVyZml4ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBjbGFzczogc3RyaW5nO1xyXG4gIEBPdXRwdXQoKSBwYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMaWJleUNvbHVtbkRpcmVjdGl2ZSkgY29sdW1ucyE6IFF1ZXJ5TGlzdDxMaWJleUNvbHVtbkRpcmVjdGl2ZT47XHJcblxyXG4gIHJvd0V4cGFuZGFibGU6IGJvb2xlYW5bXSA9IFtdO1xyXG4gIHJvd0V4cGFuZGFibGVEZXRhaWw6IElEYXRhS2V5W10gPSBbXTtcclxuICBjdXJyZW50UGFnZTogbnVtYmVyID0gMTtcclxuICBwYWdpbmF0ZWREYXRhOiBhbnlbXSA9IFtdO1xyXG4gIHByaXZhdGUgX2RhdGE6IGFueVtdID0gW107XHJcbiAgY29sdW1uV2lkdGhzOiBudW1iZXJbXSA9IFtdO1xyXG4gIHJlc2l6aW5nQ29sdW1uSW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIHN0YXJ0WDogbnVtYmVyID0gMDtcclxuICBzdGFydFdpZHRoOiBudW1iZXIgPSAwO1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlQ29udGFpbmVyJykgdGFibGVDb250YWluZXIhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlJykgdGFibGVFbGVtZW50ITogRWxlbWVudFJlZjtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZVBhZ2luYXRlZERhdGEoKTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5pbml0aWFsaXplQ29sdW1uV2lkdGhzKCk7XHJcbiAgICAvLyB0aGlzLmFkanVzdFRhYmxlV2lkdGgoKVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZUNvbHVtbldpZHRocygpIHtcclxuICAgIHZhciBwYWRkaW5nID0gMzFcclxuICAgIHZhciB3aWR0aERlZmF1bHQgPSAxNTBcclxuICAgIHRoaXMuY29sdW1uV2lkdGhzID0gdGhpcy5jb2x1bW5zLm1hcChjb2x1bW4gPT4gY29sdW1uLndpZHRoKTtcclxuICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gdGhpcy50YWJsZUNvbnRhaW5lci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgY29uc3QgYXV0b0NvbHVtbnMgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGggPT0gbnVsbCk7XHJcbiAgICBjb25zdCB0b3RhbEZpeGVkV2lkdGggPSB0aGlzLmNvbHVtbnMucmVkdWNlKChzdW0sIGNvbHVtbikgPT5cclxuICAgICAgY29sdW1uLndpZHRoICE9IG51bGwgPyAoc3VtICsgdGhpcy5nZXRXaWR0aFZhbHVlKGNvbHVtbi53aWR0aCkpIDogc3VtLCAwKTtcclxuICAgIGNvbnN0IHJlbWFpbmluZ1dpZHRoID0gY29udGFpbmVyV2lkdGggLSAodG90YWxGaXhlZFdpZHRoICsgKCgodGhpcy5jb2x1bW5zLmxlbmd0aCAtIGF1dG9Db2x1bW5zLmxlbmd0aCkgKiBwYWRkaW5nKSsgKHRoaXMuZXhwYW5kYWJsZSA/IDYxIDogMCkpKTtcclxuXHJcbiAgICBpZiAoYXV0b0NvbHVtbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB2YXIgYXV0b0NvbHVtbldpZHRoID0gMDtcclxuICAgICAgaWYocmVtYWluaW5nV2lkdGggPCB3aWR0aERlZmF1bHQpXHJcbiAgICAgICAgYXV0b0NvbHVtbldpZHRoID0gd2lkdGhEZWZhdWx0O1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgYXV0b0NvbHVtbldpZHRoID0gTWF0aC5tYXgoMCwgcmVtYWluaW5nV2lkdGggLyBhdXRvQ29sdW1ucy5sZW5ndGgpO1xyXG4gICAgICBhdXRvQ29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGggPSBhdXRvQ29sdW1uV2lkdGgtIHBhZGRpbmcpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb2x1bW5XaWR0aHMgPSB0aGlzLmNvbHVtbnMubWFwKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGgpO1xyXG4gIH1cclxuICAvLyBhZGp1c3RUYWJsZVdpZHRoKCkge1xyXG4gIC8vICAgY29uc3QgdG90YWxXaWR0aCA9IHRoaXMuY29sdW1ucy5yZWR1Y2UoKHN1bSwgY29sdW1uKSA9PiBzdW0gKyB0aGlzLmdldFdpZHRoVmFsdWUoY29sdW1uLndpZHRoKSwgMCk7XHJcbiAgLy8gICB0aGlzLnRhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLndpZHRoID0gYCR7dG90YWxXaWR0aH1weGA7XHJcbiAgLy8gfVxyXG4gIGdldFdpZHRoVmFsdWUod2lkdGg6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICByZXR1cm4gd2lkdGggPT09IG51bGwgPyAxMDAgOiB3aWR0aDtcclxuICB9XHJcblxyXG4gIGdldCB0b3RhbFBhZ2VzKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gTWF0aC5jZWlsKHRoaXMudG90YWxTaXplIC8gdGhpcy5wYWdlU2l6ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRDZWxsVmFsdWUoaXRlbTogYW55LCBjb2x1bW46IExpYmV5Q29sdW1uRGlyZWN0aXZlKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXROZXN0ZWRWYWx1ZShpdGVtLCBjb2x1bW4ucHJvcGVydHkpO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIGNvbHVtbi5hcnJheU1hcCkge1xyXG4gICAgICByZXR1cm4gdmFsdWUubWFwKHYgPT4gdGhpcy5nZXROZXN0ZWRWYWx1ZSh2LCBjb2x1bW4uYXJyYXlNYXAhKSkuam9pbignLCAnKTtcclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0TmVzdGVkVmFsdWUob2JqOiBhbnksIHBhdGg6IHN0cmluZyk6IGFueSB7XHJcbiAgICByZXR1cm4gcGF0aC5zcGxpdCgnLicpLnJlZHVjZSgobywga2V5KSA9PiB7XHJcbiAgICAgIGlmIChvICYmIHR5cGVvZiBvID09PSAnb2JqZWN0JyAmJiBrZXkgaW4gbykge1xyXG4gICAgICAgIHJldHVybiBvW2tleV07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH0sIG9iaik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRlZERhdGEoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLnBhZ2VTaXplKTtcclxuICAgIGNvbnN0IHN0YXJ0ID0gKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemU7XHJcbiAgICBjb25zdCBlbmQgPSBzdGFydCArIHRoaXMucGFnZVNpemU7XHJcbiAgICB0aGlzLnBhZ2luYXRlZERhdGEgPSB0aGlzLmRhdGEuc2xpY2Uoc3RhcnQsIGVuZCk7XHJcbiAgfVxyXG4gIHBhZ2VSYW5nZSgpOiBudW1iZXJbXSB7XHJcbiAgICBjb25zdCBzdGFydCA9IE1hdGgubWF4KDEsIHRoaXMuY3VycmVudFBhZ2UgLSBNYXRoLmZsb29yKHRoaXMubWF4UGFnZUJ1dHRvbnMgLyAyKSk7XHJcbiAgICBjb25zdCBlbmQgPSBNYXRoLm1pbih0aGlzLnRvdGFsUGFnZXMsIHN0YXJ0ICsgdGhpcy5tYXhQYWdlQnV0dG9ucyAtIDEpO1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogZW5kIC0gc3RhcnQgKyAxfSwgKF8sIGkpID0+IHN0YXJ0ICsgaSk7XHJcbiAgfVxyXG4gIGdvVG9QYWdlKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jdXJyZW50UGFnZSA9IE1hdGgubWF4KDEsIE1hdGgubWluKHBhZ2UsIHRoaXMudG90YWxQYWdlcykpO1xyXG4gICAgdGhpcy51cGRhdGVQYWdpbmF0ZWREYXRhKCk7XHJcbiAgICB0aGlzLnBhZ2VDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRQYWdlKTtcclxuICB9XHJcbiAgLy8gaGFzQ2hpbGRyZW4ocm93OiBhbnkpOiBib29sZWFue1xyXG4gIC8vICAgcmV0dXJuIEFycmF5LmlzQXJyYXkocm93LmNoaWxkKSAmJiByb3cuY2hpbGQubGVuZ3RoID4gMDtcclxuICAvLyB9XHJcbiAgdG9nZ2xlUm93KGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5yb3dFeHBhbmRhYmxlW2luZGV4XSA9ICF0aGlzLnJvd0V4cGFuZGFibGVbaW5kZXhdO1xyXG4gIH1cclxuICB0b2dnbGVSb3dEZXRhaWwoa2V5OiBudW1iZXIsIGluZGV4RGF0YTogbnVtYmVyLCBwcm9wZXJ0eUNoaWxkOiBUZW1wbGF0ZVJlZjxhbnk+KXtcclxuICAgIHZhciBleGlzdCA9IHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maW5kKHggPT4geC5rZXkgPT0ga2V5ICYmIHguZGF0YUtleSA9PSBpbmRleERhdGEpO1xyXG4gICAgdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsID0gdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsLmZpbHRlcih4ID0+IHgua2V5ICE9IGtleSAmJiB4LmRhdGFLZXkgIT0gaW5kZXhEYXRhKTtcclxuICAgIGlmKGV4aXN0ID09IG51bGwpe1xyXG4gICAgICB2YXIgaXRlbSA9IG5ldyBEYXRhS2V5KCk7XHJcbiAgICAgIGl0ZW0ua2V5ID0ga2V5O1xyXG4gICAgICBpdGVtLmRhdGFLZXkgPSBpbmRleERhdGE7XHJcbiAgICAgIGl0ZW0uY2hpbGRUYWJsZVRlbXBsYXRlID0gcHJvcGVydHlDaGlsZDtcclxuICAgICAgLy8gaXRlbS5kYXRhID0gdGhpcy5nZXROZXN0ZWRWYWx1ZShpdGVtLCBwcm9wZXJ0eUNoaWxkKTtcclxuICAgICAgdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsLnB1c2goaXRlbSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMucm93RXhwYW5kYWJsZURldGFpbCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldENoaWxkcmVuKGZpbGE6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBmaWxhLmhpam9zIHx8IFtdO1xyXG4gIH1cclxuICBvblJlc2l6ZVN0YXJ0KGluZGV4OiBudW1iZXIsIGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICB0aGlzLnJlc2l6aW5nQ29sdW1uSW5kZXggPSBpbmRleDtcclxuICAgIHRoaXMuc3RhcnRYID0gZXZlbnQucGFnZVg7XHJcbiAgICB0aGlzLnN0YXJ0V2lkdGggPSB0aGlzLmNvbHVtbldpZHRoc1tpbmRleF07XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uUmVzaXplTW92ZSk7XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5vblJlc2l6ZUVuZCk7XHJcbiAgfVxyXG4gIG9uUmVzaXplTW92ZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xyXG4gICAgaWYgKHRoaXMucmVzaXppbmdDb2x1bW5JbmRleCAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBkaWZmID0gZXZlbnQucGFnZVggLSB0aGlzLnN0YXJ0WDtcclxuICAgICAgdGhpcy5jb2x1bW5XaWR0aHNbdGhpcy5yZXNpemluZ0NvbHVtbkluZGV4XSA9IE1hdGgubWF4KHRoaXMuc3RhcnRXaWR0aCArIGRpZmYsIDUwKTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uUmVzaXplRW5kID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZXNpemluZ0NvbHVtbkluZGV4ID0gbnVsbDtcclxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25SZXNpemVNb3ZlKTtcclxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm9uUmVzaXplRW5kKTtcclxuICB9XHJcbiAgZXhpc3RSb3dFeHBhbmRhYmxlRGV0YWlsKGtleTogbnVtYmVyLCBpbmRleERhdGE6IG51bWJlcikgOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maWx0ZXIoeCA9PiB4LmtleSA9PSBrZXkgJiYgeC5kYXRhS2V5ID09IGluZGV4RGF0YSkubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgdmlld1Jvd0V4cGFuZGFibGVEZXRhaWwoaW5kZXhEYXRhOiBudW1iZXIpIDpib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maWx0ZXIoeCA9PiB4LmRhdGFLZXkgPT0gaW5kZXhEYXRhKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuICBmaW5kUm93RXhwYW5kYWJsZURldGFpbChpbmRleERhdGE6IG51bWJlcikgOlRlbXBsYXRlUmVmPGFueT57XHJcbiAgICB2YXIgZmluZCA9IHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maW5kKHggPT4geC5kYXRhS2V5ID09IGluZGV4RGF0YSk7XHJcbiAgICBpZihmaW5kKVxyXG4gICAgICByZXR1cm4gZmluZC5jaGlsZFRhYmxlVGVtcGxhdGU7IFxyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lclwiICAjdGFibGVDb250YWluZXIgW3N0eWxlLmhlaWdodF09XCJoZWlnaHQgPT0gbnVsbCA/ICdhdXRvJzooaGVpZ2h0ICsgJ3B4JylcIj5cclxuICA8IS0tIDx0YWJsZSBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiPiAtLT5cclxuICA8dGFibGUgI3RhYmxlIFtuZ0NsYXNzXT1cImNsYXNzXCI+XHJcbiAgICA8dGhlYWQ+XHJcbiAgICAgIDx0cj5cclxuICAgICAgICA8dGggKm5nSWY9XCJleHBhbmRhYmxlXCIgW25nQ2xhc3NdPVwiaGVhZGVyZml4ZWQgPT0gdHJ1ZSA/ICd0aC1maXhlZCc6JydcIiBzdHlsZT1cIndpZHRoOiAyNXB4O1wiPjwvdGg+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgIDx0aCBbc3R5bGUud2lkdGhdPVwiY29sdW1uV2lkdGhzW2ldID09IG51bGwgPyAnYXV0byc6KGNvbHVtbldpZHRoc1tpXSArICdweCcpXCIgW25nQ2xhc3NdPVwiaGVhZGVyZml4ZWQgPT0gdHJ1ZSA/ICd0aC1maXhlZCc6JydcIj5cclxuICAgICAgICAgICAge3sgY29sdW1uLmhlYWRlciB9fVxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVzaXplLWhhbmRsZVwiIChtb3VzZWRvd24pPVwib25SZXNpemVTdGFydChpLCAkZXZlbnQpXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC90aGVhZD5cclxuICAgIDx0Ym9keT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBhZ2luYXRlZERhdGEubGVuZ3RoID09IDBcIj5cclxuICAgICAgICA8dHI+XHJcbiAgICAgICAgICA8dGQgW2NvbFNwYW5dPVwiZXhwYW5kYWJsZSA/IChjb2x1bW5zLmxlbmd0aCArIDEpIDogKGNvbHVtbnMubGVuZ3RoKVwiIGNsYXNzPVwidGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgTm8gZXhpc3RlbiBkYXRvcyBkaXNwb25pYmxlc1xyXG4gICAgICAgICAgPC90ZD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBhZ2luYXRlZERhdGEubGVuZ3RoICE9IDBcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBhZ2luYXRlZERhdGE7IGxldCBhID0gaW5kZXhcIj5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRkICpuZ0lmPVwiZXhwYW5kYWJsZVwiPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInRvZ2dsZVJvdyhhKVwiPlxyXG4gICAgICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RXhwYW5kYWJsZVthXSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICA8dGQgW25nQ2xhc3NdPVwiY29sdW1uLmNsYXNzXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLmNlbGxUZW1wbGF0ZTsgZWxzZSBkZWZhdWx0Q2VsbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW4uY2VsbFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbHVtbi5leHBhbmRhYmxlXCIgKGNsaWNrKT1cInRvZ2dsZVJvd0RldGFpbChpLCBhLCBjb2x1bW4uY2hpbGRUYWJsZVRlbXBsYXRlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwiZXhpc3RSb3dFeHBhbmRhYmxlRGV0YWlsKGksIGEpID8gJ2ljb24tYXJyb3ctdXAnOidpY29uLWFycm93LWRvd24nXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q2VsbD5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyBnZXRDZWxsVmFsdWUoaXRlbSwgY29sdW1uKSB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb2x1bW4uZXhwYW5kYWJsZVwiIChjbGljayk9XCJ0b2dnbGVSb3dEZXRhaWwoaSwgYSwgY29sdW1uLmNoaWxkVGFibGVUZW1wbGF0ZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cImV4aXN0Um93RXhwYW5kYWJsZURldGFpbChpLCBhKSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2aWV3Um93RXhwYW5kYWJsZURldGFpbChhKVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZmluZFJvd0V4cGFuZGFibGVEZXRhaWwoYSk7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPHRyICpuZ0lmPVwicm93RXhwYW5kYWJsZVthXVwiPlxyXG4gICAgICAgICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zLmxlbmd0aCArIChleHBhbmRhYmxlID8gMSA6IDApXCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlsZFRhYmxlVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgcGFyZW50Um93OiBpdGVtIH1cIj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC90Ym9keT5cclxuICA8L3RhYmxlPlxyXG48L2Rpdj5cclxuPGRpdiAqbmdJZj1cInZpZXdQYWdpbmF0ZSAmJiBwYWdpbmF0ZWREYXRhLmxlbmd0aCAhPSAwXCIgY2xhc3M9XCJwYWdpbmF0aW9uLWNvbnRyb2xzXCI+XHJcbiAgPGRpdiBjbGFzcz1cImQtYWxpZ24tY2VudGVyXCI+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJsYmwtZm9vdGVyIG1lLTIwcHhcIj4jIFJlZ2lzdHJvczoge3t0aGlzLnRvdGFsU2l6ZX19PC9sYWJlbD5cclxuICAgIDxsYWJlbCBjbGFzcz1cImxibC1mb290ZXJcIj4jIEZpbGFzOiB7e3RoaXMucGFnZVNpemV9fTwvbGFiZWw+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdj5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cImdvVG9QYWdlKDEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAxXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1maXJzdC1wYWdlXCI+PC9pPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJnb1RvUGFnZShjdXJyZW50UGFnZSAtIDEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAxXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1wcmV2aW91cy1wYWdlXCI+PC9pPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwYWdlIG9mIHBhZ2VSYW5nZSgpXCI+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICAoY2xpY2spPVwiZ29Ub1BhZ2UocGFnZSlcIlxyXG4gICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiY3VycmVudFBhZ2UgPT09IHBhZ2VcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gcGFnZVwiPlxyXG4gICAgICAgIHt7IHBhZ2UgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cImdvVG9QYWdlKGN1cnJlbnRQYWdlICsgMSlcIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IHRvdGFsUGFnZXNcIj5cclxuICAgICAgPGkgY2xhc3M9XCJpY29uLW5leHQtcGFnZVwiPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiZ29Ub1BhZ2UodG90YWxQYWdlcylcIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IHRvdGFsUGFnZXNcIj5cclxuICAgICAgPGkgY2xhc3M9XCJpY29uLWxhc3QtcGFnZVwiPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLGVBQWUsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQXlDLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5TixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7O0FBUzNFLE1BQU0sT0FBTztDQU1aO0FBU0QsTUFBTSxPQUFPLHFCQUFxQjtJQWdDaEMsWUFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUF6QmpDLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUUzQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLGlCQUFZLEdBQVksSUFBSSxDQUFDO1FBRTdCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRTdCLHVCQUFrQixHQUFZLElBQUksQ0FBQztRQUNsQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUlsRCxrQkFBYSxHQUFjLEVBQUUsQ0FBQztRQUM5Qix3QkFBbUIsR0FBZSxFQUFFLENBQUM7UUFDckMsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsa0JBQWEsR0FBVSxFQUFFLENBQUM7UUFDMUIsVUFBSyxHQUFVLEVBQUUsQ0FBQztRQUNsQixp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Q0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLENBQUM7UUFDdEUsSUFBRyxJQUFJO1lBQ0wsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7O1lBRS9CLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7O21IQXBMVSxxQkFBcUI7dUdBQXJCLHFCQUFxQix5YUFtQmYsb0JBQW9CLDRQQzVDdkMsK21KQThGQTs0RkRyRWEscUJBQXFCO2tCQVBqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO29CQUM3QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7d0dBR2MsSUFBSTtzQkFBaEIsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTTtnQkFFZ0MsT0FBTztzQkFBN0MsZUFBZTt1QkFBQyxvQkFBb0I7Z0JBV1IsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBQ1AsWUFBWTtzQkFBL0IsU0FBUzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBRdWVyeUxpc3QsIFNpbXBsZUNoYW5nZXMsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IExpYmV5Q29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2xpYmV5LWNvbHVtbi5kaXJlY3RpdmUnO1xyXG5pbnRlcmZhY2UgSURhdGFLZXkge1xyXG4gIGtleTogbnVtYmVyO1xyXG4gIGRhdGFLZXk6IG51bWJlcjtcclxuICBjaGlsZFRhYmxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgZGF0YTogYW55W107XHJcbiAgYXV0b0Nsb3NlOiBib29sZWFuO1xyXG59XHJcblxyXG5jbGFzcyBEYXRhS2V5IGltcGxlbWVudHMgSURhdGFLZXkge1xyXG4gIGtleTogbnVtYmVyO1xyXG4gIGRhdGFLZXk6IG51bWJlcjtcclxuICBjaGlsZFRhYmxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgZGF0YTogYW55W107XHJcbiAgYXV0b0Nsb3NlOiBib29sZWFuO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYmV5LW5nLXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGliZXktbmctdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudC5jc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgTGliZXlOZ1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpIHNldCBkYXRhKHZhbHVlOiBhbnlbXSkge1xyXG4gICAgdGhpcy5fZGF0YSA9IHZhbHVlO1xyXG4gIH1cclxuICBnZXQgZGF0YSgpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcclxuICB9XHJcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDEwO1xyXG4gIEBJbnB1dCgpIHRvdGFsU2l6ZTogbnVtYmVyID0gMDtcclxuICBASW5wdXQoKSBtYXhQYWdlQnV0dG9uczogbnVtYmVyID0gNTtcclxuICBASW5wdXQoKSBoZWlnaHQ6IG51bWJlcjtcclxuICBASW5wdXQoKSBleHBhbmRhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdmlld1BhZ2luYXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjaGlsZFRhYmxlVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBJbnB1dCgpIGhlYWRlcmZpeGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY2xhc3M6IHN0cmluZztcclxuICBASW5wdXQoKSBpbnRlcm5hbFBhZ2luYXRpb246IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBPdXRwdXQoKSBwYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgXHJcbiAgQENvbnRlbnRDaGlsZHJlbihMaWJleUNvbHVtbkRpcmVjdGl2ZSkgY29sdW1ucyE6IFF1ZXJ5TGlzdDxMaWJleUNvbHVtbkRpcmVjdGl2ZT47XHJcblxyXG4gIHJvd0V4cGFuZGFibGU6IGJvb2xlYW5bXSA9IFtdO1xyXG4gIHJvd0V4cGFuZGFibGVEZXRhaWw6IElEYXRhS2V5W10gPSBbXTtcclxuICBjdXJyZW50UGFnZTogbnVtYmVyID0gMTtcclxuICBwYWdpbmF0ZWREYXRhOiBhbnlbXSA9IFtdO1xyXG4gIF9kYXRhOiBhbnlbXSA9IFtdO1xyXG4gIGNvbHVtbldpZHRoczogbnVtYmVyW10gPSBbXTtcclxuICByZXNpemluZ0NvbHVtbkluZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuICBzdGFydFg6IG51bWJlciA9IDA7XHJcbiAgc3RhcnRXaWR0aDogbnVtYmVyID0gMDtcclxuICBAVmlld0NoaWxkKCd0YWJsZUNvbnRhaW5lcicpIHRhYmxlQ29udGFpbmVyITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCd0YWJsZScpIHRhYmxlRWxlbWVudCE6IEVsZW1lbnRSZWY7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmKGNoYW5nZXMuZGF0YS5wcmV2aW91c1ZhbHVlKXtcclxuICAgICAgY2hhbmdlcy5kYXRhLmN1cnJlbnRWYWx1ZS5mb3JFYWNoKCh2YWx1ZSwgaW5kZXgpID0+IHtcclxuICAgICAgICB2YXIgZmluZERhdGEgPSB0aGlzLnJvd0V4cGFuZGFibGVEZXRhaWwuZmluZCh4ID0+IHguZGF0YUtleSA9PSBpbmRleCk7XHJcbiAgICAgICAgaWYoZmluZERhdGEgIT0gbnVsbClcclxuICAgICAgICAgIGZpbmREYXRhLmF1dG9DbG9zZSA9IHZhbHVlLmF1dG9DbG9zZTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuX2RhdGEgPSBjaGFuZ2VzLmRhdGEuY3VycmVudFZhbHVlO1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhZ2luYXRlZERhdGEoKTtcclxuICAgIH1cclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwZGF0ZVBhZ2luYXRlZERhdGEoKTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5pbml0aWFsaXplQ29sdW1uV2lkdGhzKCk7XHJcbiAgICAvLyB0aGlzLmFkanVzdFRhYmxlV2lkdGgoKVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZUNvbHVtbldpZHRocygpIHtcclxuICAgIHZhciBwYWRkaW5nID0gMzFcclxuICAgIHZhciB3aWR0aERlZmF1bHQgPSAxNTBcclxuICAgIHRoaXMuY29sdW1uV2lkdGhzID0gdGhpcy5jb2x1bW5zLm1hcChjb2x1bW4gPT4gY29sdW1uLndpZHRoKTtcclxuICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gdGhpcy50YWJsZUNvbnRhaW5lci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgY29uc3QgYXV0b0NvbHVtbnMgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGggPT0gbnVsbCk7XHJcbiAgICBjb25zdCB0b3RhbEZpeGVkV2lkdGggPSB0aGlzLmNvbHVtbnMucmVkdWNlKChzdW0sIGNvbHVtbikgPT5cclxuICAgICAgY29sdW1uLndpZHRoICE9IG51bGwgPyAoc3VtICsgdGhpcy5nZXRXaWR0aFZhbHVlKGNvbHVtbi53aWR0aCkpIDogc3VtLCAwKTtcclxuICAgIGNvbnN0IHJlbWFpbmluZ1dpZHRoID0gY29udGFpbmVyV2lkdGggLSAodG90YWxGaXhlZFdpZHRoICsgKCgodGhpcy5jb2x1bW5zLmxlbmd0aCAtIGF1dG9Db2x1bW5zLmxlbmd0aCkgKiBwYWRkaW5nKSsgKHRoaXMuZXhwYW5kYWJsZSA/IDYxIDogMCkpKTtcclxuXHJcbiAgICBpZiAoYXV0b0NvbHVtbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB2YXIgYXV0b0NvbHVtbldpZHRoID0gMDtcclxuICAgICAgaWYocmVtYWluaW5nV2lkdGggPCB3aWR0aERlZmF1bHQpXHJcbiAgICAgICAgYXV0b0NvbHVtbldpZHRoID0gd2lkdGhEZWZhdWx0O1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgYXV0b0NvbHVtbldpZHRoID0gTWF0aC5tYXgoMCwgcmVtYWluaW5nV2lkdGggLyBhdXRvQ29sdW1ucy5sZW5ndGgpO1xyXG4gICAgICBhdXRvQ29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGggPSBhdXRvQ29sdW1uV2lkdGgtIHBhZGRpbmcpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb2x1bW5XaWR0aHMgPSB0aGlzLmNvbHVtbnMubWFwKGNvbHVtbiA9PiBjb2x1bW4ud2lkdGgpO1xyXG4gIH1cclxuICAvLyBhZGp1c3RUYWJsZVdpZHRoKCkge1xyXG4gIC8vICAgY29uc3QgdG90YWxXaWR0aCA9IHRoaXMuY29sdW1ucy5yZWR1Y2UoKHN1bSwgY29sdW1uKSA9PiBzdW0gKyB0aGlzLmdldFdpZHRoVmFsdWUoY29sdW1uLndpZHRoKSwgMCk7XHJcbiAgLy8gICB0aGlzLnRhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLndpZHRoID0gYCR7dG90YWxXaWR0aH1weGA7XHJcbiAgLy8gfVxyXG4gIGdldFdpZHRoVmFsdWUod2lkdGg6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICByZXR1cm4gd2lkdGggPT09IG51bGwgPyAxMDAgOiB3aWR0aDtcclxuICB9XHJcblxyXG4gIGdldCB0b3RhbFBhZ2VzKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gTWF0aC5jZWlsKHRoaXMudG90YWxTaXplIC8gdGhpcy5wYWdlU2l6ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRDZWxsVmFsdWUoaXRlbTogYW55LCBjb2x1bW46IExpYmV5Q29sdW1uRGlyZWN0aXZlKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXROZXN0ZWRWYWx1ZShpdGVtLCBjb2x1bW4ucHJvcGVydHkpO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIGNvbHVtbi5hcnJheU1hcCkge1xyXG4gICAgICByZXR1cm4gdmFsdWUubWFwKHYgPT4gdGhpcy5nZXROZXN0ZWRWYWx1ZSh2LCBjb2x1bW4uYXJyYXlNYXAhKSkuam9pbignLCAnKTtcclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0TmVzdGVkVmFsdWUob2JqOiBhbnksIHBhdGg6IHN0cmluZyk6IGFueSB7XHJcbiAgICByZXR1cm4gcGF0aC5zcGxpdCgnLicpLnJlZHVjZSgobywga2V5KSA9PiB7XHJcbiAgICAgIGlmIChvICYmIHR5cGVvZiBvID09PSAnb2JqZWN0JyAmJiBrZXkgaW4gbykge1xyXG4gICAgICAgIHJldHVybiBvW2tleV07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH0sIG9iaik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRlZERhdGEoKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLnZpZXdQYWdpbmF0ZSAmJiB0aGlzLmludGVybmFsUGFnaW5hdGlvbil7XHJcbiAgICAgIGNvbnN0IHN0YXJ0ID0gKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemU7XHJcbiAgICAgIGNvbnN0IGVuZCA9IHN0YXJ0ICsgdGhpcy5wYWdlU2l6ZTtcclxuICAgICAgdGhpcy5wYWdpbmF0ZWREYXRhID0gdGhpcy5kYXRhLnNsaWNlKHN0YXJ0LCBlbmQpO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMucGFnaW5hdGVkRGF0YSA9IHRoaXMuZGF0YTtcclxuICAgIH0gICAgXHJcbiAgfVxyXG4gIHBhZ2VSYW5nZSgpOiBudW1iZXJbXSB7XHJcbiAgICBjb25zdCBzdGFydCA9IE1hdGgubWF4KDEsIHRoaXMuY3VycmVudFBhZ2UgLSBNYXRoLmZsb29yKHRoaXMubWF4UGFnZUJ1dHRvbnMgLyAyKSk7XHJcbiAgICBjb25zdCBlbmQgPSBNYXRoLm1pbih0aGlzLnRvdGFsUGFnZXMsIHN0YXJ0ICsgdGhpcy5tYXhQYWdlQnV0dG9ucyAtIDEpO1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogZW5kIC0gc3RhcnQgKyAxfSwgKF8sIGkpID0+IHN0YXJ0ICsgaSk7XHJcbiAgfVxyXG4gIGdvVG9QYWdlKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jdXJyZW50UGFnZSA9IE1hdGgubWF4KDEsIE1hdGgubWluKHBhZ2UsIHRoaXMudG90YWxQYWdlcykpO1xyXG4gICAgaWYodGhpcy5pbnRlcm5hbFBhZ2luYXRpb24peyAgICAgIFxyXG4gICAgICB0aGlzLnVwZGF0ZVBhZ2luYXRlZERhdGEoKTsgICAgICBcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnBhZ2VDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRQYWdlKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gaGFzQ2hpbGRyZW4ocm93OiBhbnkpOiBib29sZWFue1xyXG4gIC8vICAgcmV0dXJuIEFycmF5LmlzQXJyYXkocm93LmNoaWxkKSAmJiByb3cuY2hpbGQubGVuZ3RoID4gMDtcclxuICAvLyB9XHJcbiAgdG9nZ2xlUm93KGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5yb3dFeHBhbmRhYmxlW2luZGV4XSA9ICF0aGlzLnJvd0V4cGFuZGFibGVbaW5kZXhdO1xyXG4gIH1cclxuICB0b2dnbGVSb3dEZXRhaWwoa2V5OiBudW1iZXIsIGluZGV4RGF0YTogbnVtYmVyLCBjb2x1bW46IExpYmV5Q29sdW1uRGlyZWN0aXZlLCBkYXRhOiBhbnkpe1xyXG4gICAgaWYoY29sdW1uLmV4cGFuZGFibGUpe1xyXG4gICAgICB2YXIgZXhpc3QgPSB0aGlzLnJvd0V4cGFuZGFibGVEZXRhaWwuZmluZCh4ID0+IHgua2V5ID09IGtleSAmJiB4LmRhdGFLZXkgPT0gaW5kZXhEYXRhKTtcclxuICAgICAgaWYoZXhpc3QgPT0gbnVsbCl7XHJcbiAgICAgICAgdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsID0gdGhpcy5yb3dFeHBhbmRhYmxlRGV0YWlsLmZpbHRlcih4ID0+ICh4LmtleSAhPSBrZXkgfHwgeC5kYXRhS2V5ICE9IGluZGV4RGF0YSkgJiYgeC5hdXRvQ2xvc2UgPT0gZmFsc2UpO1xyXG4gICAgICAgIHZhciBpdGVtID0gbmV3IERhdGFLZXkoKTtcclxuICAgICAgICBpdGVtLmtleSA9IGtleTtcclxuICAgICAgICBpdGVtLmRhdGFLZXkgPSBpbmRleERhdGE7XHJcbiAgICAgICAgaXRlbS5jaGlsZFRhYmxlVGVtcGxhdGUgPSBjb2x1bW4uY2hpbGRUYWJsZVRlbXBsYXRlO1xyXG4gICAgICAgIGl0ZW0uYXV0b0Nsb3NlID0gY29sdW1uLmlzQXV0b0Nsb3NlKGRhdGEpO1xyXG4gICAgICAgIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5wdXNoKGl0ZW0pO1xyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLnJvd0V4cGFuZGFibGVEZXRhaWwgPSB0aGlzLnJvd0V4cGFuZGFibGVEZXRhaWwuZmlsdGVyKHggPT4geC5rZXkgIT0ga2V5IHx8IHguZGF0YUtleSAhPSBpbmRleERhdGEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldENoaWxkcmVuKGZpbGE6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBmaWxhLmhpam9zIHx8IFtdO1xyXG4gIH1cclxuICBvblJlc2l6ZVN0YXJ0KGluZGV4OiBudW1iZXIsIGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICB0aGlzLnJlc2l6aW5nQ29sdW1uSW5kZXggPSBpbmRleDtcclxuICAgIHRoaXMuc3RhcnRYID0gZXZlbnQucGFnZVg7XHJcbiAgICB0aGlzLnN0YXJ0V2lkdGggPSB0aGlzLmNvbHVtbldpZHRoc1tpbmRleF07XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uUmVzaXplTW92ZSk7XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5vblJlc2l6ZUVuZCk7XHJcbiAgfVxyXG4gIG9uUmVzaXplTW92ZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xyXG4gICAgaWYgKHRoaXMucmVzaXppbmdDb2x1bW5JbmRleCAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBkaWZmID0gZXZlbnQucGFnZVggLSB0aGlzLnN0YXJ0WDtcclxuICAgICAgdGhpcy5jb2x1bW5XaWR0aHNbdGhpcy5yZXNpemluZ0NvbHVtbkluZGV4XSA9IE1hdGgubWF4KHRoaXMuc3RhcnRXaWR0aCArIGRpZmYsIDUwKTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uUmVzaXplRW5kID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZXNpemluZ0NvbHVtbkluZGV4ID0gbnVsbDtcclxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25SZXNpemVNb3ZlKTtcclxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm9uUmVzaXplRW5kKTtcclxuICB9XHJcbiAgZXhpc3RSb3dFeHBhbmRhYmxlRGV0YWlsKGtleTogbnVtYmVyLCBpbmRleERhdGE6IG51bWJlcikgOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maWx0ZXIoeCA9PiB4LmtleSA9PSBrZXkgJiYgeC5kYXRhS2V5ID09IGluZGV4RGF0YSkubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgdmlld1Jvd0V4cGFuZGFibGVEZXRhaWwoaW5kZXhEYXRhOiBudW1iZXIpIDpib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maWx0ZXIoeCA9PiB4LmRhdGFLZXkgPT0gaW5kZXhEYXRhKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuICBmaW5kUm93RXhwYW5kYWJsZURldGFpbChpbmRleERhdGE6IG51bWJlcikgOlRlbXBsYXRlUmVmPGFueT57XHJcbiAgICB2YXIgZmluZCA9IHRoaXMucm93RXhwYW5kYWJsZURldGFpbC5maW5kKHggPT4geC5kYXRhS2V5ID09IGluZGV4RGF0YSk7XHJcbiAgICBpZihmaW5kKVxyXG4gICAgICByZXR1cm4gZmluZC5jaGlsZFRhYmxlVGVtcGxhdGU7IFxyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lclwiICAjdGFibGVDb250YWluZXIgW3N0eWxlLmhlaWdodF09XCJoZWlnaHQgPT0gbnVsbCA/ICdhdXRvJzooaGVpZ2h0ICsgJ3B4JylcIj5cclxuICA8IS0tIDx0YWJsZSBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiPiAtLT5cclxuICA8dGFibGUgI3RhYmxlIFtuZ0NsYXNzXT1cImNsYXNzXCI+XHJcbiAgICA8dGhlYWQ+XHJcbiAgICAgIDx0cj5cclxuICAgICAgICA8dGggKm5nSWY9XCJleHBhbmRhYmxlXCIgW25nQ2xhc3NdPVwiaGVhZGVyZml4ZWQgPT0gdHJ1ZSA/ICd0aC1maXhlZCc6JydcIiBzdHlsZT1cIndpZHRoOiAyNXB4O1wiPjwvdGg+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgIDx0aCBbc3R5bGUud2lkdGhdPVwiY29sdW1uV2lkdGhzW2ldID09IG51bGwgPyAnYXV0byc6KGNvbHVtbldpZHRoc1tpXSArICdweCcpXCIgW25nQ2xhc3NdPVwiaGVhZGVyZml4ZWQgPT0gdHJ1ZSA/ICd0aC1maXhlZCc6JydcIj5cclxuICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPnt7IGNvbHVtbi5oZWFkZXIgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyZXNpemUtaGFuZGxlXCIgKG1vdXNlZG93bik9XCJvblJlc2l6ZVN0YXJ0KGksICRldmVudClcIj48L2Rpdj5cclxuICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvdHI+XHJcbiAgICA8L3RoZWFkPlxyXG4gICAgPHRib2R5PlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2RhdGEubGVuZ3RoID09IDBcIj5cclxuICAgICAgICA8dHI+XHJcbiAgICAgICAgICA8dGQgW2NvbFNwYW5dPVwiZXhwYW5kYWJsZSA/IChjb2x1bW5zLmxlbmd0aCArIDEpIDogKGNvbHVtbnMubGVuZ3RoKVwiIGNsYXNzPVwidGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgTm8gZXhpc3RlbiBkYXRvcyBkaXNwb25pYmxlc1xyXG4gICAgICAgICAgPC90ZD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBhZ2luYXRlZERhdGEubGVuZ3RoICE9IDBcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBhZ2luYXRlZERhdGE7IGxldCBhID0gaW5kZXhcIj5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRkICpuZ0lmPVwiZXhwYW5kYWJsZVwiPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInRvZ2dsZVJvdyhhKVwiPlxyXG4gICAgICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RXhwYW5kYWJsZVthXSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICA8dGQgW25nQ2xhc3NdPVwiY29sdW1uLmNsYXNzXCIgKGNsaWNrKT1cInRvZ2dsZVJvd0RldGFpbChpLCBhLCBjb2x1bW4sIGl0ZW0pXCIgW2NsYXNzXT1cImNvbHVtbi5leHBhbmRhYmxlID8gJ2N1cnNvci1wb2ludGVyJzogJydcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4uY2VsbFRlbXBsYXRlOyBlbHNlIGRlZmF1bHRDZWxsXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IHdoaXRlLXNwYWNlOiBub3dyYXA7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbi5jZWxsVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29sdW1uLmV4cGFuZGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cImV4aXN0Um93RXhwYW5kYWJsZURldGFpbChpLCBhKSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENlbGw+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IHdoaXRlLXNwYWNlOiBub3dyYXA7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgZ2V0Q2VsbFZhbHVlKGl0ZW0sIGNvbHVtbikgfX1cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiY29sdW1uLmV4cGFuZGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cImV4aXN0Um93RXhwYW5kYWJsZURldGFpbChpLCBhKSA/ICdpY29uLWFycm93LXVwJzonaWNvbi1hcnJvdy1kb3duJ1wiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2aWV3Um93RXhwYW5kYWJsZURldGFpbChhKVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZmluZFJvd0V4cGFuZGFibGVEZXRhaWwoYSk7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPHRyICpuZ0lmPVwicm93RXhwYW5kYWJsZVthXVwiPlxyXG4gICAgICAgICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zLmxlbmd0aCArIChleHBhbmRhYmxlID8gMSA6IDApXCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlsZFRhYmxlVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgcGFyZW50Um93OiBpdGVtIH1cIj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC90Ym9keT5cclxuICA8L3RhYmxlPlxyXG48L2Rpdj5cclxuPGRpdiAqbmdJZj1cInZpZXdQYWdpbmF0ZSAmJiBfZGF0YS5sZW5ndGggIT0gMFwiIGNsYXNzPVwicGFnaW5hdGlvbi1jb250cm9sc1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWFsaWduLWNlbnRlclwiPlxyXG4gICAgPGxhYmVsIGNsYXNzPVwibGJsLWZvb3RlciBtZS0yMHB4XCI+IyBSZWdpc3Ryb3M6IHt7dGhpcy50b3RhbFNpemV9fTwvbGFiZWw+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJsYmwtZm9vdGVyXCI+IyBGaWxhczoge3t0aGlzLnBhZ2VTaXplfX08L2xhYmVsPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXY+XHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJnb1RvUGFnZSgxKVwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gMVwiPlxyXG4gICAgICA8aSBjbGFzcz1cImljb24tZmlyc3QtcGFnZVwiPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiZ29Ub1BhZ2UoY3VycmVudFBhZ2UgLSAxKVwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gMVwiPlxyXG4gICAgICA8aSBjbGFzcz1cImljb24tcHJldmlvdXMtcGFnZVwiPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlUmFuZ2UoKVwiPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgKGNsaWNrKT1cImdvVG9QYWdlKHBhZ2UpXCJcclxuICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImN1cnJlbnRQYWdlID09PSBwYWdlXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IHBhZ2VcIj5cclxuICAgICAgICB7eyBwYWdlIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJnb1RvUGFnZShjdXJyZW50UGFnZSArIDEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSB0b3RhbFBhZ2VzXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1uZXh0LXBhZ2VcIj48L2k+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cImdvVG9QYWdlKHRvdGFsUGFnZXMpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSB0b3RhbFBhZ2VzXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1sYXN0LXBhZ2VcIj48L2k+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -41,9 +41,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
41
41
|
}], ctorParameters: function () { return []; } });
|
|
42
42
|
|
|
43
43
|
class LibeyColumnDirective {
|
|
44
|
+
constructor() {
|
|
45
|
+
this.isAutoClose = () => true;
|
|
46
|
+
}
|
|
44
47
|
}
|
|
45
48
|
LibeyColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
46
|
-
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 });
|
|
49
|
+
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", isAutoClose: "isAutoClose" }, queries: [{ propertyName: "cellTemplate", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 });
|
|
47
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, decorators: [{
|
|
48
51
|
type: Directive,
|
|
49
52
|
args: [{
|
|
@@ -65,6 +68,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
65
68
|
type: Input
|
|
66
69
|
}], childTableTemplate: [{
|
|
67
70
|
type: Input
|
|
71
|
+
}], isAutoClose: [{
|
|
72
|
+
type: Input
|
|
68
73
|
}], cellTemplate: [{
|
|
69
74
|
type: ContentChild,
|
|
70
75
|
args: [TemplateRef]
|
|
@@ -81,6 +86,7 @@ class LibeyNgTableComponent {
|
|
|
81
86
|
this.expandable = false;
|
|
82
87
|
this.viewPaginate = true;
|
|
83
88
|
this.headerfixed = false;
|
|
89
|
+
this.internalPagination = true;
|
|
84
90
|
this.pageChange = new EventEmitter();
|
|
85
91
|
this.rowExpandable = [];
|
|
86
92
|
this.rowExpandableDetail = [];
|
|
@@ -109,6 +115,17 @@ class LibeyNgTableComponent {
|
|
|
109
115
|
get data() {
|
|
110
116
|
return this._data;
|
|
111
117
|
}
|
|
118
|
+
ngOnChanges(changes) {
|
|
119
|
+
if (changes.data.previousValue) {
|
|
120
|
+
changes.data.currentValue.forEach((value, index) => {
|
|
121
|
+
var findData = this.rowExpandableDetail.find(x => x.dataKey == index);
|
|
122
|
+
if (findData != null)
|
|
123
|
+
findData.autoClose = value.autoClose;
|
|
124
|
+
});
|
|
125
|
+
this._data = changes.data.currentValue;
|
|
126
|
+
this.updatePaginatedData();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
112
129
|
ngOnInit() {
|
|
113
130
|
this.updatePaginatedData();
|
|
114
131
|
}
|
|
@@ -161,10 +178,14 @@ class LibeyNgTableComponent {
|
|
|
161
178
|
}, obj);
|
|
162
179
|
}
|
|
163
180
|
updatePaginatedData() {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
181
|
+
if (this.viewPaginate && this.internalPagination) {
|
|
182
|
+
const start = (this.currentPage - 1) * this.pageSize;
|
|
183
|
+
const end = start + this.pageSize;
|
|
184
|
+
this.paginatedData = this.data.slice(start, end);
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
this.paginatedData = this.data;
|
|
188
|
+
}
|
|
168
189
|
}
|
|
169
190
|
pageRange() {
|
|
170
191
|
const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));
|
|
@@ -173,8 +194,12 @@ class LibeyNgTableComponent {
|
|
|
173
194
|
}
|
|
174
195
|
goToPage(page) {
|
|
175
196
|
this.currentPage = Math.max(1, Math.min(page, this.totalPages));
|
|
176
|
-
this.
|
|
177
|
-
|
|
197
|
+
if (this.internalPagination) {
|
|
198
|
+
this.updatePaginatedData();
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
this.pageChange.emit(this.currentPage);
|
|
202
|
+
}
|
|
178
203
|
}
|
|
179
204
|
// hasChildren(row: any): boolean{
|
|
180
205
|
// return Array.isArray(row.child) && row.child.length > 0;
|
|
@@ -182,17 +207,21 @@ class LibeyNgTableComponent {
|
|
|
182
207
|
toggleRow(index) {
|
|
183
208
|
this.rowExpandable[index] = !this.rowExpandable[index];
|
|
184
209
|
}
|
|
185
|
-
toggleRowDetail(key, indexData,
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
210
|
+
toggleRowDetail(key, indexData, column, data) {
|
|
211
|
+
if (column.expandable) {
|
|
212
|
+
var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);
|
|
213
|
+
if (exist == null) {
|
|
214
|
+
this.rowExpandableDetail = this.rowExpandableDetail.filter(x => (x.key != key || x.dataKey != indexData) && x.autoClose == false);
|
|
215
|
+
var item = new DataKey();
|
|
216
|
+
item.key = key;
|
|
217
|
+
item.dataKey = indexData;
|
|
218
|
+
item.childTableTemplate = column.childTableTemplate;
|
|
219
|
+
item.autoClose = column.isAutoClose(data);
|
|
220
|
+
this.rowExpandableDetail.push(item);
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key || x.dataKey != indexData);
|
|
224
|
+
}
|
|
196
225
|
}
|
|
197
226
|
}
|
|
198
227
|
getChildren(fila) {
|
|
@@ -220,7 +249,7 @@ class LibeyNgTableComponent {
|
|
|
220
249
|
}
|
|
221
250
|
}
|
|
222
251
|
LibeyNgTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
223
|
-
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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 });
|
|
252
|
+
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", internalPagination: "internalPagination" }, 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 }], usesOnChanges: 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 <span style=\"white-space: nowrap;\">{{ column.header }}</span>\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=\"_data.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\" (click)=\"toggleRowDetail(i, a, column, item)\" [class]=\"column.expandable ? 'cursor-pointer': ''\">\r\n <ng-container *ngIf=\"column.cellTemplate; else defaultCell\">\r\n <div style=\"display: flex; justify-content: space-between; white-space: nowrap;\">\r\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: item }\"></ng-container>\r\n <button *ngIf=\"column.expandable\">\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; white-space: nowrap;\">\r\n {{ getCellValue(item, column) }}\r\n <button *ngIf=\"column.expandable\">\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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 && _data.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}.cursor-pointer{cursor:pointer}\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 });
|
|
224
253
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgTableComponent, decorators: [{
|
|
225
254
|
type: Component,
|
|
226
255
|
args: [{
|
|
@@ -249,6 +278,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
249
278
|
type: Input
|
|
250
279
|
}], class: [{
|
|
251
280
|
type: Input
|
|
281
|
+
}], internalPagination: [{
|
|
282
|
+
type: Input
|
|
252
283
|
}], pageChange: [{
|
|
253
284
|
type: Output
|
|
254
285
|
}], columns: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libey-ng-component-library.js","sources":["../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.service.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.component.ts","../../../projects/libey-ng-component-library/src/lib/table/directives/libey-column.directive.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.html","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.module.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.module.ts","../../../projects/libey-ng-component-library/src/public-api.ts","../../../projects/libey-ng-component-library/src/libey-ng-component-library.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LibeyNgComponentLibraryService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-libey-ngComponent-library',\n template: `\n <p>\n libey-ng-component-library works!\n </p>\n `,\n styles: [\n ]\n})\nexport class LibeyNgComponentLibraryComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'libey-ng-column'\r\n})\r\nexport class LibeyColumnDirective {\r\n @Input() header!: string;\r\n @Input() property!: string;\r\n @Input() width!: number;\r\n @Input() arrayMap?: string;\r\n @Input() isArray?: boolean;\r\n @Input() expandable?: boolean;\r\n @Input() class?: string;\r\n @Input() childTableTemplate: TemplateRef<any>;\r\n @ContentChild(TemplateRef) cellTemplate!: TemplateRef<any>;\r\n}","import { AfterViewInit, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, Input, OnInit, Output, QueryList, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\ninterface IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[]\r\n}\r\n\r\nclass DataKey implements IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[]\r\n}\r\n\r\n@Component({\r\n selector: 'libey-ng-table',\r\n templateUrl: './libey-ng-table.component.html',\r\n styleUrls: ['./libey-ng-table.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class LibeyNgTableComponent implements OnInit, AfterViewInit {\r\n @Input() set data(value: any[]) {\r\n this._data = value;\r\n }\r\n get data(): any[] {\r\n return this._data;\r\n }\r\n @Input() pageSize: number = 10;\r\n @Input() totalSize: number = 0;\r\n @Input() maxPageButtons: number = 5;\r\n @Input() height: number;\r\n @Input() expandable: boolean = false;\r\n @Input() viewPaginate: boolean = true;\r\n @Input() childTableTemplate!: TemplateRef<any>;\r\n @Input() headerfixed: boolean = false;\r\n @Input() class: string;\r\n @Output() pageChange = new EventEmitter<number>();\r\n \r\n @ContentChildren(LibeyColumnDirective) columns!: QueryList<LibeyColumnDirective>;\r\n\r\n rowExpandable: boolean[] = [];\r\n rowExpandableDetail: IDataKey[] = [];\r\n currentPage: number = 1;\r\n paginatedData: any[] = [];\r\n private _data: any[] = [];\r\n columnWidths: number[] = [];\r\n resizingColumnIndex: number | null = null;\r\n startX: number = 0;\r\n startWidth: number = 0;\r\n @ViewChild('tableContainer') tableContainer!: ElementRef;\r\n @ViewChild('table') tableElement!: ElementRef;\r\n constructor(private cdr: ChangeDetectorRef) {}\r\n ngOnInit(): void {\r\n this.updatePaginatedData();\r\n }\r\n ngAfterViewInit() {\r\n this.initializeColumnWidths();\r\n // this.adjustTableWidth()\r\n this.cdr.detectChanges();\r\n }\r\n\r\n initializeColumnWidths() {\r\n var padding = 31\r\n var widthDefault = 150\r\n this.columnWidths = this.columns.map(column => column.width);\r\n const containerWidth = this.tableContainer.nativeElement.offsetWidth;\r\n const autoColumns = this.columns.filter(column => column.width == null);\r\n const totalFixedWidth = this.columns.reduce((sum, column) =>\r\n column.width != null ? (sum + this.getWidthValue(column.width)) : sum, 0);\r\n const remainingWidth = containerWidth - (totalFixedWidth + (((this.columns.length - autoColumns.length) * padding)+ (this.expandable ? 61 : 0)));\r\n\r\n if (autoColumns.length > 0) {\r\n var autoColumnWidth = 0;\r\n if(remainingWidth < widthDefault)\r\n autoColumnWidth = widthDefault;\r\n else\r\n autoColumnWidth = Math.max(0, remainingWidth / autoColumns.length);\r\n autoColumns.forEach(column => column.width = autoColumnWidth- padding);\r\n }\r\n this.columnWidths = this.columns.map(column => column.width);\r\n }\r\n // adjustTableWidth() {\r\n // const totalWidth = this.columns.reduce((sum, column) => sum + this.getWidthValue(column.width), 0);\r\n // this.tableElement.nativeElement.style.width = `${totalWidth}px`;\r\n // }\r\n getWidthValue(width: number): number {\r\n return width === null ? 100 : width;\r\n }\r\n\r\n get totalPages(): number {\r\n return Math.ceil(this.totalSize / this.pageSize);\r\n }\r\n\r\n getCellValue(item: any, column: LibeyColumnDirective): string {\r\n const value = this.getNestedValue(item, column.property);\r\n if (Array.isArray(value) && column.arrayMap) {\r\n return value.map(v => this.getNestedValue(v, column.arrayMap!)).join(', ');\r\n }\r\n return value;\r\n }\r\n\r\n private getNestedValue(obj: any, path: string): any {\r\n return path.split('.').reduce((o, key) => {\r\n if (o && typeof o === 'object' && key in o) {\r\n return o[key];\r\n }\r\n return undefined;\r\n }, obj);\r\n }\r\n\r\n private updatePaginatedData(): void {\r\n console.log(this.pageSize);\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n this.paginatedData = this.data.slice(start, end);\r\n }\r\n pageRange(): number[] {\r\n const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));\r\n const end = Math.min(this.totalPages, start + this.maxPageButtons - 1);\r\n return Array.from({length: end - start + 1}, (_, i) => start + i);\r\n }\r\n goToPage(page: number): void {\r\n this.currentPage = Math.max(1, Math.min(page, this.totalPages));\r\n this.updatePaginatedData();\r\n this.pageChange.emit(this.currentPage);\r\n }\r\n // hasChildren(row: any): boolean{\r\n // return Array.isArray(row.child) && row.child.length > 0;\r\n // }\r\n toggleRow(index: number){\r\n this.rowExpandable[index] = !this.rowExpandable[index];\r\n }\r\n toggleRowDetail(key: number, indexData: number, propertyChild: TemplateRef<any>){\r\n var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);\r\n this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key && x.dataKey != indexData);\r\n if(exist == null){\r\n var item = new DataKey();\r\n item.key = key;\r\n item.dataKey = indexData;\r\n item.childTableTemplate = propertyChild;\r\n // item.data = this.getNestedValue(item, propertyChild);\r\n this.rowExpandableDetail.push(item);\r\n console.log(this.rowExpandableDetail);\r\n }\r\n }\r\n getChildren(fila: any): any[] {\r\n return fila.hijos || [];\r\n }\r\n onResizeStart(index: number, event: MouseEvent) {\r\n this.resizingColumnIndex = index;\r\n this.startX = event.pageX;\r\n this.startWidth = this.columnWidths[index];\r\n document.addEventListener('mousemove', this.onResizeMove);\r\n document.addEventListener('mouseup', this.onResizeEnd);\r\n }\r\n onResizeMove = (event: MouseEvent) => {\r\n if (this.resizingColumnIndex !== null) {\r\n const diff = event.pageX - this.startX;\r\n this.columnWidths[this.resizingColumnIndex] = Math.max(this.startWidth + diff, 50);\r\n\r\n }\r\n }\r\n onResizeEnd = () => {\r\n this.resizingColumnIndex = null;\r\n document.removeEventListener('mousemove', this.onResizeMove);\r\n document.removeEventListener('mouseup', this.onResizeEnd);\r\n }\r\n existRowExpandableDetail(key: number, indexData: number) : boolean{\r\n return this.rowExpandableDetail.filter(x => x.key == key && x.dataKey == indexData).length > 0;\r\n }\r\n viewRowExpandableDetail(indexData: number) :boolean{\r\n return this.rowExpandableDetail.filter(x => x.dataKey == indexData).length > 0;\r\n }\r\n findRowExpandableDetail(indexData: number) :TemplateRef<any>{\r\n var find = this.rowExpandableDetail.find(x => x.dataKey == indexData);\r\n if(find)\r\n return find.childTableTemplate; \r\n else\r\n return null;\r\n }\r\n}\r\n","<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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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","// table.module.ts\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LibeyNgTableComponent } from './libey-ng-table.component';\r\n\r\n@NgModule({\r\n declarations: [LibeyNgTableComponent, LibeyColumnDirective],\r\n imports: [CommonModule,FormsModule],\r\n exports: [LibeyNgTableComponent, LibeyColumnDirective]\r\n})\r\nexport class LibeyNgTableModule { }","import { NgModule } from '@angular/core';\nimport { LibeyNgComponentLibraryComponent } from './libey-ng-component-library.component';\nimport { LibeyNgTableComponent } from './table/libey-ng-table.component';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { LibeyNgTableModule } from './table/libey-ng-table.module';\n\n\n\n@NgModule({\n declarations: [\n ],\n imports: [\n CommonModule,\n FormsModule,\n LibeyNgTableModule\n ],\n exports: [LibeyNgTableModule],\n providers: [DatePipe]\n})\nexport class LibeyNgComponentLibraryModule { }\n","/*\n * Public API Surface of libey-ng-component-library\n */\n\nexport * from './lib/libey-ng-component-library.service';\nexport * from './lib/libey-ng-component-library.component';\nexport * from './lib/libey-ng-component-library.module';\nexport * from './lib/table/libey-ng-table.module';\nexport * from './lib/table/libey-ng-table.component';\nexport * from './lib/table/directives/libey-column.directive';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAKa,8BAA8B,CAAA;AAEzC,IAAA,WAAA,GAAA,GAAiB;;4HAFN,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,8BAA8B,cAF7B,MAAM,EAAA,CAAA,CAAA;4FAEP,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAH1C,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCQY,gCAAgC,CAAA;AAE3C,IAAA,WAAA,GAAA,GAAiB;IAEjB,QAAQ,GAAA;KACP;;8HALU,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhC,gCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gCAAgC,EARjC,QAAA,EAAA,+BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;4FAIU,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAV5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,+BAA+B;AACzC,oBAAA,QAAQ,EAAE,CAAA;;;;AAIT,EAAA,CAAA;AACD,oBAAA,MAAM,EAAE,EACP;AACF,iBAAA,CAAA;;;MCNY,oBAAoB,CAAA;;kHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,mSASjB,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FATd,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;8BAEU,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACqB,YAAY,EAAA,CAAA;sBAAtC,YAAY;uBAAC,WAAW,CAAA;;;ACJ3B,MAAM,OAAO,CAAA;AAKZ,CAAA;MASY,qBAAqB,CAAA;AA+BhC,IAAA,WAAA,CAAoB,GAAsB,EAAA;QAAtB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QAxBjC,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QACtB,IAAS,CAAA,SAAA,GAAW,CAAC,CAAC;QACtB,IAAc,CAAA,cAAA,GAAW,CAAC,CAAC;QAE3B,IAAU,CAAA,UAAA,GAAY,KAAK,CAAC;QAC5B,IAAY,CAAA,YAAA,GAAY,IAAI,CAAC;QAE7B,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;AAE5B,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAU,CAAC;QAIlD,IAAa,CAAA,aAAA,GAAc,EAAE,CAAC;QAC9B,IAAmB,CAAA,mBAAA,GAAe,EAAE,CAAC;QACrC,IAAW,CAAA,WAAA,GAAW,CAAC,CAAC;QACxB,IAAa,CAAA,aAAA,GAAU,EAAE,CAAC;QAClB,IAAK,CAAA,KAAA,GAAU,EAAE,CAAC;QAC1B,IAAY,CAAA,YAAA,GAAa,EAAE,CAAC;QAC5B,IAAmB,CAAA,mBAAA,GAAkB,IAAI,CAAC;QAC1C,IAAM,CAAA,MAAA,GAAW,CAAC,CAAC;QACnB,IAAU,CAAA,UAAA,GAAW,CAAC,CAAC;AA2GvB,QAAA,IAAA,CAAA,YAAY,GAAG,CAAC,KAAiB,KAAI;AACnC,YAAA,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,EAAE;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;gBACvC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;AAEpF,aAAA;AACH,SAAC,CAAA;QACD,IAAW,CAAA,WAAA,GAAG,MAAK;AACjB,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7D,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAC5D,SAAC,CAAA;KAnH6C;IA9B9C,IAAa,IAAI,CAAC,KAAY,EAAA;AAC5B,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;AACD,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IA0BD,QAAQ,GAAA;QACN,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IACD,eAAe,GAAA;QACb,IAAI,CAAC,sBAAsB,EAAE,CAAC;;AAE9B,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,sBAAsB,GAAA;QACpB,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,IAAI,YAAY,GAAG,GAAG,CAAA;AACtB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,WAAW,CAAC;AACrE,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;AACxE,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,KACtD,MAAM,CAAC,KAAK,IAAI,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;AAC5E,QAAA,MAAM,cAAc,GAAG,cAAc,IAAI,eAAe,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,OAAO,KAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjJ,QAAA,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,IAAI,eAAe,GAAG,CAAC,CAAC;YACxB,IAAG,cAAc,GAAG,YAAY;gBAC9B,eAAe,GAAG,YAAY,CAAC;;AAE/B,gBAAA,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AACrE,YAAA,WAAW,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,GAAG,eAAe,GAAE,OAAO,CAAC,CAAC;AACxE,SAAA;AACD,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;KAC9D;;;;;AAKD,IAAA,aAAa,CAAC,KAAa,EAAA;QACzB,OAAO,KAAK,KAAK,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC;KACrC;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;KAClD;IAED,YAAY,CAAC,IAAS,EAAE,MAA4B,EAAA;AAClD,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE;YAC3C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,QAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5E,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACd;IAEO,cAAc,CAAC,GAAQ,EAAE,IAAY,EAAA;AAC3C,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,KAAI;YACvC,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,GAAG,IAAI,CAAC,EAAE;AAC1C,gBAAA,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;AACf,aAAA;AACD,YAAA,OAAO,SAAS,CAAC;SAClB,EAAE,GAAG,CAAC,CAAC;KACT;IAEO,mBAAmB,GAAA;AACzB,QAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC3B,QAAA,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;AACrD,QAAA,MAAM,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;KAClD;IACD,SAAS,GAAA;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;AAClF,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QACvE,OAAO,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,GAAG,GAAG,KAAK,GAAG,CAAC,EAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;KACnE;AACD,IAAA,QAAQ,CAAC,IAAY,EAAA;QACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACxC;;;;AAID,IAAA,SAAS,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;KACxD;AACD,IAAA,eAAe,CAAC,GAAW,EAAE,SAAiB,EAAE,aAA+B,EAAA;QAC7E,IAAI,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;QACvF,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;QACxG,IAAG,KAAK,IAAI,IAAI,EAAC;AACf,YAAA,IAAI,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;AACzB,YAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACf,YAAA,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;AACzB,YAAA,IAAI,CAAC,kBAAkB,GAAG,aAAa,CAAC;;AAExC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpC,YAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AACvC,SAAA;KACF;AACD,IAAA,WAAW,CAAC,IAAS,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;KACzB;IACD,aAAa,CAAC,KAAa,EAAE,KAAiB,EAAA;AAC5C,QAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;AACjC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC3C,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1D,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;KACxD;IAaD,wBAAwB,CAAC,GAAW,EAAE,SAAiB,EAAA;QACrD,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;KAChG;AACD,IAAA,uBAAuB,CAAC,SAAiB,EAAA;QACvC,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;KAChF;AACD,IAAA,uBAAuB,CAAC,SAAiB,EAAA;AACvC,QAAA,IAAI,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;AACtE,QAAA,IAAG,IAAI;YACL,OAAO,IAAI,CAAC,kBAAkB,CAAC;;AAE/B,YAAA,OAAO,IAAI,CAAC;KACf;;mHA/JU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAArB,qBAAqB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAkBf,oBAAoB,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1CvC,8jJA8FA,EAAA,MAAA,EAAA,CAAA,88RAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4FDtEa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAPjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,WAAW,EAAE,iCAAiC;oBAC9C,SAAS,EAAE,CAAC,gCAAgC,CAAC;oBAC7C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACtC,iBAAA,CAAA;wGAGc,IAAI,EAAA,CAAA;sBAAhB,KAAK;gBAMG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACI,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBAEgC,OAAO,EAAA,CAAA;sBAA7C,eAAe;uBAAC,oBAAoB,CAAA;gBAWR,cAAc,EAAA,CAAA;sBAA1C,SAAS;uBAAC,gBAAgB,CAAA;gBACP,YAAY,EAAA,CAAA;sBAA/B,SAAS;uBAAC,OAAO,CAAA;;;AEtDpB;MAYa,kBAAkB,CAAA;;gHAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;iHAAlB,kBAAkB,EAAA,YAAA,EAAA,CAJd,qBAAqB,EAAE,oBAAoB,CAAA,EAAA,OAAA,EAAA,CAChD,YAAY,EAAC,WAAW,CAAA,EAAA,OAAA,EAAA,CACxB,qBAAqB,EAAE,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAE1C,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAHpB,OAAA,EAAA,CAAA,CAAC,YAAY,EAAC,WAAW,CAAC,CAAA,EAAA,CAAA,CAAA;4FAGxB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,qBAAqB,EAAE,oBAAoB,CAAC;AAC3D,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAC,WAAW,CAAC;AACnC,oBAAA,OAAO,EAAE,CAAC,qBAAqB,EAAE,oBAAoB,CAAC;AACvD,iBAAA,CAAA;;;MCSY,6BAA6B,CAAA;;2HAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,YAPtC,YAAY;QACZ,WAAW;AACX,QAAA,kBAAkB,aAEV,kBAAkB,CAAA,EAAA,CAAA,CAAA;AAGjB,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,EAF7B,SAAA,EAAA,CAAC,QAAQ,CAAC,EANZ,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,WAAW;YACX,kBAAkB;AACnB,SAAA,EACS,kBAAkB,CAAA,EAAA,CAAA,CAAA;4FAGjB,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAXzC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EACb;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,kBAAkB;AACnB,qBAAA;oBACD,OAAO,EAAE,CAAC,kBAAkB,CAAC;oBAC7B,SAAS,EAAE,CAAC,QAAQ,CAAC;AACtB,iBAAA,CAAA;;;ACnBD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"libey-ng-component-library.js","sources":["../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.service.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.component.ts","../../../projects/libey-ng-component-library/src/lib/table/directives/libey-column.directive.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.ts","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.component.html","../../../projects/libey-ng-component-library/src/lib/table/libey-ng-table.module.ts","../../../projects/libey-ng-component-library/src/lib/libey-ng-component-library.module.ts","../../../projects/libey-ng-component-library/src/public-api.ts","../../../projects/libey-ng-component-library/src/libey-ng-component-library.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LibeyNgComponentLibraryService {\n\n constructor() { }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-libey-ngComponent-library',\n template: `\n <p>\n libey-ng-component-library works!\n </p>\n `,\n styles: [\n ]\n})\nexport class LibeyNgComponentLibraryComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: 'libey-ng-column'\r\n})\r\nexport class LibeyColumnDirective {\r\n @Input() header!: string;\r\n @Input() property!: string;\r\n @Input() width!: number;\r\n @Input() arrayMap?: string;\r\n @Input() isArray?: boolean;\r\n @Input() expandable?: boolean;\r\n @Input() class?: string;\r\n @Input() childTableTemplate: TemplateRef<any>;\r\n @Input() isAutoClose: (item: any) => boolean = () => true;\r\n @ContentChild(TemplateRef) cellTemplate!: TemplateRef<any>;\r\n}","import { AfterViewInit, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, Input, OnChanges, OnInit, Output, QueryList, SimpleChanges, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\ninterface IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[];\r\n autoClose: boolean;\r\n}\r\n\r\nclass DataKey implements IDataKey {\r\n key: number;\r\n dataKey: number;\r\n childTableTemplate: TemplateRef<any>;\r\n data: any[];\r\n autoClose: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'libey-ng-table',\r\n templateUrl: './libey-ng-table.component.html',\r\n styleUrls: ['./libey-ng-table.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class LibeyNgTableComponent implements OnInit, AfterViewInit, OnChanges {\r\n @Input() set data(value: any[]) {\r\n this._data = value;\r\n }\r\n get data(): any[] {\r\n return this._data;\r\n }\r\n @Input() pageSize: number = 10;\r\n @Input() totalSize: number = 0;\r\n @Input() maxPageButtons: number = 5;\r\n @Input() height: number;\r\n @Input() expandable: boolean = false;\r\n @Input() viewPaginate: boolean = true;\r\n @Input() childTableTemplate!: TemplateRef<any>;\r\n @Input() headerfixed: boolean = false;\r\n @Input() class: string;\r\n @Input() internalPagination: boolean = true;\r\n @Output() pageChange = new EventEmitter<number>();\r\n \r\n @ContentChildren(LibeyColumnDirective) columns!: QueryList<LibeyColumnDirective>;\r\n\r\n rowExpandable: boolean[] = [];\r\n rowExpandableDetail: IDataKey[] = [];\r\n currentPage: number = 1;\r\n paginatedData: any[] = [];\r\n _data: any[] = [];\r\n columnWidths: number[] = [];\r\n resizingColumnIndex: number | null = null;\r\n startX: number = 0;\r\n startWidth: number = 0;\r\n @ViewChild('tableContainer') tableContainer!: ElementRef;\r\n @ViewChild('table') tableElement!: ElementRef;\r\n constructor(private cdr: ChangeDetectorRef) {}\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.data.previousValue){\r\n changes.data.currentValue.forEach((value, index) => {\r\n var findData = this.rowExpandableDetail.find(x => x.dataKey == index);\r\n if(findData != null)\r\n findData.autoClose = value.autoClose;\r\n });\r\n this._data = changes.data.currentValue;\r\n this.updatePaginatedData();\r\n }\r\n }\r\n ngOnInit(): void {\r\n this.updatePaginatedData();\r\n }\r\n ngAfterViewInit() {\r\n this.initializeColumnWidths();\r\n // this.adjustTableWidth()\r\n this.cdr.detectChanges();\r\n }\r\n\r\n initializeColumnWidths() {\r\n var padding = 31\r\n var widthDefault = 150\r\n this.columnWidths = this.columns.map(column => column.width);\r\n const containerWidth = this.tableContainer.nativeElement.offsetWidth;\r\n const autoColumns = this.columns.filter(column => column.width == null);\r\n const totalFixedWidth = this.columns.reduce((sum, column) =>\r\n column.width != null ? (sum + this.getWidthValue(column.width)) : sum, 0);\r\n const remainingWidth = containerWidth - (totalFixedWidth + (((this.columns.length - autoColumns.length) * padding)+ (this.expandable ? 61 : 0)));\r\n\r\n if (autoColumns.length > 0) {\r\n var autoColumnWidth = 0;\r\n if(remainingWidth < widthDefault)\r\n autoColumnWidth = widthDefault;\r\n else\r\n autoColumnWidth = Math.max(0, remainingWidth / autoColumns.length);\r\n autoColumns.forEach(column => column.width = autoColumnWidth- padding);\r\n }\r\n this.columnWidths = this.columns.map(column => column.width);\r\n }\r\n // adjustTableWidth() {\r\n // const totalWidth = this.columns.reduce((sum, column) => sum + this.getWidthValue(column.width), 0);\r\n // this.tableElement.nativeElement.style.width = `${totalWidth}px`;\r\n // }\r\n getWidthValue(width: number): number {\r\n return width === null ? 100 : width;\r\n }\r\n\r\n get totalPages(): number {\r\n return Math.ceil(this.totalSize / this.pageSize);\r\n }\r\n\r\n getCellValue(item: any, column: LibeyColumnDirective): string {\r\n const value = this.getNestedValue(item, column.property);\r\n if (Array.isArray(value) && column.arrayMap) {\r\n return value.map(v => this.getNestedValue(v, column.arrayMap!)).join(', ');\r\n }\r\n return value;\r\n }\r\n\r\n private getNestedValue(obj: any, path: string): any {\r\n return path.split('.').reduce((o, key) => {\r\n if (o && typeof o === 'object' && key in o) {\r\n return o[key];\r\n }\r\n return undefined;\r\n }, obj);\r\n }\r\n\r\n private updatePaginatedData(): void {\r\n if(this.viewPaginate && this.internalPagination){\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n this.paginatedData = this.data.slice(start, end);\r\n }else{\r\n this.paginatedData = this.data;\r\n } \r\n }\r\n pageRange(): number[] {\r\n const start = Math.max(1, this.currentPage - Math.floor(this.maxPageButtons / 2));\r\n const end = Math.min(this.totalPages, start + this.maxPageButtons - 1);\r\n return Array.from({length: end - start + 1}, (_, i) => start + i);\r\n }\r\n goToPage(page: number): void {\r\n this.currentPage = Math.max(1, Math.min(page, this.totalPages));\r\n if(this.internalPagination){ \r\n this.updatePaginatedData(); \r\n }else{\r\n this.pageChange.emit(this.currentPage);\r\n }\r\n }\r\n // hasChildren(row: any): boolean{\r\n // return Array.isArray(row.child) && row.child.length > 0;\r\n // }\r\n toggleRow(index: number){\r\n this.rowExpandable[index] = !this.rowExpandable[index];\r\n }\r\n toggleRowDetail(key: number, indexData: number, column: LibeyColumnDirective, data: any){\r\n if(column.expandable){\r\n var exist = this.rowExpandableDetail.find(x => x.key == key && x.dataKey == indexData);\r\n if(exist == null){\r\n this.rowExpandableDetail = this.rowExpandableDetail.filter(x => (x.key != key || x.dataKey != indexData) && x.autoClose == false);\r\n var item = new DataKey();\r\n item.key = key;\r\n item.dataKey = indexData;\r\n item.childTableTemplate = column.childTableTemplate;\r\n item.autoClose = column.isAutoClose(data);\r\n this.rowExpandableDetail.push(item);\r\n }else{\r\n this.rowExpandableDetail = this.rowExpandableDetail.filter(x => x.key != key || x.dataKey != indexData);\r\n }\r\n }\r\n }\r\n getChildren(fila: any): any[] {\r\n return fila.hijos || [];\r\n }\r\n onResizeStart(index: number, event: MouseEvent) {\r\n this.resizingColumnIndex = index;\r\n this.startX = event.pageX;\r\n this.startWidth = this.columnWidths[index];\r\n document.addEventListener('mousemove', this.onResizeMove);\r\n document.addEventListener('mouseup', this.onResizeEnd);\r\n }\r\n onResizeMove = (event: MouseEvent) => {\r\n if (this.resizingColumnIndex !== null) {\r\n const diff = event.pageX - this.startX;\r\n this.columnWidths[this.resizingColumnIndex] = Math.max(this.startWidth + diff, 50);\r\n\r\n }\r\n }\r\n onResizeEnd = () => {\r\n this.resizingColumnIndex = null;\r\n document.removeEventListener('mousemove', this.onResizeMove);\r\n document.removeEventListener('mouseup', this.onResizeEnd);\r\n }\r\n existRowExpandableDetail(key: number, indexData: number) : boolean{\r\n return this.rowExpandableDetail.filter(x => x.key == key && x.dataKey == indexData).length > 0;\r\n }\r\n viewRowExpandableDetail(indexData: number) :boolean{\r\n return this.rowExpandableDetail.filter(x => x.dataKey == indexData).length > 0;\r\n }\r\n findRowExpandableDetail(indexData: number) :TemplateRef<any>{\r\n var find = this.rowExpandableDetail.find(x => x.dataKey == indexData);\r\n if(find)\r\n return find.childTableTemplate; \r\n else\r\n return null;\r\n }\r\n}\r\n","<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 <span style=\"white-space: nowrap;\">{{ column.header }}</span>\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=\"_data.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\" (click)=\"toggleRowDetail(i, a, column, item)\" [class]=\"column.expandable ? 'cursor-pointer': ''\">\r\n <ng-container *ngIf=\"column.cellTemplate; else defaultCell\">\r\n <div style=\"display: flex; justify-content: space-between; white-space: nowrap;\">\r\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: item }\"></ng-container>\r\n <button *ngIf=\"column.expandable\">\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; white-space: nowrap;\">\r\n {{ getCellValue(item, column) }}\r\n <button *ngIf=\"column.expandable\">\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 <ng-container *ngIf=\"viewRowExpandableDetail(a)\">\r\n <ng-container *ngTemplateOutlet=\"findRowExpandableDetail(a); context: { $implicit: item }\"></ng-container>\r\n </ng-container>\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 && _data.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","// table.module.ts\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LibeyColumnDirective } from './directives/libey-column.directive';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LibeyNgTableComponent } from './libey-ng-table.component';\r\n\r\n@NgModule({\r\n declarations: [LibeyNgTableComponent, LibeyColumnDirective],\r\n imports: [CommonModule,FormsModule],\r\n exports: [LibeyNgTableComponent, LibeyColumnDirective]\r\n})\r\nexport class LibeyNgTableModule { }","import { NgModule } from '@angular/core';\nimport { LibeyNgComponentLibraryComponent } from './libey-ng-component-library.component';\nimport { LibeyNgTableComponent } from './table/libey-ng-table.component';\nimport { CommonModule, DatePipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { LibeyNgTableModule } from './table/libey-ng-table.module';\n\n\n\n@NgModule({\n declarations: [\n ],\n imports: [\n CommonModule,\n FormsModule,\n LibeyNgTableModule\n ],\n exports: [LibeyNgTableModule],\n providers: [DatePipe]\n})\nexport class LibeyNgComponentLibraryModule { }\n","/*\n * Public API Surface of libey-ng-component-library\n */\n\nexport * from './lib/libey-ng-component-library.service';\nexport * from './lib/libey-ng-component-library.component';\nexport * from './lib/libey-ng-component-library.module';\nexport * from './lib/table/libey-ng-table.module';\nexport * from './lib/table/libey-ng-table.component';\nexport * from './lib/table/directives/libey-column.directive';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,8 @@ export declare class LibeyColumnDirective {
|
|
|
9
9
|
expandable?: boolean;
|
|
10
10
|
class?: string;
|
|
11
11
|
childTableTemplate: TemplateRef<any>;
|
|
12
|
+
isAutoClose: (item: any) => boolean;
|
|
12
13
|
cellTemplate: TemplateRef<any>;
|
|
13
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<LibeyColumnDirective, never>;
|
|
14
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<LibeyColumnDirective, "libey-ng-column", never, { "header": "header"; "property": "property"; "width": "width"; "arrayMap": "arrayMap"; "isArray": "isArray"; "expandable": "expandable"; "class": "class"; "childTableTemplate": "childTableTemplate"; }, {}, ["cellTemplate"]>;
|
|
15
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<LibeyColumnDirective, "libey-ng-column", never, { "header": "header"; "property": "property"; "width": "width"; "arrayMap": "arrayMap"; "isArray": "isArray"; "expandable": "expandable"; "class": "class"; "childTableTemplate": "childTableTemplate"; "isAutoClose": "isAutoClose"; }, {}, ["cellTemplate"]>;
|
|
15
16
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnInit, QueryList, TemplateRef } from '@angular/core';
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnInit, QueryList, SimpleChanges, TemplateRef } from '@angular/core';
|
|
2
2
|
import { LibeyColumnDirective } from './directives/libey-column.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
interface IDataKey {
|
|
@@ -6,8 +6,9 @@ interface IDataKey {
|
|
|
6
6
|
dataKey: number;
|
|
7
7
|
childTableTemplate: TemplateRef<any>;
|
|
8
8
|
data: any[];
|
|
9
|
+
autoClose: boolean;
|
|
9
10
|
}
|
|
10
|
-
export declare class LibeyNgTableComponent implements OnInit, AfterViewInit {
|
|
11
|
+
export declare class LibeyNgTableComponent implements OnInit, AfterViewInit, OnChanges {
|
|
11
12
|
private cdr;
|
|
12
13
|
set data(value: any[]);
|
|
13
14
|
get data(): any[];
|
|
@@ -20,13 +21,14 @@ export declare class LibeyNgTableComponent implements OnInit, AfterViewInit {
|
|
|
20
21
|
childTableTemplate: TemplateRef<any>;
|
|
21
22
|
headerfixed: boolean;
|
|
22
23
|
class: string;
|
|
24
|
+
internalPagination: boolean;
|
|
23
25
|
pageChange: EventEmitter<number>;
|
|
24
26
|
columns: QueryList<LibeyColumnDirective>;
|
|
25
27
|
rowExpandable: boolean[];
|
|
26
28
|
rowExpandableDetail: IDataKey[];
|
|
27
29
|
currentPage: number;
|
|
28
30
|
paginatedData: any[];
|
|
29
|
-
|
|
31
|
+
_data: any[];
|
|
30
32
|
columnWidths: number[];
|
|
31
33
|
resizingColumnIndex: number | null;
|
|
32
34
|
startX: number;
|
|
@@ -34,6 +36,7 @@ export declare class LibeyNgTableComponent implements OnInit, AfterViewInit {
|
|
|
34
36
|
tableContainer: ElementRef;
|
|
35
37
|
tableElement: ElementRef;
|
|
36
38
|
constructor(cdr: ChangeDetectorRef);
|
|
39
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
37
40
|
ngOnInit(): void;
|
|
38
41
|
ngAfterViewInit(): void;
|
|
39
42
|
initializeColumnWidths(): void;
|
|
@@ -45,7 +48,7 @@ export declare class LibeyNgTableComponent implements OnInit, AfterViewInit {
|
|
|
45
48
|
pageRange(): number[];
|
|
46
49
|
goToPage(page: number): void;
|
|
47
50
|
toggleRow(index: number): void;
|
|
48
|
-
toggleRowDetail(key: number, indexData: number,
|
|
51
|
+
toggleRowDetail(key: number, indexData: number, column: LibeyColumnDirective, data: any): void;
|
|
49
52
|
getChildren(fila: any): any[];
|
|
50
53
|
onResizeStart(index: number, event: MouseEvent): void;
|
|
51
54
|
onResizeMove: (event: MouseEvent) => void;
|
|
@@ -54,6 +57,6 @@ export declare class LibeyNgTableComponent implements OnInit, AfterViewInit {
|
|
|
54
57
|
viewRowExpandableDetail(indexData: number): boolean;
|
|
55
58
|
findRowExpandableDetail(indexData: number): TemplateRef<any>;
|
|
56
59
|
static ɵfac: i0.ɵɵFactoryDeclaration<LibeyNgTableComponent, never>;
|
|
57
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<LibeyNgTableComponent, "libey-ng-table", never, { "data": "data"; "pageSize": "pageSize"; "totalSize": "totalSize"; "maxPageButtons": "maxPageButtons"; "height": "height"; "expandable": "expandable"; "viewPaginate": "viewPaginate"; "childTableTemplate": "childTableTemplate"; "headerfixed": "headerfixed"; "class": "class"; }, { "pageChange": "pageChange"; }, ["columns"], never>;
|
|
60
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LibeyNgTableComponent, "libey-ng-table", never, { "data": "data"; "pageSize": "pageSize"; "totalSize": "totalSize"; "maxPageButtons": "maxPageButtons"; "height": "height"; "expandable": "expandable"; "viewPaginate": "viewPaginate"; "childTableTemplate": "childTableTemplate"; "headerfixed": "headerfixed"; "class": "class"; "internalPagination": "internalPagination"; }, { "pageChange": "pageChange"; }, ["columns"], never>;
|
|
58
61
|
}
|
|
59
62
|
export {};
|
package/package.json
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libey-ng-component-library",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "Librería Libey para los componentes estandarizados en angular",
|
|
3
|
+
"version": "0.0.9",
|
|
5
4
|
"peerDependencies": {
|
|
6
5
|
"@angular/common": "^12.2.0",
|
|
7
6
|
"@angular/core": "^12.2.0",
|
|
@@ -17,4 +16,4 @@
|
|
|
17
16
|
"fesm2015": "fesm2015/libey-ng-component-library.js",
|
|
18
17
|
"typings": "libey-ng-component-library.d.ts",
|
|
19
18
|
"sideEffects": false
|
|
20
|
-
}
|
|
19
|
+
}
|