@progress/kendo-angular-listview 17.0.0-develop.9 → 17.0.0

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.
Files changed (46) hide show
  1. package/README.md +26 -17
  2. package/data-binding/data-binding.directive.d.ts +1 -1
  3. package/editing/edit.service.d.ts +3 -3
  4. package/editing/events/cancel-event-args.interface.d.ts +1 -1
  5. package/{esm2020 → esm2022}/data-binding/data-binding.directive.mjs +9 -7
  6. package/{esm2020 → esm2022}/editing/commands/add-command.directive.mjs +9 -8
  7. package/{esm2020 → esm2022}/editing/commands/cancel-command.directive.mjs +11 -9
  8. package/{esm2020 → esm2022}/editing/commands/edit-command.directive.mjs +11 -9
  9. package/{esm2020 → esm2022}/editing/commands/remove-command.directive.mjs +11 -9
  10. package/{esm2020 → esm2022}/editing/commands/save-command.directive.mjs +11 -9
  11. package/{esm2020 → esm2022}/editing/edit-template.directive.mjs +4 -3
  12. package/{esm2020 → esm2022}/editing/edit.service.mjs +9 -6
  13. package/{esm2020 → esm2022}/listview.component.mjs +206 -123
  14. package/{esm2020 → esm2022}/listview.module.mjs +8 -8
  15. package/{esm2020 → esm2022}/navigation/listview-navigable-item.directive.mjs +11 -3
  16. package/{esm2020 → esm2022}/navigation/navigation.service.mjs +16 -18
  17. package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
  18. package/{esm2020 → esm2022}/templates/footer-template.directive.mjs +4 -3
  19. package/{esm2020 → esm2022}/templates/header-template.directive.mjs +4 -3
  20. package/{esm2020 → esm2022}/templates/item-template.directive.mjs +4 -3
  21. package/{esm2020 → esm2022}/templates/loader-template.directive.mjs +4 -3
  22. package/{fesm2020 → fesm2022}/progress-kendo-angular-listview.mjs +334 -226
  23. package/listview.component.d.ts +1 -1
  24. package/models/page-change-event.d.ts +1 -1
  25. package/models/pager-position.d.ts +1 -1
  26. package/navigation/listview-navigable-item.directive.d.ts +1 -1
  27. package/package.json +16 -22
  28. package/schematics/ngAdd/index.js +7 -7
  29. package/fesm2015/progress-kendo-angular-listview.mjs +0 -1767
  30. /package/{esm2020 → esm2022}/directives.mjs +0 -0
  31. /package/{esm2020 → esm2022}/editing/events/add-event-args.interface.mjs +0 -0
  32. /package/{esm2020 → esm2022}/editing/events/cancel-event-args.interface.mjs +0 -0
  33. /package/{esm2020 → esm2022}/editing/events/edit-event-args.interface.mjs +0 -0
  34. /package/{esm2020 → esm2022}/editing/events/remove-event-args.interface.mjs +0 -0
  35. /package/{esm2020 → esm2022}/editing/events/save-event-args.interface.mjs +0 -0
  36. /package/{esm2020 → esm2022}/index.mjs +0 -0
  37. /package/{esm2020 → esm2022}/models/listview-data-result.mjs +0 -0
  38. /package/{esm2020 → esm2022}/models/page-change-event.mjs +0 -0
  39. /package/{esm2020 → esm2022}/models/page-size-change-event.mjs +0 -0
  40. /package/{esm2020 → esm2022}/models/page-size-item.mjs +0 -0
  41. /package/{esm2020 → esm2022}/models/pager-position.mjs +0 -0
  42. /package/{esm2020 → esm2022}/models/pager-settings.mjs +0 -0
  43. /package/{esm2020 → esm2022}/models/pager-type.mjs +0 -0
  44. /package/{esm2020 → esm2022}/models/scroll-bottom-event.mjs +0 -0
  45. /package/{esm2020 → esm2022}/progress-kendo-angular-listview.mjs +0 -0
  46. /package/{esm2020 → esm2022}/utils.mjs +0 -0
@@ -24,8 +24,8 @@ const packageMetadata = {
24
24
  name: '@progress/kendo-angular-listview',
25
25
  productName: 'Kendo UI for Angular',
26
26
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
27
- publishDate: 1729174575,
28
- version: '17.0.0-develop.9',
27
+ publishDate: 1731414241,
28
+ version: '17.0.0',
29
29
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
30
30
  };
31
31
 
