angular-9-datatable
Version:
DataTable component for Angular 9 framework
43 lines • 5.38 kB
JavaScript
import { __decorate, __metadata, __param } from "tslib";
import { Component, Input, Optional } from "@angular/core";
import { DataTable, PageEvent } from "./data-table.directive";
let Paginator = class Paginator {
constructor(injectMfTable) {
this.injectMfTable = injectMfTable;
this.dataLength = 0;
this.onPageChangeSubscriber = (event) => {
this.activePage = event.activePage;
this.rowsOnPage = event.rowsOnPage;
this.dataLength = event.dataLength;
this.lastPage = Math.ceil(this.dataLength / this.rowsOnPage);
};
}
ngOnChanges(changes) {
this.mfTable = this.inputMfTable || this.injectMfTable;
this.onPageChangeSubscriber(this.mfTable.getPage());
this.mfTable.onPageChange.subscribe(this.onPageChangeSubscriber);
}
setPage(pageNumber) {
this.mfTable.setPage(pageNumber, this.rowsOnPage);
}
setRowsOnPage(rowsOnPage) {
this.mfTable.setPage(this.activePage, rowsOnPage);
}
};
Paginator.ctorParameters = () => [
{ type: DataTable, decorators: [{ type: Optional }] }
];
__decorate([
Input("mfTable"),
__metadata("design:type", DataTable)
], Paginator.prototype, "inputMfTable", void 0);
Paginator = __decorate([
Component({
selector: "mfPaginator",
template: `<ng-content></ng-content>`
}),
__param(0, Optional()),
__metadata("design:paramtypes", [DataTable])
], Paginator);
export { Paginator };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItOS1kYXRhdGFibGUvIiwic291cmNlcyI6WyJsaWIvcGFnaW5hdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTJCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBTTlELElBQWEsU0FBUyxHQUF0QixNQUFhLFNBQVM7SUFXbEIsWUFBdUMsYUFBd0I7UUFBeEIsa0JBQWEsR0FBYixhQUFhLENBQVc7UUFIeEQsZUFBVSxHQUFXLENBQUMsQ0FBQztRQW9CdEIsMkJBQXNCLEdBQUcsQ0FBQyxLQUFnQixFQUFFLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztZQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQztJQXJCRixDQUFDO0lBRU0sV0FBVyxDQUFDLE9BQXdDO1FBQ3ZELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3ZELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTSxPQUFPLENBQUMsVUFBa0I7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sYUFBYSxDQUFDLFVBQWtCO1FBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQVFKLENBQUE7O1lBdkJ5RCxTQUFTLHVCQUEzQyxRQUFROztBQVRWO0lBQWpCLEtBQUssQ0FBQyxTQUFTLENBQUM7OEJBQWUsU0FBUzsrQ0FBQztBQUZqQyxTQUFTO0lBSnJCLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFFBQVEsRUFBRSwyQkFBMkI7S0FDeEMsQ0FBQztJQVlzQixXQUFBLFFBQVEsRUFBRSxDQUFBO3FDQUF3QixTQUFTO0dBWHRELFNBQVMsQ0FrQ3JCO1NBbENZLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBTaW1wbGVDaGFuZ2UsIE9uQ2hhbmdlcywgT3B0aW9uYWwgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEYXRhVGFibGUsIFBhZ2VFdmVudCB9IGZyb20gXCIuL2RhdGEtdGFibGUuZGlyZWN0aXZlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcIm1mUGFnaW5hdG9yXCIsXHJcbiAgICB0ZW1wbGF0ZTogYDxuZy1jb250ZW50PjwvbmctY29udGVudD5gXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdpbmF0b3IgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICAgIEBJbnB1dChcIm1mVGFibGVcIikgaW5wdXRNZlRhYmxlOiBEYXRhVGFibGU7XHJcblxyXG4gICAgcHJpdmF0ZSBtZlRhYmxlOiBEYXRhVGFibGU7XHJcblxyXG4gICAgcHVibGljIGFjdGl2ZVBhZ2U6IG51bWJlcjtcclxuICAgIHB1YmxpYyByb3dzT25QYWdlOiBudW1iZXI7XHJcbiAgICBwdWJsaWMgZGF0YUxlbmd0aDogbnVtYmVyID0gMDtcclxuICAgIHB1YmxpYyBsYXN0UGFnZTogbnVtYmVyO1xyXG5cclxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcml2YXRlIGluamVjdE1mVGFibGU6IERhdGFUYWJsZSkge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiB7IFtrZXk6IHN0cmluZ106IFNpbXBsZUNoYW5nZSB9KTogYW55IHtcclxuICAgICAgICB0aGlzLm1mVGFibGUgPSB0aGlzLmlucHV0TWZUYWJsZSB8fCB0aGlzLmluamVjdE1mVGFibGU7XHJcbiAgICAgICAgdGhpcy5vblBhZ2VDaGFuZ2VTdWJzY3JpYmVyKHRoaXMubWZUYWJsZS5nZXRQYWdlKCkpO1xyXG4gICAgICAgIHRoaXMubWZUYWJsZS5vblBhZ2VDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMub25QYWdlQ2hhbmdlU3Vic2NyaWJlcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldFBhZ2UocGFnZU51bWJlcjogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5tZlRhYmxlLnNldFBhZ2UocGFnZU51bWJlciwgdGhpcy5yb3dzT25QYWdlKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0Um93c09uUGFnZShyb3dzT25QYWdlOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1mVGFibGUuc2V0UGFnZSh0aGlzLmFjdGl2ZVBhZ2UsIHJvd3NPblBhZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgb25QYWdlQ2hhbmdlU3Vic2NyaWJlciA9IChldmVudDogUGFnZUV2ZW50KSA9PiB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVQYWdlID0gZXZlbnQuYWN0aXZlUGFnZTtcclxuICAgICAgICB0aGlzLnJvd3NPblBhZ2UgPSBldmVudC5yb3dzT25QYWdlO1xyXG4gICAgICAgIHRoaXMuZGF0YUxlbmd0aCA9IGV2ZW50LmRhdGFMZW5ndGg7XHJcbiAgICAgICAgdGhpcy5sYXN0UGFnZSA9IE1hdGguY2VpbCh0aGlzLmRhdGFMZW5ndGggLyB0aGlzLnJvd3NPblBhZ2UpO1xyXG4gICAgfTtcclxufSJdfQ==