@progress/kendo-angular-listview 4.0.3 → 4.0.4

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.
@@ -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-common"),require("@progress/kendo-licensing"),require("@progress/kendo-angular-l10n"),require("rxjs"),require("@angular/forms"),require("rxjs/operators"),require("@progress/kendo-angular-pager"),require("@angular/common"),require("@progress/kendo-angular-buttons")):"function"==typeof define&&define.amd?define("KendoAngularListview",["exports","@angular/core","@progress/kendo-angular-common","@progress/kendo-licensing","@progress/kendo-angular-l10n","rxjs","@angular/forms","rxjs/operators","@progress/kendo-angular-pager","@angular/common","@progress/kendo-angular-buttons"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularListview={},e.ng.core,e.KendoAngularCommon,e.KendoLicensing,e.KendoAngularL10N,e.rxjs,e.ng.forms,e.rxjs.operators,e.KendoAngularPager,e.ng.common,e.KendoAngularButtons)}(this,function(e,r,a,z,t,n,i,j,o,s,l){"use strict";function p(n){var i;return n&&n.__esModule?n:(i=Object.create(null),n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),i.default=n,Object.freeze(i))}function A(e,t){var n=e.matches||e.msMatchesSelector||e.webkitMatchesSelector;return!!v(n)&&n.call(e,t)}function M(e){return!!v(e)&&A(e,K)}function H(e){return v(e)?Number(e.getAttribute("data-kendo-listview-item-index")):null}function _(e,t){for(var n=e;null!==n&&1===n.nodeType;){if(A(n,t))return n;n=n.parentElement||n.parentNode}return null}function c(e){return v(e)?(e=_(e,K),H(e)):null}var d=p(r),B=p(a),g=p(t),m=p(o),u=p(s),Z={name:"@progress/kendo-angular-listview",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1668698801,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"},K=".k-listview-item",v=function(e){return null!=e},h=(Object.defineProperty(y.prototype,"isEnabled",{get:function(){return v(this.activeIndex)},set:function(e){this.activeIndex=e?0:null,this.changes.next()},enumerable:!1,configurable:!0}),y.prototype.isActive=function(e){return e===this.activeIndex},y.prototype.handleKeyDown=function(e,t){switch(e.keyCode){case a.Keys.ArrowLeft:case a.Keys.ArrowUp:this.navigateToPrevious();break;case a.Keys.ArrowRight:case a.Keys.ArrowDown:this.navigateToNext(t);break;case a.Keys.Home:this.navigateTo(0);break;case a.Keys.End:this.navigateTo(t-1);break;default:return}e.preventDefault()},y.prototype.handleFocusIn=function(e){var t,e=e.target;M(e)?(t=H(e),this.isFocused&&t===this.activeIndex||(this.activeIndex=t,this.isFocused=!0,this.changes.next())):(t=_(e,".k-listview-item"),v(t)&&(e=H(t),this.setActiveIndex(e)))},y.prototype.handleFocusOut=function(e){M(e.target)&&!M(v((e=e).relatedTarget)&&a.isDocumentAvailable()?e.relatedTarget||document.activeElement:null)&&(this.isFocused=!1,this.changes.next())},y.prototype.setActiveIndex=function(e){this.isEnabled&&e!==this.activeIndex&&(this.activeIndex=e,this.changes.next())},y.prototype.focusIndex=function(e,t){var n;this.isEnabled&&(e=parseInt(e,10),t=t-1,n=isNaN(e)?this.activeIndex:(n=0,t=t,!v(e=e)||e<=n?n:t<=e?t:e),this.navigateTo(n))},y.prototype.navigateTo=function(e){this.isFocused&&this.activeIndex===e||(this.isFocused=!0,this.activeIndex=e,this.changes.next())},y.prototype.navigateToPrevious=function(){var e=Math.max(this.activeIndex-1,0);this.navigateTo(e)},y.prototype.navigateToNext=function(e){e=Math.min(this.activeIndex+1,e-1);this.navigateTo(e)},y);function y(){this.changes=new n.Subject,this.isFocused=!1,this.activeIndex=null}h.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:h,deps:[],target:d.ɵɵFactoryTarget.Injectable}),h.ɵprov=d.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:h}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:h,decorators:[{type:r.Injectable}]});I.prototype.ngOnChanges=function(){this.updateNavigationState()},I.prototype.ngOnInit=function(){this.navigationSubscription=this.navigationService.changes.subscribe(this.updateNavigationState.bind(this))},I.prototype.ngOnDestroy=function(){v(this.navigationSubscription)&&this.navigationSubscription.unsubscribe()},I.prototype.updateNavigationState=function(){this.updateTabIndex(),this.updateFocusedState()},I.prototype.updateFocusedState=function(){var e="k-focus";this.navigationService.isActive(this.index)&&this.navigationService.isFocused?(this.renderer.addClass(this.hostElement.nativeElement,e),this.hostElement.nativeElement.focus()):this.renderer.removeClass(this.hostElement.nativeElement,e)},I.prototype.updateTabIndex=function(){this.navigationService.isEnabled?this.navigationService.isActive(this.index)?this.renderer.setAttribute(this.hostElement.nativeElement,"tabindex","0"):this.renderer.setAttribute(this.hostElement.nativeElement,"tabindex","-1"):this.renderer.removeAttribute(this.hostElement.nativeElement,"tabindex")};var f=I;function I(e,t,n){this.hostElement=e,this.renderer=t,this.navigationService=n}f.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:f,deps:[{token:d.ElementRef},{token:d.Renderer2},{token:h}],target:d.ɵɵFactoryTarget.Directive}),f.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:f,selector:"[kendoListViewNavigableItem]",inputs:{index:"index"},usesOnChanges:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:f,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewNavigableItem]"}]}],ctorParameters:function(){return[{type:d.ElementRef},{type:d.Renderer2},{type:h}]},propDecorators:{index:[{type:r.Input}]}});function k(e){return-1===e||void 0===e}var C=function(e){this.templateRef=e},b=(C.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:C,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),C.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[kendoListViewItemTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:C,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewItemTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),w=(b.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:b,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),b.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:b,selector:"[kendoListViewHeaderTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:b,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewHeaderTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),S=(w.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:w,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),w.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:w,selector:"[kendoListViewFooterTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:w,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewFooterTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),D=(S.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:S,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),S.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:S,selector:"[kendoListViewLoaderTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:S,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewLoaderTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),T=(D.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:D,deps:[{token:d.TemplateRef,optional:!0}],target:d.ɵɵFactoryTarget.Directive}),D.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:D,selector:"[kendoListViewEditTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:D,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewEditTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef,decorators:[{type:r.Optional}]}]}}),x.prototype.editItem=function(e,t){this.editedIndices.push({index:e,group:t=void 0===t?void 0:t}),this.onChanged()},x.prototype.addItem=function(e){this.newItem={group:e},this.onChanged()},x.prototype.isEditing=function(){return 0<this.editedIndices.length},Object.defineProperty(x.prototype,"hasNewItem",{get:function(){return v(this.newItem)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"newDataItem",{get:function(){return this.hasNewItem?this.newItem.group.value:{}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"newItemGroup",{get:function(){return this.hasNewItem?this.newItem.group:new i.FormGroup({})},enumerable:!1,configurable:!0}),x.prototype.editGroup=function(e){return this.context(e).group},x.prototype.close=function(e){var t;k(e)?this.newItem=void 0:(this.editedIndices=this.editedIndices.filter((t=e,function(e){return e.index!==t})),this.onChanged())},x.prototype.context=function(e){return k(e)?this.newItem:this.findByIndex(e)},x.prototype.isEdited=function(e){return!(!k(e)||!v(this.newItem))||v(this.findByIndex(e))},x.prototype.hasEdited=function(e){return v(this.context(e))},x.prototype.beginEdit=function(e){this.changes.emit({action:"edit",itemIndex:e})},x.prototype.beginAdd=function(){this.changes.emit({action:"add"})},x.prototype.endEdit=function(e){var t=this.context(e).group;this.changes.emit({action:"cancel",itemIndex:e,formGroup:t,isNew:k(e)})},x.prototype.save=function(e){var t=this.context(e).group;this.changes.emit({action:"save",itemIndex:e,formGroup:t,isNew:k(e)})},x.prototype.remove=function(e){this.changes.emit({action:"remove",itemIndex:e})},x.prototype.findByIndex=function(e){return this.editedIndices.find((t=e,function(e){return e.index===t}));var t},x.prototype.onChanged=function(){var e=this;this.ngZone.runOutsideAngular(function(){e.changedSource.next()})},x);function x(e){var t=this;this.ngZone=e,this.changes=new r.EventEmitter,this.editedIndices=[],this.changedSource=new n.Subject,this.changed=this.changedSource.asObservable().pipe(j.switchMap(function(){return t.ngZone.onStable.asObservable().pipe(j.take(1))}))}T.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:T,deps:[{token:d.NgZone}],target:d.ɵɵFactoryTarget.Injectable}),T.ɵprov=d.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:T}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:T,decorators:[{type:r.Injectable}],ctorParameters:function(){return[{type:d.NgZone}]}});var $={position:"bottom",buttonCount:5,info:!0,previousNext:!0,type:"numeric",pageSizeValues:[5,10,20]},V=(Object.defineProperty(E.prototype,"navigable",{get:function(){return this._navigable},set:function(e){!e&&v(this.removeNavigationListeners)?(this.removeNavigationListeners(),this.removeNavigationListeners=null,this.navigationService.isEnabled=!1):e&&!v(this.removeNavigationListeners)&&(this.addNavigationListeners(),this.navigationService.isEnabled=!0),this._navigable=e},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"skip",{get:function(){return this._skip},set:function(e){e=parseInt(e,10);this._skip=isNaN(e)?0:e},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"pageable",{get:function(){return this._pageable},set:function(e){this._pageable=e,this.pagerSettings=e?Object.assign({},$,e):null},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"items",{get:function(){return v(this.data)?(Array.isArray(this.data)?this:this.data).data:[]},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"total",{get:function(){return v(this.data)?Array.isArray(this.data)?this.data.length:this.data.total:0},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"containerTabindex",{get:function(){return this.navigable?-1:null},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"activeIndex",{get:function(){return this.navigationService.activeIndex},enumerable:!1,configurable:!0}),E.prototype.ngOnChanges=function(e){a.isChanged("height",e,!1)&&this.renderer.setStyle(this.element.nativeElement,"height",this.height+"px")},E.prototype.ngOnDestroy=function(){v(this.editServiceSubscription)&&this.editServiceSubscription.unsubscribe()},E.prototype.templateContext=function(e){return{$implicit:this.items[e],isLast:e===this.items.length-1,isFirst:0===e,dataItem:this.items[e],index:e}},E.prototype.editTemplateContext=function(e){var t=-1===e,n=t?this.editService.newItemGroup:this.editService.editGroup(e);return{$implicit:n,formGroup:n,dataItem:t?this.editService.newDataItem:this.items[e],isNew:t,index:e}},E.prototype.focus=function(e){var t=this.listViewItems.length;this.navigationService.focusIndex(e,t)},E.prototype.addItem=function(e){var t,n;e instanceof i.FormGroup||(t=Object.keys(e).reduce((n=e,function(e,t){return e[t]=new i.FormControl(n[t]),e}),{}),e=new i.FormGroup(t)),this.editService.addItem(e)},E.prototype.editItem=function(e,t){this.editService.editItem(e,t)},E.prototype.closeItem=function(e){this.editService.close(e)},E.prototype.isEdited=function(e){return this.editService.isEdited(e)},E.prototype.handlePageChange=function(e){this.scrollToContainerTop();this.navigationService.setActiveIndex(0),this.pageChange.emit(e)},E.prototype.handleContentScroll=function(){var e,t,n,i=this;a.hasObservers(this.scrollBottom)&&(t=(e=this.contentContainer.nativeElement).scrollHeight,n=e.scrollTop,t-e.clientHeight-n<=2)&&this.ngZone.run(function(){i.scrollBottom.emit({sender:i})})},E.prototype.itemPosInSet=function(e){return this.skip+e+1},E.prototype.scrollToContainerTop=function(){var e=this.contentContainer.nativeElement;e.scrollTop=0,e.scrollLeft=0},E.prototype.addNavigationListeners=function(){var i=this;this.ngZone.runOutsideAngular(function(){var e=i.renderer.listen(i.contentContainer.nativeElement,"keydown",function(e){return i.navigationService.handleKeyDown(e,i.listViewItems.length)}),t=i.renderer.listen(i.contentContainer.nativeElement,"focusin",function(e){return i.navigationService.handleFocusIn(e)}),n=i.renderer.listen(i.contentContainer.nativeElement,"focusout",function(e){return i.navigationService.handleFocusOut(e)});i.removeNavigationListeners=function(){e(),t(),n()}})},E.prototype.attachEditHandlers=function(){v(this.editService)&&(this.editServiceSubscription=this.editService.changes.subscribe(this.emitCRUDEvent.bind(this)))},E.prototype.emitCRUDEvent=function(e){var t=e.action,n=e.itemIndex,i=e.formGroup,n=this.items[n];"add"!==t&&i&&(n=i.value),Object.assign(e,{dataItem:n,sender:this}),this[t].emit(e)},E);function E(e,t,n,i,a){this.ngZone=e,this.element=t,this.renderer=n,this.editService=i,this.navigationService=a,this.className=!0,this.loading=!1,this.containerRole="listbox",this.listItemRole="option",this.scrollBottom=new r.EventEmitter,this.pageChange=new r.EventEmitter,this.pageSizeChange=new r.EventEmitter,this.edit=new r.EventEmitter,this.cancel=new r.EventEmitter,this.save=new r.EventEmitter,this.remove=new r.EventEmitter,this.add=new r.EventEmitter,this._skip=0,this._navigable=!1,z.validatePackage(Z),this.attachEditHandlers()}V.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:V,deps:[{token:d.NgZone},{token:d.ElementRef},{token:d.Renderer2},{token:T},{token:h}],target:d.ɵɵFactoryTarget.Component}),V.ɵcmp=d.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:V,selector:"kendo-listview",inputs:{data:"data",loading:"loading",containerStyle:"containerStyle",itemStyle:"itemStyle",containerClass:"containerClass",itemClass:"itemClass",containerLabel:"containerLabel",containerRole:"containerRole",listItemRole:"listItemRole",navigable:"navigable",pageSize:"pageSize",skip:"skip",pageable:"pageable",height:"height"},outputs:{scrollBottom:"scrollBottom",pageChange:"pageChange",pageSizeChange:"pageSizeChange",edit:"edit",cancel:"cancel",save:"save",remove:"remove",add:"add"},host:{properties:{"class.k-widget":"this.className","class.k-listview":"this.className","class.k-listview-bordered":"this.className","class.k-d-flex":"this.className"}},providers:[T,h,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.listview"}],queries:[{propertyName:"itemTemplate",first:!0,predicate:C,descendants:!0},{propertyName:"headerTemplate",first:!0,predicate:b,descendants:!0},{propertyName:"footerTemplate",first:!0,predicate:w,descendants:!0},{propertyName:"loaderTemplate",first:!0,predicate:S,descendants:!0},{propertyName:"editTemplate",first:!0,predicate:D,descendants:!0}],viewQueries:[{propertyName:"contentContainer",first:!0,predicate:["contentContainer"],descendants:!0,static:!0},{propertyName:"listViewItems",predicate:f,descendants:!0}],exportAs:["kendoListView"],usesOnChanges:!0,ngImport:d,template:'\n \x3c!-- top pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'bottom\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager k-listview-pager-top\' }"\n >\n </ng-template>\n\n \x3c!-- header --\x3e\n <div\n *ngIf="headerTemplate"\n class="k-listview-header"\n >\n <ng-template\n [ngTemplateOutlet]="headerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- content --\x3e\n <div\n #contentContainer\n [attr.tabindex]="containerTabindex"\n class="k-listview-content"\n [ngClass]="containerClass"\n [ngStyle]="containerStyle"\n [kendoEventsOutsideAngular]="{\n scroll: handleContentScroll\n }"\n [scope]="this"\n [attr.role]="containerRole"\n [attr.aria-label]="containerLabel"\n >\n \x3c!-- new item edit template --\x3e\n <div\n *ngIf="editService.hasNewItem"\n class="k-listview-item"\n [attr.role]="listItemRole"\n kendoListViewNavigableItem\n [index]="-1"\n [attr.data-kendo-listview-item-index]="-1"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n *ngIf="editTemplate"\n [ngTemplateOutlet]="editTemplate?.templateRef"\n [ngTemplateOutletContext]="editTemplateContext(-1)"\n >\n </ng-template>\n </div>\n\n \x3c!-- items --\x3e\n <div\n *ngFor="let dataItem of items; let index = index; let first = first; let last = last;"\n class="k-listview-item"\n [attr.role]="listItemRole"\n [attr.aria-posinset]="itemPosInSet(index)"\n [attr.aria-setsize]="total"\n kendoListViewNavigableItem\n [index]="index"\n [attr.data-kendo-listview-item-index]="index"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"\n [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"\n >\n </ng-template>\n </div>\n\n \x3c!-- loading indicator --\x3e\n <div\n *ngIf="loading && !loaderTemplate"\n class="k-loading-mask"\n >\n \x3c!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case --\x3e\n <span class="k-loading-text">Loading</span>\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n </div>\n <ng-template\n *ngIf="loading && loaderTemplate"\n [ngTemplateOutlet]="loaderTemplate.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- footer --\x3e\n <div\n *ngIf="footerTemplate"\n class="k-listview-footer"\n >\n <ng-template\n [ngTemplateOutlet]="footerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- bottom pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'top\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager\' }"\n >\n </ng-template>\n\n \x3c!-- pager template --\x3e\n <ng-template #pagerTemplate let-pagerClass="pagerClass">\n <kendo-datapager\n *ngIf="pageable"\n [class]="pagerClass"\n [total]="total"\n [pageSize]="pageSize"\n [skip]="skip"\n [buttonCount]="pagerSettings.buttonCount"\n [info]="pagerSettings.info"\n [previousNext]="pagerSettings.previousNext"\n [type]="pagerSettings.type"\n [pageSizeValues]="pagerSettings.pageSizeValues"\n (pageChange)="handlePageChange($event)"\n (pageSizeChange)="pageSizeChange.emit($event)"\n >\n </kendo-datapager>\n </ng-template>\n ',isInline:!0,components:[{type:m.PagerComponent,selector:"kendo-datapager",inputs:["total","skip","pageSize","buttonCount","info","type","pageSizeValues","previousNext"],outputs:["pageChange","pageSizeChange"],exportAs:["kendoDataPager"]}],directives:[{type:u.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:u.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:u.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:u.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:B.EventsOutsideAngularDirective,selector:"[kendoEventsOutsideAngular]",inputs:["kendoEventsOutsideAngular","scope"]},{type:f,selector:"[kendoListViewNavigableItem]",inputs:["index"]},{type:u.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}],changeDetection:d.ChangeDetectionStrategy.OnPush}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:V,decorators:[{type:r.Component,args:[{changeDetection:r.ChangeDetectionStrategy.OnPush,exportAs:"kendoListView",selector:"kendo-listview",providers:[T,h,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.listview"}],template:'\n \x3c!-- top pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'bottom\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager k-listview-pager-top\' }"\n >\n </ng-template>\n\n \x3c!-- header --\x3e\n <div\n *ngIf="headerTemplate"\n class="k-listview-header"\n >\n <ng-template\n [ngTemplateOutlet]="headerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- content --\x3e\n <div\n #contentContainer\n [attr.tabindex]="containerTabindex"\n class="k-listview-content"\n [ngClass]="containerClass"\n [ngStyle]="containerStyle"\n [kendoEventsOutsideAngular]="{\n scroll: handleContentScroll\n }"\n [scope]="this"\n [attr.role]="containerRole"\n [attr.aria-label]="containerLabel"\n >\n \x3c!-- new item edit template --\x3e\n <div\n *ngIf="editService.hasNewItem"\n class="k-listview-item"\n [attr.role]="listItemRole"\n kendoListViewNavigableItem\n [index]="-1"\n [attr.data-kendo-listview-item-index]="-1"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n *ngIf="editTemplate"\n [ngTemplateOutlet]="editTemplate?.templateRef"\n [ngTemplateOutletContext]="editTemplateContext(-1)"\n >\n </ng-template>\n </div>\n\n \x3c!-- items --\x3e\n <div\n *ngFor="let dataItem of items; let index = index; let first = first; let last = last;"\n class="k-listview-item"\n [attr.role]="listItemRole"\n [attr.aria-posinset]="itemPosInSet(index)"\n [attr.aria-setsize]="total"\n kendoListViewNavigableItem\n [index]="index"\n [attr.data-kendo-listview-item-index]="index"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"\n [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"\n >\n </ng-template>\n </div>\n\n \x3c!-- loading indicator --\x3e\n <div\n *ngIf="loading && !loaderTemplate"\n class="k-loading-mask"\n >\n \x3c!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case --\x3e\n <span class="k-loading-text">Loading</span>\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n </div>\n <ng-template\n *ngIf="loading && loaderTemplate"\n [ngTemplateOutlet]="loaderTemplate.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- footer --\x3e\n <div\n *ngIf="footerTemplate"\n class="k-listview-footer"\n >\n <ng-template\n [ngTemplateOutlet]="footerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- bottom pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'top\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager\' }"\n >\n </ng-template>\n\n \x3c!-- pager template --\x3e\n <ng-template #pagerTemplate let-pagerClass="pagerClass">\n <kendo-datapager\n *ngIf="pageable"\n [class]="pagerClass"\n [total]="total"\n [pageSize]="pageSize"\n [skip]="skip"\n [buttonCount]="pagerSettings.buttonCount"\n [info]="pagerSettings.info"\n [previousNext]="pagerSettings.previousNext"\n [type]="pagerSettings.type"\n [pageSizeValues]="pagerSettings.pageSizeValues"\n (pageChange)="handlePageChange($event)"\n (pageSizeChange)="pageSizeChange.emit($event)"\n >\n </kendo-datapager>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:d.NgZone},{type:d.ElementRef},{type:d.Renderer2},{type:T},{type:h}]},propDecorators:{className:[{type:r.HostBinding,args:["class.k-widget"]},{type:r.HostBinding,args:["class.k-listview"]},{type:r.HostBinding,args:["class.k-listview-bordered"]},{type:r.HostBinding,args:["class.k-d-flex"]}],itemTemplate:[{type:r.ContentChild,args:[C,{static:!1}]}],headerTemplate:[{type:r.ContentChild,args:[b,{static:!1}]}],footerTemplate:[{type:r.ContentChild,args:[w,{static:!1}]}],loaderTemplate:[{type:r.ContentChild,args:[S,{static:!1}]}],contentContainer:[{type:r.ViewChild,args:["contentContainer",{static:!0}]}],editTemplate:[{type:r.ContentChild,args:[D,{static:!1}]}],listViewItems:[{type:r.ViewChildren,args:[f]}],data:[{type:r.Input}],loading:[{type:r.Input}],containerStyle:[{type:r.Input}],itemStyle:[{type:r.Input}],containerClass:[{type:r.Input}],itemClass:[{type:r.Input}],containerLabel:[{type:r.Input}],containerRole:[{type:r.Input}],listItemRole:[{type:r.Input}],navigable:[{type:r.Input}],pageSize:[{type:r.Input}],skip:[{type:r.Input}],pageable:[{type:r.Input}],height:[{type:r.Input}],scrollBottom:[{type:r.Output}],pageChange:[{type:r.Output}],pageSizeChange:[{type:r.Output}],edit:[{type:r.Output}],cancel:[{type:r.Output}],save:[{type:r.Output}],remove:[{type:r.Output}],add:[{type:r.Output}]}});Object.defineProperty(O.prototype,"data",{get:function(){return this._data},set:function(e){this._data=e||[],this.updateListViewData()},enumerable:!1,configurable:!0}),O.prototype.ngOnInit=function(){this.subscriptions.add(this.listView.pageChange.subscribe(this.handlePageChange.bind(this))),this.subscriptions.add(this.listView.pageSizeChange.subscribe(this.handlePageSizeChange.bind(this))),this.updateListViewData()},O.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},O.prototype.handlePageChange=function(e){this.listView.skip=e.skip,this.listView.pageSize=e.take,this.updateListViewData()},O.prototype.handlePageSizeChange=function(e){this.listView.pageSize=Number(e.newPageSize)},O.prototype.updateListViewData=function(){var e=this.listView.skip||0,t=e+(this.listView.pageSize||this.data.length);this.listView.data={data:this.data.slice(e,t),total:this.data.length}};m=O;function O(e){this.listView=e,this.subscriptions=new n.Subscription}m.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:m,deps:[{token:V}],target:d.ɵɵFactoryTarget.Directive}),m.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:m,selector:"[kendoListViewBinding]",inputs:{data:["kendoListViewBinding","data"]},ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:m,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewBinding]"}]}],ctorParameters:function(){return[{type:V}]},propDecorators:{data:[{type:r.Input,args:["kendoListViewBinding"]}]}});var G=function(e,t){return(G=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 R(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}G(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;Object.create;R(U,q=o.PageSizeChangeEvent);var q,B=U;function U(){return null!==q&&q.apply(this,arguments)||this}R(Q,X=l.Button),Q.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.beginEdit(e)};var X,u=Q;function Q(e,t,n,i,a){n=X.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}u.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:u,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),u.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:u,selector:"[kendoListViewEditCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:u,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewEditCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(W,J=l.Button),W.prototype.clickHandler=function(e){e.preventDefault(),this.editService.beginAdd()};var J,t=W;function W(e,t,n,i,a){t=J.call(this,t,n,null,i,a)||this;return t.editService=e,t}t.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:t,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),t.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:t,selector:"[kendoListViewAddCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:t,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewAddCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(ee,Y=l.Button),ee.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.isEdited(e)&&this.editService.save(e)};var Y,L=ee;function ee(e,t,n,i,a){n=Y.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}L.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:L,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),L.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:L,selector:"[kendoListViewSaveCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:L,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewSaveCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(ne,te=l.Button),ne.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.isEdited(e)&&this.editService.endEdit(e)};var te,N=ne;function ne(e,t,n,i,a){n=te.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}N.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:N,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),N.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:N,selector:"[kendoListViewCancelCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:N,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewCancelCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(ae,ie=l.Button),ae.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.remove(e)};var ie,l=ae;function ae(e,t,n,i,a){n=ie.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}l.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:l,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),l.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:l,selector:"[kendoListViewRemoveCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:l,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewRemoveCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});Object.defineProperty(re.prototype,"templateContext",{set:function(e){this.insertedViewRef&&(this.viewContainerRef.remove(this.viewContainerRef.indexOf(this.insertedViewRef)),this.insertedViewRef=void 0),e.templateRef&&(this.insertedViewRef=this.viewContainerRef.createEmbeddedView(e.templateRef,e))},enumerable:!1,configurable:!0});var F=re;function re(e){this.viewContainerRef=e}F.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:F,deps:[{token:d.ViewContainerRef}],target:d.ɵɵFactoryTarget.Directive}),F.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"[templateContext]",inputs:{templateContext:"templateContext"},ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:F,decorators:[{type:r.Directive,args:[{selector:"[templateContext]"}]}],ctorParameters:function(){return[{type:d.ViewContainerRef}]},propDecorators:{templateContext:[{type:r.Input}]}});var oe=[C,b,w,S],se=[m],le=[D,u,N,L,l,t],P=function(){};P.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:P,deps:[],target:d.ɵɵFactoryTarget.NgModule}),P.ɵmod=d.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:P,declarations:[C,b,w,S,m,D,u,N,L,l,t,V,F,f],imports:[s.CommonModule,o.PagerModule,a.EventsModule],exports:[C,b,w,S,m,D,u,N,L,l,t,V,s.CommonModule,a.EventsModule]}),P.ɵinj=d.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:P,imports:[[s.CommonModule,o.PagerModule,a.EventsModule],s.CommonModule,a.EventsModule]}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:d,type:P,decorators:[{type:r.NgModule,args:[{declarations:[oe,se,le,V,F,f],exports:[oe,se,le,V,s.CommonModule,a.EventsModule],imports:[s.CommonModule,o.PagerModule,a.EventsModule]}]}]}),e.AddCommandDirective=t,e.CancelCommandDirective=N,e.DataBindingDirective=m,e.EditCommandDirective=u,e.EditTemplateDirective=D,e.FooterTemplateDirective=w,e.HeaderTemplateDirective=b,e.ItemTemplateDirective=C,e.ListViewComponent=V,e.ListViewModule=P,e.LoaderTemplateDirective=S,e.PageSizeChangeEvent=B,e.RemoveCommandDirective=l,e.SaveCommandDirective=L,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-common"),require("@progress/kendo-licensing"),require("@progress/kendo-angular-l10n"),require("rxjs"),require("@angular/forms"),require("rxjs/operators"),require("@progress/kendo-angular-pager"),require("@angular/common"),require("@progress/kendo-angular-buttons")):"function"==typeof define&&define.amd?define("KendoAngularListview",["exports","@angular/core","@progress/kendo-angular-common","@progress/kendo-licensing","@progress/kendo-angular-l10n","rxjs","@angular/forms","rxjs/operators","@progress/kendo-angular-pager","@angular/common","@progress/kendo-angular-buttons"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularListview={},e.ng.core,e.KendoAngularCommon,e.KendoLicensing,e.KendoAngularL10N,e.rxjs,e.ng.forms,e.rxjs.operators,e.KendoAngularPager,e.ng.common,e.KendoAngularButtons)}(this,function(e,r,a,z,t,n,i,j,o,s,l){"use strict";function p(n){var i;return n&&n.__esModule?n:(i=Object.create(null),n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),i.default=n,Object.freeze(i))}function A(e,t){var n=e.matches||e.msMatchesSelector||e.webkitMatchesSelector;return!!v(n)&&n.call(e,t)}function M(e){return!!v(e)&&A(e,K)}function H(e){return v(e)?Number(e.getAttribute("data-kendo-listview-item-index")):null}function _(e,t){for(var n=e;null!==n&&1===n.nodeType;){if(A(n,t))return n;n=n.parentElement||n.parentNode}return null}function c(e){return v(e)?(e=_(e,K),H(e)):null}var d=p(r),B=p(a),g=p(t),m=p(o),u=p(s),Z={name:"@progress/kendo-angular-listview",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1669715421,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"},K=".k-listview-item",v=function(e){return null!=e},h=(Object.defineProperty(y.prototype,"isEnabled",{get:function(){return v(this.activeIndex)},set:function(e){this.activeIndex=e?0:null,this.changes.next()},enumerable:!1,configurable:!0}),y.prototype.isActive=function(e){return e===this.activeIndex},y.prototype.handleKeyDown=function(e,t){switch(e.keyCode){case a.Keys.ArrowLeft:case a.Keys.ArrowUp:this.navigateToPrevious();break;case a.Keys.ArrowRight:case a.Keys.ArrowDown:this.navigateToNext(t);break;case a.Keys.Home:this.navigateTo(0);break;case a.Keys.End:this.navigateTo(t-1);break;default:return}e.preventDefault()},y.prototype.handleFocusIn=function(e){var t,e=e.target;M(e)?(t=H(e),this.isFocused&&t===this.activeIndex||(this.activeIndex=t,this.isFocused=!0,this.changes.next())):(t=_(e,".k-listview-item"),v(t)&&(e=H(t),this.setActiveIndex(e)))},y.prototype.handleFocusOut=function(e){M(e.target)&&!M(v((e=e).relatedTarget)&&a.isDocumentAvailable()?e.relatedTarget||document.activeElement:null)&&(this.isFocused=!1,this.changes.next())},y.prototype.setActiveIndex=function(e){this.isEnabled&&e!==this.activeIndex&&(this.activeIndex=e,this.changes.next())},y.prototype.focusIndex=function(e,t){var n;this.isEnabled&&(e=parseInt(e,10),t=t-1,n=isNaN(e)?this.activeIndex:(n=0,t=t,!v(e=e)||e<=n?n:t<=e?t:e),this.navigateTo(n))},y.prototype.navigateTo=function(e){this.isFocused&&this.activeIndex===e||(this.isFocused=!0,this.activeIndex=e,this.changes.next())},y.prototype.navigateToPrevious=function(){var e=Math.max(this.activeIndex-1,0);this.navigateTo(e)},y.prototype.navigateToNext=function(e){e=Math.min(this.activeIndex+1,e-1);this.navigateTo(e)},y);function y(){this.changes=new n.Subject,this.isFocused=!1,this.activeIndex=null}h.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:h,deps:[],target:d.ɵɵFactoryTarget.Injectable}),h.ɵprov=d.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:h}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:h,decorators:[{type:r.Injectable}]});I.prototype.ngOnChanges=function(){this.updateNavigationState()},I.prototype.ngOnInit=function(){this.navigationSubscription=this.navigationService.changes.subscribe(this.updateNavigationState.bind(this))},I.prototype.ngOnDestroy=function(){v(this.navigationSubscription)&&this.navigationSubscription.unsubscribe()},I.prototype.updateNavigationState=function(){this.updateTabIndex(),this.updateFocusedState()},I.prototype.updateFocusedState=function(){var e="k-focus";this.navigationService.isActive(this.index)&&this.navigationService.isFocused?(this.renderer.addClass(this.hostElement.nativeElement,e),this.hostElement.nativeElement.focus()):this.renderer.removeClass(this.hostElement.nativeElement,e)},I.prototype.updateTabIndex=function(){this.navigationService.isEnabled?this.navigationService.isActive(this.index)?this.renderer.setAttribute(this.hostElement.nativeElement,"tabindex","0"):this.renderer.setAttribute(this.hostElement.nativeElement,"tabindex","-1"):this.renderer.removeAttribute(this.hostElement.nativeElement,"tabindex")};var f=I;function I(e,t,n){this.hostElement=e,this.renderer=t,this.navigationService=n}f.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:f,deps:[{token:d.ElementRef},{token:d.Renderer2},{token:h}],target:d.ɵɵFactoryTarget.Directive}),f.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:f,selector:"[kendoListViewNavigableItem]",inputs:{index:"index"},usesOnChanges:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:f,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewNavigableItem]"}]}],ctorParameters:function(){return[{type:d.ElementRef},{type:d.Renderer2},{type:h}]},propDecorators:{index:[{type:r.Input}]}});function k(e){return-1===e||void 0===e}var b=function(e){this.templateRef=e},C=(b.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:b,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),b.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:b,selector:"[kendoListViewItemTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:b,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewItemTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),w=(C.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:C,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),C.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:C,selector:"[kendoListViewHeaderTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:C,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewHeaderTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),S=(w.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:w,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),w.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:w,selector:"[kendoListViewFooterTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:w,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewFooterTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),D=(S.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:S,deps:[{token:d.TemplateRef}],target:d.ɵɵFactoryTarget.Directive}),S.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:S,selector:"[kendoListViewLoaderTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:S,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewLoaderTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef}]}}),function(e){this.templateRef=e}),T=(D.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:D,deps:[{token:d.TemplateRef,optional:!0}],target:d.ɵɵFactoryTarget.Directive}),D.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:D,selector:"[kendoListViewEditTemplate]",ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:D,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewEditTemplate]"}]}],ctorParameters:function(){return[{type:d.TemplateRef,decorators:[{type:r.Optional}]}]}}),x.prototype.editItem=function(e,t){this.editedIndices.push({index:e,group:t=void 0===t?void 0:t}),this.onChanged()},x.prototype.addItem=function(e){this.newItem={group:e},this.onChanged()},x.prototype.isEditing=function(){return 0<this.editedIndices.length},Object.defineProperty(x.prototype,"hasNewItem",{get:function(){return v(this.newItem)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"newDataItem",{get:function(){return this.hasNewItem?this.newItem.group.value:{}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"newItemGroup",{get:function(){return this.hasNewItem?this.newItem.group:new i.FormGroup({})},enumerable:!1,configurable:!0}),x.prototype.editGroup=function(e){return this.context(e).group},x.prototype.close=function(e){var t;k(e)?this.newItem=void 0:(this.editedIndices=this.editedIndices.filter((t=e,function(e){return e.index!==t})),this.onChanged())},x.prototype.context=function(e){return k(e)?this.newItem:this.findByIndex(e)},x.prototype.isEdited=function(e){return!(!k(e)||!v(this.newItem))||v(this.findByIndex(e))},x.prototype.hasEdited=function(e){return v(this.context(e))},x.prototype.beginEdit=function(e){this.changes.emit({action:"edit",itemIndex:e})},x.prototype.beginAdd=function(){this.changes.emit({action:"add"})},x.prototype.endEdit=function(e){var t=this.context(e).group;this.changes.emit({action:"cancel",itemIndex:e,formGroup:t,isNew:k(e)})},x.prototype.save=function(e){var t=this.context(e).group;this.changes.emit({action:"save",itemIndex:e,formGroup:t,isNew:k(e)})},x.prototype.remove=function(e){this.changes.emit({action:"remove",itemIndex:e})},x.prototype.findByIndex=function(e){return this.editedIndices.find((t=e,function(e){return e.index===t}));var t},x.prototype.onChanged=function(){var e=this;this.ngZone.runOutsideAngular(function(){e.changedSource.next()})},x);function x(e){var t=this;this.ngZone=e,this.changes=new r.EventEmitter,this.editedIndices=[],this.changedSource=new n.Subject,this.changed=this.changedSource.asObservable().pipe(j.switchMap(function(){return t.ngZone.onStable.asObservable().pipe(j.take(1))}))}T.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:T,deps:[{token:d.NgZone}],target:d.ɵɵFactoryTarget.Injectable}),T.ɵprov=d.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:T}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:T,decorators:[{type:r.Injectable}],ctorParameters:function(){return[{type:d.NgZone}]}});var $={position:"bottom",buttonCount:5,info:!0,previousNext:!0,type:"numeric",pageSizeValues:[5,10,20]},V=(Object.defineProperty(E.prototype,"navigable",{get:function(){return this._navigable},set:function(e){!e&&v(this.removeNavigationListeners)?(this.removeNavigationListeners(),this.removeNavigationListeners=null,this.navigationService.isEnabled=!1):e&&!v(this.removeNavigationListeners)&&(this.addNavigationListeners(),this.navigationService.isEnabled=!0),this._navigable=e},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"skip",{get:function(){return this._skip},set:function(e){e=parseInt(e,10);this._skip=isNaN(e)?0:e},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"pageable",{get:function(){return this._pageable},set:function(e){this._pageable=e,this.pagerSettings=e?Object.assign({},$,e):null},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"items",{get:function(){return v(this.data)?(Array.isArray(this.data)?this:this.data).data:[]},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"total",{get:function(){if(this.pageable)return v(this.data)?Array.isArray(this.data)?this.data.length:this.data.total:0},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"containerTabindex",{get:function(){return this.navigable?-1:null},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"activeIndex",{get:function(){return this.navigationService.activeIndex},enumerable:!1,configurable:!0}),E.prototype.ngOnChanges=function(e){a.isChanged("height",e,!1)&&this.renderer.setStyle(this.element.nativeElement,"height",this.height+"px")},E.prototype.ngOnDestroy=function(){v(this.editServiceSubscription)&&this.editServiceSubscription.unsubscribe()},E.prototype.templateContext=function(e){return{$implicit:this.items[e],isLast:e===this.items.length-1,isFirst:0===e,dataItem:this.items[e],index:e}},E.prototype.editTemplateContext=function(e){var t=-1===e,n=t?this.editService.newItemGroup:this.editService.editGroup(e);return{$implicit:n,formGroup:n,dataItem:t?this.editService.newDataItem:this.items[e],isNew:t,index:e}},E.prototype.focus=function(e){var t=this.listViewItems.length;this.navigationService.focusIndex(e,t)},E.prototype.addItem=function(e){var t,n;e instanceof i.FormGroup||(t=Object.keys(e).reduce((n=e,function(e,t){return e[t]=new i.FormControl(n[t]),e}),{}),e=new i.FormGroup(t)),this.editService.addItem(e)},E.prototype.editItem=function(e,t){this.editService.editItem(e,t)},E.prototype.closeItem=function(e){this.editService.close(e)},E.prototype.isEdited=function(e){return this.editService.isEdited(e)},E.prototype.handlePageChange=function(e){this.scrollToContainerTop();this.navigationService.setActiveIndex(0),this.pageChange.emit(e)},E.prototype.handleContentScroll=function(){var e,t,n,i=this;a.hasObservers(this.scrollBottom)&&(t=(e=this.contentContainer.nativeElement).scrollHeight,n=e.scrollTop,t-e.clientHeight-n<=2)&&this.ngZone.run(function(){i.scrollBottom.emit({sender:i})})},E.prototype.itemPosInSet=function(e){if(this.pageable)return this.skip+e+1},E.prototype.scrollToContainerTop=function(){var e=this.contentContainer.nativeElement;e.scrollTop=0,e.scrollLeft=0},E.prototype.addNavigationListeners=function(){var i=this;this.ngZone.runOutsideAngular(function(){var e=i.renderer.listen(i.contentContainer.nativeElement,"keydown",function(e){return i.navigationService.handleKeyDown(e,i.listViewItems.length)}),t=i.renderer.listen(i.contentContainer.nativeElement,"focusin",function(e){return i.navigationService.handleFocusIn(e)}),n=i.renderer.listen(i.contentContainer.nativeElement,"focusout",function(e){return i.navigationService.handleFocusOut(e)});i.removeNavigationListeners=function(){e(),t(),n()}})},E.prototype.attachEditHandlers=function(){v(this.editService)&&(this.editServiceSubscription=this.editService.changes.subscribe(this.emitCRUDEvent.bind(this)))},E.prototype.emitCRUDEvent=function(e){var t=e.action,n=e.itemIndex,i=e.formGroup,n=this.items[n];"add"!==t&&i&&(n=i.value),Object.assign(e,{dataItem:n,sender:this}),this[t].emit(e)},E);function E(e,t,n,i,a){this.ngZone=e,this.element=t,this.renderer=n,this.editService=i,this.navigationService=a,this.className=!0,this.loading=!1,this.containerRole="list",this.listItemRole="listitem",this.scrollBottom=new r.EventEmitter,this.pageChange=new r.EventEmitter,this.pageSizeChange=new r.EventEmitter,this.edit=new r.EventEmitter,this.cancel=new r.EventEmitter,this.save=new r.EventEmitter,this.remove=new r.EventEmitter,this.add=new r.EventEmitter,this._skip=0,this._navigable=!1,z.validatePackage(Z),this.attachEditHandlers()}V.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:V,deps:[{token:d.NgZone},{token:d.ElementRef},{token:d.Renderer2},{token:T},{token:h}],target:d.ɵɵFactoryTarget.Component}),V.ɵcmp=d.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:V,selector:"kendo-listview",inputs:{data:"data",loading:"loading",containerStyle:"containerStyle",itemStyle:"itemStyle",containerClass:"containerClass",itemClass:"itemClass",containerLabel:"containerLabel",containerRole:"containerRole",listItemRole:"listItemRole",navigable:"navigable",pageSize:"pageSize",skip:"skip",pageable:"pageable",height:"height"},outputs:{scrollBottom:"scrollBottom",pageChange:"pageChange",pageSizeChange:"pageSizeChange",edit:"edit",cancel:"cancel",save:"save",remove:"remove",add:"add"},host:{properties:{"class.k-widget":"this.className","class.k-listview":"this.className","class.k-listview-bordered":"this.className","class.k-d-flex":"this.className"}},providers:[T,h,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.listview"}],queries:[{propertyName:"itemTemplate",first:!0,predicate:b,descendants:!0},{propertyName:"headerTemplate",first:!0,predicate:C,descendants:!0},{propertyName:"footerTemplate",first:!0,predicate:w,descendants:!0},{propertyName:"loaderTemplate",first:!0,predicate:S,descendants:!0},{propertyName:"editTemplate",first:!0,predicate:D,descendants:!0}],viewQueries:[{propertyName:"contentContainer",first:!0,predicate:["contentContainer"],descendants:!0,static:!0},{propertyName:"listViewItems",predicate:f,descendants:!0}],exportAs:["kendoListView"],usesOnChanges:!0,ngImport:d,template:'\n \x3c!-- top pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'bottom\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager k-listview-pager-top\' }"\n >\n </ng-template>\n\n \x3c!-- header --\x3e\n <div\n *ngIf="headerTemplate"\n class="k-listview-header"\n >\n <ng-template\n [ngTemplateOutlet]="headerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- content --\x3e\n <div\n #contentContainer\n [attr.tabindex]="containerTabindex"\n class="k-listview-content"\n [ngClass]="containerClass"\n [ngStyle]="containerStyle"\n [kendoEventsOutsideAngular]="{\n scroll: handleContentScroll\n }"\n [scope]="this"\n [attr.role]="containerRole"\n [attr.aria-label]="containerLabel"\n >\n \x3c!-- new item edit template --\x3e\n <div\n *ngIf="editService.hasNewItem"\n class="k-listview-item"\n [attr.role]="listItemRole"\n kendoListViewNavigableItem\n [index]="-1"\n [attr.data-kendo-listview-item-index]="-1"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n *ngIf="editTemplate"\n [ngTemplateOutlet]="editTemplate?.templateRef"\n [ngTemplateOutletContext]="editTemplateContext(-1)"\n >\n </ng-template>\n </div>\n\n \x3c!-- items --\x3e\n <div\n *ngFor="let dataItem of items; let index = index; let first = first; let last = last;"\n class="k-listview-item"\n [attr.role]="listItemRole"\n [attr.aria-posinset]="itemPosInSet(index)"\n [attr.aria-setsize]="total"\n kendoListViewNavigableItem\n [index]="index"\n [attr.data-kendo-listview-item-index]="index"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"\n [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"\n >\n </ng-template>\n </div>\n\n \x3c!-- loading indicator --\x3e\n <div\n *ngIf="loading && !loaderTemplate"\n class="k-loading-mask"\n >\n \x3c!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case --\x3e\n <span class="k-loading-text">Loading</span>\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n </div>\n <ng-template\n *ngIf="loading && loaderTemplate"\n [ngTemplateOutlet]="loaderTemplate.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- footer --\x3e\n <div\n *ngIf="footerTemplate"\n class="k-listview-footer"\n >\n <ng-template\n [ngTemplateOutlet]="footerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- bottom pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'top\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager\' }"\n >\n </ng-template>\n\n \x3c!-- pager template --\x3e\n <ng-template #pagerTemplate let-pagerClass="pagerClass">\n <kendo-datapager\n *ngIf="pageable"\n [class]="pagerClass"\n [total]="total"\n [pageSize]="pageSize"\n [skip]="skip"\n [buttonCount]="pagerSettings.buttonCount"\n [info]="pagerSettings.info"\n [previousNext]="pagerSettings.previousNext"\n [type]="pagerSettings.type"\n [pageSizeValues]="pagerSettings.pageSizeValues"\n (pageChange)="handlePageChange($event)"\n (pageSizeChange)="pageSizeChange.emit($event)"\n >\n </kendo-datapager>\n </ng-template>\n ',isInline:!0,components:[{type:m.PagerComponent,selector:"kendo-datapager",inputs:["total","skip","pageSize","buttonCount","info","type","pageSizeValues","previousNext","navigable"],outputs:["pageChange","pageSizeChange"],exportAs:["kendoDataPager"]}],directives:[{type:u.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:u.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:u.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:u.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:B.EventsOutsideAngularDirective,selector:"[kendoEventsOutsideAngular]",inputs:["kendoEventsOutsideAngular","scope"]},{type:f,selector:"[kendoListViewNavigableItem]",inputs:["index"]},{type:u.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}],changeDetection:d.ChangeDetectionStrategy.OnPush}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:V,decorators:[{type:r.Component,args:[{changeDetection:r.ChangeDetectionStrategy.OnPush,exportAs:"kendoListView",selector:"kendo-listview",providers:[T,h,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.listview"}],template:'\n \x3c!-- top pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'bottom\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager k-listview-pager-top\' }"\n >\n </ng-template>\n\n \x3c!-- header --\x3e\n <div\n *ngIf="headerTemplate"\n class="k-listview-header"\n >\n <ng-template\n [ngTemplateOutlet]="headerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- content --\x3e\n <div\n #contentContainer\n [attr.tabindex]="containerTabindex"\n class="k-listview-content"\n [ngClass]="containerClass"\n [ngStyle]="containerStyle"\n [kendoEventsOutsideAngular]="{\n scroll: handleContentScroll\n }"\n [scope]="this"\n [attr.role]="containerRole"\n [attr.aria-label]="containerLabel"\n >\n \x3c!-- new item edit template --\x3e\n <div\n *ngIf="editService.hasNewItem"\n class="k-listview-item"\n [attr.role]="listItemRole"\n kendoListViewNavigableItem\n [index]="-1"\n [attr.data-kendo-listview-item-index]="-1"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n *ngIf="editTemplate"\n [ngTemplateOutlet]="editTemplate?.templateRef"\n [ngTemplateOutletContext]="editTemplateContext(-1)"\n >\n </ng-template>\n </div>\n\n \x3c!-- items --\x3e\n <div\n *ngFor="let dataItem of items; let index = index; let first = first; let last = last;"\n class="k-listview-item"\n [attr.role]="listItemRole"\n [attr.aria-posinset]="itemPosInSet(index)"\n [attr.aria-setsize]="total"\n kendoListViewNavigableItem\n [index]="index"\n [attr.data-kendo-listview-item-index]="index"\n [ngClass]="itemClass"\n [ngStyle]="itemStyle"\n >\n <ng-template\n [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"\n [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"\n >\n </ng-template>\n </div>\n\n \x3c!-- loading indicator --\x3e\n <div\n *ngIf="loading && !loaderTemplate"\n class="k-loading-mask"\n >\n \x3c!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case --\x3e\n <span class="k-loading-text">Loading</span>\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n </div>\n <ng-template\n *ngIf="loading && loaderTemplate"\n [ngTemplateOutlet]="loaderTemplate.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- footer --\x3e\n <div\n *ngIf="footerTemplate"\n class="k-listview-footer"\n >\n <ng-template\n [ngTemplateOutlet]="footerTemplate?.templateRef"\n >\n </ng-template>\n </div>\n\n \x3c!-- bottom pager --\x3e\n <ng-template\n *ngIf="pagerSettings?.position !== \'top\'"\n [ngTemplateOutlet]="pagerTemplate"\n [ngTemplateOutletContext]="{ pagerClass: \'k-listview-pager\' }"\n >\n </ng-template>\n\n \x3c!-- pager template --\x3e\n <ng-template #pagerTemplate let-pagerClass="pagerClass">\n <kendo-datapager\n *ngIf="pageable"\n [class]="pagerClass"\n [total]="total"\n [pageSize]="pageSize"\n [skip]="skip"\n [buttonCount]="pagerSettings.buttonCount"\n [info]="pagerSettings.info"\n [previousNext]="pagerSettings.previousNext"\n [type]="pagerSettings.type"\n [pageSizeValues]="pagerSettings.pageSizeValues"\n (pageChange)="handlePageChange($event)"\n (pageSizeChange)="pageSizeChange.emit($event)"\n >\n </kendo-datapager>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:d.NgZone},{type:d.ElementRef},{type:d.Renderer2},{type:T},{type:h}]},propDecorators:{className:[{type:r.HostBinding,args:["class.k-widget"]},{type:r.HostBinding,args:["class.k-listview"]},{type:r.HostBinding,args:["class.k-listview-bordered"]},{type:r.HostBinding,args:["class.k-d-flex"]}],itemTemplate:[{type:r.ContentChild,args:[b,{static:!1}]}],headerTemplate:[{type:r.ContentChild,args:[C,{static:!1}]}],footerTemplate:[{type:r.ContentChild,args:[w,{static:!1}]}],loaderTemplate:[{type:r.ContentChild,args:[S,{static:!1}]}],contentContainer:[{type:r.ViewChild,args:["contentContainer",{static:!0}]}],editTemplate:[{type:r.ContentChild,args:[D,{static:!1}]}],listViewItems:[{type:r.ViewChildren,args:[f]}],data:[{type:r.Input}],loading:[{type:r.Input}],containerStyle:[{type:r.Input}],itemStyle:[{type:r.Input}],containerClass:[{type:r.Input}],itemClass:[{type:r.Input}],containerLabel:[{type:r.Input}],containerRole:[{type:r.Input}],listItemRole:[{type:r.Input}],navigable:[{type:r.Input}],pageSize:[{type:r.Input}],skip:[{type:r.Input}],pageable:[{type:r.Input}],height:[{type:r.Input}],scrollBottom:[{type:r.Output}],pageChange:[{type:r.Output}],pageSizeChange:[{type:r.Output}],edit:[{type:r.Output}],cancel:[{type:r.Output}],save:[{type:r.Output}],remove:[{type:r.Output}],add:[{type:r.Output}]}});Object.defineProperty(O.prototype,"data",{get:function(){return this._data},set:function(e){this._data=e||[],this.updateListViewData()},enumerable:!1,configurable:!0}),O.prototype.ngOnInit=function(){this.subscriptions.add(this.listView.pageChange.subscribe(this.handlePageChange.bind(this))),this.subscriptions.add(this.listView.pageSizeChange.subscribe(this.handlePageSizeChange.bind(this))),this.updateListViewData()},O.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},O.prototype.handlePageChange=function(e){this.listView.skip=e.skip,this.listView.pageSize=e.take,this.updateListViewData()},O.prototype.handlePageSizeChange=function(e){this.listView.pageSize=Number(e.newPageSize)},O.prototype.updateListViewData=function(){var e=this.listView.skip||0,t=e+(this.listView.pageSize||this.data.length);this.listView.data={data:this.data.slice(e,t),total:this.data.length}};m=O;function O(e){this.listView=e,this.subscriptions=new n.Subscription}m.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:m,deps:[{token:V}],target:d.ɵɵFactoryTarget.Directive}),m.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:m,selector:"[kendoListViewBinding]",inputs:{data:["kendoListViewBinding","data"]},ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:m,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewBinding]"}]}],ctorParameters:function(){return[{type:V}]},propDecorators:{data:[{type:r.Input,args:["kendoListViewBinding"]}]}});var G=function(e,t){return(G=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 R(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}G(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;Object.create;R(U,q=o.PageSizeChangeEvent);var q,B=U;function U(){return null!==q&&q.apply(this,arguments)||this}R(Q,X=l.Button),Q.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.beginEdit(e)};var X,u=Q;function Q(e,t,n,i,a){n=X.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}u.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:u,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),u.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:u,selector:"[kendoListViewEditCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:u,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewEditCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(W,J=l.Button),W.prototype.clickHandler=function(e){e.preventDefault(),this.editService.beginAdd()};var J,t=W;function W(e,t,n,i,a){t=J.call(this,t,n,null,i,a)||this;return t.editService=e,t}t.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:t,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),t.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:t,selector:"[kendoListViewAddCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:t,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewAddCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(ee,Y=l.Button),ee.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.isEdited(e)&&this.editService.save(e)};var Y,L=ee;function ee(e,t,n,i,a){n=Y.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}L.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:L,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),L.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:L,selector:"[kendoListViewSaveCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:L,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewSaveCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(ne,te=l.Button),ne.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.isEdited(e)&&this.editService.endEdit(e)};var te,N=ne;function ne(e,t,n,i,a){n=te.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}N.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:N,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),N.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:N,selector:"[kendoListViewCancelCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:N,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewCancelCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});R(ae,ie=l.Button),ae.prototype.clickHandler=function(e){e.preventDefault();e=c(this.elementRef.nativeElement);this.editService.remove(e)};var ie,l=ae;function ae(e,t,n,i,a){n=ie.call(this,t,n,null,i,a)||this;return n.editService=e,n.elementRef=t,n}l.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:l,deps:[{token:T},{token:d.ElementRef},{token:d.Renderer2},{token:g.LocalizationService},{token:d.NgZone}],target:d.ɵɵFactoryTarget.Directive}),l.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:l,selector:"[kendoListViewRemoveCommand]",host:{listeners:{click:"clickHandler($event)"}},usesInheritance:!0,ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:l,decorators:[{type:r.Directive,args:[{selector:"[kendoListViewRemoveCommand]"}]}],ctorParameters:function(){return[{type:T},{type:d.ElementRef},{type:d.Renderer2},{type:g.LocalizationService},{type:d.NgZone}]},propDecorators:{clickHandler:[{type:r.HostListener,args:["click",["$event"]]}]}});Object.defineProperty(re.prototype,"templateContext",{set:function(e){this.insertedViewRef&&(this.viewContainerRef.remove(this.viewContainerRef.indexOf(this.insertedViewRef)),this.insertedViewRef=void 0),e.templateRef&&(this.insertedViewRef=this.viewContainerRef.createEmbeddedView(e.templateRef,e))},enumerable:!1,configurable:!0});var F=re;function re(e){this.viewContainerRef=e}F.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:F,deps:[{token:d.ViewContainerRef}],target:d.ɵɵFactoryTarget.Directive}),F.ɵdir=d.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.17",type:F,selector:"[templateContext]",inputs:{templateContext:"templateContext"},ngImport:d}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:F,decorators:[{type:r.Directive,args:[{selector:"[templateContext]"}]}],ctorParameters:function(){return[{type:d.ViewContainerRef}]},propDecorators:{templateContext:[{type:r.Input}]}});var oe=[b,C,w,S],se=[m],le=[D,u,N,L,l,t],P=function(){};P.ɵfac=d.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:P,deps:[],target:d.ɵɵFactoryTarget.NgModule}),P.ɵmod=d.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:P,declarations:[b,C,w,S,m,D,u,N,L,l,t,V,F,f],imports:[s.CommonModule,o.PagerModule,a.EventsModule],exports:[b,C,w,S,m,D,u,N,L,l,t,V,s.CommonModule,a.EventsModule]}),P.ɵinj=d.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:P,imports:[[s.CommonModule,o.PagerModule,a.EventsModule],s.CommonModule,a.EventsModule]}),d.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:d,type:P,decorators:[{type:r.NgModule,args:[{declarations:[oe,se,le,V,F,f],exports:[oe,se,le,V,s.CommonModule,a.EventsModule],imports:[s.CommonModule,o.PagerModule,a.EventsModule]}]}]}),e.AddCommandDirective=t,e.CancelCommandDirective=N,e.DataBindingDirective=m,e.EditCommandDirective=u,e.EditTemplateDirective=D,e.FooterTemplateDirective=w,e.HeaderTemplateDirective=C,e.ItemTemplateDirective=b,e.ListViewComponent=V,e.ListViewModule=P,e.LoaderTemplateDirective=S,e.PageSizeChangeEvent=B,e.RemoveCommandDirective=l,e.SaveCommandDirective=L,Object.defineProperty(e,"__esModule",{value:!0})});
@@ -50,9 +50,9 @@ export class DataBindingDirective {
50
50
  };
51
51
  }
52
52
  }
53
- DataBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DataBindingDirective, deps: [{ token: i1.ListViewComponent }], target: i0.ɵɵFactoryTarget.Directive });
54
- DataBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: DataBindingDirective, selector: "[kendoListViewBinding]", inputs: { data: ["kendoListViewBinding", "data"] }, ngImport: i0 });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DataBindingDirective, decorators: [{
53
+ DataBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DataBindingDirective, deps: [{ token: i1.ListViewComponent }], target: i0.ɵɵFactoryTarget.Directive });
54
+ DataBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: DataBindingDirective, selector: "[kendoListViewBinding]", inputs: { data: ["kendoListViewBinding", "data"] }, ngImport: i0 });
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DataBindingDirective, decorators: [{
56
56
  type: Directive,
57
57
  args: [{
58
58
  selector: '[kendoListViewBinding]'
@@ -36,9 +36,9 @@ export class AddCommandDirective extends Button {
36
36
  this.editService.beginAdd();
37
37
  }
38
38
  }
39
- AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AddCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
40
- AddCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: AddCommandDirective, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AddCommandDirective, decorators: [{
39
+ AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
40
+ AddCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: AddCommandDirective, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddCommandDirective, decorators: [{
42
42
  type: Directive,
43
43
  args: [{
44
44
  selector: '[kendoListViewAddCommand]'
@@ -52,9 +52,9 @@ export class CancelCommandDirective extends Button {
52
52
  }
53
53
  }
54
54
  }
55
- CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CancelCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
56
- CancelCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: CancelCommandDirective, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CancelCommandDirective, decorators: [{
55
+ CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CancelCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
56
+ CancelCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: CancelCommandDirective, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CancelCommandDirective, decorators: [{
58
58
  type: Directive,
59
59
  args: [{
60
60
  selector: '[kendoListViewCancelCommand]'
@@ -40,9 +40,9 @@ export class EditCommandDirective extends Button {
40
40
  this.editService.beginEdit(index);
41
41
  }
42
42
  }
43
- EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
44
- EditCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: EditCommandDirective, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditCommandDirective, decorators: [{
43
+ EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
44
+ EditCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: EditCommandDirective, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditCommandDirective, decorators: [{
46
46
  type: Directive,
47
47
  args: [{
48
48
  selector: '[kendoListViewEditCommand]'
@@ -39,9 +39,9 @@ export class RemoveCommandDirective extends Button {
39
39
  this.editService.remove(index);
40
40
  }
41
41
  }
42
- RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
43
- RemoveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: RemoveCommandDirective, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RemoveCommandDirective, decorators: [{
42
+ RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
43
+ RemoveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: RemoveCommandDirective, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveCommandDirective, decorators: [{
45
45
  type: Directive,
46
46
  args: [{
47
47
  selector: '[kendoListViewRemoveCommand]'
@@ -52,9 +52,9 @@ export class SaveCommandDirective extends Button {
52
52
  }
53
53
  }
54
54
  }
55
- SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SaveCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
56
- SaveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: SaveCommandDirective, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SaveCommandDirective, decorators: [{
55
+ SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SaveCommandDirective, deps: [{ token: i1.EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
56
+ SaveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: SaveCommandDirective, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SaveCommandDirective, decorators: [{
58
58
  type: Directive,
59
59
  args: [{
60
60
  selector: '[kendoListViewSaveCommand]'
@@ -21,9 +21,9 @@ export class EditTemplateDirective {
21
21
  this.templateRef = templateRef;
22
22
  }
23
23
  }
24
- EditTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
25
- EditTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: EditTemplateDirective, selector: "[kendoListViewEditTemplate]", ngImport: i0 });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditTemplateDirective, decorators: [{
24
+ EditTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
25
+ EditTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: EditTemplateDirective, selector: "[kendoListViewEditTemplate]", ngImport: i0 });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditTemplateDirective, decorators: [{
27
27
  type: Directive,
28
28
  args: [{
29
29
  selector: '[kendoListViewEditTemplate]'
@@ -109,8 +109,8 @@ export class EditService {
109
109
  });
110
110
  }
111
111
  }
112
- EditService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
113
- EditService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditService });
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditService, decorators: [{
112
+ EditService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
113
+ EditService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditService });
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditService, decorators: [{
115
115
  type: Injectable
116
116
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
@@ -58,15 +58,15 @@ export class ListViewComponent {
58
58
  /**
59
59
  * Specifies the content container `role` attribute
60
60
  * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
61
- * By default, the container `role` is set to `listbox`.
61
+ * By default, the container `role` is set to `list`.
62
62
  */
63
- this.containerRole = 'listbox';
63
+ this.containerRole = 'list';
64
64
  /**
65
65
  * Specifies the list item `role` attribute
66
66
  * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
67
- * By default, the list item `role` is set to `option`.
67
+ * By default, the list item `role` is set to `listitem`.
68
68
  */
69
- this.listItemRole = 'option';
69
+ this.listItemRole = 'listitem';
70
70
  /**
71
71
  * Fires when the user scrolls to the last record on the page
72
72
  * ([see endless scrolling example]({% slug scrollmodes_listview %}#toc-endless-scrolling)).
@@ -176,6 +176,9 @@ export class ListViewComponent {
176
176
  * If a ListViewDataResult is passed, the total value is used. If an array is passed - its length is used.
177
177
  */
178
178
  get total() {
179
+ if (!this.pageable) {
180
+ return;
181
+ }
179
182
  if (!isPresent(this.data)) {
180
183
  return 0;
181
184
  }
@@ -316,6 +319,9 @@ export class ListViewComponent {
316
319
  * @hidden
317
320
  */
318
321
  itemPosInSet(index) {
322
+ if (!this.pageable) {
323
+ return;
324
+ }
319
325
  // adds 1 as the aria-posinset is not zero-based and the counting starts from 1
320
326
  return this.skip + index + 1;
321
327
  }
@@ -356,8 +362,8 @@ export class ListViewComponent {
356
362
  this[action].emit(args);
357
363
  }
358
364
  }
359
- ListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.EditService }, { token: i2.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
360
- ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListViewComponent, selector: "kendo-listview", inputs: { data: "data", loading: "loading", containerStyle: "containerStyle", itemStyle: "itemStyle", containerClass: "containerClass", itemClass: "itemClass", containerLabel: "containerLabel", containerRole: "containerRole", listItemRole: "listItemRole", navigable: "navigable", pageSize: "pageSize", skip: "skip", pageable: "pageable", height: "height" }, outputs: { scrollBottom: "scrollBottom", pageChange: "pageChange", pageSizeChange: "pageSizeChange", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add" }, host: { properties: { "class.k-widget": "this.className", "class.k-listview": "this.className", "class.k-listview-bordered": "this.className", "class.k-d-flex": "this.className" } }, providers: [
365
+ ListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.EditService }, { token: i2.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
366
+ ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ListViewComponent, selector: "kendo-listview", inputs: { data: "data", loading: "loading", containerStyle: "containerStyle", itemStyle: "itemStyle", containerClass: "containerClass", itemClass: "itemClass", containerLabel: "containerLabel", containerRole: "containerRole", listItemRole: "listItemRole", navigable: "navigable", pageSize: "pageSize", skip: "skip", pageable: "pageable", height: "height" }, outputs: { scrollBottom: "scrollBottom", pageChange: "pageChange", pageSizeChange: "pageSizeChange", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add" }, host: { properties: { "class.k-widget": "this.className", "class.k-listview": "this.className", "class.k-listview-bordered": "this.className", "class.k-d-flex": "this.className" } }, providers: [
361
367
  EditService,
362
368
  NavigationService,
363
369
  LocalizationService,
@@ -492,8 +498,8 @@ ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
492
498
  >
493
499
  </kendo-datapager>
494
500
  </ng-template>
495
- `, isInline: true, components: [{ type: i3.PagerComponent, selector: "kendo-datapager", inputs: ["total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext"], outputs: ["pageChange", "pageSizeChange"], exportAs: ["kendoDataPager"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i6.ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
496
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewComponent, decorators: [{
501
+ `, isInline: true, components: [{ type: i3.PagerComponent, selector: "kendo-datapager", inputs: ["total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable"], outputs: ["pageChange", "pageSizeChange"], exportAs: ["kendoDataPager"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i6.ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
502
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewComponent, decorators: [{
497
503
  type: Component,
498
504
  args: [{
499
505
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -52,8 +52,8 @@ const EDITING_DIRECTIVES = [
52
52
  */
53
53
  export class ListViewModule {
54
54
  }
55
- ListViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
56
- ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, declarations: [ItemTemplateDirective,
55
+ ListViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
56
+ ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, declarations: [ItemTemplateDirective,
57
57
  HeaderTemplateDirective,
58
58
  FooterTemplateDirective,
59
59
  LoaderTemplateDirective, DataBindingDirective, EditTemplateDirective,
@@ -76,13 +76,13 @@ ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
76
76
  AddCommandDirective, ListViewComponent,
77
77
  CommonModule,
78
78
  EventsModule] });
79
- ListViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, imports: [[
79
+ ListViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, imports: [[
80
80
  CommonModule,
81
81
  PagerModule,
82
82
  EventsModule
83
83
  ], CommonModule,
84
84
  EventsModule] });
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, decorators: [{
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, decorators: [{
86
86
  type: NgModule,
87
87
  args: [{
88
88
  declarations: [
@@ -54,9 +54,9 @@ export class ListViewNavigableItemDirective {
54
54
  }
55
55
  }
56
56
  }
57
- ListViewNavigableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewNavigableItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
58
- ListViewNavigableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: { index: "index" }, usesOnChanges: true, ngImport: i0 });
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewNavigableItemDirective, decorators: [{
57
+ ListViewNavigableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewNavigableItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
58
+ ListViewNavigableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: { index: "index" }, usesOnChanges: true, ngImport: i0 });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewNavigableItemDirective, decorators: [{
60
60
  type: Directive,
61
61
  args: [{
62
62
  selector: '[kendoListViewNavigableItem]'
@@ -151,8 +151,8 @@ export class NavigationService {
151
151
  this.navigateTo(nextIndex);
152
152
  }
153
153
  }
154
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
155
- NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService });
156
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService, decorators: [{
154
+ NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
155
+ NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavigationService });
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavigationService, decorators: [{
157
157
  type: Injectable
158
158
  }] });
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-listview',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1668698801,
12
+ publishDate: 1669715421,
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
  };
@@ -14,9 +14,9 @@ export class FooterTemplateDirective {
14
14
  this.templateRef = templateRef;
15
15
  }
16
16
  }
17
- FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
18
- FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: FooterTemplateDirective, selector: "[kendoListViewFooterTemplate]", ngImport: i0 });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FooterTemplateDirective, decorators: [{
17
+ FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
18
+ FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: FooterTemplateDirective, selector: "[kendoListViewFooterTemplate]", ngImport: i0 });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FooterTemplateDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  selector: '[kendoListViewFooterTemplate]'
@@ -14,9 +14,9 @@ export class HeaderTemplateDirective {
14
14
  this.templateRef = templateRef;
15
15
  }
16
16
  }
17
- HeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
18
- HeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: HeaderTemplateDirective, selector: "[kendoListViewHeaderTemplate]", ngImport: i0 });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
17
+ HeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
18
+ HeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: HeaderTemplateDirective, selector: "[kendoListViewHeaderTemplate]", ngImport: i0 });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  selector: '[kendoListViewHeaderTemplate]'
@@ -20,9 +20,9 @@ export class ItemTemplateDirective {
20
20
  this.templateRef = templateRef;
21
21
  }
22
22
  }
23
- ItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
24
- ItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ItemTemplateDirective, selector: "[kendoListViewItemTemplate]", ngImport: i0 });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ItemTemplateDirective, decorators: [{
23
+ ItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
24
+ ItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: ItemTemplateDirective, selector: "[kendoListViewItemTemplate]", ngImport: i0 });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ItemTemplateDirective, decorators: [{
26
26
  type: Directive,
27
27
  args: [{
28
28
  selector: '[kendoListViewItemTemplate]'
@@ -14,9 +14,9 @@ export class LoaderTemplateDirective {
14
14
  this.templateRef = templateRef;
15
15
  }
16
16
  }
17
- LoaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
18
- LoaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LoaderTemplateDirective, selector: "[kendoListViewLoaderTemplate]", ngImport: i0 });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderTemplateDirective, decorators: [{
17
+ LoaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LoaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
18
+ LoaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: LoaderTemplateDirective, selector: "[kendoListViewLoaderTemplate]", ngImport: i0 });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LoaderTemplateDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  selector: '[kendoListViewLoaderTemplate]'
@@ -21,9 +21,9 @@ export class TemplateContextDirective {
21
21
  }
22
22
  }
23
23
  }
24
- TemplateContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TemplateContextDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
25
- TemplateContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TemplateContextDirective, selector: "[templateContext]", inputs: { templateContext: "templateContext" }, ngImport: i0 });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TemplateContextDirective, decorators: [{
24
+ TemplateContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateContextDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
25
+ TemplateContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TemplateContextDirective, selector: "[templateContext]", inputs: { templateContext: "templateContext" }, ngImport: i0 });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateContextDirective, decorators: [{
27
27
  type: Directive,
28
28
  args: [{
29
29
  selector: '[templateContext]' // eslint-disable-line
@@ -25,7 +25,7 @@ const packageMetadata = {
25
25
  name: '@progress/kendo-angular-listview',
26
26
  productName: 'Kendo UI for Angular',
27
27
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
28
- publishDate: 1668698801,
28
+ publishDate: 1669715421,
29
29
  version: '',
30
30
  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'
31
31
  };
@@ -273,9 +273,9 @@ class NavigationService {
273
273
  this.navigateTo(nextIndex);
274
274
  }
275
275
  }
276
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
277
- NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService });
278
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService, decorators: [{
276
+ NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
277
+ NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavigationService });
278
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NavigationService, decorators: [{
279
279
  type: Injectable
280
280
  }] });
281
281
 
@@ -327,9 +327,9 @@ class ListViewNavigableItemDirective {
327
327
  }
328
328
  }
329
329
  }
330
- ListViewNavigableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewNavigableItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
331
- ListViewNavigableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: { index: "index" }, usesOnChanges: true, ngImport: i0 });
332
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewNavigableItemDirective, decorators: [{
330
+ ListViewNavigableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewNavigableItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
331
+ ListViewNavigableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: { index: "index" }, usesOnChanges: true, ngImport: i0 });
332
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewNavigableItemDirective, decorators: [{
333
333
  type: Directive,
334
334
  args: [{
335
335
  selector: '[kendoListViewNavigableItem]'
@@ -354,9 +354,9 @@ class ItemTemplateDirective {
354
354
  this.templateRef = templateRef;
355
355
  }
356
356
  }
357
- ItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
358
- ItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ItemTemplateDirective, selector: "[kendoListViewItemTemplate]", ngImport: i0 });
359
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ItemTemplateDirective, decorators: [{
357
+ ItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
358
+ ItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: ItemTemplateDirective, selector: "[kendoListViewItemTemplate]", ngImport: i0 });
359
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ItemTemplateDirective, decorators: [{
360
360
  type: Directive,
361
361
  args: [{
362
362
  selector: '[kendoListViewItemTemplate]'
@@ -373,9 +373,9 @@ class HeaderTemplateDirective {
373
373
  this.templateRef = templateRef;
374
374
  }
375
375
  }
376
- HeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
377
- HeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: HeaderTemplateDirective, selector: "[kendoListViewHeaderTemplate]", ngImport: i0 });
378
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
376
+ HeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
377
+ HeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: HeaderTemplateDirective, selector: "[kendoListViewHeaderTemplate]", ngImport: i0 });
378
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
379
379
  type: Directive,
380
380
  args: [{
381
381
  selector: '[kendoListViewHeaderTemplate]'
@@ -392,9 +392,9 @@ class FooterTemplateDirective {
392
392
  this.templateRef = templateRef;
393
393
  }
394
394
  }
395
- FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
396
- FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: FooterTemplateDirective, selector: "[kendoListViewFooterTemplate]", ngImport: i0 });
397
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FooterTemplateDirective, decorators: [{
395
+ FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
396
+ FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: FooterTemplateDirective, selector: "[kendoListViewFooterTemplate]", ngImport: i0 });
397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FooterTemplateDirective, decorators: [{
398
398
  type: Directive,
399
399
  args: [{
400
400
  selector: '[kendoListViewFooterTemplate]'
@@ -411,9 +411,9 @@ class LoaderTemplateDirective {
411
411
  this.templateRef = templateRef;
412
412
  }
413
413
  }
414
- LoaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
415
- LoaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LoaderTemplateDirective, selector: "[kendoListViewLoaderTemplate]", ngImport: i0 });
416
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderTemplateDirective, decorators: [{
414
+ LoaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LoaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
415
+ LoaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: LoaderTemplateDirective, selector: "[kendoListViewLoaderTemplate]", ngImport: i0 });
416
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LoaderTemplateDirective, decorators: [{
417
417
  type: Directive,
418
418
  args: [{
419
419
  selector: '[kendoListViewLoaderTemplate]'
@@ -437,9 +437,9 @@ class EditTemplateDirective {
437
437
  this.templateRef = templateRef;
438
438
  }
439
439
  }
440
- EditTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
441
- EditTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: EditTemplateDirective, selector: "[kendoListViewEditTemplate]", ngImport: i0 });
442
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditTemplateDirective, decorators: [{
440
+ EditTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
441
+ EditTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: EditTemplateDirective, selector: "[kendoListViewEditTemplate]", ngImport: i0 });
442
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditTemplateDirective, decorators: [{
443
443
  type: Directive,
444
444
  args: [{
445
445
  selector: '[kendoListViewEditTemplate]'
@@ -549,9 +549,9 @@ class EditService {
549
549
  });
550
550
  }
551
551
  }
552
- EditService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
553
- EditService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditService });
554
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditService, decorators: [{
552
+ EditService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
553
+ EditService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditService });
554
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditService, decorators: [{
555
555
  type: Injectable
556
556
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
557
557
 
@@ -589,15 +589,15 @@ class ListViewComponent {
589
589
  /**
590
590
  * Specifies the content container `role` attribute
591
591
  * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
592
- * By default, the container `role` is set to `listbox`.
592
+ * By default, the container `role` is set to `list`.
593
593
  */
594
- this.containerRole = 'listbox';
594
+ this.containerRole = 'list';
595
595
  /**
596
596
  * Specifies the list item `role` attribute
597
597
  * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
598
- * By default, the list item `role` is set to `option`.
598
+ * By default, the list item `role` is set to `listitem`.
599
599
  */
600
- this.listItemRole = 'option';
600
+ this.listItemRole = 'listitem';
601
601
  /**
602
602
  * Fires when the user scrolls to the last record on the page
603
603
  * ([see endless scrolling example]({% slug scrollmodes_listview %}#toc-endless-scrolling)).
@@ -707,6 +707,9 @@ class ListViewComponent {
707
707
  * If a ListViewDataResult is passed, the total value is used. If an array is passed - its length is used.
708
708
  */
709
709
  get total() {
710
+ if (!this.pageable) {
711
+ return;
712
+ }
710
713
  if (!isPresent(this.data)) {
711
714
  return 0;
712
715
  }
@@ -847,6 +850,9 @@ class ListViewComponent {
847
850
  * @hidden
848
851
  */
849
852
  itemPosInSet(index) {
853
+ if (!this.pageable) {
854
+ return;
855
+ }
850
856
  // adds 1 as the aria-posinset is not zero-based and the counting starts from 1
851
857
  return this.skip + index + 1;
852
858
  }
@@ -887,8 +893,8 @@ class ListViewComponent {
887
893
  this[action].emit(args);
888
894
  }
889
895
  }
890
- ListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: EditService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
891
- ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListViewComponent, selector: "kendo-listview", inputs: { data: "data", loading: "loading", containerStyle: "containerStyle", itemStyle: "itemStyle", containerClass: "containerClass", itemClass: "itemClass", containerLabel: "containerLabel", containerRole: "containerRole", listItemRole: "listItemRole", navigable: "navigable", pageSize: "pageSize", skip: "skip", pageable: "pageable", height: "height" }, outputs: { scrollBottom: "scrollBottom", pageChange: "pageChange", pageSizeChange: "pageSizeChange", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add" }, host: { properties: { "class.k-widget": "this.className", "class.k-listview": "this.className", "class.k-listview-bordered": "this.className", "class.k-d-flex": "this.className" } }, providers: [
896
+ ListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: EditService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
897
+ ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ListViewComponent, selector: "kendo-listview", inputs: { data: "data", loading: "loading", containerStyle: "containerStyle", itemStyle: "itemStyle", containerClass: "containerClass", itemClass: "itemClass", containerLabel: "containerLabel", containerRole: "containerRole", listItemRole: "listItemRole", navigable: "navigable", pageSize: "pageSize", skip: "skip", pageable: "pageable", height: "height" }, outputs: { scrollBottom: "scrollBottom", pageChange: "pageChange", pageSizeChange: "pageSizeChange", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add" }, host: { properties: { "class.k-widget": "this.className", "class.k-listview": "this.className", "class.k-listview-bordered": "this.className", "class.k-d-flex": "this.className" } }, providers: [
892
898
  EditService,
893
899
  NavigationService,
894
900
  LocalizationService,
@@ -1023,8 +1029,8 @@ ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
1023
1029
  >
1024
1030
  </kendo-datapager>
1025
1031
  </ng-template>
1026
- `, isInline: true, components: [{ type: i3.PagerComponent, selector: "kendo-datapager", inputs: ["total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext"], outputs: ["pageChange", "pageSizeChange"], exportAs: ["kendoDataPager"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1027
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewComponent, decorators: [{
1032
+ `, isInline: true, components: [{ type: i3.PagerComponent, selector: "kendo-datapager", inputs: ["total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable"], outputs: ["pageChange", "pageSizeChange"], exportAs: ["kendoDataPager"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1033
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewComponent, decorators: [{
1028
1034
  type: Component,
1029
1035
  args: [{
1030
1036
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -1291,9 +1297,9 @@ class DataBindingDirective {
1291
1297
  };
1292
1298
  }
1293
1299
  }
1294
- DataBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DataBindingDirective, deps: [{ token: ListViewComponent }], target: i0.ɵɵFactoryTarget.Directive });
1295
- DataBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: DataBindingDirective, selector: "[kendoListViewBinding]", inputs: { data: ["kendoListViewBinding", "data"] }, ngImport: i0 });
1296
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DataBindingDirective, decorators: [{
1300
+ DataBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DataBindingDirective, deps: [{ token: ListViewComponent }], target: i0.ɵɵFactoryTarget.Directive });
1301
+ DataBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: DataBindingDirective, selector: "[kendoListViewBinding]", inputs: { data: ["kendoListViewBinding", "data"] }, ngImport: i0 });
1302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DataBindingDirective, decorators: [{
1297
1303
  type: Directive,
1298
1304
  args: [{
1299
1305
  selector: '[kendoListViewBinding]'
@@ -1342,9 +1348,9 @@ class EditCommandDirective extends Button {
1342
1348
  this.editService.beginEdit(index);
1343
1349
  }
1344
1350
  }
1345
- EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1346
- EditCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: EditCommandDirective, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1347
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditCommandDirective, decorators: [{
1351
+ EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1352
+ EditCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: EditCommandDirective, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditCommandDirective, decorators: [{
1348
1354
  type: Directive,
1349
1355
  args: [{
1350
1356
  selector: '[kendoListViewEditCommand]'
@@ -1383,9 +1389,9 @@ class AddCommandDirective extends Button {
1383
1389
  this.editService.beginAdd();
1384
1390
  }
1385
1391
  }
1386
- AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1387
- AddCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: AddCommandDirective, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1388
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AddCommandDirective, decorators: [{
1392
+ AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1393
+ AddCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: AddCommandDirective, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1394
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddCommandDirective, decorators: [{
1389
1395
  type: Directive,
1390
1396
  args: [{
1391
1397
  selector: '[kendoListViewAddCommand]'
@@ -1439,9 +1445,9 @@ class SaveCommandDirective extends Button {
1439
1445
  }
1440
1446
  }
1441
1447
  }
1442
- SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1443
- SaveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: SaveCommandDirective, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1444
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SaveCommandDirective, decorators: [{
1448
+ SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1449
+ SaveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: SaveCommandDirective, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SaveCommandDirective, decorators: [{
1445
1451
  type: Directive,
1446
1452
  args: [{
1447
1453
  selector: '[kendoListViewSaveCommand]'
@@ -1495,9 +1501,9 @@ class CancelCommandDirective extends Button {
1495
1501
  }
1496
1502
  }
1497
1503
  }
1498
- CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1499
- CancelCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: CancelCommandDirective, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1500
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CancelCommandDirective, decorators: [{
1504
+ CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1505
+ CancelCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: CancelCommandDirective, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1506
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CancelCommandDirective, decorators: [{
1501
1507
  type: Directive,
1502
1508
  args: [{
1503
1509
  selector: '[kendoListViewCancelCommand]'
@@ -1538,9 +1544,9 @@ class RemoveCommandDirective extends Button {
1538
1544
  this.editService.remove(index);
1539
1545
  }
1540
1546
  }
1541
- RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1542
- RemoveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: RemoveCommandDirective, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1543
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RemoveCommandDirective, decorators: [{
1547
+ RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
1548
+ RemoveCommandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: RemoveCommandDirective, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0 });
1549
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveCommandDirective, decorators: [{
1544
1550
  type: Directive,
1545
1551
  args: [{
1546
1552
  selector: '[kendoListViewRemoveCommand]'
@@ -1567,9 +1573,9 @@ class TemplateContextDirective {
1567
1573
  }
1568
1574
  }
1569
1575
  }
1570
- TemplateContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TemplateContextDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
1571
- TemplateContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TemplateContextDirective, selector: "[templateContext]", inputs: { templateContext: "templateContext" }, ngImport: i0 });
1572
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TemplateContextDirective, decorators: [{
1576
+ TemplateContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateContextDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
1577
+ TemplateContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: TemplateContextDirective, selector: "[templateContext]", inputs: { templateContext: "templateContext" }, ngImport: i0 });
1578
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateContextDirective, decorators: [{
1573
1579
  type: Directive,
1574
1580
  args: [{
1575
1581
  selector: '[templateContext]' // eslint-disable-line
@@ -1609,8 +1615,8 @@ const EDITING_DIRECTIVES = [
1609
1615
  */
1610
1616
  class ListViewModule {
1611
1617
  }
1612
- ListViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1613
- ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, declarations: [ItemTemplateDirective,
1618
+ ListViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1619
+ ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, declarations: [ItemTemplateDirective,
1614
1620
  HeaderTemplateDirective,
1615
1621
  FooterTemplateDirective,
1616
1622
  LoaderTemplateDirective, DataBindingDirective, EditTemplateDirective,
@@ -1633,13 +1639,13 @@ ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
1633
1639
  AddCommandDirective, ListViewComponent,
1634
1640
  CommonModule,
1635
1641
  EventsModule] });
1636
- ListViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, imports: [[
1642
+ ListViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, imports: [[
1637
1643
  CommonModule,
1638
1644
  PagerModule,
1639
1645
  EventsModule
1640
1646
  ], CommonModule,
1641
1647
  EventsModule] });
1642
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListViewModule, decorators: [{
1648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListViewModule, decorators: [{
1643
1649
  type: NgModule,
1644
1650
  args: [{
1645
1651
  declarations: [
@@ -109,13 +109,13 @@ export declare class ListViewComponent {
109
109
  /**
110
110
  * Specifies the content container `role` attribute
111
111
  * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
112
- * By default, the container `role` is set to `listbox`.
112
+ * By default, the container `role` is set to `list`.
113
113
  */
114
114
  containerRole: string;
115
115
  /**
116
116
  * Specifies the list item `role` attribute
117
117
  * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
118
- * By default, the list item `role` is set to `option`.
118
+ * By default, the list item `role` is set to `listitem`.
119
119
  */
120
120
  listItemRole: string;
121
121
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-listview",
3
- "version": "4.0.3",
3
+ "version": "4.0.4",
4
4
  "description": "Kendo UI ListView component for Angular",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",