@progress/kendo-angular-pager 17.0.0-develop.33 → 17.0.0-develop.35

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 (43) hide show
  1. package/directives.d.ts +2 -1
  2. package/esm2022/directives.mjs +3 -1
  3. package/esm2022/index.mjs +3 -0
  4. package/esm2022/package-metadata.mjs +2 -2
  5. package/esm2022/pager/focusable.directive.mjs +4 -1
  6. package/esm2022/pager/localization/custom-messages.component.mjs +2 -2
  7. package/esm2022/pager/localization/localized-messages.directive.mjs +2 -2
  8. package/esm2022/pager/localization/messages.mjs +15 -2
  9. package/esm2022/pager/navigation.service.mjs +8 -4
  10. package/esm2022/pager/pager-context.service.mjs +2 -1
  11. package/esm2022/pager/pager-element.component.mjs +2 -1
  12. package/esm2022/pager/pager-info.component.mjs +5 -9
  13. package/esm2022/pager/pager-input.component.mjs +2 -2
  14. package/esm2022/pager/pager-next-buttons.component.mjs +10 -6
  15. package/esm2022/pager/pager-numeric-buttons.component.mjs +4 -6
  16. package/esm2022/pager/pager-page-sizes.component.mjs +6 -6
  17. package/esm2022/pager/pager-prev-buttons.component.mjs +18 -10
  18. package/esm2022/pager/pager-template.directive.mjs +10 -10
  19. package/esm2022/pager/pager.component.mjs +126 -79
  20. package/esm2022/pager/pager.module.mjs +2 -1
  21. package/esm2022/pager/spacer.component.mjs +49 -0
  22. package/esm2022/util.mjs +11 -7
  23. package/fesm2022/progress-kendo-angular-pager.mjs +274 -152
  24. package/index.d.ts +3 -0
  25. package/package.json +7 -7
  26. package/pager/common/pager-type.d.ts +2 -2
  27. package/pager/focusable.directive.d.ts +1 -1
  28. package/pager/localization/custom-messages.component.d.ts +1 -1
  29. package/pager/localization/localized-messages.directive.d.ts +1 -1
  30. package/pager/localization/messages.d.ts +12 -1
  31. package/pager/pager-context.service.d.ts +2 -0
  32. package/pager/pager-info.component.d.ts +2 -3
  33. package/pager/pager-input.component.d.ts +1 -1
  34. package/pager/pager-next-buttons.component.d.ts +1 -1
  35. package/pager/pager-numeric-buttons.component.d.ts +1 -1
  36. package/pager/pager-page-sizes.component.d.ts +5 -5
  37. package/pager/pager-prev-buttons.component.d.ts +1 -1
  38. package/pager/pager-template.directive.d.ts +9 -9
  39. package/pager/pager.component.d.ts +30 -11
  40. package/pager/pager.module.d.ts +2 -1
  41. package/pager/spacer.component.d.ts +24 -0
  42. package/schematics/ngAdd/index.js +6 -6
  43. package/util.d.ts +4 -0
package/directives.d.ts CHANGED
@@ -12,7 +12,8 @@ import { PagerPageSizesComponent } from './pager/pager-page-sizes.component';
12
12
  import { PagerPrevButtonsComponent } from './pager/pager-prev-buttons.component';
13
13
  import { PagerTemplateDirective } from './pager/pager-template.directive';
14
14
  import { PagerComponent } from './pager/pager.component';
15
+ import { PagerSpacerComponent } from './pager/spacer.component';
15
16
  /**
16
17
  * Utility array that contains all `@progress/kendo-angular-pager` related components and directives
17
18
  */
18
- export declare const KENDO_PAGER: readonly [typeof CustomMessagesComponent, typeof PagerFocusableDirective, typeof PagerInfoComponent, typeof PagerInputComponent, typeof PagerNextButtonsComponent, typeof PagerNumericButtonsComponent, typeof PagerPageSizesComponent, typeof PagerPrevButtonsComponent, typeof PagerTemplateDirective, typeof PagerComponent];
19
+ export declare const KENDO_PAGER: readonly [typeof CustomMessagesComponent, typeof PagerFocusableDirective, typeof PagerInfoComponent, typeof PagerInputComponent, typeof PagerNextButtonsComponent, typeof PagerNumericButtonsComponent, typeof PagerPageSizesComponent, typeof PagerPrevButtonsComponent, typeof PagerTemplateDirective, typeof PagerComponent, typeof PagerSpacerComponent];
@@ -12,6 +12,7 @@ import { PagerPageSizesComponent } from './pager/pager-page-sizes.component';
12
12
  import { PagerPrevButtonsComponent } from './pager/pager-prev-buttons.component';