@@ -135,21 +135,10 @@ const getClosestListItemIndex = (element) => {
135
135
  * Emits `changes` when any of the aforementioned states changes.
136
136
  */
137
137
  class NavigationService {
138
- constructor() {
139
- /**
140
- * Emits every time a change in active index/focus/blur/navigation availability occurs.
141
- */
142
- this.changes = new Subject();
143
- /**
144
- * Specifies if a ListView item currently holds focus.
145
- */
146
- this.isFocused = false;
147
- /**
148
- * Keeps track of the index of the items that should be the current focus target (tabindex="0").
149
- * When set to `null`/`undefined`, the navigation is disabled and the items should not render a tabindex.
150
- */
151
- this.activeIndex = null;
152
- }
138
+ /**
139
+ * Emits every time a change in active index/focus/blur/navigation availability occurs.
140
+ */
141
+ changes = new Subject();
153
142
  /**
154
143
  * Sets or gets if the navigation is enabled.
155
144
  * When no activeIndex is present, the navigation is inferred as disabled.
@@ -167,6 +156,15 @@ class NavigationService {
167
156
  }
168
157
  this.changes.next();
169
158
  }
159
+ /**
160
+ * Specifies if a ListView item currently holds focus.
161
+ */
162
+ isFocused = false;
163
+ /**
164
+ * Keeps track of the index of the items that should be the current focus target (tabindex="0").
165
+ * When set to `null`/`undefined`, the navigation is disabled and the items should not render a tabindex.
166
+ */
167
+ activeIndex = null;
170
168
  /**
171
169
  * Shows if the checked index should be the current available focus target (tabindex="0").
172
170
  */
@@ -273,10 +271,10 @@ class NavigationService {
273
271
  const nextIndex = Math.min(this.activeIndex + 1, lastAvailableIndex);
274
272
  this.navigateTo(nextIndex);
275
273
  }
274
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
275
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService });
276
276
  }
277
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
278
- NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService });
279
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NavigationService, decorators: [{
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, decorators: [{
280
278
  type: Injectable
281
279
  }] });
282
280
 
@@ -284,6 +282,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
284
282
  * @hidden
285
283
  */
286
284
  class ListViewNavigableItemDirective {
285
+ hostElement;
286
+ renderer;
287
+ navigationService;
288
+ /**
289
+ * The current item index. Used to track which navigation changes apply to this item.
290
+ */
291
+ index;
292
+ navigationSubscription;
287
293
  constructor(hostElement, renderer, navigationService) {
288
294
  this.hostElement = hostElement;
289
295
  this.renderer = renderer;
@@ -327,10 +333,10 @@ class ListViewNavigableItemDirective {
327
333
  this.renderer.setAttribute(this.hostElement.nativeElement, 'tabindex', '-1');
328
334
  }
329
335
  }
336
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewNavigableItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
337
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ListViewNavigableItemDirective, isStandalone: true, selector: "[kendoListViewNavigableItem]", inputs: { index: "index" }, usesOnChanges: true, ngImport: i0 });
330
338
  }
