@progress/kendo-angular-pager 4.1.0-dev.202211230837 → 4.1.0-dev.202211250852
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/kendo-angular-pager.umd.js +1 -1
- package/esm2015/package-metadata.js +1 -1
- package/esm2015/pager/pager-page-sizes.component.js +18 -3
- package/esm2015/pager/pager.component.js +12 -8
- package/fesm2015/kendo-angular-pager.js +32 -14
- package/package.json +1 -1
- package/pager/pager-page-sizes.component.d.ts +7 -3
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@progress/kendo-angular-l10n"),require("rxjs"),require("@progress/kendo-angular-dropdowns"),require("@angular/common"),require("@progress/kendo-angular-inputs"),require("@progress/kendo-angular-common"),require("@progress/kendo-licensing")):"function"==typeof define&&define.amd?define("KendoAngularPager",["exports","@angular/core","@progress/kendo-angular-l10n","rxjs","@progress/kendo-angular-dropdowns","@angular/common","@progress/kendo-angular-inputs","@progress/kendo-angular-common","@progress/kendo-licensing"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularPager={},e.ng.core,e.KendoAngularL10N,e.rxjs,e.KendoAngularDropdowns,e.ng.common,e.KendoAngularInputs,e.KendoAngularCommon,e.KendoLicensing)}(this,function(e,s,t,p,A,M,n,h,R){"use strict";function a(n){var a;return n&&n.__esModule?n:(a=Object.create(null),n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(a,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),a.default=n,Object.freeze(a))}var r=a(s),o=a(t),i=a(A),g=a(M),j=a(n),l=a(h),B=function(e,t){return(B=Object.setPrototypeOf||({__proto__:[]}instanceof Array?function(e,t){e.__proto__=t}:function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}))(e,t)};function c(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}B(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;function b(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,r,o=n.call(e),i=[];try{for(;(void 0===t||0<t--)&&!(a=o.next()).done;)i.push(a.value)}catch(e){r={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return i}function _(e,t,n){if(n||2===arguments.length)for(var a,r=0,o=t.length;r<o;r++)!a&&r in t||((a=a||Array.prototype.slice.call(t,0,r))[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}Object.create;function K(){this.prevented=!1}K.prototype.preventDefault=function(){this.prevented=!0},K.prototype.isDefaultPrevented=function(){return this.prevented};c(G,H=K);var H,q=G;function G(e){var t=H.call(this)||this;return t.newPageSize=e,t}c(U,Z=t.ComponentMessages);var Z,u=U;function U(){return null!==Z&&Z.apply(this,arguments)||this}u.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,deps:null,target:r.ɵɵFactoryTarget.Directive}),u.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:u,selector:"kendoPagerMessages",inputs:{firstPage:"firstPage",lastPage:"lastPage",previousPage:"previousPage",nextPage:"nextPage",page:"page",pageNumberInputTitle:"pageNumberInputTitle",itemsPerPage:"itemsPerPage",of:"of",items:"items",selectPage:"selectPage",inputLabel:"inputLabel"},usesInheritance:!0,ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,decorators:[{type:s.Directive,args:[{selector:"kendoPagerMessages"}]}],propDecorators:{firstPage:[{type:s.Input}],lastPage:[{type:s.Input}],previousPage:[{type:s.Input}],nextPage:[{type:s.Input}],page:[{type:s.Input}],pageNumberInputTitle:[{type:s.Input}],itemsPerPage:[{type:s.Input}],of:[{type:s.Input}],items:[{type:s.Input}],selectPage:[{type:s.Input}],inputLabel:[{type:s.Input}]}});c($,W=u),Object.defineProperty($.prototype,"override",{get:function(){return!0},enumerable:!1,configurable:!0});var W,d=$;function $(e){var t=W.call(this)||this;return t.service=e,t}d.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:d,deps:[{token:o.LocalizationService}],target:r.ɵɵFactoryTarget.Component}),d.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:d,selector:"kendo-datapager-messages",providers:[{provide:u,useExisting:s.forwardRef(function(){return d})}],usesInheritance:!0,ngImport:r,template:"",isInline:!0}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:d,decorators:[{type:s.Component,args:[{providers:[{provide:u,useExisting:s.forwardRef(function(){return d})}],selector:"kendo-datapager-messages",template:""}]}],ctorParameters:function(){return[{type:o.LocalizationService}]}});c(X,Q=u);var Q,m=X;function X(e){var t=Q.call(this)||this;return t.service=e,t}m.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:m,deps:[{token:o.LocalizationService}],target:r.ɵɵFactoryTarget.Directive}),m.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:m,selector:"[kendoDataPagerLocalizedMessages]",providers:[{provide:u,useExisting:s.forwardRef(function(){return m})}],usesInheritance:!0,ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:m,decorators:[{type:s.Directive,args:[{providers:[{provide:u,useExisting:s.forwardRef(function(){return m})}],selector:"[kendoDataPagerLocalizedMessages]"}]}],ctorParameters:function(){return[{type:o.LocalizationService}]}});Object.defineProperty(k.prototype,"currentPage",{get:function(){return this.skip/this.pageSize},enumerable:!1,configurable:!0}),k.prototype.notifyChanges=function(e){this.total=e.total,this.pageSize=e.pageSize,this.skip=e.skip,this.changes.next(e)},k.prototype.changePage=function(e){this.pageChange.next({skip:e*this.pageSize,take:this.pageSize})},k.prototype.changePageSize=function(e){this.pageSizeChange.next(e)},k.prototype.nextPage=function(){var e=this.currentPage+1;e*this.pageSize<=this.total&&this.changePage(e)},k.prototype.prevPage=function(){var e=this.currentPage-1;0<=e*this.pageSize&&this.changePage(e)};var f=k;function k(){this.changes=new p.Subject,this.pageChange=new p.Subject,this.pageSizeChange=new p.Subject}Object.defineProperty(y.prototype,"currentPage",{get:function(){return Math.floor((this.skip||0)/this.pageSize)+1},enumerable:!1,configurable:!0}),Object.defineProperty(y.prototype,"totalPages",{get:function(){return Math.ceil((this.total||0)/this.pageSize)},enumerable:!1,configurable:!0}),y.prototype.textFor=function(e){return this.localization.get(e)},y.prototype.changePage=function(e){return this.pagerContext.changePage(e),!1},y.prototype.ngOnInit=function(){var e=this;this.subscriptions=this.pagerContext.changes.subscribe(this.onChanges.bind(this)),this.subscriptions.add(this.localization.changes.subscribe(function(){return e.cd.markForCheck()}))},y.prototype.ngOnDestroy=function(){this.subscriptions&&this.subscriptions.unsubscribe()};u=y;function y(e,t,n){this.localization=e,this.pagerContext=t,this.cd=n,this.total=this.pagerContext.total,this.skip=this.pagerContext.skip,this.pageSize=this.pagerContext.pageSize}u.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,deps:[{token:o.LocalizationService},{token:f},{token:r.ChangeDetectorRef}],target:r.ɵɵFactoryTarget.Component}),u.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:u,selector:"kendo-pager-element",ngImport:r,template:"",isInline:!0}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,decorators:[{type:s.Component,args:[{selector:"kendo-pager-element",template:""}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.ChangeDetectorRef}]}});var J=[5,10,20],Y=["a[href]:not([disabled])","area[href]:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","button","iframe:not([disabled])","object:not([disabled])","embed:not([disabled])","*[tabindex]:not([disabled])",'*[contenteditable]:not([disabled]):not([contenteditable="false"])'].join(","),P=(ee.prototype.toggleInnerNavigation=function(e){this.innerNavigationChange.next(e)},ee.prototype.keepFocusWithinComponent=function(e,t,n){var e=b(this.getFirstAndLastFocusable(e),2),a=e[0],e=e[1],r=!n.shiftKey&&t===e,t=n.shiftKey&&t===a;r&&(n.preventDefault(),a.focus()),t&&(n.preventDefault(),e.focus())},ee.prototype.getFirstAndLastFocusable=function(e){e=e.querySelectorAll("[kendoPagerFocusable]");return[0<e.length?e[0]:parent,0<e.length?e[e.length-1]:parent]},ee);function ee(){this.isNavigable=!1,this.innerNavigationChange=new p.Subject}C.prototype.ngOnInit=function(){this.subscriptions.add(this.navigationService.innerNavigationChange.subscribe(this.innerNavigationChange.bind(this)))},C.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Object.defineProperty(C.prototype,"nativeElement",{get:function(){return this.element.nativeElement},enumerable:!1,configurable:!0}),C.prototype.innerNavigationChange=function(e){var t,n=this;this.navigationService.isNavigable&&(t=e?"0":"-1",this.nativeElement.matches(Y)&&this.renderer.setAttribute(this.nativeElement,"tabindex",t),this.nativeElement.querySelectorAll(Y).forEach(function(e){n.renderer.setAttribute(e,"tabindex",t)}))};var v=C;function C(e,t,n){this.navigationService=e,this.element=t,this.renderer=n,this.subscriptions=new p.Subscription}v.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:v,deps:[{token:P},{token:r.ElementRef},{token:r.Renderer2}],target:r.ɵɵFactoryTarget.Directive}),v.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"],ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:v,decorators:[{type:s.Directive,args:[{selector:"[kendoPagerFocusable]",exportAs:"kendoPagerFocusable"}]}],ctorParameters:function(){return[{type:P},{type:r.ElementRef},{type:r.Renderer2}]}});c(ne,te=u),Object.defineProperty(ne.prototype,"disabled",{get:function(){return 1===this.currentPage||!this.total},enumerable:!1,configurable:!0}),ne.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var te,x=ne;function ne(e,t,n){return te.call(this,e,t,n)||this}x.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:x,deps:[{token:o.LocalizationService},{token:f},{token:r.ChangeDetectorRef}],target:r.ɵɵFactoryTarget.Component}),x.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:x,selector:"kendo-datapager-prev-buttons",usesInheritance:!0,ngImport:r,template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-first"\n [class.k-disabled]="disabled"\n [title]="textFor(\'firstPage\')"\n [attr.aria-label]="textFor(\'firstPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(0) : false">\n <span class="k-icon k-i-seek-w" role="note" [attr.aria-label]="textFor(\'firstPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'previousPage\')"\n [attr.aria-label]="textFor(\'previousPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(currentPage-2) : false">\n <span class="k-icon k-i-arrow-w" role="note" [attr.aria-label]="textFor(\'previousPage\')"></span>\n </button>\n ',isInline:!0,directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:x,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-prev-buttons",template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-first"\n [class.k-disabled]="disabled"\n [title]="textFor(\'firstPage\')"\n [attr.aria-label]="textFor(\'firstPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(0) : false">\n <span class="k-icon k-i-seek-w" role="note" [attr.aria-label]="textFor(\'firstPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'previousPage\')"\n [attr.aria-label]="textFor(\'previousPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(currentPage-2) : false">\n <span class="k-icon k-i-arrow-w" role="note" [attr.aria-label]="textFor(\'previousPage\')"></span>\n </button>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.ChangeDetectorRef}]}});c(I,ae=u),Object.defineProperty(I.prototype,"pageSizes",{get:function(){return this._pageSizes},set:function(e){var t=this,n=[];Array.isArray(e)&&e.forEach(function(e){"number"==typeof e?n.push({text:e.toString(),value:e}):n.push(e)}),this.pageSize&&!n.some(function(e){return e.value===t.pageSize})&&(n=_([{text:this.pageSize.toString(),value:this.pageSize}],b(n))),this._pageSizes=n},enumerable:!1,configurable:!0}),Object.defineProperty(I.prototype,"classes",{get:function(){return!0},enumerable:!1,configurable:!0}),I.prototype.ngAfterViewInit=function(){this.dropDownList.wrapper.nativeElement.setAttribute("aria-label",this.textFor("itemsPerPage"))},I.prototype.pageSizeChange=function(e,t){e=new q(e);this.pagerContext.changePageSize(e),e.isDefaultPrevented()&&t.writeValue(this.pageSize)},I.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize="number"==typeof e?e:this.total,this.cd.markForCheck()};var ae,S=I;function I(e,t,n){e=ae.call(this,e,n,t)||this;return e.pagerContext=n,e._pageSizes=[],e}S.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:S,deps:[{token:o.LocalizationService},{token:r.ChangeDetectorRef},{token:f}],target:r.ɵɵFactoryTarget.Component}),S.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:S,selector:"kendo-datapager-page-sizes",inputs:{pageSizes:"pageSizes"},host:{properties:{"class.k-pager-sizes":"this.classes","class.k-label":"this.classes"}},viewQueries:[{propertyName:"dropDownList",first:!0,predicate:["dropdownlist"],descendants:!0,static:!0}],usesInheritance:!0,ngImport:r,template:'\n <kendo-dropdownlist kendoPagerFocusable\n #dropdownlist\n [data]="pageSizes"\n textField="text"\n valueField="value"\n [valuePrimitive]="true"\n [value]="pageSize"\n (valueChange)="pageSizeChange($event, dropdownlist)"></kendo-dropdownlist>\n {{ textFor(\'itemsPerPage\') }}\n ',isInline:!0,components:[{type:i.DropDownListComponent,selector:"kendo-dropdownlist",inputs:["iconClass","loading","data","value","textField","valueField","popupSettings","listHeight","defaultItem","disabled","itemDisabled","readonly","filterable","virtual","ignoreCase","delay","valuePrimitive","tabindex","tabIndex","size","rounded","fillMode","id"],outputs:["valueChange","filterChange","selectionChange","open","opened","close","closed","focus","blur"],exportAs:["kendoDropDownList"]}],directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:S,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-page-sizes",template:'\n <kendo-dropdownlist kendoPagerFocusable\n #dropdownlist\n [data]="pageSizes"\n textField="text"\n valueField="value"\n [valuePrimitive]="true"\n [value]="pageSize"\n (valueChange)="pageSizeChange($event, dropdownlist)"></kendo-dropdownlist>\n {{ textFor(\'itemsPerPage\') }}\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:r.ChangeDetectorRef},{type:f}]},propDecorators:{dropDownList:[{type:s.ViewChild,args:["dropdownlist",{static:!0}]}],pageSizes:[{type:s.Input}],classes:[{type:s.HostBinding,args:["class.k-pager-sizes"]},{type:s.HostBinding,args:["class.k-label"]}]}});var re,z=function(e){this.templateRef=e},D=(z.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:z,deps:[{token:r.TemplateRef,optional:!0}],target:r.ɵɵFactoryTarget.Directive}),z.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:z,selector:"[kendoDataPagerTemplate]",ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:z,decorators:[{type:s.Directive,args:[{selector:"[kendoDataPagerTemplate]"}]}],ctorParameters:function(){return[{type:r.TemplateRef,decorators:[{type:s.Optional}]}]}}),c(F,re=u),Object.defineProperty(F.prototype,"buttons",{get:function(){for(var e=[],t=this.start;t<=this.end;t++)e.push(t);return e},enumerable:!1,configurable:!0}),Object.defineProperty(F.prototype,"end",{get:function(){return Math.min(this.start+this.buttonCount-1,this.totalPages)},enumerable:!1,configurable:!0}),Object.defineProperty(F.prototype,"start",{get:function(){var e,t=this.currentPage,n=this.buttonCount;return n<t?0==(e=t%n)?t-n+1:t-e+1:1},enumerable:!1,configurable:!0}),F.prototype.pageLabel=function(e){var t=this.textFor("page");return t?t+" "+e:e.toString()},F.prototype.onSelectChange=function(e){var e=e.target,t=Number(e.value);Number.isNaN(t)?"previousButtons"===e.value?this.changePage(this.start-2):this.changePage(this.end):this.changePage(t-1)},F.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()},Object.defineProperty(F.prototype,"pageChooserLabel",{get:function(){return this.textFor("selectPage")},enumerable:!1,configurable:!0}),F);function F(e,t,n){e=re.call(this,e,n,t)||this;return e.pagerContext=n,e.numbersWrapClass=!0,e}D.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:D,deps:[{token:o.LocalizationService},{token:r.ChangeDetectorRef},{token:f}],target:r.ɵɵFactoryTarget.Component}),D.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:D,selector:"kendo-datapager-numeric-buttons",inputs:{buttonCount:"buttonCount"},host:{properties:{"class.k-pager-numbers-wrap":"this.numbersWrapClass"}},usesInheritance:!0,ngImport:r,template:'\n <select kendoPagerFocusable\n class="k-dropdown-list k-picker k-picker-md k-rounded-md k-picker-solid"\n [attr.title]="pageChooserLabel"\n [attr.aria-label]="pageChooserLabel"\n (change)="onSelectChange($event)">\n <option *ngIf="start > 1"\n class="k-link"\n value="previousButtons"\n [selected]="false"\n [attr.aria-label]="pageLabel(start - 1)">...\n </option>\n <option *ngFor="let num of buttons"\n [value]="num.toString()"\n [selected]="num === currentPage"\n [attr.aria-label]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}">\n {{num}}\n </option>\n <option *ngIf="end < totalPages"\n value="nextButtons"\n [selected]="false"\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)">...\n </option>\n </select>\n <ul [ngClass]="{\'k-pager-numbers\': true}">\n <li *ngIf="start > 1">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(start - 1)"\n [attr.title]="pageLabel(start - 1)"\n (click)="changePage(start - 2)">...</button>\n </li>\n <li *ngFor="let num of buttons">\n <button\n type="button" kendoPagerFocusable\n [attr.aria-label]="pageLabel(num)"\n [attr.title]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}"\n (click)="changePage(num - 1)">\n {{num}}\n </button>\n </li>\n <li *ngIf="end < totalPages">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)"\n [attr.title]="pageLabel(end + 1)"\n (click)="changePage(end)">...</button>\n </li>\n </ul>\n ',isInline:!0,directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]},{type:g.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:g.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:g.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:D,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-numeric-buttons",template:'\n <select kendoPagerFocusable\n class="k-dropdown-list k-picker k-picker-md k-rounded-md k-picker-solid"\n [attr.title]="pageChooserLabel"\n [attr.aria-label]="pageChooserLabel"\n (change)="onSelectChange($event)">\n <option *ngIf="start > 1"\n class="k-link"\n value="previousButtons"\n [selected]="false"\n [attr.aria-label]="pageLabel(start - 1)">...\n </option>\n <option *ngFor="let num of buttons"\n [value]="num.toString()"\n [selected]="num === currentPage"\n [attr.aria-label]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}">\n {{num}}\n </option>\n <option *ngIf="end < totalPages"\n value="nextButtons"\n [selected]="false"\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)">...\n </option>\n </select>\n <ul [ngClass]="{\'k-pager-numbers\': true}">\n <li *ngIf="start > 1">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(start - 1)"\n [attr.title]="pageLabel(start - 1)"\n (click)="changePage(start - 2)">...</button>\n </li>\n <li *ngFor="let num of buttons">\n <button\n type="button" kendoPagerFocusable\n [attr.aria-label]="pageLabel(num)"\n [attr.title]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}"\n (click)="changePage(num - 1)">\n {{num}}\n </button>\n </li>\n <li *ngIf="end < totalPages">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)"\n [attr.title]="pageLabel(end + 1)"\n (click)="changePage(end)">...</button>\n </li>\n </ul>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:r.ChangeDetectorRef},{type:f}]},propDecorators:{numbersWrapClass:[{type:s.HostBinding,args:["class.k-pager-numbers-wrap"]}],buttonCount:[{type:s.Input}]}});c(ie,oe=u),Object.defineProperty(ie.prototype,"disabled",{get:function(){return this.currentPage===this.totalPages||!this.total},enumerable:!1,configurable:!0}),ie.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var oe,L=ie;function ie(e,t,n){return oe.call(this,e,t,n)||this}L.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:L,deps:[{token:o.LocalizationService},{token:f},{token:r.ChangeDetectorRef}],target:r.ɵɵFactoryTarget.Component}),L.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:L,selector:"kendo-datapager-next-buttons",usesInheritance:!0,ngImport:r,template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'nextPage\')"\n [attr.aria-label]="textFor(\'nextPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(currentPage) : false">\n <span class="k-icon k-i-arrow-e" role="note" [attr.aria-label]="textFor(\'nextPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-last"\n [class.k-disabled]="disabled"\n [title]="textFor(\'lastPage\')"\n [attr.aria-label]="textFor(\'lastPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(totalPages-1) : false">\n <span class="k-icon k-i-seek-e" role="note" [attr.aria-label]="textFor(\'lastPage\')"></span>\n </button>\n ',isInline:!0,directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:L,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-next-buttons",template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'nextPage\')"\n [attr.aria-label]="textFor(\'nextPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(currentPage) : false">\n <span class="k-icon k-i-arrow-e" role="note" [attr.aria-label]="textFor(\'nextPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-last"\n [class.k-disabled]="disabled"\n [title]="textFor(\'lastPage\')"\n [attr.aria-label]="textFor(\'lastPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(totalPages-1) : false">\n <span class="k-icon k-i-seek-e" role="note" [attr.aria-label]="textFor(\'lastPage\')"></span>\n </button>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.ChangeDetectorRef}]}});c(T,se=u),Object.defineProperty(T.prototype,"current",{get:function(){return this.hasPages?this.currentPage:0},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"hasPages",{get:function(){return 0!==this.totalPages},enumerable:!1,configurable:!0}),T.prototype.ngAfterViewInit=function(){var e=this.numericInput.numericInput.nativeElement;this.renderer.setAttribute(e,"aria-label",this.textFor("inputLabel"))},T.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var se,w=T;function T(e,t,n,a,r){var o=se.call(this,e,t,a)||this;return o.pagerContext=t,o.zone=n,o.renderer=r,o.handleKeyDown=function(e){var t=o.numericInput.value||o.current;e.keyCode===h.Keys.Enter&&(e.preventDefault(),t!==o.current)&&o.zone.run(function(){o.changePage(t-1)})},o.handleBlur=function(){var e=o.numericInput.value;e?e!==o.current&&o.zone.run(function(){o.changePage(e-1)}):o.numericInput.writeValue(o.current)},o}w.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:w,deps:[{token:o.LocalizationService},{token:f},{token:r.NgZone},{token:r.ChangeDetectorRef},{token:r.Renderer2}],target:r.ɵɵFactoryTarget.Component}),w.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:w,selector:"kendo-datapager-input",viewQueries:[{propertyName:"numericInput",first:!0,predicate:n.NumericTextBoxComponent,descendants:!0,static:!0}],usesInheritance:!0,ngImport:r,template:'\n <span [ngClass]="{\'k-pager-input\': true, \'k-label\': true}">\n {{textFor(\'page\')}}\n <kendo-numerictextbox kendoPagerFocusable\n [spinners]="false"\n [decimals]="0"\n format="n0"\n [disabled]="!hasPages"\n [value]="current"\n [min]="hasPages ? 1 : 0"\n [max]="totalPages"\n [autoCorrect]="true"\n [title]="textFor(\'pageNumberInputTitle\')"\n [kendoEventsOutsideAngular]="{\n keydown: handleKeyDown,\n focusout: handleBlur\n }">\n </kendo-numerictextbox>\n {{textFor(\'of\')}} {{totalPages}}\n </span>\n ',isInline:!0,components:[{type:j.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]}],directives:[{type:g.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]},{type:l.EventsOutsideAngularDirective,selector:"[kendoEventsOutsideAngular]",inputs:["kendoEventsOutsideAngular","scope"]}]}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:w,decorators:[{type:s.Component,args:[{selector:"kendo-datapager-input",template:'\n <span [ngClass]="{\'k-pager-input\': true, \'k-label\': true}">\n {{textFor(\'page\')}}\n <kendo-numerictextbox kendoPagerFocusable\n [spinners]="false"\n [decimals]="0"\n format="n0"\n [disabled]="!hasPages"\n [value]="current"\n [min]="hasPages ? 1 : 0"\n [max]="totalPages"\n [autoCorrect]="true"\n [title]="textFor(\'pageNumberInputTitle\')"\n [kendoEventsOutsideAngular]="{\n keydown: handleKeyDown,\n focusout: handleBlur\n }">\n </kendo-numerictextbox>\n {{textFor(\'of\')}} {{totalPages}}\n </span>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.NgZone},{type:r.ChangeDetectorRef},{type:r.Renderer2}]},propDecorators:{numericInput:[{type:s.ViewChild,args:[n.NumericTextBoxComponent,{static:!0}]}]}});c(N,pe=u),Object.defineProperty(N.prototype,"maxItems",{get:function(){return Math.min(this.currentPage*this.pageSize,this.total)},enumerable:!1,configurable:!0}),Object.defineProperty(N.prototype,"currentPageText",{get:function(){return this.total?(this.currentPage-1)*this.pageSize+1:0},enumerable:!1,configurable:!0}),Object.defineProperty(N.prototype,"classes",{get:function(){return!0},enumerable:!1,configurable:!0}),N.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var pe,O=N;function N(e,t,n){e=pe.call(this,e,n,t)||this;return e.pagerContext=n,e}O.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:O,deps:[{token:o.LocalizationService},{token:r.ChangeDetectorRef},{token:f}],target:r.ɵɵFactoryTarget.Component}),O.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:O,selector:"kendo-datapager-info",host:{properties:{"class.k-pager-info":"this.classes","class.k-label":"this.classes"}},usesInheritance:!0,ngImport:r,template:"{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}",isInline:!0,changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:O,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-info",template:"{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}"}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:r.ChangeDetectorRef},{type:f}]},propDecorators:{classes:[{type:s.HostBinding,args:["class.k-pager-info"]},{type:s.HostBinding,args:["class.k-label"]}]}});var ge={name:"@progress/kendo-angular-pager",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1669192614,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"},V=(Object.defineProperty(E.prototype,"pageSizeValues",{get:function(){return this._pageSizeValues},set:function(e){this._pageSizeValues=Array.isArray(e)?e:!!e&&J},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"navigable",{get:function(){return this._navigable},set:function(e){this._navigable=e,this.navigationService.isNavigable=e},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"dir",{get:function(){return this.direction},enumerable:!1,configurable:!0}),E.prototype.focusHandler=function(e){e=e.target!==this.element.nativeElement;this.navigationService.toggleInnerNavigation(e)},Object.defineProperty(E.prototype,"totalPages",{get:function(){return Math.ceil((this.total||0)/this.pageSize)},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"currentPage",{get:function(){return Math.floor((this.skip||0)/this.pageSize)+1},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"templateContext",{get:function(){var e=this._templateContext;return e.totalPages=this.totalPages,e.total=this.total,e.skip=this.skip,e.pageSize=this.pageSize,e.currentPage=this.currentPage,e},enumerable:!1,configurable:!0}),E.prototype.ngOnInit=function(){var e,t=this;this.subscriptions.add(this.pagerContext.pageChange.subscribe(this.changePage.bind(this))),this.subscriptions.add(this.pagerContext.pageSizeChange.subscribe(this.changePageSize.bind(this))),this.subscriptions.add(this.resizeSensor.resize.subscribe(function(){return t.resizeHandler()})),this.subscriptions.add(this.localization.changes.subscribe(function(e){e=e.rtl;t.direction=e?"rtl":"ltr"})),this.subscriptions.add(this.navigationService.innerNavigationChange.subscribe(this.innerNavigationChange.bind(this))),this.navigable&&(e=this.element.nativeElement,this.ngZone.runOutsideAngular(function(){t.subscriptions.add(t.renderer.listen(e,"keydown",t.keyDownHandler.bind(t)))}))},E.prototype.ngAfterViewInit=function(){this.resizeHandler(),this.renderer.setAttribute(this.element.nativeElement,"aria-label",this.ariaLabel)},E.prototype.ngOnChanges=function(e){h.anyChanged(["pageSize","skip","total"],e,!1)&&(this.pagerContext.notifyChanges({pageSize:this.pageSize,skip:this.skip,total:this.total}),this.renderer.setAttribute(this.element.nativeElement,"aria-label",this.ariaLabel))},E.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},E.prototype.changePage=function(e){this.pageChange.emit(e)},E.prototype.changePageSize=function(e){this.pageSizeChange.emit(e),e.isDefaultPrevented()||("all"===e.newPageSize?this.pageChange.emit({skip:0,take:this.total}):this.pageChange.emit({skip:0,take:e.newPageSize}))},E.prototype.onPageSizeChange=function(e){this.pageSizeChange.emit(e),e.isDefaultPrevented()||this.pageChange.emit({skip:this.skip,take:e.newPageSize})},E.prototype.textFor=function(e){return this.localization.get(e)},Object.defineProperty(E.prototype,"ariaLabel",{get:function(){return this.textFor("page")+" "+this.currentPage+" "+this.textFor("of")+" "+this.totalPages},enumerable:!1,configurable:!0}),E.prototype.keyDownHandler=function(t){var n=this,a=t.target,r=this.element.nativeElement,o=t.keyCode===h.Keys.ArrowLeft||t.keyCode===h.Keys.PageUp,i=t.keyCode===h.Keys.ArrowRight||t.keyCode===h.Keys.PageDown,s=t.keyCode===h.Keys.Enter,p=t.keyCode===h.Keys.Home,g=t.keyCode===h.Keys.End,l=t.keyCode===h.Keys.Escape,c=t.keyCode===h.Keys.Tab,u=1===this.currentPage,d=this.currentPage===this.totalPages;this.ngZone.run(function(){var e;p&&!u?n.pagerContext.changePage(0):g&&!d?n.pagerContext.changePage(n.totalPages-1):n.isInnerNavigationEnabled?l?(n.navigationService.toggleInnerNavigation(!1),r.focus()):c&&n.navigationService.keepFocusWithinComponent(r,a,t):o&&!u?n.pagerContext.prevPage():i&&!d?n.pagerContext.nextPage():s&&t.target===r&&(t.preventDefault(),e=b(n.navigationService.getFirstAndLastFocusable(r),1)[0],n.navigationService.toggleInnerNavigation(!0),null!=e)&&e.focus()})},E.prototype.innerNavigationChange=function(e){this.isInnerNavigationEnabled=e},E);function E(e,t,n,a,r,o){var i=this;this.pagerContext=e,this.element=t,this.localization=n,this.renderer=a,this.ngZone=r,this.navigationService=o,this.total=0,this.skip=0,this.buttonCount=10,this.info=!0,this.type="numeric",this.previousNext=!0,this.pageChange=new s.EventEmitter,this.pageSizeChange=new s.EventEmitter,this.pagerClass=!0,this.widgetRole="application",this.roleDescription="pager",this.keyShortcuts="Enter ArrowRight ArrowLeft",this.hostTabindex="0",this.subscriptions=new p.Subscription,this._templateContext={},this._pageSizeValues=J,this.isInnerNavigationEnabled=!1,this._navigable=!1,this.resizeHandler=function(){var e,t;i.template||((t=(e=i.element.nativeElement).offsetWidth)<600?(e.classList.remove("k-pager-md"),e.classList.add("k-pager-sm")):(600<=t&&t<768?e.classList.add("k-pager-md"):e.classList.remove("k-pager-md"),e.classList.remove("k-pager-sm")))},R.validatePackage(ge),this.direction=n.rtl?"rtl":"ltr"}V.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:V,deps:[{token:f},{token:r.ElementRef},{token:o.LocalizationService},{token:r.Renderer2},{token:r.NgZone},{token:P}],target:r.ɵɵFactoryTarget.Component}),V.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:V,selector:"kendo-datapager",inputs:{total:"total",skip:"skip",pageSize:"pageSize",buttonCount:"buttonCount",info:"info",type:"type",pageSizeValues:"pageSizeValues",previousNext:"previousNext",navigable:"navigable"},outputs:{pageChange:"pageChange",pageSizeChange:"pageSizeChange"},host:{listeners:{focusin:"focusHandler($event)"},properties:{"class.k-pager":"this.pagerClass","attr.role":"this.widgetRole","attr.aria-roledescription":"this.roleDescription","attr.aria-keyshortcuts":"this.keyShortcuts","attr.tabindex":"this.hostTabindex","attr.dir":"this.dir"}},providers:[t.LocalizationService,f,P],queries:[{propertyName:"template",first:!0,predicate:z,descendants:!0}],viewQueries:[{propertyName:"resizeSensor",first:!0,predicate:h.ResizeSensorComponent,descendants:!0,static:!0}],exportAs:["kendoDataPager"],usesOnChanges:!0,ngImport:r,template:'\n <ng-container kendoDataPagerLocalizedMessages\n i18n-firstPage="kendo.pager.firstPage|The label for the first page button in the Pager"\n firstPage="Go to the first page"\n\n i18n-previousPage="kendo.pager.previousPage|The label for the previous page button in the Pager"\n previousPage="Go to the previous page"\n\n i18n-nextPage="kendo.pager.nextPage|The label for the next page button in the Pager"\n nextPage="Go to the next page"\n\n i18n-lastPage="kendo.pager.lastPage|The label for the last page button in the Pager"\n lastPage="Go to the last page"\n\n i18n-page="kendo.pager.page|The label before the current page number in the Pager"\n page="Page"\n\n i18n-of="kendo.pager.of|The label before the total pages number in the Pager"\n of="of"\n\n i18n-pageNumberInputTitle="kendo.pager.pageNumberInputTitle|The label for the pager input in the Pager"\n pageNumberInputTitle="Page Number"\n\n i18n-items="kendo.pager.items|The label after the total pages number in the Pager"\n items="items"\n\n i18n-itemsPerPage="kendo.pager.itemsPerPage|The label for the page size chooser in the Pager"\n itemsPerPage="items per page"\n\n i18n-selectPage="kendo.pager.selectPage|The text of the title and aria-label attributes applied to the page chooser in the Pager"\n selectPage="Select page"\n\n i18n-inputLabel="kendo.pager.inputLabel|The text of the aria-label attribute applied to the input element for entering the page number."\n inputLabel="Type a page number"\n >\n </ng-container>\n <ng-container\n *ngIf="template?.templateRef"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext">\n </ng-container>\n <ng-container *ngIf="!template?.templateRef">\n <kendo-datapager-prev-buttons *ngIf="previousNext"></kendo-datapager-prev-buttons>\n <kendo-datapager-numeric-buttons\n *ngIf="type === \'numeric\' && buttonCount > 0"\n [buttonCount]="buttonCount">\n </kendo-datapager-numeric-buttons>\n <kendo-datapager-input *ngIf="type === \'input\'"></kendo-datapager-input>\n <kendo-datapager-next-buttons *ngIf="previousNext"></kendo-datapager-next-buttons>\n <kendo-datapager-info *ngIf=\'info\'></kendo-datapager-info>\n <kendo-datapager-page-sizes *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>\n </ng-container>\n <kendo-resize-sensor></kendo-resize-sensor>\n ',isInline:!0,components:[{type:x,selector:"kendo-datapager-prev-buttons"},{type:D,selector:"kendo-datapager-numeric-buttons",inputs:["buttonCount"]},{type:w,selector:"kendo-datapager-input"},{type:L,selector:"kendo-datapager-next-buttons"},{type:O,selector:"kendo-datapager-info"},{type:S,selector:"kendo-datapager-page-sizes",inputs:["pageSizes"]},{type:l.ResizeSensorComponent,selector:"kendo-resize-sensor",inputs:["rateLimit"],outputs:["resize"]}],directives:[{type:m,selector:"[kendoDataPagerLocalizedMessages]"},{type:g.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:g.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:V,decorators:[{type:s.Component,args:[{selector:"kendo-datapager",exportAs:"kendoDataPager",providers:[t.LocalizationService,f,P],template:'\n <ng-container kendoDataPagerLocalizedMessages\n i18n-firstPage="kendo.pager.firstPage|The label for the first page button in the Pager"\n firstPage="Go to the first page"\n\n i18n-previousPage="kendo.pager.previousPage|The label for the previous page button in the Pager"\n previousPage="Go to the previous page"\n\n i18n-nextPage="kendo.pager.nextPage|The label for the next page button in the Pager"\n nextPage="Go to the next page"\n\n i18n-lastPage="kendo.pager.lastPage|The label for the last page button in the Pager"\n lastPage="Go to the last page"\n\n i18n-page="kendo.pager.page|The label before the current page number in the Pager"\n page="Page"\n\n i18n-of="kendo.pager.of|The label before the total pages number in the Pager"\n of="of"\n\n i18n-pageNumberInputTitle="kendo.pager.pageNumberInputTitle|The label for the pager input in the Pager"\n pageNumberInputTitle="Page Number"\n\n i18n-items="kendo.pager.items|The label after the total pages number in the Pager"\n items="items"\n\n i18n-itemsPerPage="kendo.pager.itemsPerPage|The label for the page size chooser in the Pager"\n itemsPerPage="items per page"\n\n i18n-selectPage="kendo.pager.selectPage|The text of the title and aria-label attributes applied to the page chooser in the Pager"\n selectPage="Select page"\n\n i18n-inputLabel="kendo.pager.inputLabel|The text of the aria-label attribute applied to the input element for entering the page number."\n inputLabel="Type a page number"\n >\n </ng-container>\n <ng-container\n *ngIf="template?.templateRef"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext">\n </ng-container>\n <ng-container *ngIf="!template?.templateRef">\n <kendo-datapager-prev-buttons *ngIf="previousNext"></kendo-datapager-prev-buttons>\n <kendo-datapager-numeric-buttons\n *ngIf="type === \'numeric\' && buttonCount > 0"\n [buttonCount]="buttonCount">\n </kendo-datapager-numeric-buttons>\n <kendo-datapager-input *ngIf="type === \'input\'"></kendo-datapager-input>\n <kendo-datapager-next-buttons *ngIf="previousNext"></kendo-datapager-next-buttons>\n <kendo-datapager-info *ngIf=\'info\'></kendo-datapager-info>\n <kendo-datapager-page-sizes *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>\n </ng-container>\n <kendo-resize-sensor></kendo-resize-sensor>\n '}]}],ctorParameters:function(){return[{type:f},{type:r.ElementRef},{type:o.LocalizationService},{type:r.Renderer2},{type:r.NgZone},{type:P}]},propDecorators:{resizeSensor:[{type:s.ViewChild,args:[h.ResizeSensorComponent,{static:!0}]}],template:[{type:s.ContentChild,args:[z,{static:!1}]}],total:[{type:s.Input}],skip:[{type:s.Input}],pageSize:[{type:s.Input}],buttonCount:[{type:s.Input}],info:[{type:s.Input}],type:[{type:s.Input}],pageSizeValues:[{type:s.Input}],previousNext:[{type:s.Input}],navigable:[{type:s.Input}],pageChange:[{type:s.Output}],pageSizeChange:[{type:s.Output}],pagerClass:[{type:s.HostBinding,args:["class.k-pager"]}],widgetRole:[{type:s.HostBinding,args:["attr.role"]}],roleDescription:[{type:s.HostBinding,args:["attr.aria-roledescription"]}],keyShortcuts:[{type:s.HostBinding,args:["attr.aria-keyshortcuts"]}],hostTabindex:[{type:s.HostBinding,args:["attr.tabindex"]}],dir:[{type:s.HostBinding,args:["attr.dir"]}],focusHandler:[{type:s.HostListener,args:["focusin",["$event"]]}]}});i=[M.CommonModule,n.NumericTextBoxModule,A.DropDownListModule,h.EventsModule,h.ResizeSensorModule],j=[V,x,L,D,w,O,S,z,m,d,v],u=[{provide:t.L10N_PREFIX,useValue:"kendo.pager"}],le.exports=function(){return[V,x,L,D,w,O,S,z]},l=le;function le(){}l.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:l,deps:[],target:r.ɵɵFactoryTarget.NgModule}),l.ɵmod=r.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:l,declarations:[V,x,L,D,w,O,S,z,m,d,v],imports:[M.CommonModule,n.NumericTextBoxModule,A.DropDownListModule,h.EventsModule,h.ResizeSensorModule],exports:[V,x,L,D,w,O,S,z,m,d,v]}),l.ɵinj=r.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:l,providers:[u],imports:[_([],b(i))]}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:l,decorators:[{type:s.NgModule,args:[{declarations:[j],exports:[j],imports:_([],b(i)),providers:[u]}]}]}),e.CustomMessagesComponent=d,e.LocalizedMessagesDirective=m,e.PageSizeChangeEvent=q,e.PagerComponent=V,e.PagerFocusableDirective=v,e.PagerInfoComponent=O,e.PagerInputComponent=w,e.PagerModule=l,e.PagerNextButtonsComponent=L,e.PagerNumericButtonsComponent=D,e.PagerPageSizesComponent=S,e.PagerPrevButtonsComponent=x,e.PagerTemplateDirective=z,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
5
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@progress/kendo-angular-l10n"),require("rxjs"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-dropdowns"),require("@angular/common"),require("@progress/kendo-angular-inputs"),require("@progress/kendo-licensing")):"function"==typeof define&&define.amd?define("KendoAngularPager",["exports","@angular/core","@progress/kendo-angular-l10n","rxjs","@progress/kendo-angular-common","@progress/kendo-angular-dropdowns","@angular/common","@progress/kendo-angular-inputs","@progress/kendo-licensing"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularPager={},e.ng.core,e.KendoAngularL10N,e.rxjs,e.KendoAngularCommon,e.KendoAngularDropdowns,e.ng.common,e.KendoAngularInputs,e.KendoLicensing)}(this,function(e,s,t,p,h,A,R,n,M){"use strict";function a(n){var a;return n&&n.__esModule?n:(a=Object.create(null),n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(a,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),a.default=n,Object.freeze(a))}var r=a(s),o=a(t),i=a(h),g=a(A),l=a(R),j=a(n),B=function(e,t){return(B=Object.setPrototypeOf||({__proto__:[]}instanceof Array?function(e,t){e.__proto__=t}:function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}))(e,t)};function c(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}B(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;function b(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,r,o=n.call(e),i=[];try{for(;(void 0===t||0<t--)&&!(a=o.next()).done;)i.push(a.value)}catch(e){r={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return i}function _(e,t,n){if(n||2===arguments.length)for(var a,r=0,o=t.length;r<o;r++)!a&&r in t||((a=a||Array.prototype.slice.call(t,0,r))[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}Object.create;function K(){this.prevented=!1}K.prototype.preventDefault=function(){this.prevented=!0},K.prototype.isDefaultPrevented=function(){return this.prevented};c(Z,H=K);var H,q=Z;function Z(e){var t=H.call(this)||this;return t.newPageSize=e,t}c(U,G=t.ComponentMessages);var G,u=U;function U(){return null!==G&&G.apply(this,arguments)||this}u.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,deps:null,target:r.ɵɵFactoryTarget.Directive}),u.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:u,selector:"kendoPagerMessages",inputs:{firstPage:"firstPage",lastPage:"lastPage",previousPage:"previousPage",nextPage:"nextPage",page:"page",pageNumberInputTitle:"pageNumberInputTitle",itemsPerPage:"itemsPerPage",of:"of",items:"items",selectPage:"selectPage",inputLabel:"inputLabel"},usesInheritance:!0,ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,decorators:[{type:s.Directive,args:[{selector:"kendoPagerMessages"}]}],propDecorators:{firstPage:[{type:s.Input}],lastPage:[{type:s.Input}],previousPage:[{type:s.Input}],nextPage:[{type:s.Input}],page:[{type:s.Input}],pageNumberInputTitle:[{type:s.Input}],itemsPerPage:[{type:s.Input}],of:[{type:s.Input}],items:[{type:s.Input}],selectPage:[{type:s.Input}],inputLabel:[{type:s.Input}]}});c($,W=u),Object.defineProperty($.prototype,"override",{get:function(){return!0},enumerable:!1,configurable:!0});var W,d=$;function $(e){var t=W.call(this)||this;return t.service=e,t}d.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:d,deps:[{token:o.LocalizationService}],target:r.ɵɵFactoryTarget.Component}),d.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:d,selector:"kendo-datapager-messages",providers:[{provide:u,useExisting:s.forwardRef(function(){return d})}],usesInheritance:!0,ngImport:r,template:"",isInline:!0}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:d,decorators:[{type:s.Component,args:[{providers:[{provide:u,useExisting:s.forwardRef(function(){return d})}],selector:"kendo-datapager-messages",template:""}]}],ctorParameters:function(){return[{type:o.LocalizationService}]}});c(X,Q=u);var Q,m=X;function X(e){var t=Q.call(this)||this;return t.service=e,t}m.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:m,deps:[{token:o.LocalizationService}],target:r.ɵɵFactoryTarget.Directive}),m.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:m,selector:"[kendoDataPagerLocalizedMessages]",providers:[{provide:u,useExisting:s.forwardRef(function(){return m})}],usesInheritance:!0,ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:m,decorators:[{type:s.Directive,args:[{providers:[{provide:u,useExisting:s.forwardRef(function(){return m})}],selector:"[kendoDataPagerLocalizedMessages]"}]}],ctorParameters:function(){return[{type:o.LocalizationService}]}});Object.defineProperty(k.prototype,"currentPage",{get:function(){return this.skip/this.pageSize},enumerable:!1,configurable:!0}),k.prototype.notifyChanges=function(e){this.total=e.total,this.pageSize=e.pageSize,this.skip=e.skip,this.changes.next(e)},k.prototype.changePage=function(e){this.pageChange.next({skip:e*this.pageSize,take:this.pageSize})},k.prototype.changePageSize=function(e){this.pageSizeChange.next(e)},k.prototype.nextPage=function(){var e=this.currentPage+1;e*this.pageSize<=this.total&&this.changePage(e)},k.prototype.prevPage=function(){var e=this.currentPage-1;0<=e*this.pageSize&&this.changePage(e)};var f=k;function k(){this.changes=new p.Subject,this.pageChange=new p.Subject,this.pageSizeChange=new p.Subject}Object.defineProperty(y.prototype,"currentPage",{get:function(){return Math.floor((this.skip||0)/this.pageSize)+1},enumerable:!1,configurable:!0}),Object.defineProperty(y.prototype,"totalPages",{get:function(){return Math.ceil((this.total||0)/this.pageSize)},enumerable:!1,configurable:!0}),y.prototype.textFor=function(e){return this.localization.get(e)},y.prototype.changePage=function(e){return this.pagerContext.changePage(e),!1},y.prototype.ngOnInit=function(){var e=this;this.subscriptions=this.pagerContext.changes.subscribe(this.onChanges.bind(this)),this.subscriptions.add(this.localization.changes.subscribe(function(){return e.cd.markForCheck()}))},y.prototype.ngOnDestroy=function(){this.subscriptions&&this.subscriptions.unsubscribe()};u=y;function y(e,t,n){this.localization=e,this.pagerContext=t,this.cd=n,this.total=this.pagerContext.total,this.skip=this.pagerContext.skip,this.pageSize=this.pagerContext.pageSize}u.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,deps:[{token:o.LocalizationService},{token:f},{token:r.ChangeDetectorRef}],target:r.ɵɵFactoryTarget.Component}),u.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:u,selector:"kendo-pager-element",ngImport:r,template:"",isInline:!0}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:u,decorators:[{type:s.Component,args:[{selector:"kendo-pager-element",template:""}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.ChangeDetectorRef}]}});var J=[5,10,20],Y=["a[href]:not([disabled])","area[href]:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","button","iframe:not([disabled])","object:not([disabled])","embed:not([disabled])","*[tabindex]:not([disabled])",'*[contenteditable]:not([disabled]):not([contenteditable="false"])'].join(","),P=(ee.prototype.toggleInnerNavigation=function(e){this.innerNavigationChange.next(e)},ee.prototype.keepFocusWithinComponent=function(e,t,n){var e=b(this.getFirstAndLastFocusable(e),2),a=e[0],e=e[1],r=!n.shiftKey&&t===e,t=n.shiftKey&&t===a;r&&(n.preventDefault(),a.focus()),t&&(n.preventDefault(),e.focus())},ee.prototype.getFirstAndLastFocusable=function(e){e=e.querySelectorAll("[kendoPagerFocusable]");return[0<e.length?e[0]:parent,0<e.length?e[e.length-1]:parent]},ee);function ee(){this.isNavigable=!1,this.innerNavigationChange=new p.Subject}C.prototype.ngOnInit=function(){this.subscriptions.add(this.navigationService.innerNavigationChange.subscribe(this.innerNavigationChange.bind(this)))},C.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Object.defineProperty(C.prototype,"nativeElement",{get:function(){return this.element.nativeElement},enumerable:!1,configurable:!0}),C.prototype.innerNavigationChange=function(e){var t,n=this;this.navigationService.isNavigable&&(t=e?"0":"-1",this.nativeElement.matches(Y)&&this.renderer.setAttribute(this.nativeElement,"tabindex",t),this.nativeElement.querySelectorAll(Y).forEach(function(e){n.renderer.setAttribute(e,"tabindex",t)}))};var v=C;function C(e,t,n){this.navigationService=e,this.element=t,this.renderer=n,this.subscriptions=new p.Subscription}v.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:v,deps:[{token:P},{token:r.ElementRef},{token:r.Renderer2}],target:r.ɵɵFactoryTarget.Directive}),v.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"],ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:v,decorators:[{type:s.Directive,args:[{selector:"[kendoPagerFocusable]",exportAs:"kendoPagerFocusable"}]}],ctorParameters:function(){return[{type:P},{type:r.ElementRef},{type:r.Renderer2}]}});c(ne,te=u),Object.defineProperty(ne.prototype,"disabled",{get:function(){return 1===this.currentPage||!this.total},enumerable:!1,configurable:!0}),ne.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var te,x=ne;function ne(e,t,n){return te.call(this,e,t,n)||this}x.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:x,deps:[{token:o.LocalizationService},{token:f},{token:r.ChangeDetectorRef}],target:r.ɵɵFactoryTarget.Component}),x.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:x,selector:"kendo-datapager-prev-buttons",usesInheritance:!0,ngImport:r,template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-first"\n [class.k-disabled]="disabled"\n [title]="textFor(\'firstPage\')"\n [attr.aria-label]="textFor(\'firstPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(0) : false">\n <span class="k-icon k-i-seek-w" role="note" [attr.aria-label]="textFor(\'firstPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'previousPage\')"\n [attr.aria-label]="textFor(\'previousPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(currentPage-2) : false">\n <span class="k-icon k-i-arrow-w" role="note" [attr.aria-label]="textFor(\'previousPage\')"></span>\n </button>\n ',isInline:!0,directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:x,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-prev-buttons",template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-first"\n [class.k-disabled]="disabled"\n [title]="textFor(\'firstPage\')"\n [attr.aria-label]="textFor(\'firstPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(0) : false">\n <span class="k-icon k-i-seek-w" role="note" [attr.aria-label]="textFor(\'firstPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'previousPage\')"\n [attr.aria-label]="textFor(\'previousPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== 1 ? changePage(currentPage-2) : false">\n <span class="k-icon k-i-arrow-w" role="note" [attr.aria-label]="textFor(\'previousPage\')"></span>\n </button>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.ChangeDetectorRef}]}});c(I,ae=u),Object.defineProperty(I.prototype,"pageSizes",{get:function(){return this._pageSizes},set:function(e){var t=this,n=[];Array.isArray(e)&&e.forEach(function(e){"number"==typeof e?n.push({text:e.toString(),value:e}):n.push(e)}),this.pageSize&&!n.some(function(e){return e.value===t.pageSize})&&(n=_([{text:this.pageSize.toString(),value:this.pageSize}],b(n))),this._pageSizes=n},enumerable:!1,configurable:!0}),Object.defineProperty(I.prototype,"classes",{get:function(){return!0},enumerable:!1,configurable:!0}),I.prototype.ngAfterViewInit=function(){var e=this;this.dropDownList.wrapper.nativeElement.setAttribute("aria-label",this.textFor("itemsPerPage")),this.ngZone.runOutsideAngular(function(){e.element.nativeElement.addEventListener("keydown",e.keyDownHandler.bind(e),!0)})},I.prototype.ngOnDestroy=function(){this.element.nativeElement.removeEventListener("keydown",this.keyDownHandler)},I.prototype.pageSizeChange=function(e,t){e=new q(e);this.pagerContext.changePageSize(e),e.isDefaultPrevented()&&t.writeValue(this.pageSize)},I.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize="number"==typeof e?e:this.total,this.cd.markForCheck()},I.prototype.keyDownHandler=function(e){e.keyCode===h.Keys.Escape&&this.dropDownList.isOpen&&(e.stopPropagation(),this.dropDownList.toggle(!1))};var ae,S=I;function I(e,t,n,a,r){e=ae.call(this,e,n,t)||this;return e.pagerContext=n,e.element=a,e.ngZone=r,e._pageSizes=[],e}S.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:S,deps:[{token:o.LocalizationService},{token:r.ChangeDetectorRef},{token:f},{token:r.ElementRef},{token:r.NgZone}],target:r.ɵɵFactoryTarget.Component}),S.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:S,selector:"kendo-datapager-page-sizes",inputs:{pageSizes:"pageSizes"},host:{properties:{"class.k-pager-sizes":"this.classes","class.k-label":"this.classes"}},viewQueries:[{propertyName:"dropDownList",first:!0,predicate:["dropdownlist"],descendants:!0,static:!0}],usesInheritance:!0,ngImport:r,template:'\n <kendo-dropdownlist kendoPagerFocusable\n #dropdownlist\n [data]="pageSizes"\n textField="text"\n valueField="value"\n [valuePrimitive]="true"\n [value]="pageSize"\n (valueChange)="pageSizeChange($event, dropdownlist)"></kendo-dropdownlist>\n {{ textFor(\'itemsPerPage\') }}\n ',isInline:!0,components:[{type:g.DropDownListComponent,selector:"kendo-dropdownlist",inputs:["iconClass","loading","data","value","textField","valueField","popupSettings","listHeight","defaultItem","disabled","itemDisabled","readonly","filterable","virtual","ignoreCase","delay","valuePrimitive","tabindex","tabIndex","size","rounded","fillMode","id"],outputs:["valueChange","filterChange","selectionChange","open","opened","close","closed","focus","blur"],exportAs:["kendoDropDownList"]}],directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:S,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-page-sizes",template:'\n <kendo-dropdownlist kendoPagerFocusable\n #dropdownlist\n [data]="pageSizes"\n textField="text"\n valueField="value"\n [valuePrimitive]="true"\n [value]="pageSize"\n (valueChange)="pageSizeChange($event, dropdownlist)"></kendo-dropdownlist>\n {{ textFor(\'itemsPerPage\') }}\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:r.ChangeDetectorRef},{type:f},{type:r.ElementRef},{type:r.NgZone}]},propDecorators:{dropDownList:[{type:s.ViewChild,args:["dropdownlist",{static:!0}]}],pageSizes:[{type:s.Input}],classes:[{type:s.HostBinding,args:["class.k-pager-sizes"]},{type:s.HostBinding,args:["class.k-label"]}]}});var re,z=function(e){this.templateRef=e},D=(z.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:z,deps:[{token:r.TemplateRef,optional:!0}],target:r.ɵɵFactoryTarget.Directive}),z.ɵdir=r.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:z,selector:"[kendoDataPagerTemplate]",ngImport:r}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:z,decorators:[{type:s.Directive,args:[{selector:"[kendoDataPagerTemplate]"}]}],ctorParameters:function(){return[{type:r.TemplateRef,decorators:[{type:s.Optional}]}]}}),c(F,re=u),Object.defineProperty(F.prototype,"buttons",{get:function(){for(var e=[],t=this.start;t<=this.end;t++)e.push(t);return e},enumerable:!1,configurable:!0}),Object.defineProperty(F.prototype,"end",{get:function(){return Math.min(this.start+this.buttonCount-1,this.totalPages)},enumerable:!1,configurable:!0}),Object.defineProperty(F.prototype,"start",{get:function(){var e,t=this.currentPage,n=this.buttonCount;return n<t?0==(e=t%n)?t-n+1:t-e+1:1},enumerable:!1,configurable:!0}),F.prototype.pageLabel=function(e){var t=this.textFor("page");return t?t+" "+e:e.toString()},F.prototype.onSelectChange=function(e){var e=e.target,t=Number(e.value);Number.isNaN(t)?"previousButtons"===e.value?this.changePage(this.start-2):this.changePage(this.end):this.changePage(t-1)},F.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()},Object.defineProperty(F.prototype,"pageChooserLabel",{get:function(){return this.textFor("selectPage")},enumerable:!1,configurable:!0}),F);function F(e,t,n){e=re.call(this,e,n,t)||this;return e.pagerContext=n,e.numbersWrapClass=!0,e}D.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:D,deps:[{token:o.LocalizationService},{token:r.ChangeDetectorRef},{token:f}],target:r.ɵɵFactoryTarget.Component}),D.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:D,selector:"kendo-datapager-numeric-buttons",inputs:{buttonCount:"buttonCount"},host:{properties:{"class.k-pager-numbers-wrap":"this.numbersWrapClass"}},usesInheritance:!0,ngImport:r,template:'\n <select kendoPagerFocusable\n class="k-dropdown-list k-picker k-picker-md k-rounded-md k-picker-solid"\n [attr.title]="pageChooserLabel"\n [attr.aria-label]="pageChooserLabel"\n (change)="onSelectChange($event)">\n <option *ngIf="start > 1"\n class="k-link"\n value="previousButtons"\n [selected]="false"\n [attr.aria-label]="pageLabel(start - 1)">...\n </option>\n <option *ngFor="let num of buttons"\n [value]="num.toString()"\n [selected]="num === currentPage"\n [attr.aria-label]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}">\n {{num}}\n </option>\n <option *ngIf="end < totalPages"\n value="nextButtons"\n [selected]="false"\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)">...\n </option>\n </select>\n <ul [ngClass]="{\'k-pager-numbers\': true}">\n <li *ngIf="start > 1">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(start - 1)"\n [attr.title]="pageLabel(start - 1)"\n (click)="changePage(start - 2)">...</button>\n </li>\n <li *ngFor="let num of buttons">\n <button\n type="button" kendoPagerFocusable\n [attr.aria-label]="pageLabel(num)"\n [attr.title]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}"\n (click)="changePage(num - 1)">\n {{num}}\n </button>\n </li>\n <li *ngIf="end < totalPages">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)"\n [attr.title]="pageLabel(end + 1)"\n (click)="changePage(end)">...</button>\n </li>\n </ul>\n ',isInline:!0,directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]},{type:l.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:l.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:l.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:D,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-numeric-buttons",template:'\n <select kendoPagerFocusable\n class="k-dropdown-list k-picker k-picker-md k-rounded-md k-picker-solid"\n [attr.title]="pageChooserLabel"\n [attr.aria-label]="pageChooserLabel"\n (change)="onSelectChange($event)">\n <option *ngIf="start > 1"\n class="k-link"\n value="previousButtons"\n [selected]="false"\n [attr.aria-label]="pageLabel(start - 1)">...\n </option>\n <option *ngFor="let num of buttons"\n [value]="num.toString()"\n [selected]="num === currentPage"\n [attr.aria-label]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}">\n {{num}}\n </option>\n <option *ngIf="end < totalPages"\n value="nextButtons"\n [selected]="false"\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)">...\n </option>\n </select>\n <ul [ngClass]="{\'k-pager-numbers\': true}">\n <li *ngIf="start > 1">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(start - 1)"\n [attr.title]="pageLabel(start - 1)"\n (click)="changePage(start - 2)">...</button>\n </li>\n <li *ngFor="let num of buttons">\n <button\n type="button" kendoPagerFocusable\n [attr.aria-label]="pageLabel(num)"\n [attr.title]="pageLabel(num)"\n [attr.aria-current]="currentPage === num ? \'page\' : undefined"\n [ngClass]="{\'k-link\': true, \'k-selected\':currentPage === num}"\n (click)="changePage(num - 1)">\n {{num}}\n </button>\n </li>\n <li *ngIf="end < totalPages">\n <button\n type="button" kendoPagerFocusable\n class="k-link"\n [attr.aria-label]="pageLabel(end + 1)"\n [attr.title]="pageLabel(end + 1)"\n (click)="changePage(end)">...</button>\n </li>\n </ul>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:r.ChangeDetectorRef},{type:f}]},propDecorators:{numbersWrapClass:[{type:s.HostBinding,args:["class.k-pager-numbers-wrap"]}],buttonCount:[{type:s.Input}]}});c(ie,oe=u),Object.defineProperty(ie.prototype,"disabled",{get:function(){return this.currentPage===this.totalPages||!this.total},enumerable:!1,configurable:!0}),ie.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var oe,w=ie;function ie(e,t,n){return oe.call(this,e,t,n)||this}w.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:w,deps:[{token:o.LocalizationService},{token:f},{token:r.ChangeDetectorRef}],target:r.ɵɵFactoryTarget.Component}),w.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:w,selector:"kendo-datapager-next-buttons",usesInheritance:!0,ngImport:r,template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'nextPage\')"\n [attr.aria-label]="textFor(\'nextPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(currentPage) : false">\n <span class="k-icon k-i-arrow-e" role="note" [attr.aria-label]="textFor(\'nextPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-last"\n [class.k-disabled]="disabled"\n [title]="textFor(\'lastPage\')"\n [attr.aria-label]="textFor(\'lastPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(totalPages-1) : false">\n <span class="k-icon k-i-seek-e" role="note" [attr.aria-label]="textFor(\'lastPage\')"></span>\n </button>\n ',isInline:!0,directives:[{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]}],changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:w,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-next-buttons",template:'\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav"\n [class.k-disabled]="disabled"\n [title]="textFor(\'nextPage\')"\n [attr.aria-label]="textFor(\'nextPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(currentPage) : false">\n <span class="k-icon k-i-arrow-e" role="note" [attr.aria-label]="textFor(\'nextPage\')"></span>\n </button>\n <button\n type="button" kendoPagerFocusable\n class="k-link k-pager-nav k-pager-last"\n [class.k-disabled]="disabled"\n [title]="textFor(\'lastPage\')"\n [attr.aria-label]="textFor(\'lastPage\')"\n [attr.aria-disabled]="disabled ? true : undefined"\n (click)="currentPage !== totalPages ? changePage(totalPages-1) : false">\n <span class="k-icon k-i-seek-e" role="note" [attr.aria-label]="textFor(\'lastPage\')"></span>\n </button>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.ChangeDetectorRef}]}});c(O,se=u),Object.defineProperty(O.prototype,"current",{get:function(){return this.hasPages?this.currentPage:0},enumerable:!1,configurable:!0}),Object.defineProperty(O.prototype,"hasPages",{get:function(){return 0!==this.totalPages},enumerable:!1,configurable:!0}),O.prototype.ngAfterViewInit=function(){var e=this.numericInput.numericInput.nativeElement;this.renderer.setAttribute(e,"aria-label",this.textFor("inputLabel"))},O.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var se,L=O;function O(e,t,n,a,r){var o=se.call(this,e,t,a)||this;return o.pagerContext=t,o.zone=n,o.renderer=r,o.handleKeyDown=function(e){var t=o.numericInput.value||o.current;e.keyCode===h.Keys.Enter&&(e.preventDefault(),t!==o.current)&&o.zone.run(function(){o.changePage(t-1)})},o.handleBlur=function(){var e=o.numericInput.value;e?e!==o.current&&o.zone.run(function(){o.changePage(e-1)}):o.numericInput.writeValue(o.current)},o}L.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:L,deps:[{token:o.LocalizationService},{token:f},{token:r.NgZone},{token:r.ChangeDetectorRef},{token:r.Renderer2}],target:r.ɵɵFactoryTarget.Component}),L.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:L,selector:"kendo-datapager-input",viewQueries:[{propertyName:"numericInput",first:!0,predicate:n.NumericTextBoxComponent,descendants:!0,static:!0}],usesInheritance:!0,ngImport:r,template:'\n <span [ngClass]="{\'k-pager-input\': true, \'k-label\': true}">\n {{textFor(\'page\')}}\n <kendo-numerictextbox kendoPagerFocusable\n [spinners]="false"\n [decimals]="0"\n format="n0"\n [disabled]="!hasPages"\n [value]="current"\n [min]="hasPages ? 1 : 0"\n [max]="totalPages"\n [autoCorrect]="true"\n [title]="textFor(\'pageNumberInputTitle\')"\n [kendoEventsOutsideAngular]="{\n keydown: handleKeyDown,\n focusout: handleBlur\n }">\n </kendo-numerictextbox>\n {{textFor(\'of\')}} {{totalPages}}\n </span>\n ',isInline:!0,components:[{type:j.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]}],directives:[{type:l.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:v,selector:"[kendoPagerFocusable]",exportAs:["kendoPagerFocusable"]},{type:i.EventsOutsideAngularDirective,selector:"[kendoEventsOutsideAngular]",inputs:["kendoEventsOutsideAngular","scope"]}]}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:L,decorators:[{type:s.Component,args:[{selector:"kendo-datapager-input",template:'\n <span [ngClass]="{\'k-pager-input\': true, \'k-label\': true}">\n {{textFor(\'page\')}}\n <kendo-numerictextbox kendoPagerFocusable\n [spinners]="false"\n [decimals]="0"\n format="n0"\n [disabled]="!hasPages"\n [value]="current"\n [min]="hasPages ? 1 : 0"\n [max]="totalPages"\n [autoCorrect]="true"\n [title]="textFor(\'pageNumberInputTitle\')"\n [kendoEventsOutsideAngular]="{\n keydown: handleKeyDown,\n focusout: handleBlur\n }">\n </kendo-numerictextbox>\n {{textFor(\'of\')}} {{totalPages}}\n </span>\n '}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:f},{type:r.NgZone},{type:r.ChangeDetectorRef},{type:r.Renderer2}]},propDecorators:{numericInput:[{type:s.ViewChild,args:[n.NumericTextBoxComponent,{static:!0}]}]}});c(N,pe=u),Object.defineProperty(N.prototype,"maxItems",{get:function(){return Math.min(this.currentPage*this.pageSize,this.total)},enumerable:!1,configurable:!0}),Object.defineProperty(N.prototype,"currentPageText",{get:function(){return this.total?(this.currentPage-1)*this.pageSize+1:0},enumerable:!1,configurable:!0}),Object.defineProperty(N.prototype,"classes",{get:function(){return!0},enumerable:!1,configurable:!0}),N.prototype.onChanges=function(e){var t=e.total,n=e.skip,e=e.pageSize;this.total=t,this.skip=n,this.pageSize=e,this.cd.markForCheck()};var pe,T=N;function N(e,t,n){e=pe.call(this,e,n,t)||this;return e.pagerContext=n,e}T.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:T,deps:[{token:o.LocalizationService},{token:r.ChangeDetectorRef},{token:f}],target:r.ɵɵFactoryTarget.Component}),T.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:T,selector:"kendo-datapager-info",host:{properties:{"class.k-pager-info":"this.classes","class.k-label":"this.classes"}},usesInheritance:!0,ngImport:r,template:"{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}",isInline:!0,changeDetection:r.ChangeDetectionStrategy.OnPush}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:T,decorators:[{type:s.Component,args:[{changeDetection:s.ChangeDetectionStrategy.OnPush,selector:"kendo-datapager-info",template:"{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}"}]}],ctorParameters:function(){return[{type:o.LocalizationService},{type:r.ChangeDetectorRef},{type:f}]},propDecorators:{classes:[{type:s.HostBinding,args:["class.k-pager-info"]},{type:s.HostBinding,args:["class.k-label"]}]}});var ge={name:"@progress/kendo-angular-pager",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1669366305,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"},V=(Object.defineProperty(E.prototype,"pageSizeValues",{get:function(){return this._pageSizeValues},set:function(e){this._pageSizeValues=Array.isArray(e)?e:!!e&&J},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"navigable",{get:function(){return this._navigable},set:function(e){this._navigable=e,this.navigationService.isNavigable=e},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"dir",{get:function(){return this.direction},enumerable:!1,configurable:!0}),E.prototype.focusHandler=function(e){e=e.target!==this.element.nativeElement;this.navigationService.toggleInnerNavigation(e)},Object.defineProperty(E.prototype,"totalPages",{get:function(){return Math.ceil((this.total||0)/this.pageSize)},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"currentPage",{get:function(){return Math.floor((this.skip||0)/this.pageSize)+1},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"templateContext",{get:function(){var e=this._templateContext;return e.totalPages=this.totalPages,e.total=this.total,e.skip=this.skip,e.pageSize=this.pageSize,e.currentPage=this.currentPage,e},enumerable:!1,configurable:!0}),E.prototype.ngOnInit=function(){var e,t=this;this.subscriptions.add(this.pagerContext.pageChange.subscribe(this.changePage.bind(this))),this.subscriptions.add(this.pagerContext.pageSizeChange.subscribe(this.changePageSize.bind(this))),this.subscriptions.add(this.resizeSensor.resize.subscribe(function(){return t.resizeHandler()})),this.subscriptions.add(this.localization.changes.subscribe(function(e){e=e.rtl;t.direction=e?"rtl":"ltr"})),this.subscriptions.add(this.navigationService.innerNavigationChange.subscribe(this.innerNavigationChange.bind(this))),this.navigable&&(e=this.element.nativeElement,this.ngZone.runOutsideAngular(function(){t.subscriptions.add(t.renderer.listen(e,"keydown",t.keyDownHandler.bind(t)))}))},E.prototype.ngAfterViewInit=function(){this.resizeHandler(),this.renderer.setAttribute(this.element.nativeElement,"aria-label",this.ariaLabel)},E.prototype.ngOnChanges=function(e){h.anyChanged(["pageSize","skip","total"],e,!1)&&(this.pagerContext.notifyChanges({pageSize:this.pageSize,skip:this.skip,total:this.total}),this.renderer.setAttribute(this.element.nativeElement,"aria-label",this.ariaLabel))},E.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},E.prototype.changePage=function(e){this.pageChange.emit(e)},E.prototype.changePageSize=function(e){this.pageSizeChange.emit(e),e.isDefaultPrevented()||("all"===e.newPageSize?this.pageChange.emit({skip:0,take:this.total}):this.pageChange.emit({skip:0,take:e.newPageSize}))},E.prototype.onPageSizeChange=function(e){this.pageSizeChange.emit(e),e.isDefaultPrevented()||this.pageChange.emit({skip:this.skip,take:e.newPageSize})},E.prototype.textFor=function(e){return this.localization.get(e)},Object.defineProperty(E.prototype,"ariaLabel",{get:function(){return this.textFor("page")+" "+this.currentPage+" "+this.textFor("of")+" "+this.totalPages},enumerable:!1,configurable:!0}),E.prototype.keyDownHandler=function(t){var n=this,a=t.target,r=this.element.nativeElement,o=t.keyCode===h.Keys.ArrowLeft||t.keyCode===h.Keys.PageUp,i=t.keyCode===h.Keys.ArrowRight||t.keyCode===h.Keys.PageDown,s=t.keyCode===h.Keys.Enter,p=t.keyCode===h.Keys.Home,g=t.keyCode===h.Keys.End,l=t.keyCode===h.Keys.Escape,c=t.keyCode===h.Keys.Tab,u=1===this.currentPage,d=this.currentPage===this.totalPages;this.ngZone.run(function(){var e;p?(t.preventDefault(),u||n.pagerContext.changePage(0)):g?(t.preventDefault(),d||n.pagerContext.changePage(n.totalPages-1)):n.isInnerNavigationEnabled?l?(n.navigationService.toggleInnerNavigation(!1),r.focus()):c&&n.navigationService.keepFocusWithinComponent(r,a,t):o?(t.preventDefault(),u||n.pagerContext.prevPage()):i?(t.preventDefault(),d||n.pagerContext.nextPage()):s&&t.target===r&&(t.preventDefault(),e=b(n.navigationService.getFirstAndLastFocusable(r),1)[0],n.navigationService.toggleInnerNavigation(!0),null!=e)&&e.focus()})},E.prototype.innerNavigationChange=function(e){this.isInnerNavigationEnabled=e},E);function E(e,t,n,a,r,o){var i=this;this.pagerContext=e,this.element=t,this.localization=n,this.renderer=a,this.ngZone=r,this.navigationService=o,this.total=0,this.skip=0,this.buttonCount=10,this.info=!0,this.type="numeric",this.previousNext=!0,this.pageChange=new s.EventEmitter,this.pageSizeChange=new s.EventEmitter,this.pagerClass=!0,this.widgetRole="application",this.roleDescription="pager",this.keyShortcuts="Enter ArrowRight ArrowLeft",this.hostTabindex="0",this.subscriptions=new p.Subscription,this._templateContext={},this._pageSizeValues=J,this.isInnerNavigationEnabled=!1,this._navigable=!1,this.resizeHandler=function(){var e,t;i.template||((t=(e=i.element.nativeElement).offsetWidth)<600?(e.classList.remove("k-pager-md"),e.classList.add("k-pager-sm")):(600<=t&&t<768?e.classList.add("k-pager-md"):e.classList.remove("k-pager-md"),e.classList.remove("k-pager-sm")))},M.validatePackage(ge),this.direction=n.rtl?"rtl":"ltr"}V.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:V,deps:[{token:f},{token:r.ElementRef},{token:o.LocalizationService},{token:r.Renderer2},{token:r.NgZone},{token:P}],target:r.ɵɵFactoryTarget.Component}),V.ɵcmp=r.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:V,selector:"kendo-datapager",inputs:{total:"total",skip:"skip",pageSize:"pageSize",buttonCount:"buttonCount",info:"info",type:"type",pageSizeValues:"pageSizeValues",previousNext:"previousNext",navigable:"navigable"},outputs:{pageChange:"pageChange",pageSizeChange:"pageSizeChange"},host:{listeners:{focusin:"focusHandler($event)"},properties:{"class.k-pager":"this.pagerClass","attr.role":"this.widgetRole","attr.aria-roledescription":"this.roleDescription","attr.aria-keyshortcuts":"this.keyShortcuts","attr.tabindex":"this.hostTabindex","attr.dir":"this.dir"}},providers:[t.LocalizationService,f,P],queries:[{propertyName:"template",first:!0,predicate:z,descendants:!0}],viewQueries:[{propertyName:"resizeSensor",first:!0,predicate:h.ResizeSensorComponent,descendants:!0,static:!0}],exportAs:["kendoDataPager"],usesOnChanges:!0,ngImport:r,template:'\n <ng-container kendoDataPagerLocalizedMessages\n i18n-firstPage="kendo.pager.firstPage|The label for the first page button in the Pager"\n firstPage="Go to the first page"\n\n i18n-previousPage="kendo.pager.previousPage|The label for the previous page button in the Pager"\n previousPage="Go to the previous page"\n\n i18n-nextPage="kendo.pager.nextPage|The label for the next page button in the Pager"\n nextPage="Go to the next page"\n\n i18n-lastPage="kendo.pager.lastPage|The label for the last page button in the Pager"\n lastPage="Go to the last page"\n\n i18n-page="kendo.pager.page|The label before the current page number in the Pager"\n page="Page"\n\n i18n-of="kendo.pager.of|The label before the total pages number in the Pager"\n of="of"\n\n i18n-pageNumberInputTitle="kendo.pager.pageNumberInputTitle|The label for the pager input in the Pager"\n pageNumberInputTitle="Page Number"\n\n i18n-items="kendo.pager.items|The label after the total pages number in the Pager"\n items="items"\n\n i18n-itemsPerPage="kendo.pager.itemsPerPage|The label for the page size chooser in the Pager"\n itemsPerPage="items per page"\n\n i18n-selectPage="kendo.pager.selectPage|The text of the title and aria-label attributes applied to the page chooser in the Pager"\n selectPage="Select page"\n\n i18n-inputLabel="kendo.pager.inputLabel|The text of the aria-label attribute applied to the input element for entering the page number."\n inputLabel="Type a page number"\n >\n </ng-container>\n <ng-container\n *ngIf="template?.templateRef"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext">\n </ng-container>\n <ng-container *ngIf="!template?.templateRef">\n <kendo-datapager-prev-buttons *ngIf="previousNext"></kendo-datapager-prev-buttons>\n <kendo-datapager-numeric-buttons\n *ngIf="type === \'numeric\' && buttonCount > 0"\n [buttonCount]="buttonCount">\n </kendo-datapager-numeric-buttons>\n <kendo-datapager-input *ngIf="type === \'input\'"></kendo-datapager-input>\n <kendo-datapager-next-buttons *ngIf="previousNext"></kendo-datapager-next-buttons>\n <kendo-datapager-info *ngIf=\'info\'></kendo-datapager-info>\n <kendo-datapager-page-sizes *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>\n </ng-container>\n <kendo-resize-sensor></kendo-resize-sensor>\n ',isInline:!0,components:[{type:x,selector:"kendo-datapager-prev-buttons"},{type:D,selector:"kendo-datapager-numeric-buttons",inputs:["buttonCount"]},{type:L,selector:"kendo-datapager-input"},{type:w,selector:"kendo-datapager-next-buttons"},{type:T,selector:"kendo-datapager-info"},{type:S,selector:"kendo-datapager-page-sizes",inputs:["pageSizes"]},{type:i.ResizeSensorComponent,selector:"kendo-resize-sensor",inputs:["rateLimit"],outputs:["resize"]}],directives:[{type:m,selector:"[kendoDataPagerLocalizedMessages]"},{type:l.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:l.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:V,decorators:[{type:s.Component,args:[{selector:"kendo-datapager",exportAs:"kendoDataPager",providers:[t.LocalizationService,f,P],template:'\n <ng-container kendoDataPagerLocalizedMessages\n i18n-firstPage="kendo.pager.firstPage|The label for the first page button in the Pager"\n firstPage="Go to the first page"\n\n i18n-previousPage="kendo.pager.previousPage|The label for the previous page button in the Pager"\n previousPage="Go to the previous page"\n\n i18n-nextPage="kendo.pager.nextPage|The label for the next page button in the Pager"\n nextPage="Go to the next page"\n\n i18n-lastPage="kendo.pager.lastPage|The label for the last page button in the Pager"\n lastPage="Go to the last page"\n\n i18n-page="kendo.pager.page|The label before the current page number in the Pager"\n page="Page"\n\n i18n-of="kendo.pager.of|The label before the total pages number in the Pager"\n of="of"\n\n i18n-pageNumberInputTitle="kendo.pager.pageNumberInputTitle|The label for the pager input in the Pager"\n pageNumberInputTitle="Page Number"\n\n i18n-items="kendo.pager.items|The label after the total pages number in the Pager"\n items="items"\n\n i18n-itemsPerPage="kendo.pager.itemsPerPage|The label for the page size chooser in the Pager"\n itemsPerPage="items per page"\n\n i18n-selectPage="kendo.pager.selectPage|The text of the title and aria-label attributes applied to the page chooser in the Pager"\n selectPage="Select page"\n\n i18n-inputLabel="kendo.pager.inputLabel|The text of the aria-label attribute applied to the input element for entering the page number."\n inputLabel="Type a page number"\n >\n </ng-container>\n <ng-container\n *ngIf="template?.templateRef"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext">\n </ng-container>\n <ng-container *ngIf="!template?.templateRef">\n <kendo-datapager-prev-buttons *ngIf="previousNext"></kendo-datapager-prev-buttons>\n <kendo-datapager-numeric-buttons\n *ngIf="type === \'numeric\' && buttonCount > 0"\n [buttonCount]="buttonCount">\n </kendo-datapager-numeric-buttons>\n <kendo-datapager-input *ngIf="type === \'input\'"></kendo-datapager-input>\n <kendo-datapager-next-buttons *ngIf="previousNext"></kendo-datapager-next-buttons>\n <kendo-datapager-info *ngIf=\'info\'></kendo-datapager-info>\n <kendo-datapager-page-sizes *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>\n </ng-container>\n <kendo-resize-sensor></kendo-resize-sensor>\n '}]}],ctorParameters:function(){return[{type:f},{type:r.ElementRef},{type:o.LocalizationService},{type:r.Renderer2},{type:r.NgZone},{type:P}]},propDecorators:{resizeSensor:[{type:s.ViewChild,args:[h.ResizeSensorComponent,{static:!0}]}],template:[{type:s.ContentChild,args:[z,{static:!1}]}],total:[{type:s.Input}],skip:[{type:s.Input}],pageSize:[{type:s.Input}],buttonCount:[{type:s.Input}],info:[{type:s.Input}],type:[{type:s.Input}],pageSizeValues:[{type:s.Input}],previousNext:[{type:s.Input}],navigable:[{type:s.Input}],pageChange:[{type:s.Output}],pageSizeChange:[{type:s.Output}],pagerClass:[{type:s.HostBinding,args:["class.k-pager"]}],widgetRole:[{type:s.HostBinding,args:["attr.role"]}],roleDescription:[{type:s.HostBinding,args:["attr.aria-roledescription"]}],keyShortcuts:[{type:s.HostBinding,args:["attr.aria-keyshortcuts"]}],hostTabindex:[{type:s.HostBinding,args:["attr.tabindex"]}],dir:[{type:s.HostBinding,args:["attr.dir"]}],focusHandler:[{type:s.HostListener,args:["focusin",["$event"]]}]}});g=[R.CommonModule,n.NumericTextBoxModule,A.DropDownListModule,h.EventsModule,h.ResizeSensorModule],j=[V,x,w,D,L,T,S,z,m,d,v],u=[{provide:t.L10N_PREFIX,useValue:"kendo.pager"}],le.exports=function(){return[V,x,w,D,L,T,S,z]},i=le;function le(){}i.ɵfac=r.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:i,deps:[],target:r.ɵɵFactoryTarget.NgModule}),i.ɵmod=r.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:i,declarations:[V,x,w,D,L,T,S,z,m,d,v],imports:[R.CommonModule,n.NumericTextBoxModule,A.DropDownListModule,h.EventsModule,h.ResizeSensorModule],exports:[V,x,w,D,L,T,S,z,m,d,v]}),i.ɵinj=r.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:i,providers:[u],imports:[_([],b(g))]}),r.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:r,type:i,decorators:[{type:s.NgModule,args:[{declarations:[j],exports:[j],imports:_([],b(g)),providers:[u]}]}]}),e.CustomMessagesComponent=d,e.LocalizedMessagesDirective=m,e.PageSizeChangeEvent=q,e.PagerComponent=V,e.PagerFocusableDirective=v,e.PagerInfoComponent=T,e.PagerInputComponent=L,e.PagerModule=i,e.PagerNextButtonsComponent=w,e.PagerNumericButtonsComponent=D,e.PagerPageSizesComponent=S,e.PagerPrevButtonsComponent=x,e.PagerTemplateDirective=z,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-pager',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
12
|
+
publishDate: 1669366305,
|
|
13
13
|
version: '',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
15
15
|
};
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import { Component, ChangeDetectionStrategy, HostBinding, Input, ViewChild } from '@angular/core';
|
|
6
6
|
import { PagerElementComponent } from './pager-element.component';
|
|
7
7
|
import { PageSizeChangeEvent } from './pagesizechange-event';
|
|
8
|
+
import { Keys } from '@progress/kendo-angular-common';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
11
|
import * as i2 from "./pager-context.service";
|
|
@@ -14,9 +15,11 @@ import * as i4 from "./focusable.directive";
|
|
|
14
15
|
* Displays a drop-down list for the page size selection ([see example]({% slug pager_settings %})).
|
|
15
16
|
*/
|
|
16
17
|
export class PagerPageSizesComponent extends PagerElementComponent {
|
|
17
|
-
constructor(localization, cd, pagerContext) {
|
|
18
|
+
constructor(localization, cd, pagerContext, element, ngZone) {
|
|
18
19
|
super(localization, pagerContext, cd);
|
|
19
20
|
this.pagerContext = pagerContext;
|
|
21
|
+
this.element = element;
|
|
22
|
+
this.ngZone = ngZone;
|
|
20
23
|
this._pageSizes = [];
|
|
21
24
|
}
|
|
22
25
|
/**
|
|
@@ -170,6 +173,12 @@ export class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
170
173
|
}
|
|
171
174
|
ngAfterViewInit() {
|
|
172
175
|
this.dropDownList.wrapper.nativeElement.setAttribute('aria-label', this.textFor('itemsPerPage'));
|
|
176
|
+
this.ngZone.runOutsideAngular(() => {
|
|
177
|
+
this.element.nativeElement.addEventListener('keydown', this.keyDownHandler.bind(this), true);
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
ngOnDestroy() {
|
|
181
|
+
this.element.nativeElement.removeEventListener('keydown', this.keyDownHandler);
|
|
173
182
|
}
|
|
174
183
|
/**
|
|
175
184
|
* @hidden
|
|
@@ -187,8 +196,14 @@ export class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
187
196
|
this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
|
|
188
197
|
this.cd.markForCheck();
|
|
189
198
|
}
|
|
199
|
+
keyDownHandler(ev) {
|
|
200
|
+
if (ev.keyCode === Keys.Escape && this.dropDownList.isOpen) {
|
|
201
|
+
ev.stopPropagation();
|
|
202
|
+
this.dropDownList.toggle(false);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
190
205
|
}
|
|
191
|
-
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
206
|
+
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
192
207
|
PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PagerPageSizesComponent, selector: "kendo-datapager-page-sizes", inputs: { pageSizes: "pageSizes" }, host: { properties: { "class.k-pager-sizes": "this.classes", "class.k-label": "this.classes" } }, viewQueries: [{ propertyName: "dropDownList", first: true, predicate: ["dropdownlist"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
193
208
|
<kendo-dropdownlist kendoPagerFocusable
|
|
194
209
|
#dropdownlist
|
|
@@ -217,7 +232,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
217
232
|
{{ textFor('itemsPerPage') }}
|
|
218
233
|
`
|
|
219
234
|
}]
|
|
220
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i2.PagerContextService }]; }, propDecorators: { dropDownList: [{
|
|
235
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i2.PagerContextService }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { dropDownList: [{
|
|
221
236
|
type: ViewChild,
|
|
222
237
|
args: ['dropdownlist', { static: true }]
|
|
223
238
|
}], pageSizes: [{
|
|
@@ -232,11 +232,13 @@ export class PagerComponent {
|
|
|
232
232
|
const isFirstPage = this.currentPage === 1;
|
|
233
233
|
const isLastPage = this.currentPage === this.totalPages;
|
|
234
234
|
this.ngZone.run(() => {
|
|
235
|
-
if (isHome
|
|
236
|
-
|
|
235
|
+
if (isHome) {
|
|
236
|
+
e.preventDefault();
|
|
237
|
+
!isFirstPage && this.pagerContext.changePage(0);
|
|
237
238
|
}
|
|
238
|
-
else if (isEnd
|
|
239
|
-
|
|
239
|
+
else if (isEnd) {
|
|
240
|
+
e.preventDefault();
|
|
241
|
+
!isLastPage && this.pagerContext.changePage(this.totalPages - 1);
|
|
240
242
|
}
|
|
241
243
|
else if (this.isInnerNavigationEnabled) {
|
|
242
244
|
if (isEsc) {
|
|
@@ -248,11 +250,13 @@ export class PagerComponent {
|
|
|
248
250
|
}
|
|
249
251
|
}
|
|
250
252
|
else {
|
|
251
|
-
if (isArrowLeftOrPageUp
|
|
252
|
-
|
|
253
|
+
if (isArrowLeftOrPageUp) {
|
|
254
|
+
e.preventDefault();
|
|
255
|
+
!isFirstPage && this.pagerContext.prevPage();
|
|
253
256
|
}
|
|
254
|
-
else if (isArrowRightOrPageDown
|
|
255
|
-
|
|
257
|
+
else if (isArrowRightOrPageDown) {
|
|
258
|
+
e.preventDefault();
|
|
259
|
+
!isLastPage && this.pagerContext.nextPage();
|
|
256
260
|
}
|
|
257
261
|
else if (isEnter) {
|
|
258
262
|
if (e.target !== wrapper) {
|
|
@@ -7,14 +7,14 @@ import { Directive, Input, forwardRef, Component, ChangeDetectionStrategy, ViewC
|
|
|
7
7
|
import * as i1 from '@progress/kendo-angular-l10n';
|
|
8
8
|
import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
9
9
|
import { Subject, Subscription } from 'rxjs';
|
|
10
|
+
import * as i6 from '@progress/kendo-angular-common';
|
|
11
|
+
import { Keys, anyChanged, ResizeSensorComponent, EventsModule, ResizeSensorModule } from '@progress/kendo-angular-common';
|
|
10
12
|
import * as i3 from '@progress/kendo-angular-dropdowns';
|
|
11
13
|
import { DropDownListModule } from '@progress/kendo-angular-dropdowns';
|
|
12
14
|
import * as i4 from '@angular/common';
|
|
13
15
|
import { CommonModule } from '@angular/common';
|
|
14
16
|
import * as i3$1 from '@progress/kendo-angular-inputs';
|
|
15
17
|
import { NumericTextBoxComponent, NumericTextBoxModule } from '@progress/kendo-angular-inputs';
|
|
16
|
-
import * as i6 from '@progress/kendo-angular-common';
|
|
17
|
-
import { Keys, anyChanged, ResizeSensorComponent, EventsModule, ResizeSensorModule } from '@progress/kendo-angular-common';
|
|
18
18
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
19
19
|
|
|
20
20
|
/**
|
|
@@ -462,9 +462,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
462
462
|
* Displays a drop-down list for the page size selection ([see example]({% slug pager_settings %})).
|
|
463
463
|
*/
|
|
464
464
|
class PagerPageSizesComponent extends PagerElementComponent {
|
|
465
|
-
constructor(localization, cd, pagerContext) {
|
|
465
|
+
constructor(localization, cd, pagerContext, element, ngZone) {
|
|
466
466
|
super(localization, pagerContext, cd);
|
|
467
467
|
this.pagerContext = pagerContext;
|
|
468
|
+
this.element = element;
|
|
469
|
+
this.ngZone = ngZone;
|
|
468
470
|
this._pageSizes = [];
|
|
469
471
|
}
|
|
470
472
|
/**
|
|
@@ -618,6 +620,12 @@ class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
618
620
|
}
|
|
619
621
|
ngAfterViewInit() {
|
|
620
622
|
this.dropDownList.wrapper.nativeElement.setAttribute('aria-label', this.textFor('itemsPerPage'));
|
|
623
|
+
this.ngZone.runOutsideAngular(() => {
|
|
624
|
+
this.element.nativeElement.addEventListener('keydown', this.keyDownHandler.bind(this), true);
|
|
625
|
+
});
|
|
626
|
+
}
|
|
627
|
+
ngOnDestroy() {
|
|
628
|
+
this.element.nativeElement.removeEventListener('keydown', this.keyDownHandler);
|
|
621
629
|
}
|
|
622
630
|
/**
|
|
623
631
|
* @hidden
|
|
@@ -635,8 +643,14 @@ class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
635
643
|
this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
|
|
636
644
|
this.cd.markForCheck();
|
|
637
645
|
}
|
|
646
|
+
keyDownHandler(ev) {
|
|
647
|
+
if (ev.keyCode === Keys.Escape && this.dropDownList.isOpen) {
|
|
648
|
+
ev.stopPropagation();
|
|
649
|
+
this.dropDownList.toggle(false);
|
|
650
|
+
}
|
|
651
|
+
}
|
|
638
652
|
}
|
|
639
|
-
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
653
|
+
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
640
654
|
PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PagerPageSizesComponent, selector: "kendo-datapager-page-sizes", inputs: { pageSizes: "pageSizes" }, host: { properties: { "class.k-pager-sizes": "this.classes", "class.k-label": "this.classes" } }, viewQueries: [{ propertyName: "dropDownList", first: true, predicate: ["dropdownlist"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
641
655
|
<kendo-dropdownlist kendoPagerFocusable
|
|
642
656
|
#dropdownlist
|
|
@@ -665,7 +679,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
665
679
|
{{ textFor('itemsPerPage') }}
|
|
666
680
|
`
|
|
667
681
|
}]
|
|
668
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { dropDownList: [{
|
|
682
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { dropDownList: [{
|
|
669
683
|
type: ViewChild,
|
|
670
684
|
args: ['dropdownlist', { static: true }]
|
|
671
685
|
}], pageSizes: [{
|
|
@@ -1226,7 +1240,7 @@ const packageMetadata = {
|
|
|
1226
1240
|
name: '@progress/kendo-angular-pager',
|
|
1227
1241
|
productName: 'Kendo UI for Angular',
|
|
1228
1242
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
1229
|
-
publishDate:
|
|
1243
|
+
publishDate: 1669366305,
|
|
1230
1244
|
version: '',
|
|
1231
1245
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
1232
1246
|
};
|
|
@@ -1437,11 +1451,13 @@ class PagerComponent {
|
|
|
1437
1451
|
const isFirstPage = this.currentPage === 1;
|
|
1438
1452
|
const isLastPage = this.currentPage === this.totalPages;
|
|
1439
1453
|
this.ngZone.run(() => {
|
|
1440
|
-
if (isHome
|
|
1441
|
-
|
|
1454
|
+
if (isHome) {
|
|
1455
|
+
e.preventDefault();
|
|
1456
|
+
!isFirstPage && this.pagerContext.changePage(0);
|
|
1442
1457
|
}
|
|
1443
|
-
else if (isEnd
|
|
1444
|
-
|
|
1458
|
+
else if (isEnd) {
|
|
1459
|
+
e.preventDefault();
|
|
1460
|
+
!isLastPage && this.pagerContext.changePage(this.totalPages - 1);
|
|
1445
1461
|
}
|
|
1446
1462
|
else if (this.isInnerNavigationEnabled) {
|
|
1447
1463
|
if (isEsc) {
|
|
@@ -1453,11 +1469,13 @@ class PagerComponent {
|
|
|
1453
1469
|
}
|
|
1454
1470
|
}
|
|
1455
1471
|
else {
|
|
1456
|
-
if (isArrowLeftOrPageUp
|
|
1457
|
-
|
|
1472
|
+
if (isArrowLeftOrPageUp) {
|
|
1473
|
+
e.preventDefault();
|
|
1474
|
+
!isFirstPage && this.pagerContext.prevPage();
|
|
1458
1475
|
}
|
|
1459
|
-
else if (isArrowRightOrPageDown
|
|
1460
|
-
|
|
1476
|
+
else if (isArrowRightOrPageDown) {
|
|
1477
|
+
e.preventDefault();
|
|
1478
|
+
!isLastPage && this.pagerContext.nextPage();
|
|
1461
1479
|
}
|
|
1462
1480
|
else if (isEnter) {
|
|
1463
1481
|
if (e.target !== wrapper) {
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ChangeDetectorRef, AfterViewInit } from '@angular/core';
|
|
5
|
+
import { ChangeDetectorRef, AfterViewInit, ElementRef, OnDestroy, NgZone } from '@angular/core';
|
|
6
6
|
import { PagerElementComponent } from './pager-element.component';
|
|
7
7
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
8
8
|
import { PagerContextService, PagerContextChanges } from "./pager-context.service";
|
|
@@ -12,8 +12,10 @@ import * as i0 from "@angular/core";
|
|
|
12
12
|
/**
|
|
13
13
|
* Displays a drop-down list for the page size selection ([see example]({% slug pager_settings %})).
|
|
14
14
|
*/
|
|
15
|
-
export declare class PagerPageSizesComponent extends PagerElementComponent implements AfterViewInit {
|
|
15
|
+
export declare class PagerPageSizesComponent extends PagerElementComponent implements AfterViewInit, OnDestroy {
|
|
16
16
|
protected pagerContext: PagerContextService;
|
|
17
|
+
private element;
|
|
18
|
+
private ngZone;
|
|
17
19
|
private dropDownList;
|
|
18
20
|
/**
|
|
19
21
|
* The page sizes collection. Can contain numbers and [PageSizeItem]({% slug api_pager_pagesizeitem %}) objects.
|
|
@@ -142,13 +144,15 @@ export declare class PagerPageSizesComponent extends PagerElementComponent imple
|
|
|
142
144
|
*/
|
|
143
145
|
get classes(): boolean;
|
|
144
146
|
private _pageSizes;
|
|
145
|
-
constructor(localization: LocalizationService, cd: ChangeDetectorRef, pagerContext: PagerContextService);
|
|
147
|
+
constructor(localization: LocalizationService, cd: ChangeDetectorRef, pagerContext: PagerContextService, element: ElementRef, ngZone: NgZone);
|
|
146
148
|
ngAfterViewInit(): void;
|
|
149
|
+
ngOnDestroy(): void;
|
|
147
150
|
/**
|
|
148
151
|
* @hidden
|
|
149
152
|
*/
|
|
150
153
|
pageSizeChange(value: any, dropdownlist: DropDownListComponent): void;
|
|
151
154
|
protected onChanges({ total, skip, pageSize }: PagerContextChanges): void;
|
|
155
|
+
private keyDownHandler;
|
|
152
156
|
static ɵfac: i0.ɵɵFactoryDeclaration<PagerPageSizesComponent, never>;
|
|
153
157
|
static ɵcmp: i0.ɵɵComponentDeclaration<PagerPageSizesComponent, "kendo-datapager-page-sizes", never, { "pageSizes": "pageSizes"; }, {}, never, never>;
|
|
154
158
|
}
|