@progress/kendo-angular-pager 19.1.1 → 19.1.2-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/pager/focusable.directive.mjs +10 -1
- package/esm2022/pager/localization/custom-messages.component.mjs +12 -1
- package/esm2022/pager/pager-info.component.mjs +10 -1
- package/esm2022/pager/pager-input.component.mjs +14 -9
- package/esm2022/pager/pager-next-buttons.component.mjs +12 -7
- package/esm2022/pager/pager-numeric-buttons.component.mjs +12 -7
- package/esm2022/pager/pager-page-sizes.component.mjs +20 -121
- package/esm2022/pager/pager-prev-buttons.component.mjs +12 -7
- package/esm2022/pager/pager-template.directive.mjs +10 -30
- package/esm2022/pager/pager.component.mjs +52 -22
- package/esm2022/pager/pagesizechange-event.mjs +3 -3
- package/esm2022/pager/spacer.component.mjs +25 -4
- package/fesm2022/progress-kendo-angular-pager.mjs +194 -215
- package/package.json +8 -8
- package/pager/common/pager-type.d.ts +5 -7
- package/pager/focusable.directive.d.ts +10 -1
- package/pager/localization/custom-messages.component.d.ts +12 -1
- package/pager/pager-info.component.d.ts +10 -1
- package/pager/pager-input.component.d.ts +12 -7
- package/pager/pager-next-buttons.component.d.ts +12 -7
- package/pager/pager-numeric-buttons.component.d.ts +12 -7
- package/pager/pager-page-sizes.component.d.ts +20 -121
- package/pager/pager-prev-buttons.component.d.ts +12 -7
- package/pager/pager-template.directive.d.ts +10 -30
- package/pager/pager.component.d.ts +24 -22
- package/pager/pagesize-item.interface.d.ts +3 -3
- package/pager/pagesizechange-event.d.ts +3 -3
- package/pager/spacer.component.d.ts +25 -4
- package/schematics/ngAdd/index.js +6 -6
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '19.1.1',
|
|
13
|
+
publishDate: 1749804270,
|
|
14
|
+
version: '19.1.2-develop.1',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -9,7 +9,16 @@ import { PagerNavigationService } from './navigation.service';
|
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
import * as i1 from "./navigation.service";
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Represents the Kendo UI Pager focusable directive for Angular. Apply this directive to custom focusable elements in the [`kendoPagerTemplate`]({% slug api_pager_pagertemplatedirective %}) to include them in the built-in Pager keyboard navigation.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
17
|
+
* <ng-template kendoPagerTemplate>
|
|
18
|
+
* <button kendoPagerFocusable type="button">Custom Button</button>
|
|
19
|
+
* </ng-template>
|
|
20
|
+
* </kendo-pager>
|
|
21
|
+
* ```
|
|
13
22
|
*/
|
|
14
23
|
export class PagerFocusableDirective {
|
|
15
24
|
navigationService;
|
|
@@ -8,8 +8,19 @@ import { Messages } from './messages';
|
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
11
|
+
* Represents the Kendo UI Pager custom messages component for Angular. Use this component to override default component messages
|
|
12
12
|
* ([see example]({% slug pager_globalization %}#toc-messages)).
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
17
|
+
* <kendo-pager-messages
|
|
18
|
+
* previousNext="Previous/Next"
|
|
19
|
+
* page="Page"
|
|
20
|
+
* of="of">
|
|
21
|
+
* </kendo-pager-messages>
|
|
22
|
+
* </kendo-pager>
|
|
23
|
+
* ```
|
|
13
24
|
*/
|
|
14
25
|
export class CustomMessagesComponent extends Messages {
|
|
15
26
|
service;
|
|
@@ -11,7 +11,16 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
12
12
|
import * as i2 from "./pager-context.service";
|
|
13
13
|
/**
|
|
14
|
-
* Displays information about the current page and the total number of records ([see example]({% slug pager_settings %})).
|
|
14
|
+
* Represents the Kendo UI Pager Info component for Angular. Displays information about the current page and the total number of records ([see example]({% slug pager_settings %})).
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```html
|
|
18
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
19
|
+
* <ng-template kendoPagerTemplate>
|
|
20
|
+
* <kendo-pager-info></kendo-pager-info>
|
|
21
|
+
* </ng-template>
|
|
22
|
+
* </kendo-pager>
|
|
23
|
+
* ```
|
|
15
24
|
*/
|
|
16
25
|
export class PagerInfoComponent extends PagerElementComponent {
|
|
17
26
|
/**
|
|
@@ -11,12 +11,21 @@ import { PagerContextService } from "./pager-context.service";
|
|
|
11
11
|
import { Keys, EventsOutsideAngularDirective } from '@progress/kendo-angular-common';
|
|
12
12
|
import { DEFAULT_SIZE } from '../util';
|
|
13
13
|
import { PagerFocusableDirective } from './focusable.directive';
|
|
14
|
-
import {
|
|
14
|
+
import { NgIf } from '@angular/common';
|
|
15
15
|
import * as i0 from "@angular/core";
|
|
16
16
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
17
17
|
import * as i2 from "./pager-context.service";
|
|
18
18
|
/**
|
|
19
|
-
* Displays an input element which allows
|
|
19
|
+
* Represents the Kendo UI Pager Input component for Angular. Displays an input element which allows you to type and render page numbers.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```html
|
|
23
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
24
|
+
* <ng-template kendoPagerTemplate>
|
|
25
|
+
* <kendo-pager-input></kendo-pager-input>
|
|
26
|
+
* </ng-template>
|
|
27
|
+
* </kendo-pager>
|
|
28
|
+
* ```
|
|
20
29
|
*/
|
|
21
30
|
export class PagerInputComponent extends PagerElementComponent {
|
|
22
31
|
pagerContext;
|
|
@@ -29,13 +38,9 @@ export class PagerInputComponent extends PagerElementComponent {
|
|
|
29
38
|
*/
|
|
30
39
|
showPageText = true;
|
|
31
40
|
/**
|
|
32
|
-
* Specifies the padding of the internal
|
|
41
|
+
* Specifies the padding of the internal `NumericTextBox` component.
|
|
33
42
|
*
|
|
34
|
-
*
|
|
35
|
-
* * `small`
|
|
36
|
-
* * `medium` (default)
|
|
37
|
-
* * `large`
|
|
38
|
-
* * `none`
|
|
43
|
+
* @default 'medium'
|
|
39
44
|
*/
|
|
40
45
|
size = DEFAULT_SIZE;
|
|
41
46
|
constructor(localization, pagerContext, zone, cd, renderer) {
|
|
@@ -157,7 +162,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
157
162
|
</span>
|
|
158
163
|
`,
|
|
159
164
|
standalone: true,
|
|
160
|
-
imports: [
|
|
165
|
+
imports: [NgIf, NumericTextBoxComponent, PagerFocusableDirective, EventsOutsideAngularDirective]
|
|
161
166
|
}]
|
|
162
167
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.PagerContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { numericInput: [{
|
|
163
168
|
type: ViewChild,
|
|
@@ -14,7 +14,16 @@ import * as i0 from "@angular/core";
|
|
|
14
14
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
15
15
|
import * as i2 from "./pager-context.service";
|
|
16
16
|
/**
|
|
17
|
-
* Displays buttons for navigating to the next and to the last page ([see example]({% slug pager_settings %})).
|
|
17
|
+
* Represents the Kendo UI Pager Next Buttons component for Angular. Displays buttons for navigating to the next and to the last page ([see example]({% slug pager_settings %})).
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```html
|
|
21
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
22
|
+
* <ng-template kendoPagerTemplate>
|
|
23
|
+
* <kendo-pager-next-buttons></kendo-pager-next-buttons>
|
|
24
|
+
* </ng-template>
|
|
25
|
+
* </kendo-pager>
|
|
26
|
+
* ```
|
|
18
27
|
*/
|
|
19
28
|
export class PagerNextButtonsComponent extends PagerElementComponent {
|
|
20
29
|
/**
|
|
@@ -28,13 +37,9 @@ export class PagerNextButtonsComponent extends PagerElementComponent {
|
|
|
28
37
|
return this.currentPage === this.totalPages || !this.total;
|
|
29
38
|
}
|
|
30
39
|
/**
|
|
31
|
-
* Specifies the padding of the buttons.
|
|
40
|
+
* Specifies the padding of the navigation buttons.
|
|
32
41
|
*
|
|
33
|
-
*
|
|
34
|
-
* * `small`
|
|
35
|
-
* * `medium` (default)
|
|
36
|
-
* * `large`
|
|
37
|
-
* * `none`
|
|
42
|
+
* @default 'medium'
|
|
38
43
|
*/
|
|
39
44
|
size = DEFAULT_SIZE;
|
|
40
45
|
constructor(localization, pagerContext, cd) {
|
|
@@ -14,7 +14,16 @@ import * as i0 from "@angular/core";
|
|
|
14
14
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
15
15
|
import * as i2 from "./pager-context.service";
|
|
16
16
|
/**
|
|
17
|
-
* Displays numeric buttons to enable navigation between the pages.
|
|
17
|
+
* Represents the Kendo UI Pager Numeric Buttons component for Angular. Displays numeric buttons to enable navigation between the pages.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```html
|
|
21
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
22
|
+
* <ng-template kendoPagerTemplate>
|
|
23
|
+
* <kendo-pager-numeric-buttons [buttonCount]="5"></kendo-pager-numeric-buttons>
|
|
24
|
+
* </ng-template>
|
|
25
|
+
* </kendo-pager>
|
|
26
|
+
* ```
|
|
18
27
|
*/
|
|
19
28
|
export class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
20
29
|
pagerContext;
|
|
@@ -22,7 +31,7 @@ export class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
22
31
|
selectElement;
|
|
23
32
|
numbersElement;
|
|
24
33
|
/**
|
|
25
|
-
*
|
|
34
|
+
* Specifies the count of the displayed buttons.
|
|
26
35
|
*
|
|
27
36
|
* @type {number}
|
|
28
37
|
* @memberOf PagerNumericButtonsComponent
|
|
@@ -31,11 +40,7 @@ export class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
31
40
|
/**
|
|
32
41
|
* Specifies the padding of the numeric buttons.
|
|
33
42
|
*
|
|
34
|
-
*
|
|
35
|
-
* * `small`
|
|
36
|
-
* * `medium` (default)
|
|
37
|
-
* * `large`
|
|
38
|
-
* * `none`
|
|
43
|
+
* @default 'medium'
|
|
39
44
|
*/
|
|
40
45
|
set size(size) {
|
|
41
46
|
const newSize = size ? size : DEFAULT_SIZE;
|
|
@@ -16,7 +16,16 @@ import * as i0 from "@angular/core";
|
|
|
16
16
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
17
17
|
import * as i2 from "./pager-context.service";
|
|
18
18
|
/**
|
|
19
|
-
* Displays a drop-down list for the page size selection ([see example]({% slug pager_settings %})).
|
|
19
|
+
* Represents the Kendo UI Pager Page Sizes component for Angular. Displays a drop-down list for the page size selection ([see example]({% slug pager_settings %})).
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```html
|
|
23
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
24
|
+
* <ng-template kendoPagerTemplate>
|
|
25
|
+
* <kendo-pager-page-sizes [pageSizes]="[10, 20, 50]"></kendo-pager-page-sizes>
|
|
26
|
+
* </ng-template>
|
|
27
|
+
* </kendo-pager>
|
|
28
|
+
* ```
|
|
20
29
|
*/
|
|
21
30
|
export class PagerPageSizesComponent extends PagerElementComponent {
|
|
22
31
|
pagerContext;
|
|
@@ -36,122 +45,16 @@ export class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
36
45
|
this.cd.markForCheck();
|
|
37
46
|
}
|
|
38
47
|
/**
|
|
39
|
-
*
|
|
48
|
+
* Specifies the page sizes collection. You can include numbers and [`PageSizeItem`]({% slug api_pager_pagesizeitem %}) objects.
|
|
40
49
|
*
|
|
41
50
|
* @example
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
* <span>{{item.ProductID}}. </span>
|
|
49
|
-
* <span>{{item.ProductName}}</span>
|
|
50
|
-
* </div>
|
|
51
|
-
* <kendo-pager
|
|
52
|
-
* [skip]="skip"
|
|
53
|
-
* [pageSize]="pageSize"
|
|
54
|
-
* [total]="total"
|
|
55
|
-
* (pageChange)="onPageChange($event)">
|
|
56
|
-
* <ng-template kendoPagerTemplate>
|
|
57
|
-
* <kendo-pager-page-sizes [pageSizes]="pagesizes"></kendo-pager-page-sizes>
|
|
58
|
-
* </ng-template>
|
|
59
|
-
* </kendo-pager>
|
|
60
|
-
* `
|
|
61
|
-
* })
|
|
62
|
-
* class AppComponent {
|
|
63
|
-
* public data: any[] = products;
|
|
64
|
-
* public pagedData = [];
|
|
65
|
-
* public skip = 0;
|
|
66
|
-
* public pageSize = 2;
|
|
67
|
-
* public total = products.length;
|
|
68
|
-
* public pagesizes = [{text: 'One', value: 1}, {text: 'Two', value: 2}, {text: 'All', value : 'all'}];
|
|
69
|
-
*
|
|
70
|
-
* public ngOnInit() {
|
|
71
|
-
* this.pageData();
|
|
72
|
-
* }
|
|
73
|
-
*
|
|
74
|
-
* public onPageChange(e) {
|
|
75
|
-
* this.skip = e.skip;
|
|
76
|
-
* this.pageSize = e.take;
|
|
77
|
-
* this.pageData();
|
|
78
|
-
* }
|
|
79
|
-
*
|
|
80
|
-
* private pageData() {
|
|
81
|
-
* this.pagedData = this.data.slice(this.skip, this.skip + this.pageSize);
|
|
82
|
-
* }
|
|
83
|
-
* }
|
|
84
|
-
*
|
|
85
|
-
* const products = [{
|
|
86
|
-
* 'ProductID' : 1,
|
|
87
|
-
* 'ProductName' : "Chai",
|
|
88
|
-
* 'SupplierID' : 1,
|
|
89
|
-
* 'CategoryID' : 1,
|
|
90
|
-
* 'QuantityPerUnit' : "10 boxes x 20 bags",
|
|
91
|
-
* 'UnitPrice' : 18.0000,
|
|
92
|
-
* 'UnitsInStock' : 39,
|
|
93
|
-
* 'UnitsOnOrder' : 0,
|
|
94
|
-
* 'ReorderLevel' : 10,
|
|
95
|
-
* 'Discontinued' : false
|
|
96
|
-
*
|
|
97
|
-
* }, {
|
|
98
|
-
* 'ProductID' : 2,
|
|
99
|
-
* 'ProductName' : "Chang",
|
|
100
|
-
* 'SupplierID' : 1,
|
|
101
|
-
* 'CategoryID' : 1,
|
|
102
|
-
* 'QuantityPerUnit' : "24 - 12 oz bottles",
|
|
103
|
-
* 'UnitPrice' : 19.0000,
|
|
104
|
-
* 'UnitsInStock' : 17,
|
|
105
|
-
* 'UnitsOnOrder' : 40,
|
|
106
|
-
* 'ReorderLevel' : 25,
|
|
107
|
-
* 'Discontinued' : false
|
|
108
|
-
* }, {
|
|
109
|
-
* 'ProductID' : 3,
|
|
110
|
-
* 'ProductName' : "Aniseed Syrup",
|
|
111
|
-
* 'SupplierID' : 1,
|
|
112
|
-
* 'CategoryID' : 2,
|
|
113
|
-
* 'QuantityPerUnit' : "12 - 550 ml bottles",
|
|
114
|
-
* 'UnitPrice' : 10.0000,
|
|
115
|
-
* 'UnitsInStock' : 13,
|
|
116
|
-
* 'UnitsOnOrder' : 70,
|
|
117
|
-
* 'ReorderLevel' : 25,
|
|
118
|
-
* 'Discontinued' : false
|
|
119
|
-
* }, {
|
|
120
|
-
* 'ProductID' : 4,
|
|
121
|
-
* 'ProductName' : "Chef Anton\'s Cajun Seasoning",
|
|
122
|
-
* 'SupplierID' : 2,
|
|
123
|
-
* 'CategoryID' : 2,
|
|
124
|
-
* 'QuantityPerUnit' : "48 - 6 oz jars",
|
|
125
|
-
* 'UnitPrice' : 22.0000,
|
|
126
|
-
* 'UnitsInStock' : 53,
|
|
127
|
-
* 'UnitsOnOrder' : 0,
|
|
128
|
-
* 'ReorderLevel' : 0,
|
|
129
|
-
* 'Discontinued' : false
|
|
130
|
-
* }, {
|
|
131
|
-
* 'ProductID' : 5,
|
|
132
|
-
* 'ProductName' : "Chef Anton\'s Gumbo Mix",
|
|
133
|
-
* 'SupplierID' : 2,
|
|
134
|
-
* 'CategoryID' : 2,
|
|
135
|
-
* 'QuantityPerUnit' : "36 boxes",
|
|
136
|
-
* 'UnitPrice' : 21.3500,
|
|
137
|
-
* 'UnitsInStock' : 0,
|
|
138
|
-
* 'UnitsOnOrder' : 0,
|
|
139
|
-
* 'ReorderLevel' : 0,
|
|
140
|
-
* 'Discontinued' : true
|
|
141
|
-
* }, {
|
|
142
|
-
* 'ProductID' : 6,
|
|
143
|
-
* 'ProductName' : "Grandma\'s Boysenberry Spread",
|
|
144
|
-
* 'SupplierID' : 3,
|
|
145
|
-
* 'CategoryID' : 2,
|
|
146
|
-
* 'QuantityPerUnit' : "12 - 8 oz jars",
|
|
147
|
-
* 'UnitPrice' : 25.0000,
|
|
148
|
-
* 'UnitsInStock' : 120,
|
|
149
|
-
* 'UnitsOnOrder' : 0,
|
|
150
|
-
* 'ReorderLevel' : 25,
|
|
151
|
-
* 'Discontinued' : false
|
|
152
|
-
* }];
|
|
51
|
+
* ```html
|
|
52
|
+
* <kendo-pager [skip]="0" [pageSize]="10" [total]="100">
|
|
53
|
+
* <ng-template kendoPagerTemplate>
|
|
54
|
+
* <kendo-pager-page-sizes [pageSizes]="[5, 10, 20, { text: 'All', value: 'all' }]"></kendo-pager-page-sizes>
|
|
55
|
+
* </ng-template>
|
|
56
|
+
* </kendo-pager>
|
|
153
57
|
* ```
|
|
154
|
-
*
|
|
155
58
|
*/
|
|
156
59
|
set pageSizes(pageSizes) {
|
|
157
60
|
let normalizedItems = [];
|
|
@@ -177,17 +80,13 @@ export class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
177
80
|
this._pageSizes = normalizedItems;
|
|
178
81
|
}
|
|
179
82
|
/**
|
|
180
|
-
* Specifies the padding of the
|
|
83
|
+
* Specifies the padding of the DropDownList component.
|
|
181
84
|
*
|
|
182
|
-
*
|
|
183
|
-
* * `small`
|
|
184
|
-
* * `medium` (default)
|
|
185
|
-
* * `large`
|
|
186
|
-
* * `none`
|
|
85
|
+
* @default 'medium'
|
|
187
86
|
*/
|
|
188
87
|
size = DEFAULT_SIZE;
|
|
189
88
|
/**
|
|
190
|
-
*
|
|
89
|
+
* Specifies the adaptive mode of the internal `DropDownList` component.
|
|
191
90
|
*
|
|
192
91
|
* @default 'auto'
|
|
193
92
|
*/
|
|
@@ -14,20 +14,25 @@ import * as i0 from "@angular/core";
|
|
|
14
14
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
15
15
|
import * as i2 from "./pager-context.service";
|
|
16
16
|
/**
|
|
17
|
-
* Displays buttons for navigating to the first and to the previous page ([see example]({% slug pager_settings %})).
|
|
17
|
+
* Represents the Kendo UI Pager Previous Buttons component for Angular. Displays buttons for navigating to the first and to the previous page ([see example]({% slug pager_settings %})).
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```html
|
|
21
|
+
* <kendo-pager [skip]="skip" [pageSize]="pageSize" [total]="total">
|
|
22
|
+
* <ng-template kendoPagerTemplate>
|
|
23
|
+
* <kendo-pager-prev-buttons></kendo-pager-prev-buttons>
|
|
24
|
+
* </ng-template>
|
|
25
|
+
* </kendo-pager>
|
|
26
|
+
* ```
|
|
18
27
|
*/
|
|
19
28
|
export class PagerPrevButtonsComponent extends PagerElementComponent {
|
|
20
29
|
constructor(localization, pagerContext, cd) {
|
|
21
30
|
super(localization, pagerContext, cd);
|
|
22
31
|
}
|
|
23
32
|
/**
|
|
24
|
-
* Specifies the padding of the buttons.
|
|
33
|
+
* Specifies the padding of the navigation buttons.
|
|
25
34
|
*
|
|
26
|
-
*
|
|
27
|
-
* * `small`
|
|
28
|
-
* * `medium` (default)
|
|
29
|
-
* * `large`
|
|
30
|
-
* * `none`
|
|
35
|
+
* @default 'medium'
|
|
31
36
|
*/
|
|
32
37
|
size = DEFAULT_SIZE;
|
|
33
38
|
/**
|
|
@@ -5,10 +5,11 @@
|
|
|
5
5
|
import { Directive, TemplateRef, Optional } from '@angular/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
/**
|
|
8
|
-
* Represents the
|
|
9
|
-
* template, nest an `<ng-template>` tag with the `kendoPagerTemplate` directive inside `<kendo-pager>`.
|
|
8
|
+
* Represents the Kendo UI Pager template directive for Angular.
|
|
9
|
+
* Use this directive to customize the Pager appearance. To define a Pager 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
13
|
* * `currentPage`—The index of the displayed page.
|
|
13
14
|
* * `pageSize`—The value of the current `pageSize`.
|
|
14
15
|
* * `skip`—The current skip value.
|
|
@@ -16,34 +17,13 @@ import * as i0 from "@angular/core";
|
|
|
16
17
|
* * `totalPages`—The total number of available pages.
|
|
17
18
|
*
|
|
18
19
|
* @example
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
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
|
-
* Current page: {{currentPage}}
|
|
31
|
-
* </ng-template>
|
|
32
|
-
* </kendo-pager>
|
|
33
|
-
* `
|
|
34
|
-
* })
|
|
35
|
-
*
|
|
36
|
-
* class AppComponent {
|
|
37
|
-
* public skip = 0;
|
|
38
|
-
* public pageSize = 10;
|
|
39
|
-
* public total = 100;
|
|
40
|
-
*
|
|
41
|
-
* public onPageChange(e: any): void {
|
|
42
|
-
* this.skip = e.skip;
|
|
43
|
-
* this.pageSize = e.take;
|
|
44
|
-
* }
|
|
45
|
-
* }
|
|
46
|
-
*
|
|
20
|
+
* ```html
|
|
21
|
+
* <kendo-pager [skip]="0" [pageSize]="10" [total]="100">
|
|
22
|
+
* <ng-template kendoPagerTemplate let-currentPage="currentPage" let-pageSize="pageSize" let-skip="skip" let-total="total" let-totalPages="totalPages">
|
|
23
|
+
* <span>Page {{currentPage}} of {{totalPages}}</span>
|
|
24
|
+
* <span>Items per page: {{pageSize}}</span>
|
|
25
|
+
* </ng-template>
|
|
26
|
+
* </kendo-pager>
|
|
47
27
|
* ```
|
|
48
28
|
*/
|
|
49
29
|
export class PagerTemplateDirective {
|
|
@@ -25,6 +25,34 @@ import * as i0 from "@angular/core";
|
|
|
25
25
|
import * as i1 from "./pager-context.service";
|
|
26
26
|
import * as i2 from "@progress/kendo-angular-l10n";
|
|
27
27
|
import * as i3 from "./navigation.service";
|
|
28
|
+
/**
|
|
29
|
+
* Represents the Kendo UI Pager component for Angular.
|
|
30
|
+
* Enables you to split a set of data into pages, providing a flexible and intuitive UI.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* @Component({
|
|
35
|
+
* selector: 'my-app',
|
|
36
|
+
* template: `
|
|
37
|
+
* <kendo-pager
|
|
38
|
+
* [total]="total"
|
|
39
|
+
* [skip]="skip"
|
|
40
|
+
* [pageSize]="pageSize"
|
|
41
|
+
* (pageChange)="onPageChange($event)">
|
|
42
|
+
* </kendo-pager>
|
|
43
|
+
* `
|
|
44
|
+
* })
|
|
45
|
+
* export class AppComponent {
|
|
46
|
+
* public total = 200;
|
|
47
|
+
* public skip = 0;
|
|
48
|
+
* public pageSize = 10;
|
|
49
|
+
*
|
|
50
|
+
* public onPageChange(event: PageChangeEvent) {
|
|
51
|
+
* this.skip = event.skip;
|
|
52
|
+
* }
|
|
53
|
+
* }
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
28
56
|
export class PagerComponent {
|
|
29
57
|
pagerContext;
|
|
30
58
|
element;
|
|
@@ -33,6 +61,9 @@ export class PagerComponent {
|
|
|
33
61
|
ngZone;
|
|
34
62
|
cdr;
|
|
35
63
|
navigationService;
|
|
64
|
+
/**
|
|
65
|
+
* Represents the collection of pager template directives.
|
|
66
|
+
*/
|
|
36
67
|
template;
|
|
37
68
|
set numericButtons(buttons) {
|
|
38
69
|
const newWidth = buttons ? buttons.nativeElement?.offsetWidth : 0;
|
|
@@ -59,42 +90,42 @@ export class PagerComponent {
|
|
|
59
90
|
*/
|
|
60
91
|
externalTemplate;
|
|
61
92
|
/**
|
|
62
|
-
*
|
|
93
|
+
* Specifies the total number of data items in the collection.
|
|
63
94
|
*
|
|
64
95
|
* @default 0
|
|
65
96
|
*/
|
|
66
97
|
total = 0;
|
|
67
98
|
/**
|
|
68
|
-
*
|
|
99
|
+
* Specifies the number of data items to skip.
|
|
69
100
|
*
|
|
70
101
|
* @default 0
|
|
71
102
|
*/
|
|
72
103
|
skip = 0;
|
|
73
104
|
/**
|
|
74
|
-
*
|
|
105
|
+
* Specifies the number of data items per page.
|
|
75
106
|
*/
|
|
76
107
|
pageSize;
|
|
77
108
|
/**
|
|
78
|
-
*
|
|
109
|
+
* Specifies the maximum number of numeric buttons before the buttons are collapsed.
|
|
79
110
|
*
|
|
80
111
|
* @default 10
|
|
81
112
|
*/
|
|
82
113
|
buttonCount = 10;
|
|
83
114
|
/**
|
|
84
|
-
*
|
|
115
|
+
* Determines whether to display information about the current page and the total number of records.
|
|
85
116
|
*
|
|
86
117
|
* @default true
|
|
87
118
|
*/
|
|
88
119
|
info = true;
|
|
89
120
|
/**
|
|
90
|
-
*
|
|
121
|
+
* Specifies the type of the Pager.
|
|
91
122
|
*
|
|
92
123
|
* @default 'numeric'
|
|
93
124
|
*/
|
|
94
125
|
type = 'numeric';
|
|
95
126
|
/**
|
|
96
|
-
*
|
|
97
|
-
* When set to `true`, the dropdown
|
|
127
|
+
* Displays a dropdown for selecting the page size.
|
|
128
|
+
* When set to `true`, the dropdown contains the default list of options - 5, 10, 20.
|
|
98
129
|
* To customize the list of options, set `pageSizeValues` to an array of the desired values.
|
|
99
130
|
* The array can contain numbers and [PageSizeItem]({% slug api_pager_pagesizeitem %}) objects.
|
|
100
131
|
*/
|
|
@@ -110,13 +141,13 @@ export class PagerComponent {
|
|
|
110
141
|
return this._pageSizeValues;
|
|
111
142
|
}
|
|
112
143
|
/**
|
|
113
|
-
*
|
|
144
|
+
* Determines whether to display the **Previous** and **Next** buttons.
|
|
114
145
|
*
|
|
115
146
|
* @default true
|
|
116
147
|
*/
|
|
117
148
|
previousNext = true;
|
|
118
149
|
/**
|
|
119
|
-
*
|
|
150
|
+
* Determines whether users can use dedicated shortcuts to interact with the Pager ([see example]({% slug keyboard_navigation_pager %})).
|
|
120
151
|
* By default, navigation is enabled. To disable it and make the Pager content accessible in the normal tab sequence, set the property to `false`.
|
|
121
152
|
* @default true
|
|
122
153
|
*/
|
|
@@ -130,11 +161,7 @@ export class PagerComponent {
|
|
|
130
161
|
/**
|
|
131
162
|
* Specifies the padding of all Pager elements.
|
|
132
163
|
*
|
|
133
|
-
*
|
|
134
|
-
* * `small`
|
|
135
|
-
* * `medium` (default)
|
|
136
|
-
* * `large`
|
|
137
|
-
* * `none`
|
|
164
|
+
* @default 'medium'
|
|
138
165
|
*/
|
|
139
166
|
set size(size) {
|
|
140
167
|
const newSize = size ? size : DEFAULT_SIZE;
|
|
@@ -145,26 +172,26 @@ export class PagerComponent {
|
|
|
145
172
|
return this._size;
|
|
146
173
|
}
|
|
147
174
|
/**
|
|
148
|
-
*
|
|
175
|
+
* Determines whether the Pager responsive functionality is enabled ([see example](slug:responsive_pager)).
|
|
149
176
|
*
|
|
150
177
|
* @default true
|
|
151
178
|
*/
|
|
152
179
|
responsive = true;
|
|
153
180
|
/**
|
|
154
|
-
*
|
|
181
|
+
* Determines whether the Pager adaptiveness functionality is enabled ([see example](slug:adaptive_mode_pager)).
|
|
155
182
|
*
|
|
156
183
|
* @default 'auto'
|
|
157
184
|
*/
|
|
158
185
|
adaptiveMode = 'auto';
|
|
159
186
|
/**
|
|
160
|
-
* Fires when the current page of the Pager
|
|
161
|
-
* You have to handle the event
|
|
187
|
+
* Fires when the current page of the Pager changes ([see example](slug:overview_pager)).
|
|
188
|
+
* You have to handle the event and page the data.
|
|
162
189
|
*/
|
|
163
190
|
pageChange = new EventEmitter();
|
|
164
191
|
/**
|
|
165
|
-
* Fires when the page size of the Pager
|
|
166
|
-
* You have to handle the event
|
|
167
|
-
* If the event is prevented, the page size
|
|
192
|
+
* Fires when the page size of the Pager changes.
|
|
193
|
+
* You have to handle the event and page the data.
|
|
194
|
+
* If the event is prevented, the page size remains unchanged ([see example]({% slug pager_events %})).
|
|
168
195
|
*/
|
|
169
196
|
pageSizeChange = new EventEmitter();
|
|
170
197
|
/**
|
|
@@ -311,6 +338,9 @@ export class PagerComponent {
|
|
|
311
338
|
});
|
|
312
339
|
}
|
|
313
340
|
}
|
|
341
|
+
/**
|
|
342
|
+
* Gets the maximum number of items displayed on the current page.
|
|
343
|
+
*/
|
|
314
344
|
get maxItems() {
|
|
315
345
|
return Math.min(this.currentPage * this.pageSize, this.total);
|
|
316
346
|
}
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { PreventableEvent } from './preventable-event';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
7
|
+
* Represents the arguments for the `pageSizeChange` event. The `pageSizeChange` event fires when you change the page size
|
|
8
|
+
* from the UI. If you cancel the event, the change does not occur.
|
|
9
9
|
*/
|
|
10
10
|
export class PageSizeChangeEvent extends PreventableEvent {
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Gets the newly selected page size.
|
|
13
13
|
*/
|
|
14
14
|
newPageSize;
|
|
15
15
|
/**
|