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); } }