13
13
  import { PagerTemplateDirective } from './pager/pager-template.directive';
14
14
  import { PagerComponent } from './pager/pager.component';
15
+ import { PagerSpacerComponent } from './pager/spacer.component';
15
16
  /**
16
17
  * Utility array that contains all `@progress/kendo-angular-pager` related components and directives
17
18
  */
@@ -25,5 +26,6 @@ export const KENDO_PAGER = [
25
26
  PagerPageSizesComponent,
26
27
  PagerPrevButtonsComponent,
27
28
  PagerTemplateDirective,
28
- PagerComponent
29
+ PagerComponent,
30
+ PagerSpacerComponent
29
31
  ];
package/esm2022/index.mjs CHANGED
@@ -15,4 +15,7 @@ export { PagerInfoComponent } from './pager/pager-info.component';
15
15
  export { PagerFocusableDirective } from './pager/focusable.directive';
16
16
  export { PagerComponent } from './pager/pager.component';
17
17
  export { PagerModule } from './pager/pager.module';
18
+ export { PagerNavigationService } from './pager/navigation.service';
19
+ export { PagerContextService } from './pager/pager-context.service';
20
+ export { PagerSpacerComponent } from './pager/spacer.component';
18
21
  export * from './directives';
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-pager',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1730709988,
13
- version: '17.0.0-develop.33',
12
+ publishDate: 1730714595,
13
+ version: '17.0.0-develop.35',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
15
15
  };
@@ -9,7 +9,7 @@ import { PagerNavigationService } from './navigation.service';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "./navigation.service";
11
11
  /**
12
- * Place the directive on custom focusable elements in the [`kendoDataPagerTemplate`]({% slug api_pager_pagertemplatedirective %}) to include them in the built-in Pager keyboard navigation.
12
+ * Place the directive on custom focusable elements in the [`kendoPagerTemplate`]({% slug api_pager_pagertemplatedirective %}) to include them in the built-in Pager keyboard navigation.
13
13
  */
14
14
  export class PagerFocusableDirective {
15
15
  navigationService;
@@ -22,6 +22,9 @@ export class PagerFocusableDirective {
22
22
  this.renderer = renderer;
23
23
  }
24
24
  ngOnInit() {
25
+ if (!(this.nativeElement instanceof HTMLElement)) {
26
+ return;
27
+ }
25
28
  this.subscriptions.add(this.navigationService.innerNavigationChange.subscribe(this.innerNavigationChange.bind(this)));
26
29
  }
27
30
  ngOnDestroy() {
@@ -21,7 +21,7 @@ export class CustomMessagesComponent extends Messages {
21
21
  return true;
22
22
  }
23
23
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
24
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-datapager-messages", providers: [
24
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-datapager-messages, kendo-pager-messages", providers: [
25
25
  {
26
26
  provide: Messages,
27
27
  useExisting: forwardRef(() => CustomMessagesComponent)
@@ -37,7 +37,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
37
37
  useExisting: forwardRef(() => CustomMessagesComponent)
38
38
  }
39
39
  ],
40
- selector: 'kendo-datapager-messages',
40
+ selector: 'kendo-datapager-messages, kendo-pager-messages',
41
41
  template: ``,
42
42
  standalone: true
43
43
  }]
@@ -17,7 +17,7 @@ export class LocalizedMessagesDirective extends Messages {
17
17
  this.service = service;
18
18
  }
19
19
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
20
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: LocalizedMessagesDirective, isStandalone: true, selector: "[kendoDataPagerLocalizedMessages]", providers: [
20
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: LocalizedMessagesDirective, isStandalone: true, selector: "[kendoPagerLocalizedMessages]", providers: [
21
21
  {
22
22
  provide: Messages,
23
23
  useExisting: forwardRef(() => LocalizedMessagesDirective)
@@ -33,7 +33,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
33
33
  useExisting: forwardRef(() => LocalizedMessagesDirective)
34
34
  }
35
35
  ],
36
- selector: '[kendoDataPagerLocalizedMessages]',
36
+ selector: '[kendoPagerLocalizedMessages]',
37
37
  standalone: true
38
38
  }]
