import { LightningElement, api ,track} from 'lwc';
|
|
export default class Paginator extends LightningElement {
|
@api previousButtonDisabled;
|
@api nextButtonDisabled;
|
@api recordStart;
|
@api recordEnd;
|
@api totalRecords;
|
@api pageSizeOptions;
|
@track pageOptionsList = [];
|
@api defaultPageSize;
|
|
connectedCallback(){
|
// this.defaultPageSize = 200;
|
for(var i = 0; i < this.pageSizeOptions.length; i++){
|
var iselect = false;
|
if(this.defaultPageSize != null && this.pageSizeOptions[i] == this.defaultPageSize){
|
iselect = true;
|
}
|
this.pageOptionsList.push({value : this.pageSizeOptions[i], select : iselect});
|
}
|
}
|
|
handlePrevious() {
|
this.dispatchEvent(new CustomEvent('previous'));
|
}
|
|
handleNext() {
|
this.dispatchEvent(new CustomEvent('next'));
|
}
|
|
handleFirst() {
|
this.dispatchEvent(new CustomEvent('first'));
|
}
|
|
handleLast() {
|
this.dispatchEvent(new CustomEvent('last'));
|
}
|
|
handleRecordsPerPage(event){
|
let perpages = event.target.value;
|
let pageschangeEvent = new CustomEvent("pageschange",{detail:perpages});
|
this.dispatchEvent(pageschangeEvent);
|
}
|
}
|