331
- ListViewNavigableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewNavigableItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Directive });
332
- ListViewNavigableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ListViewNavigableItemDirective, isStandalone: true, selector: "[kendoListViewNavigableItem]", inputs: { index: "index" }, usesOnChanges: true, ngImport: i0 });
333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewNavigableItemDirective, decorators: [{
339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewNavigableItemDirective, decorators: [{
334
340
  type: Directive,
335
341
  args: [{
336
342
  selector: '[kendoListViewNavigableItem]',
@@ -352,13 +358,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
352
358
  * - `let-isLast="isLast"` (`boolean`)- Indicates whether the current data item will be rendered as the last item on the list.
353
359
  */
354
360
  class ItemTemplateDirective {
361
+ templateRef;
355
362
  constructor(templateRef) {
356
363
  this.templateRef = templateRef;
357
364
  }
365
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
366
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ItemTemplateDirective, isStandalone: true, selector: "[kendoListViewItemTemplate]", ngImport: i0 });
358
367
  }
359
- ItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
360
- ItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ItemTemplateDirective, isStandalone: true, selector: "[kendoListViewItemTemplate]", ngImport: i0 });
361
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ItemTemplateDirective, decorators: [{
368
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ItemTemplateDirective, decorators: [{
362
369
  type: Directive,
363
370
  args: [{
364
371
  selector: '[kendoListViewItemTemplate]',
@@ -372,13 +379,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
372
379
  * [see example]({% slug templates_listview %}#toc-header-template).
373
380
  */
374
381
  class HeaderTemplateDirective {
382
+ templateRef;
375
383
  constructor(templateRef) {
376
384
  this.templateRef = templateRef;
377
385
  }
386
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
387
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: HeaderTemplateDirective, isStandalone: true, selector: "[kendoListViewHeaderTemplate]", ngImport: i0 });
378
388
  }
379
- HeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
380
- HeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: HeaderTemplateDirective, isStandalone: true, selector: "[kendoListViewHeaderTemplate]", ngImport: i0 });
381
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
382
390
  type: Directive,
383
391
  args: [{
384
392
  selector: '[kendoListViewHeaderTemplate]',
@@ -392,13 +400,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
392
400
  * [see example]({% slug templates_listview %}#toc-footer-template).
393
401
  */
394
402
  class FooterTemplateDirective {
403
+ templateRef;
395
404
  constructor(templateRef) {
396
405
  this.templateRef = templateRef;
397
406
  }
407
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
408
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FooterTemplateDirective, isStandalone: true, selector: "[kendoListViewFooterTemplate]", ngImport: i0 });
398
409
  }
399
- FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
400
- FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FooterTemplateDirective, isStandalone: true, selector: "[kendoListViewFooterTemplate]", ngImport: i0 });
401
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FooterTemplateDirective, decorators: [{
410
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FooterTemplateDirective, decorators: [{
402
411
  type: Directive,
403
412
  args: [{
404
413
  selector: '[kendoListViewFooterTemplate]',
@@ -412,13 +421,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
412
421
  * [see example]({% slug templates_listview %}#toc-loader-template).
413
422
  */
414
423
  class LoaderTemplateDirective {
424
+ templateRef;
415
425
  constructor(templateRef) {
416
426
  this.templateRef = templateRef;
417
427
  }
428
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
429
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: LoaderTemplateDirective, isStandalone: true, selector: "[kendoListViewLoaderTemplate]", ngImport: i0 });
418
430
  }
419
- LoaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LoaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
420
- LoaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: LoaderTemplateDirective, isStandalone: true, selector: "[kendoListViewLoaderTemplate]", ngImport: i0 });
421
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LoaderTemplateDirective, decorators: [{
431
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LoaderTemplateDirective, decorators: [{
422
432
  type: Directive,
423
433
  args: [{
424
434
  selector: '[kendoListViewLoaderTemplate]',
@@ -439,13 +449,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
439
449
  * - `isNew`—The state of the current item.
440
450
  */
441
451
  class EditTemplateDirective {
452
+ templateRef;
442
453
  constructor(templateRef) {
443
454
  this.templateRef = templateRef;
444
455
  }
456
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
457
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EditTemplateDirective, isStandalone: true, selector: "[kendoListViewEditTemplate]", ngImport: i0 });
445
458
  }
446
- EditTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
447
- EditTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: EditTemplateDirective, isStandalone: true, selector: "[kendoListViewEditTemplate]", ngImport: i0 });
448
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditTemplateDirective, decorators: [{
459
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditTemplateDirective, decorators: [{
449
460
  type: Directive,
450
461
  args: [{
451
462
  selector: '[kendoListViewEditTemplate]',
@@ -471,11 +482,14 @@ const isNewItem = (index) => index === -1 || index === undefined;
471
482
  * @hidden
472
483
  */
473
484
  class EditService {
485
+ ngZone;
486
+ changes = new EventEmitter();
487
+ changed;
488
+ editedIndices = [];
489
+ newItem;
490
+ changedSource = new Subject();
474
491
  constructor(ngZone) {
475
492
  this.ngZone = ngZone;
476
- this.changes = new EventEmitter();
477
- this.editedIndices = [];
478
- this.changedSource = new Subject();
479
493
  this.changed = this.changedSource.asObservable().pipe(switchMap(() => this.ngZone.onStable.asObservable().pipe(take(1))));
480
494
  }
481
495
  editItem(index, group = undefined) {
@@ -555,10 +569,10 @@ class EditService {
555
569
  this.changedSource.next();
556
570
  });
557
571
  }
572
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
573
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditService });
558
574
  }
559
- EditService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
560
- EditService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditService });
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditService, decorators: [{
575
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditService, decorators: [{
562
576
  type: Injectable
563
577
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
564
578
 
@@ -578,86 +592,97 @@ const createControl = (source) => (acc, key) => {
578
592
  * Represents the Kendo UI ListView component for Angular.
579
593
  */
580
594
  class ListViewComponent {
581
- constructor(ngZone, element, renderer, changeDetectorRef, editService, navigationService) {
582
- this.ngZone = ngZone;
583
- this.element = element;
584
- this.renderer = renderer;
585
- this.changeDetectorRef = changeDetectorRef;
586
- this.editService = editService;
587
- this.navigationService = navigationService;
588
- /**
589
- * @hidden
590
- */
591
- this.className = true;
592
- /**
593
- * Specifies if a border should be rendered around the listview element.
594
- *
595
- * @default false
596
- */
597
- this.bordered = false;
598
- /**
599
- * Specifies if the loading indicator of the ListView will be displayed
600
- * ([see example]({% slug paging_listview %}#toc-remote-binding)).
601
- */
602
- this.loading = false;
603
- /**
604
- * Specifies the content container `role` attribute
605
- * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
606
- * By default, the container `role` is set to `list`.
607
- */
608
- this.containerRole = 'list';
609
- /**
610
- * Specifies the list item `role` attribute
611
- * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
612
- * By default, the list item `role` is set to `listitem`.
613
- */
614
- this.listItemRole = 'listitem';
615
- /**
616
- * Fires when the user scrolls to the last record on the page
617
- * ([see endless scrolling example]({% slug scrollmodes_listview %}#toc-endless-scrolling)).
618
- */
619
- this.scrollBottom = new EventEmitter();
620
- /**
621
- * Fires when the page or the page size of the ListView is changed
622
- * ([see example]({% slug paging_listview %}#toc-remote-binding)).
623
- * You have to handle the event yourself and page the data.
624
- */
625
- this.pageChange = new EventEmitter();
626
- /**
627
- * Fires when the page size of the ListView is changed. This event can be prevented (`$event.preventDefault()`).
628
- * If not prevented, the `pageChange` event will be fired subsequently.
629
- */
630
- this.pageSizeChange = new EventEmitter();
631
- /**
632
- * Fires when the user clicks the **Edit** command button to edit an item
633
- * ([see example]({% slug editing_template_forms_listview %}#toc-editing-records)).
634
- */
635
- this.edit = new EventEmitter();
636
- /**
637
- * Fires when the user clicks the **Cancel** command button to close an item
638
- * ([see example]({% slug editing_template_forms_listview %}#toc-cancelling-editing)).
639
- */
640
- this.cancel = new EventEmitter();
641
- /**
642
- * Fires when the user clicks the **Save** command button to save changes in an item
643
- * ([see example]({% slug editing_template_forms_listview %}#toc-saving-records)).
644
- */
645
- this.save = new EventEmitter();
646
- /**
647
- * Fires when the user clicks the **Remove** command button to remove an item
648
- * ([see example]({% slug editing_template_forms_listview %}#toc-removing-records)).
649
- */
650
- this.remove = new EventEmitter();
651
- /**
652
- * Fires when the user clicks the **Add** command button to add a new item
653
- * ([see example]({% slug editing_template_forms_listview %}#toc-adding-records)).
654
- */
655
- this.add = new EventEmitter();
656
- this._skip = 0;
657
- this._navigable = false;
658
- validatePackage(packageMetadata);
659
- this.attachEditHandlers();
660
- }
595
+ ngZone;
596
+ element;
597
+ renderer;
598
+ changeDetectorRef;
599
+ editService;
600
+ navigationService;
601
+ /**
602
+ * @hidden
603
+ */
604
+ className = true;
605
+ /**
606
+ * @hidden
607
+ */
608
+ itemTemplate;
609
+ /**
610
+ * @hidden
611
+ */
612
+ headerTemplate;
613
+ /**
614
+ * @hidden
615
+ */
616
+ footerTemplate;
617
+ /**
618
+ * @hidden
619
+ */
620
+ loaderTemplate;
621
+ /**
622
+ * @hidden
623
+ */
624
+ contentContainer;
625
+ /**
626
+ * @hidden
627
+ */
628
+ editTemplate;
629
+ /**
630
+ * @hidden
631
+ */
632
+ listViewItems;
633
+ /**
634
+ * Specifies if a border should be rendered around the listview element.
635
+ *
636
+ * @default false
637
+ */
638
+ bordered = false;
639
+ /**
640
+ * The data collection that will be used to populate the ListView
641
+ * ([see data binding examples]({% slug paging_listview %})).
642
+ */
643
+ data;
644
+ /**
645
+ * Specifies if the loading indicator of the ListView will be displayed
646
+ * ([see example]({% slug paging_listview %}#toc-remote-binding)).
647
+ */
648
+ loading = false;
649
+ /**
650
+ * The CSS styles that will be rendered on the content container element of the ListView.
651
+ * Supports the type of values that are supported by [`ngStyle`](link:site.data.urls.angular['ngstyleapi']).
652
+ */
653
+ containerStyle;
654
+ /**
655
+ * The CSS styles that will be rendered on each item element wrapper of the ListView.
656
+ * Supports the type of values that are supported by [`ngStyle`](link:site.data.urls.angular['ngstyleapi']).
657
+ */
658
+ itemStyle;
659
+ /**
660
+ * The CSS class that will be rendered on the content container element of the ListView.
661
+ * Supports the type of values that are supported by [`ngClass`](link:site.data.urls.angular['ngclassapi']).
662
+ */
663
+ containerClass;
664
+ /**
665
+ * The CSS class that will be rendered on each item element wrapper of the ListView.
666
+ * Supports the type of values that are supported by [`ngClass`](link:site.data.urls.angular['ngclassapi']).
667
+ */
668
+ itemClass;
669
+ /**
670
+ * Specifies the content container `aria-label` attribute
671
+ * ([see example]({% slug accessibility_listview %}#toc-accessible-names)).
672
+ */
673
+ containerLabel;
674
+ /**
675
+ * Specifies the content container `role` attribute
676
+ * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
677
+ * By default, the container `role` is set to `list`.
678
+ */
679
+ containerRole = 'list';
680
+ /**
681
+ * Specifies the list item `role` attribute
682
+ * ([more details]({% slug accessibility_listview %}#toc-wai-aria-support)).
683
+ * By default, the list item `role` is set to `listitem`.
684
+ */
685
+ listItemRole = 'listitem';
661
686
  /**
662
687
  * Specifies whether the keyboard navigation is enabled
663
688
  * ([see example]({% slug keyboard_navigation_listview %})).
@@ -678,6 +703,11 @@ class ListViewComponent {
678
703
  get navigable() {
679
704
  return this._navigable;
680
705
  }
706
+ /**
707
+ * Defines the page size used by the ListView pager
708
+ * ([more details]({% slug paging_listview %})).
709
+ */
710
+ pageSize;
681
711
  /**
682
712
  * Defines the number of records to be skipped by the pager
683
713
  * ([more details]({% slug paging_listview %})).
@@ -702,6 +732,58 @@ class ListViewComponent {
702
732
  get pageable() {
703
733
  return this._pageable;
704
734
  }
735
+ /**
736
+ * Defines the height (in pixels) of the ListView component.
737
+ * If the content height exceeds the component height, a vertical scrollbar will be rendered.
738
+ * To set the height of the ListView, you can also use `style.height`. The `style.height`
739
+ * option supports units such as `px`, `%`, `em`, `rem`, and others.
740
+ */
741
+ height;
742
+ /**
743
+ * Fires when the user scrolls to the last record on the page
744
+ * ([see endless scrolling example]({% slug scrollmodes_listview %}#toc-endless-scrolling)).
745
+ */
746
+ scrollBottom = new EventEmitter();
747
+ /**
748
+ * Fires when the page or the page size of the ListView is changed
749
+ * ([see example]({% slug paging_listview %}#toc-remote-binding)).
750
+ * You have to handle the event yourself and page the data.
751
+ */
752
+ pageChange = new EventEmitter();
753
+ /**
754
+ * Fires when the page size of the ListView is changed. This event can be prevented (`$event.preventDefault()`).
755
+ * If not prevented, the `pageChange` event will be fired subsequently.
756
+ */
757
+ pageSizeChange = new EventEmitter();
758
+ /**
759
+ * Fires when the user clicks the **Edit** command button to edit an item
760
+ * ([see example]({% slug editing_template_forms_listview %}#toc-editing-records)).
761
+ */
762
+ edit = new EventEmitter();
763
+ /**
764
+ * Fires when the user clicks the **Cancel** command button to close an item
765
+ * ([see example]({% slug editing_template_forms_listview %}#toc-cancelling-editing)).
766
+ */
767
+ cancel = new EventEmitter();
768
+ /**
769
+ * Fires when the user clicks the **Save** command button to save changes in an item
770
+ * ([see example]({% slug editing_template_forms_listview %}#toc-saving-records)).
771
+ */
772
+ save = new EventEmitter();
773
+ /**
774
+ * Fires when the user clicks the **Remove** command button to remove an item
775
+ * ([see example]({% slug editing_template_forms_listview %}#toc-removing-records)).
776
+ */
777
+ remove = new EventEmitter();
778
+ /**
779
+ * Fires when the user clicks the **Add** command button to add a new item
780
+ * ([see example]({% slug editing_template_forms_listview %}#toc-adding-records)).
781
+ */
782
+ add = new EventEmitter();
783
+ /**
784
+ * @hidden
785
+ */
786
+ pagerSettings;
705
787
  /**
706
788
  * @hidden
707
789
  *
@@ -745,6 +827,21 @@ class ListViewComponent {
745
827
  get activeIndex() {
746
828
  return this.navigationService.activeIndex;
747
829
  }
830
+ removeNavigationListeners;
831
+ _skip = 0;
832
+ _navigable = false;
833
+ _pageable;
834
+ editServiceSubscription;
835
+ constructor(ngZone, element, renderer, changeDetectorRef, editService, navigationService) {
836
+ this.ngZone = ngZone;
837
+ this.element = element;
838
+ this.renderer = renderer;
839
+ this.changeDetectorRef = changeDetectorRef;
840
+ this.editService = editService;
841
+ this.navigationService = navigationService;
842
+ validatePackage(packageMetadata);
843
+ this.attachEditHandlers();
844
+ }
748
845
  ngOnChanges(changes) {
749
846
  if (isChanged('height', changes, false)) {
750
847
  this.renderer.setStyle(this.element.nativeElement, 'height', `${this.height}px`);
@@ -908,17 +1005,16 @@ class ListViewComponent {
908
1005
  });
909
1006
  this[action].emit(args);
910
1007
  }
911
- }
912
- ListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: EditService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
913
- ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ListViewComponent, isStandalone: true, selector: "kendo-listview", inputs: { bordered: "bordered", 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-listview": "this.className", "class.k-listview-bordered": "this.bordered" } }, providers: [
914
- EditService,
915
- NavigationService,
916
- LocalizationService,
917
- {
918
- provide: L10N_PREFIX,
919
- useValue: 'kendo.listview'
920
- }
921
- ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ItemTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "loaderTemplate", first: true, predicate: LoaderTemplateDirective, descendants: true }, { propertyName: "editTemplate", first: true, predicate: EditTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, static: true }, { propertyName: "listViewItems", predicate: ListViewNavigableItemDirective, descendants: true }], exportAs: ["kendoListView"], usesOnChanges: true, ngImport: i0, template: `
1008
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: EditService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
1009
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ListViewComponent, isStandalone: true, selector: "kendo-listview", inputs: { bordered: "bordered", 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-listview": "this.className", "class.k-listview-bordered": "this.bordered" } }, providers: [
1010
+ EditService,
1011
+ NavigationService,
1012
+ LocalizationService,
1013
+ {
1014
+ provide: L10N_PREFIX,
1015
+ useValue: 'kendo.listview'
1016
+ }
1017
+ ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ItemTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "loaderTemplate", first: true, predicate: LoaderTemplateDirective, descendants: true }, { propertyName: "editTemplate", first: true, predicate: EditTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, static: true }, { propertyName: "listViewItems", predicate: ListViewNavigableItemDirective, descendants: true }], exportAs: ["kendoListView"], usesOnChanges: true, ngImport: i0, template: `
922
1018
  <!-- top pager -->
923
1019
  <ng-template
924
1020
  *ngIf="pagerSettings?.position !== 'bottom'"
@@ -990,23 +1086,23 @@ ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
990
1086
  >
991
1087
  </ng-template>
992
1088
  </div>
1089
+ </div>
993
1090
 
994
- <!-- loading indicator -->
995
- <div
996
- *ngIf="loading && !loaderTemplate"
997
- class="k-loading-mask"
998
- >
999
- <!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case -->
1000
- <span class="k-loading-text">Loading</span>
1001
- <div class="k-loading-image"></div>
1002
- <div class="k-loading-color"></div>
1003
- </div>
1004
- <ng-template
1005
- *ngIf="loading && loaderTemplate"
1006
- [ngTemplateOutlet]="loaderTemplate.templateRef"
1007
- >
1008
- </ng-template>
1091
+ <!-- loading indicator -->
1092
+ <div
1093
+ *ngIf="loading && !loaderTemplate"
1094
+ class="k-loading-mask"
1095
+ >
1096
+ <!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case -->
1097
+ <span class="k-loading-text">Loading</span>
1098
+ <div class="k-loading-image"></div>
1099
+ <div class="k-loading-color"></div>
1009
1100
  </div>
1101
+ <ng-template
1102
+ *ngIf="loading && loaderTemplate"
1103
+ [ngTemplateOutlet]="loaderTemplate.templateRef"
1104
+ >
1105
+ </ng-template>
1010
1106
 
1011
1107
  <!-- footer -->
1012
1108
  <div
@@ -1045,8 +1141,9 @@ ListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
1045
1141
  >
1046
1142
  </kendo-datapager>
1047
1143
  </ng-template>
1048
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: PagerComponent, selector: "kendo-datapager", inputs: ["total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable", "size"], outputs: ["pageChange", "pageSizeChange"], exportAs: ["kendoDataPager"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1049
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewComponent, decorators: [{
1144
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: PagerComponent, selector: "kendo-datapager, kendo-pager", inputs: ["externalTemplate", "total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable", "size", "responsive"], outputs: ["pageChange", "pageSizeChange"], exportAs: ["kendoDataPager", "kendoPager"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1145
+ }
1146
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewComponent, decorators: [{
1050
1147
  type: Component,
1051
1148
  args: [{
1052
1149
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -1133,23 +1230,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1133
1230
  >
1134
1231
  </ng-template>
1135
1232
  </div>
1233
+ </div>
1136
1234
 
1137
- <!-- loading indicator -->
1138
- <div
1139
- *ngIf="loading && !loaderTemplate"
1140
- class="k-loading-mask"
1141
- >
1142
- <!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case -->
1143
- <span class="k-loading-text">Loading</span>
1144
- <div class="k-loading-image"></div>
1145
- <div class="k-loading-color"></div>
1146
- </div>
1147
- <ng-template
1148
- *ngIf="loading && loaderTemplate"
1149
- [ngTemplateOutlet]="loaderTemplate.templateRef"
1150
- >
1151
- </ng-template>
1235
+ <!-- loading indicator -->
1236
+ <div
1237
+ *ngIf="loading && !loaderTemplate"
1238
+ class="k-loading-mask"
1239
+ >
1240
+ <!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case -->
1241
+ <span class="k-loading-text">Loading</span>
1242
+ <div class="k-loading-image"></div>
1243
+ <div class="k-loading-color"></div>
1152
1244
  </div>
1245
+ <ng-template
1246
+ *ngIf="loading && loaderTemplate"
1247
+ [ngTemplateOutlet]="loaderTemplate.templateRef"
1248
+ >
1249
+ </ng-template>
1153
1250
 
1154
1251
  <!-- footer -->
1155
1252
  <div
@@ -1272,10 +1369,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1272
1369
  * ([see example]({% slug paging_listview %}#toc-binding-directive)).
1273
1370
  */
1274
1371
  class DataBindingDirective {
1275
- constructor(listView) {
1276
- this.listView = listView;
1277
- this.subscriptions = new Subscription();
1278
- }
1372
+ listView;
1279
1373
  /**
1280
1374
  * The array of data which will be used to populate the ListView.
1281
1375
  */
@@ -1286,6 +1380,11 @@ class DataBindingDirective {
1286
1380
  get data() {
1287
1381
  return this._data;
1288
1382
  }
1383
+ _data;
1384
+ subscriptions = new Subscription();
1385
+ constructor(listView) {
1386
+ this.listView = listView;
1387
+ }
1289
1388
  ngOnInit() {
1290
1389
  this.subscriptions.add(this.listView.pageChange.subscribe(this.handlePageChange.bind(this)));
1291
1390
  this.subscriptions.add(this.listView.pageSizeChange.subscribe(this.handlePageSizeChange.bind(this)));
@@ -1310,10 +1409,10 @@ class DataBindingDirective {
1310
1409
  total: this.data.length
1311
1410
  };
1312
1411
  }
1412
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataBindingDirective, deps: [{ token: ListViewComponent }], target: i0.ɵɵFactoryTarget.Directive });
1413
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DataBindingDirective, isStandalone: true, selector: "[kendoListViewBinding]", inputs: { data: ["kendoListViewBinding", "data"] }, ngImport: i0 });
1313
1414
  }
1314
- DataBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataBindingDirective, deps: [{ token: ListViewComponent }], target: i0.ɵɵFactoryTarget.Directive });
1315
- DataBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DataBindingDirective, isStandalone: true, selector: "[kendoListViewBinding]", inputs: { data: ["kendoListViewBinding", "data"] }, ngImport: i0 });
1316
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataBindingDirective, decorators: [{
1415
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataBindingDirective, decorators: [{
1317
1416
  type: Directive,
1318
1417
  args: [{
1319
1418
  selector: '[kendoListViewBinding]',
@@ -1349,11 +1448,8 @@ class PageSizeChangeEvent extends PageSizeChangeEvent$1 {
1349
1448
  *
1350
1449
  */
1351
1450
  class EditCommandDirective extends Button {
1352
- constructor(editService, element, renderer, localization, ngZone) {
1353
- super(element, renderer, null, localization, ngZone);
1354
- this.editService = editService;
1355
- this.elementRef = element;
1356
- }
1451
+ editService;
1452
+ elementRef;
1357
1453
  /**
1358
1454
  * @hidden
1359
1455
  */
@@ -1362,9 +1458,13 @@ class EditCommandDirective extends Button {
1362
1458
  const index = getClosestListItemIndex(this.elementRef.nativeElement);
1363
1459
  this.editService.beginEdit(index);
1364
1460
  }
1365
- }
1366
- EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1367
- EditCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EditCommandDirective, isStandalone: true, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1461
+ constructor(editService, element, renderer, localization, ngZone) {
1462
+ super(element, renderer, null, localization, ngZone);
1463
+ this.editService = editService;
1464
+ this.elementRef = element;
1465
+ }
1466
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1467
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditCommandDirective, isStandalone: true, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1368
1468
  <kendo-icon-wrapper
1369
1469
  *ngIf="icon || svgIcon"
1370
1470
  innerCssClass="k-button-icon"
@@ -1376,7 +1476,8 @@ EditCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
1376
1476
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1377
1477
  <span class="k-button-text"><ng-content></ng-content></span>
1378
1478
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1379
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EditCommandDirective, decorators: [{
1479
+ }
1480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditCommandDirective, decorators: [{
1380
1481
  type: Component,
1381
1482
  args: [{
1382
1483
  selector: '[kendoListViewEditCommand]',
@@ -1417,10 +1518,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1417
1518
  * ```
1418
1519
  */
1419
1520
  class AddCommandDirective extends Button {
1420
- constructor(editService, element, renderer, localization, ngZone) {
1421
- super(element, renderer, null, localization, ngZone);
1422
- this.editService = editService;
1423
- }
1521
+ editService;
1424
1522
  /**
1425
1523
  * @hidden
1426
1524
  */
@@ -1428,9 +1526,12 @@ class AddCommandDirective extends Button {
1428
1526
  e.preventDefault();
1429
1527
  this.editService.beginAdd();
1430
1528
  }
1431
- }
1432
- AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1433
- AddCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AddCommandDirective, isStandalone: true, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1529
+ constructor(editService, element, renderer, localization, ngZone) {
1530
+ super(element, renderer, null, localization, ngZone);
1531
+ this.editService = editService;
1532
+ }
1533
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1534
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddCommandDirective, isStandalone: true, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1434
1535
  <kendo-icon-wrapper
1435
1536
  *ngIf="icon || svgIcon"
1436
1537
  innerCssClass="k-button-icon"
@@ -1442,7 +1543,8 @@ AddCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
1442
1543
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1443
1544
  <span class="k-button-text"><ng-content></ng-content></span>
1444
1545
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1445
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AddCommandDirective, decorators: [{
1546
+ }
1547
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddCommandDirective, decorators: [{
1446
1548
  type: Component,
1447
1549
  args: [{
1448
1550
  selector: '[kendoListViewAddCommand]',
@@ -1494,11 +1596,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1494
1596
  * ```
1495
1597
  */
1496
1598
  class SaveCommandDirective extends Button {
1497
- constructor(editService, element, renderer, localization, ngZone) {
1498
- super(element, renderer, null, localization, ngZone);
1499
- this.editService = editService;
1500
- this.elementRef = element;
1501
- }
1599
+ editService;
1600
+ elementRef;
1502
1601
  /**
1503
1602
  * @hidden
1504
1603
  */
@@ -1509,9 +1608,13 @@ class SaveCommandDirective extends Button {
1509
1608
  this.editService.save(index);
1510
1609
  }
1511
1610
  }
1512
- }
1513
- SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1514
- SaveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SaveCommandDirective, isStandalone: true, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1611
+ constructor(editService, element, renderer, localization, ngZone) {
1612
+ super(element, renderer, null, localization, ngZone);
1613
+ this.editService = editService;
1614
+ this.elementRef = element;
1615
+ }
1616
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1617
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SaveCommandDirective, isStandalone: true, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1515
1618
  <kendo-icon-wrapper
1516
1619
  *ngIf="icon || svgIcon"
1517
1620
  innerCssClass="k-button-icon"
@@ -1523,7 +1626,8 @@ SaveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
1523
1626
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1524
1627
  <span class="k-button-text"><ng-content></ng-content></span>
1525
1628
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SaveCommandDirective, decorators: [{
1629
+ }
1630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SaveCommandDirective, decorators: [{
1527
1631
  type: Component,
1528
1632
  args: [{
1529
1633
  selector: '[kendoListViewSaveCommand]',
@@ -1575,11 +1679,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1575
1679
  * ```
1576
1680
  */
1577
1681
  class CancelCommandDirective extends Button {
1578
- constructor(editService, element, renderer, localization, ngZone) {
1579
- super(element, renderer, null, localization, ngZone);
1580
- this.editService = editService;
1581
- this.elementRef = element;
1582
- }
1682
+ editService;
1683
+ elementRef;
1583
1684
  /**
1584
1685
  * @hidden
1585
1686
  */
@@ -1590,9 +1691,13 @@ class CancelCommandDirective extends Button {
1590
1691
  this.editService.endEdit(index);
1591
1692
  }
1592
1693
  }
1593
- }
1594
- CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1595
- CancelCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CancelCommandDirective, isStandalone: true, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1694
+ constructor(editService, element, renderer, localization, ngZone) {
1695
+ super(element, renderer, null, localization, ngZone);
1696
+ this.editService = editService;
1697
+ this.elementRef = element;
1698
+ }
1699
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1700
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CancelCommandDirective, isStandalone: true, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1596
1701
  <kendo-icon-wrapper
1597
1702
  *ngIf="icon || svgIcon"
1598
1703
  innerCssClass="k-button-icon"
@@ -1604,7 +1709,8 @@ CancelCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
1604
1709
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1605
1710
  <span class="k-button-text"><ng-content></ng-content></span>
1606
1711
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1607
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CancelCommandDirective, decorators: [{
1712
+ }
1713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CancelCommandDirective, decorators: [{
1608
1714
  type: Component,
1609
1715
  args: [{
1610
1716
  selector: '[kendoListViewCancelCommand]',
@@ -1645,11 +1751,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1645
1751
  * ```
1646
1752
  */
1647
1753
  class RemoveCommandDirective extends Button {
1648
- constructor(editService, element, renderer, localization, ngZone) {
1649
- super(element, renderer, null, localization, ngZone);
1650
- this.editService = editService;
1651
- this.elementRef = element;
1652
- }
1754
+ editService;
1755
+ elementRef;
1653
1756
  /**
1654
1757
  * @hidden
1655
1758
  */
@@ -1658,9 +1761,13 @@ class RemoveCommandDirective extends Button {
1658
1761
  const index = getClosestListItemIndex(this.elementRef.nativeElement);
1659
1762
  this.editService.remove(index);
1660
1763
  }
1661
- }
1662
- RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1663
- RemoveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RemoveCommandDirective, isStandalone: true, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1764
+ constructor(editService, element, renderer, localization, ngZone) {
1765
+ super(element, renderer, null, localization, ngZone);
1766
+ this.editService = editService;
1767
+ this.elementRef = element;
1768
+ }
1769
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1770
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RemoveCommandDirective, isStandalone: true, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1664
1771
  <kendo-icon-wrapper
1665
1772
  *ngIf="icon || svgIcon"
1666
1773
  innerCssClass="k-button-icon"
@@ -1672,7 +1779,8 @@ RemoveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
1672
1779
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1673
1780
  <span class="k-button-text"><ng-content></ng-content></span>
1674
1781
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1675
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RemoveCommandDirective, decorators: [{
1782
+ }
1783
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RemoveCommandDirective, decorators: [{
1676
1784
  type: Component,
1677
1785
  args: [{
1678
1786
  selector: '[kendoListViewRemoveCommand]',
@@ -1736,15 +1844,15 @@ const KENDO_LISTVIEW = [
1736
1844
  *```
1737
1845
  */
1738
1846
  class ListViewModule {
1847
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1848
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ListViewModule, imports: [ListViewComponent, ItemTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, LoaderTemplateDirective, DataBindingDirective, EditTemplateDirective, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective], exports: [ListViewComponent, ItemTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, LoaderTemplateDirective, DataBindingDirective, EditTemplateDirective, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective] });
1849
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewModule, providers: [
1850
+ IconsService,
1851
+ PopupService,
1852
+ ResizeBatchService
1853
+ ], imports: [ListViewComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective] });
1739
1854
  }
1740
- ListViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1741
- ListViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: ListViewModule, imports: [ListViewComponent, ItemTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, LoaderTemplateDirective, DataBindingDirective, EditTemplateDirective, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective], exports: [ListViewComponent, ItemTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, LoaderTemplateDirective, DataBindingDirective, EditTemplateDirective, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective] });
1742
- ListViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewModule, providers: [
1743
- IconsService,
1744
- PopupService,
1745
- ResizeBatchService
1746
- ], imports: [ListViewComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective] });
1747
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListViewModule, decorators: [{
1855
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListViewModule, decorators: [{
1748
1856
  type: NgModule,
1749
1857
  args: [{
1750
1858
  imports: [...KENDO_LISTVIEW],