39
39
  }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
@@ -9,6 +9,17 @@ import * as i0 from "@angular/core";
9
9
  * @hidden
10
10
  */
11
11
  export class Messages extends ComponentMessages {
12
+ /**
13
+ * The label of the pager. Follows the pattern **Page navigation, page {currentPage} of {totalPages}** by default.
14
+ * Тhe default label text when the current page is 1, and the total number of pages is 10 will be
15
+ * **Page navigation, page 1 of 10**.
16
+ *
17
+ * The message consists of several parts - the current page number, the total number of pages, and a localizable string.
18
+ * To allow for reordering its parts, the `ariaLabel` input accepts a string with placeholders for the current page
19
+ * and total number of pages. The `{currentPage}` and `{totalPages}` placeholders will be replaced
20
+ * internally with the respective actual values.
21
+ */
22
+ ariaLabel;
12
23
  /**
13
24
  * The label for the **First page** button.
14
25
  */
@@ -54,7 +65,7 @@ export class Messages extends ComponentMessages {
54
65
  */
55
66
  inputLabel;
56
67
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
57
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, selector: "kendoPagerMessages", inputs: { firstPage: "firstPage", lastPage: "lastPage", previousPage: "previousPage", nextPage: "nextPage", page: "page", pageNumberInputTitle: "pageNumberInputTitle", itemsPerPage: "itemsPerPage", of: "of", items: "items", selectPage: "selectPage", inputLabel: "inputLabel" }, usesInheritance: true, ngImport: i0 });
68
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, selector: "kendoPagerMessages", inputs: { ariaLabel: "ariaLabel", firstPage: "firstPage", lastPage: "lastPage", previousPage: "previousPage", nextPage: "nextPage", page: "page", pageNumberInputTitle: "pageNumberInputTitle", itemsPerPage: "itemsPerPage", of: "of", items: "items", selectPage: "selectPage", inputLabel: "inputLabel" }, usesInheritance: true, ngImport: i0 });
58
69
  }
59
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, decorators: [{
60
71
  type: Directive,
@@ -62,7 +73,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
62
73
  // eslint-disable-next-line @angular-eslint/directive-selector
63
74
  selector: 'kendoPagerMessages'
64
75
  }]
65
- }], propDecorators: { firstPage: [{
76
+ }], propDecorators: { ariaLabel: [{
77
+ type: Input
78
+ }], firstPage: [{
66
79
  type: Input
67
80
  }], lastPage: [{
68
81
  type: Input
@@ -3,7 +3,8 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { Subject } from "rxjs";
6
- import { getAllFocusableChildren } from "../util";
6
+ import { focusableSelector, getAllFocusableChildren } from "../util";
7
+ import { isFocusable } from "@progress/kendo-angular-common";
7
8
  /**
8
9
  * @hidden
9
10
  */
@@ -28,8 +29,11 @@ export class PagerNavigationService {
28
29
  }
29
30
  getFirstAndLastFocusable(wrapper) {
30
31
  const all = getAllFocusableChildren(wrapper);
31
- const firstFocusable = all.length > 0 ? all[0] : parent;
32
- const lastFocusable = all.length > 0 ? all[all.length - 1] : parent;
33
- return [firstFocusable, lastFocusable];
32
+ const firstFocusable = all.length > 0 ? all[0] : wrapper;
33
+ const lastFocusable = all.length > 0 ? all[all.length - 1] : wrapper;
34
+ return [
35
+ isFocusable(firstFocusable) ? firstFocusable : firstFocusable.querySelector(focusableSelector),
36
+ isFocusable(lastFocusable) ? lastFocusable : lastFocusable.querySelector(focusableSelector)
37
+ ];
34
38
  }
35
39
  }
@@ -10,6 +10,7 @@ export class PagerContextService {
10
10
  total;
11
11
  skip;
12
12
  pageSize;
13
+ localization;
13
14
  changes = new Subject();
14
15
  pageChange = new Subject();
15
16
  pageSizeChange = new Subject();
@@ -30,7 +31,7 @@ export class PagerContextService {
30
31
  }
31
32
  nextPage() {
32
33
  const nextPage = this.currentPage + 1;
33
- if (nextPage * this.pageSize <= this.total) {
34
+ if (nextPage * this.pageSize < this.total) {
34
35
  this.changePage(nextPage);
35
36
  }
36
37
  }
@@ -61,7 +61,8 @@ export class PagerElementComponent {
61
61
  * @memberOf PagerElementComponent
62
62
  */
63
63
  textFor(key) {
64
- return this.localization.get(key);
64
+ const isPagerLocalization = this.localization.prefix === 'kendo.pager';
65
+ return this.localization.get(isPagerLocalization ? key : `pager${key[0].toLocaleUpperCase()}${key.slice(1)}`);
65
66
  }
66
67
  /**
67
68
  * @hidden
@@ -14,7 +14,6 @@ import * as i2 from "./pager-context.service";
14
14
  * Displays information about the current page and the total number of records ([see example]({% slug pager_settings %})).
15
15
  */
16
16
  export class PagerInfoComponent extends PagerElementComponent {
17
- pagerContext;
18
17
  /**
19
18
  * @hidden
20
19
  *
@@ -44,12 +43,9 @@ export class PagerInfoComponent extends PagerElementComponent {
44
43
  * @type {boolean}
45
44
  * @memberOf PagerInfoComponent
46
45
  */
47
- get classes() {
48
- return true;
49
- }
46
+ hostClass = true;
50
47
  constructor(localization, cd, pagerContext) {
51
48
  super(localization, pagerContext, cd);
52
- this.pagerContext = pagerContext;
53
49
  }
54
50
  onChanges({ total, skip, pageSize }) {
55
51
  this.total = total;
@@ -58,17 +54,17 @@ export class PagerInfoComponent extends PagerElementComponent {
58
54
  this.cd.markForCheck();
59
55
  }
60
56
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerInfoComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
61
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerInfoComponent, isStandalone: true, selector: "kendo-datapager-info", host: { properties: { "class.k-pager-info": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
57
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerInfoComponent, isStandalone: true, selector: "kendo-datapager-info, kendo-pager-info", host: { properties: { "class.k-pager-info": "this.hostClass" } }, usesInheritance: true, ngImport: i0, template: `{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
62
58
  }
63
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerInfoComponent, decorators: [{
64
60
  type: Component,
65
61
  args: [{
66
62
  changeDetection: ChangeDetectionStrategy.OnPush,
67
- selector: 'kendo-datapager-info',
63
+ selector: 'kendo-datapager-info, kendo-pager-info',
68
64
  template: `{{currentPageText}} - {{maxItems}} {{textFor('of')}} {{total}} {{textFor('items')}}`,
69
65
  standalone: true
70
66
  }]
71
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i2.PagerContextService }]; }, propDecorators: { classes: [{
67
+ }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i2.PagerContextService }]; }, propDecorators: { hostClass: [{
72
68
  type: HostBinding,
73
- args: ["class.k-pager-info"]
69
+ args: ['class.k-pager-info']
74
70
  }] } });
@@ -96,7 +96,7 @@ export class PagerInputComponent extends PagerElementComponent {
96
96
  return this.totalPages !== 0;
97
97
  }
98
98
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerInputComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PagerContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
99
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerInputComponent, isStandalone: true, selector: "kendo-datapager-input", inputs: { size: "size" }, viewQueries: [{ propertyName: "numericInput", first: true, predicate: NumericTextBoxComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
99
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerInputComponent, isStandalone: true, selector: "kendo-datapager-input, kendo-pager-input", inputs: { size: "size" }, viewQueries: [{ propertyName: "numericInput", first: true, predicate: NumericTextBoxComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
100
100
  <span class="k-pager-input">
101
101
  {{textFor('page')}}
102
102
  <kendo-numerictextbox kendoPagerFocusable
@@ -125,7 +125,7 @@ export class PagerInputComponent extends PagerElementComponent {
125
125
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerInputComponent, decorators: [{
126
126
  type: Component,
127
127
  args: [{
128
- selector: 'kendo-datapager-input',
128
+ selector: 'kendo-datapager-input, kendo-pager-input',
129
129
  template: `
130
130
  <span class="k-pager-input">
131
131
  {{textFor('page')}}
@@ -47,7 +47,7 @@ export class PagerNextButtonsComponent extends PagerElementComponent {
47
47
  this.cd.markForCheck();
48
48
  }
49
49
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerNextButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
50
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerNextButtonsComponent, isStandalone: true, selector: "kendo-datapager-next-buttons", inputs: { size: "size" }, usesInheritance: true, ngImport: i0, template: `
50
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerNextButtonsComponent, isStandalone: true, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: { size: "size" }, usesInheritance: true, ngImport: i0, template: `
51
51
  <button kendoButton kendoPagerFocusable
52
52
  type="button"
53
53
  [size]="size"
@@ -56,7 +56,8 @@ export class PagerNextButtonsComponent extends PagerElementComponent {
56
56
  fillMode="flat"
57
57
  rounded="none"
58
58
  class="k-pager-nav"
59
- [disabled]="disabled"
59
+ [attr.aria-disabled]="disabled"
60
+ [class.k-disabled]="disabled"
60
61
  [title]="textFor('nextPage')"
61
62
  [attr.aria-label]="textFor('nextPage')"
62
63
  (click)="currentPage !== totalPages ? changePage(currentPage) : false">
@@ -69,7 +70,8 @@ export class PagerNextButtonsComponent extends PagerElementComponent {
69
70
  fillMode="flat"
70
71
  rounded="none"
71
72
  class="k-pager-nav k-pager-last"
72
- [disabled]="disabled"
73
+ [attr.aria-disabled]="disabled"
74
+ [class.k-disabled]="disabled"
73
75
  [title]="textFor('lastPage')"
74
76
  [attr.aria-label]="textFor('lastPage')"
75
77
  (click)="currentPage !== totalPages ? changePage(totalPages-1) : false">
@@ -80,7 +82,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
80
82
  type: Component,
81
83
  args: [{
82
84
  changeDetection: ChangeDetectionStrategy.OnPush,
83
- selector: 'kendo-datapager-next-buttons',
85
+ selector: 'kendo-datapager-next-buttons, kendo-pager-next-buttons',
84
86
  template: `
85
87
  <button kendoButton kendoPagerFocusable
86
88
  type="button"
@@ -90,7 +92,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
90
92
  fillMode="flat"
91
93
  rounded="none"
92
94
  class="k-pager-nav"
93
- [disabled]="disabled"
95
+ [attr.aria-disabled]="disabled"
96
+ [class.k-disabled]="disabled"
94
97
  [title]="textFor('nextPage')"
95
98
  [attr.aria-label]="textFor('nextPage')"
96
99
  (click)="currentPage !== totalPages ? changePage(currentPage) : false">
@@ -103,7 +106,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
103
106
  fillMode="flat"
104
107
  rounded="none"
105
108
  class="k-pager-nav k-pager-last"
106
- [disabled]="disabled"
109
+ [attr.aria-disabled]="disabled"
110
+ [class.k-disabled]="disabled"
107
111
  [title]="textFor('lastPage')"
108
112
  [attr.aria-label]="textFor('lastPage')"
109
113
  (click)="currentPage !== totalPages ? changePage(totalPages-1) : false">
@@ -137,10 +137,9 @@ export class PagerNumericButtonsComponent extends PagerElementComponent {
137
137
  }
138
138
  }
139
139
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerNumericButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
140
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerNumericButtonsComponent, isStandalone: true, selector: "kendo-datapager-numeric-buttons", inputs: { buttonCount: "buttonCount", size: "size" }, viewQueries: [{ propertyName: "selectElement", first: true, predicate: ["select"], descendants: true, read: ElementRef }, { propertyName: "numbersElement", first: true, predicate: ["numbers"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
140
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerNumericButtonsComponent, isStandalone: true, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: { buttonCount: "buttonCount", size: "size" }, viewQueries: [{ propertyName: "selectElement", first: true, predicate: ["select"], descendants: true, read: ElementRef }, { propertyName: "numbersElement", first: true, predicate: ["numbers"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
141
141
  <select kendoPagerFocusable #select
142
- class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
143
- [style.display]="'none'"
142
+ class="k-hidden k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
144
143
  [attr.title]="pageChooserLabel"
145
144
  [attr.aria-label]="pageChooserLabel"
146
145
  (change)="onSelectChange($event)">
@@ -208,11 +207,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
208
207
  type: Component,
209
208
  args: [{
210
209
  changeDetection: ChangeDetectionStrategy.OnPush,
211
- selector: 'kendo-datapager-numeric-buttons',
210
+ selector: 'kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons',
212
211
  template: `
213
212
  <select kendoPagerFocusable #select
214
- class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
215
- [style.display]="'none'"
213
+ class="k-hidden k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
216
214
  [attr.title]="pageChooserLabel"
217
215
  [attr.aria-label]="pageChooserLabel"
218
216
  (change)="onSelectChange($event)">
@@ -35,15 +35,15 @@ export class PagerPageSizesComponent extends PagerElementComponent {
35
35
  * <span>{{item.ProductID}}. </span>
36
36
  * <span>{{item.ProductName}}</span>
37
37
  * </div>
38
- * <kendo-datapager
38
+ * <kendo-pager
39
39
  * [skip]="skip"
40
40
  * [pageSize]="pageSize"
41
41
  * [total]="total"
42
42
  * (pageChange)="onPageChange($event)">
43
- * <ng-template kendoDataPagerTemplate>
44
- * <kendo-datapager-page-sizes [pageSizes]="pagesizes"></kendo-datapager-page-sizes>
43
+ * <ng-template kendoPagerTemplate>
44
+ * <kendo-pager-page-sizes [pageSizes]="pagesizes"></kendo-pager-page-sizes>
45
45
  * </ng-template>
46
- * </kendo-datapager>
46
+ * </kendo-pager>
47
47
  * `
48
48
  * })
49
49
  * class AppComponent {
@@ -219,7 +219,7 @@ export class PagerPageSizesComponent extends PagerElementComponent {
219
219
  }
220
220
  }
221
221
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
222
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerPageSizesComponent, isStandalone: true, selector: "kendo-datapager-page-sizes", inputs: { pageSizes: "pageSizes", size: "size" }, host: { properties: { "class.k-pager-sizes": "this.classes" } }, viewQueries: [{ propertyName: "dropDownList", first: true, predicate: ["dropdownlist"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
222
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerPageSizesComponent, isStandalone: true, selector: "kendo-datapager-page-sizes, kendo-pager-page-sizes", inputs: { pageSizes: "pageSizes", size: "size" }, host: { properties: { "class.k-pager-sizes": "this.classes" } }, viewQueries: [{ propertyName: "dropDownList", first: true, predicate: ["dropdownlist"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
223
223
  <kendo-dropdownlist kendoPagerFocusable
224
224
  #dropdownlist
225
225
  [size]="size"
@@ -237,7 +237,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
237
237
  type: Component,
238
238
  args: [{
239
239
  changeDetection: ChangeDetectionStrategy.OnPush,
240
- selector: 'kendo-datapager-page-sizes',
240
+ selector: 'kendo-datapager-page-sizes, kendo-pager-page-sizes',
241
241
  template: `
242
242
  <kendo-dropdownlist kendoPagerFocusable
243
243
  #dropdownlist
@@ -47,11 +47,13 @@ export class PagerPrevButtonsComponent extends PagerElementComponent {
47
47
  this.cd.markForCheck();
48
48
  }
49
49
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerPrevButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
50
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerPrevButtonsComponent, isStandalone: true, selector: "kendo-datapager-prev-buttons", inputs: { size: "size" }, usesInheritance: true, ngImport: i0, template: `
50
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerPrevButtonsComponent, isStandalone: true, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: { size: "size" }, usesInheritance: true, ngImport: i0, template: `
51
51
  <button
52
- type="button" kendoButton kendoPagerFocusable
52
+ type="button" kendoButton
53
+ kendoPagerFocusable
53
54
  class="k-pager-nav k-pager-first"
54
- [disabled]="disabled"
55
+ [attr.aria-disabled]="disabled"
56
+ [class.k-disabled]="disabled"
55
57
  [icon]="prevArrowIcons[0]"
56
58
  [svgIcon]="prevArrowSVGIcons[0]"
57
59
  fillMode="flat"
@@ -62,9 +64,11 @@ export class PagerPrevButtonsComponent extends PagerElementComponent {
62
64
  (click)="currentPage !== 1 ? changePage(0) : false">
63
65
  </button>
64
66
  <button
65
- type="button" kendoButton kendoPagerFocusable
67
+ type="button" kendoButton
68
+ kendoPagerFocusable
66
69
  class="k-pager-nav"
67
- [disabled]="disabled"
70
+ [attr.aria-disabled]="disabled"
71
+ [class.k-disabled]="disabled"
68
72
  [icon]="prevArrowIcons[1]"
69
73
  [svgIcon]="prevArrowSVGIcons[1]"
70
74
  fillMode="flat"
@@ -80,12 +84,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
80
84
  type: Component,
81
85
  args: [{
82
86
  changeDetection: ChangeDetectionStrategy.OnPush,
83
- selector: 'kendo-datapager-prev-buttons',
87
+ selector: 'kendo-datapager-prev-buttons, kendo-pager-prev-buttons',
84
88
  template: `
85
89
  <button
86
- type="button" kendoButton kendoPagerFocusable
90
+ type="button" kendoButton
91
+ kendoPagerFocusable
87
92
  class="k-pager-nav k-pager-first"
88
- [disabled]="disabled"
93
+ [attr.aria-disabled]="disabled"
94
+ [class.k-disabled]="disabled"
89
95
  [icon]="prevArrowIcons[0]"
90
96
  [svgIcon]="prevArrowSVGIcons[0]"
91
97
  fillMode="flat"
@@ -96,9 +102,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
96
102
  (click)="currentPage !== 1 ? changePage(0) : false">
97
103
  </button>
98
104
  <button
99
- type="button" kendoButton kendoPagerFocusable
105
+ type="button" kendoButton
106
+ kendoPagerFocusable
100
107
  class="k-pager-nav"
101
- [disabled]="disabled"
108
+ [attr.aria-disabled]="disabled"
109
+ [class.k-disabled]="disabled"
102
110
  [icon]="prevArrowIcons[1]"
103
111
  [svgIcon]="prevArrowSVGIcons[1]"
104
112
  fillMode="flat"
@@ -6,7 +6,7 @@ import { Directive, TemplateRef, Optional } from '@angular/core';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * Represents the pager template which helps to customize the pager appearance. To define a pager
9
- * template, nest an `<ng-template>` tag with the `kendoDataPagerTemplate` directive inside `<kendo-datapager>`.
9
+ * template, nest an `<ng-template>` tag with the `kendoPagerTemplate` directive inside `<kendo-pager>`.
10
10
  *
11
11
  * The template context provides the following fields:
12
12
  * * `currentPage`&mdash;The index of the displayed page.
@@ -21,15 +21,15 @@ import * as i0 from "@angular/core";
21
21
  * _@Component({
22
22
  * selector: 'my-app',
23
23
  * template: `
24
- * <kendo-datapager [total]="total" [pageSize]="pageSize" [skip]="skip" (pageChange)="onPageChange($event)">
25
- * <ng-template kendoDataPagerTemplate let-totalPages="totalPages" let-currentPage="currentPage">
26
- * <kendo-datapager-prev-buttons></kendo-datapager-prev-buttons>
27
- * <kendo-datapager-numeric-buttons [buttonCount]="10"></kendo-datapager-numeric-buttons>
28
- * <kendo-datapager-next-buttons></kendo-datapager-next-buttons>
29
- * <kendo-datapager-info></kendo-datapager-info>
24
+ * <kendo-pager [total]="total" [pageSize]="pageSize" [skip]="skip" (pageChange)="onPageChange($event)">
25
+ * <ng-template kendoPagerTemplate let-totalPages="totalPages" let-currentPage="currentPage">
26
+ * <kendo-pager-prev-buttons></kendo-pager-prev-buttons>
27
+ * <kendo-pager-numeric-buttons [buttonCount]="10"></kendo-pager-numeric-buttons>
28
+ * <kendo-pager-next-buttons></kendo-pager-next-buttons>
29
+ * <kendo-pager-info></kendo-pager-info>
30
30
  * Current page: {{currentPage}}
31
31
  * </ng-template>
32
- * </kendo-datapager>
32
+ * </kendo-pager>
33
33
  * `
34
34
  * })
35
35
  *
@@ -52,12 +52,12 @@ export class PagerTemplateDirective {
52
52
  this.templateRef = templateRef;
53
53
  }
54
54
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
55
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PagerTemplateDirective, isStandalone: true, selector: "[kendoDataPagerTemplate]", ngImport: i0 });
55
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PagerTemplateDirective, isStandalone: true, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]", ngImport: i0 });
56
56
  }
57
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerTemplateDirective, decorators: [{
58
58
  type: Directive,
59
59
  args: [{
60
- selector: '[kendoDataPagerTemplate]',
60
+ selector: '[kendoDataPagerTemplate], [kendoPagerTemplate]',
61
61
  standalone: true
62
62
  }]
63
63
  }], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{