@progress/kendo-angular-pager 4.1.0-dev.202211230837 → 11.0.0-develop.79
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/NOTICE.txt +3 -3
- package/{esm2015/main.js → esm2020/index.mjs} +1 -1
- package/{esm2015/package-metadata.js → esm2020/package-metadata.mjs} +3 -3
- package/{esm2015/pager/change-event-args.interface.js → esm2020/pager/change-event-args.interface.mjs} +1 -1
- package/{esm2015/pager/common/constants.js → esm2020/pager/common/constants.mjs} +1 -1
- package/{esm2015/pager/pagesize-item.interface.js → esm2020/pager/common/pager-classes.mjs} +1 -1
- package/{esm2015/pager/common/pager-type.js → esm2020/pager/common/pager-size.mjs} +1 -1
- package/esm2020/pager/common/pager-type.mjs +5 -0
- package/{esm2015/pager/focusable.directive.js → esm2020/pager/focusable.directive.mjs} +6 -5
- package/{esm2015/pager/localization/custom-messages.component.js → esm2020/pager/localization/custom-messages.component.mjs} +5 -4
- package/{esm2015/pager/localization/localized-messages.directive.js → esm2020/pager/localization/localized-messages.directive.mjs} +5 -4
- package/{esm2015/pager/localization/messages.js → esm2020/pager/localization/messages.mjs} +4 -4
- package/{esm2015/pager/navigation.service.js → esm2020/pager/navigation.service.mjs} +1 -1
- package/{esm2015/pager/pager-context.service.js → esm2020/pager/pager-context.service.mjs} +1 -1
- package/{esm2015/pager/pager-element.component.js → esm2020/pager/pager-element.component.mjs} +7 -5
- package/{esm2015/pager/pager-info.component.js → esm2020/pager/pager-info.component.mjs} +7 -8
- package/{esm2015/pager/pager-input.component.js → esm2020/pager/pager-input.component.mjs} +23 -6
- package/{esm2015/pager/pager-next-buttons.component.js → esm2020/pager/pager-next-buttons.component.mjs} +56 -32
- package/esm2020/pager/pager-numeric-buttons.component.mjs +273 -0
- package/{esm2015/pager/pager-page-sizes.component.js → esm2020/pager/pager-page-sizes.component.mjs} +42 -10
- package/{esm2015/pager/pager-prev-buttons.component.js → esm2020/pager/pager-prev-buttons.component.mjs} +52 -28
- package/{esm2015/pager/pager-template.directive.js → esm2020/pager/pager-template.directive.mjs} +5 -5
- package/{esm2015/pager/pager.component.js → esm2020/pager/pager.component.mjs} +84 -43
- package/{esm2015/pager/pager.module.js → esm2020/pager/pager.module.mjs} +8 -5
- package/esm2020/pager/pagesize-item.interface.mjs +5 -0
- package/{esm2015/pager/pagesizechange-event.js → esm2020/pager/pagesizechange-event.mjs} +1 -1
- package/{esm2015/pager/preventable-event.js → esm2020/pager/preventable-event.mjs} +1 -1
- package/{esm2015/kendo-angular-pager.js → esm2020/progress-kendo-angular-pager.mjs} +2 -2
- package/{esm2015/util.js → esm2020/util.mjs} +26 -1
- package/fesm2015/progress-kendo-angular-pager.mjs +1941 -0
- package/{fesm2015/kendo-angular-pager.js → fesm2020/progress-kendo-angular-pager.mjs} +421 -221
- package/{main.d.ts → index.d.ts} +2 -1
- package/package-metadata.d.ts +1 -1
- package/package.json +29 -55
- package/pager/change-event-args.interface.d.ts +1 -1
- package/pager/common/constants.d.ts +1 -1
- package/pager/common/pager-classes.d.ts +11 -0
- package/pager/common/pager-size.d.ts +9 -0
- package/pager/common/pager-type.d.ts +1 -1
- package/pager/focusable.directive.d.ts +1 -1
- package/pager/localization/custom-messages.component.d.ts +1 -1
- package/pager/localization/localized-messages.directive.d.ts +1 -1
- package/pager/localization/messages.d.ts +1 -1
- package/pager/navigation.service.d.ts +1 -1
- package/pager/pager-context.service.d.ts +1 -1
- package/pager/pager-element.component.d.ts +1 -1
- package/pager/pager-info.component.d.ts +1 -1
- package/pager/pager-input.component.d.ts +13 -2
- package/pager/pager-next-buttons.component.d.ts +13 -2
- package/pager/pager-numeric-buttons.component.d.ts +21 -5
- package/pager/pager-page-sizes.component.d.ts +20 -5
- package/pager/pager-prev-buttons.component.d.ts +13 -2
- package/pager/pager-template.directive.d.ts +1 -1
- package/pager/pager.component.d.ts +19 -5
- package/pager/pager.module.d.ts +4 -3
- package/pager/pagesize-item.interface.d.ts +1 -1
- package/pager/pagesizechange-event.d.ts +1 -1
- package/pager/preventable-event.d.ts +1 -1
- package/{kendo-angular-pager.d.ts → progress-kendo-angular-pager.d.ts} +2 -2
- package/schematics/ngAdd/index.js +1 -5
- package/util.d.ts +13 -1
- package/bundles/kendo-angular-pager.umd.js +0 -5
- package/esm2015/pager/pager-numeric-buttons.component.js +0 -217
- package/schematics/ngAdd/index.js.map +0 -1
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright ©
|
|
2
|
+
* Copyright © 2022 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { Directive, Input, forwardRef, Component, ChangeDetectionStrategy, ViewChild, HostBinding, Optional, EventEmitter, ContentChild, Output, HostListener, NgModule } from '@angular/core';
|
|
6
|
+
import { Directive, Input, forwardRef, Component, ChangeDetectionStrategy, ViewChild, HostBinding, Optional, ElementRef, EventEmitter, ContentChild, Output, HostListener, NgModule } from '@angular/core';
|
|
7
7
|
import * as i1 from '@progress/kendo-angular-l10n';
|
|
8
8
|
import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
9
9
|
import { Subject, Subscription } from 'rxjs';
|
|
10
|
-
import * as i3 from '@progress/kendo-angular-
|
|
10
|
+
import * as i3 from '@progress/kendo-angular-buttons';
|
|
11
|
+
import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
12
|
+
import * as i3$1 from '@progress/kendo-angular-dropdowns';
|
|
11
13
|
import { DropDownListModule } from '@progress/kendo-angular-dropdowns';
|
|
12
|
-
import * as i4 from '@angular/common';
|
|
13
|
-
import { CommonModule } from '@angular/common';
|
|
14
|
-
import * as i3$1 from '@progress/kendo-angular-inputs';
|
|
15
|
-
import { NumericTextBoxComponent, NumericTextBoxModule } from '@progress/kendo-angular-inputs';
|
|
16
14
|
import * as i6 from '@progress/kendo-angular-common';
|
|
17
15
|
import { Keys, anyChanged, ResizeSensorComponent, EventsModule, ResizeSensorModule } from '@progress/kendo-angular-common';
|
|
16
|
+
import * as i5 from '@angular/common';
|
|
17
|
+
import { CommonModule } from '@angular/common';
|
|
18
|
+
import * as i3$2 from '@progress/kendo-angular-inputs';
|
|
19
|
+
import { NumericTextBoxComponent, NumericTextBoxModule } from '@progress/kendo-angular-inputs';
|
|
18
20
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
19
21
|
|
|
20
22
|
/**
|
|
@@ -62,9 +64,9 @@ class PageSizeChangeEvent extends PreventableEvent {
|
|
|
62
64
|
*/
|
|
63
65
|
class Messages extends ComponentMessages {
|
|
64
66
|
}
|
|
65
|
-
Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
66
|
-
Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "
|
|
67
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
67
|
+
Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
68
|
+
Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", 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 });
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Messages, decorators: [{
|
|
68
70
|
type: Directive,
|
|
69
71
|
args: [{
|
|
70
72
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -107,14 +109,14 @@ class CustomMessagesComponent extends Messages {
|
|
|
107
109
|
return true;
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
|
-
CustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
111
|
-
CustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
112
|
+
CustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
113
|
+
CustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CustomMessagesComponent, selector: "kendo-datapager-messages", providers: [
|
|
112
114
|
{
|
|
113
115
|
provide: Messages,
|
|
114
116
|
useExisting: forwardRef(() => CustomMessagesComponent)
|
|
115
117
|
}
|
|
116
118
|
], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CustomMessagesComponent, decorators: [{
|
|
118
120
|
type: Component,
|
|
119
121
|
args: [{
|
|
120
122
|
providers: [
|
|
@@ -137,14 +139,14 @@ class LocalizedMessagesDirective extends Messages {
|
|
|
137
139
|
this.service = service;
|
|
138
140
|
}
|
|
139
141
|
}
|
|
140
|
-
LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
141
|
-
LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "
|
|
142
|
+
LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
143
|
+
LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: LocalizedMessagesDirective, selector: "[kendoDataPagerLocalizedMessages]", providers: [
|
|
142
144
|
{
|
|
143
145
|
provide: Messages,
|
|
144
146
|
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
|
145
147
|
}
|
|
146
148
|
], usesInheritance: true, ngImport: i0 });
|
|
147
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
|
|
148
150
|
type: Directive,
|
|
149
151
|
args: [{
|
|
150
152
|
providers: [
|
|
@@ -264,9 +266,9 @@ class PagerElementComponent {
|
|
|
264
266
|
}
|
|
265
267
|
}
|
|
266
268
|
}
|
|
267
|
-
PagerElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
268
|
-
PagerElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
269
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
269
|
+
PagerElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerElementComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
270
|
+
PagerElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerElementComponent, selector: "kendo-pager-element", ngImport: i0, template: ``, isInline: true });
|
|
271
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerElementComponent, decorators: [{
|
|
270
272
|
type: Component,
|
|
271
273
|
args: [{
|
|
272
274
|
selector: 'kendo-pager-element',
|
|
@@ -304,6 +306,31 @@ const focusableSelector = [
|
|
|
304
306
|
'*[tabindex]:not([disabled])',
|
|
305
307
|
'*[contenteditable]:not([disabled]):not([contenteditable="false"])'
|
|
306
308
|
].join(',');
|
|
309
|
+
/**
|
|
310
|
+
* @hidden
|
|
311
|
+
*/
|
|
312
|
+
const DEFAULT_SIZE = 'medium';
|
|
313
|
+
const SIZES = {
|
|
314
|
+
small: 'sm',
|
|
315
|
+
medium: 'md',
|
|
316
|
+
large: 'lg'
|
|
317
|
+
};
|
|
318
|
+
/**
|
|
319
|
+
* @hidden
|
|
320
|
+
*
|
|
321
|
+
* Returns the styling classes to be added and removed
|
|
322
|
+
*/
|
|
323
|
+
const getStylingClasses = (componentType, stylingOption, previousValue, newValue) => {
|
|
324
|
+
switch (stylingOption) {
|
|
325
|
+
case 'size':
|
|
326
|
+
return {
|
|
327
|
+
toRemove: `k-${componentType}-${SIZES[previousValue]}`,
|
|
328
|
+
toAdd: newValue !== 'none' ? `k-${componentType}-${SIZES[newValue]}` : ''
|
|
329
|
+
};
|
|
330
|
+
default:
|
|
331
|
+
break;
|
|
332
|
+
}
|
|
333
|
+
};
|
|
307
334
|
|
|
308
335
|
/**
|
|
309
336
|
* @hidden
|
|
@@ -370,9 +397,9 @@ class PagerFocusableDirective {
|
|
|
370
397
|
});
|
|
371
398
|
}
|
|
372
399
|
}
|
|
373
|
-
PagerFocusableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
374
|
-
PagerFocusableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "
|
|
375
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
400
|
+
PagerFocusableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerFocusableDirective, deps: [{ token: PagerNavigationService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
401
|
+
PagerFocusableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"], ngImport: i0 });
|
|
402
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerFocusableDirective, decorators: [{
|
|
376
403
|
type: Directive,
|
|
377
404
|
args: [{
|
|
378
405
|
selector: '[kendoPagerFocusable]',
|
|
@@ -387,6 +414,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
387
414
|
class PagerPrevButtonsComponent extends PagerElementComponent {
|
|
388
415
|
constructor(localization, pagerContext, cd) {
|
|
389
416
|
super(localization, pagerContext, cd);
|
|
417
|
+
/**
|
|
418
|
+
* Specifies the padding of the buttons.
|
|
419
|
+
*
|
|
420
|
+
* The possible values are:
|
|
421
|
+
* * `small`
|
|
422
|
+
* * `medium` (default)
|
|
423
|
+
* * `large`
|
|
424
|
+
* * `none`
|
|
425
|
+
*/
|
|
426
|
+
this.size = DEFAULT_SIZE;
|
|
390
427
|
}
|
|
391
428
|
/**
|
|
392
429
|
* @hidden
|
|
@@ -405,66 +442,88 @@ class PagerPrevButtonsComponent extends PagerElementComponent {
|
|
|
405
442
|
this.cd.markForCheck();
|
|
406
443
|
}
|
|
407
444
|
}
|
|
408
|
-
PagerPrevButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
409
|
-
PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
445
|
+
PagerPrevButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerPrevButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
446
|
+
PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons", inputs: { size: "size" }, usesInheritance: true, ngImport: i0, template: `
|
|
410
447
|
<button
|
|
411
|
-
type="button" kendoPagerFocusable
|
|
412
|
-
class="k-
|
|
413
|
-
[
|
|
448
|
+
type="button" kendoButton kendoPagerFocusable
|
|
449
|
+
class="k-pager-nav k-pager-first"
|
|
450
|
+
[disabled]="disabled"
|
|
451
|
+
icon="caret-alt-to-left"
|
|
452
|
+
fillMode="flat"
|
|
453
|
+
rounded="none"
|
|
454
|
+
[size]="size"
|
|
414
455
|
[title]="textFor('firstPage')"
|
|
415
456
|
[attr.aria-label]="textFor('firstPage')"
|
|
416
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
417
457
|
(click)="currentPage !== 1 ? changePage(0) : false">
|
|
418
|
-
<span class="k-icon k-i-seek-w" role="note" [attr.aria-label]="textFor('firstPage')"></span>
|
|
419
458
|
</button>
|
|
420
459
|
<button
|
|
421
|
-
type="button" kendoPagerFocusable
|
|
422
|
-
class="k-
|
|
423
|
-
[
|
|
460
|
+
type="button" kendoButton kendoPagerFocusable
|
|
461
|
+
class="k-pager-nav"
|
|
462
|
+
[disabled]="disabled"
|
|
463
|
+
icon="caret-alt-left"
|
|
464
|
+
fillMode="flat"
|
|
465
|
+
rounded="none"
|
|
466
|
+
[size]="size"
|
|
424
467
|
[title]="textFor('previousPage')"
|
|
425
468
|
[attr.aria-label]="textFor('previousPage')"
|
|
426
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
427
469
|
(click)="currentPage !== 1 ? changePage(currentPage-2) : false">
|
|
428
|
-
<span class="k-icon k-i-arrow-w" role="note" [attr.aria-label]="textFor('previousPage')"></span>
|
|
429
470
|
</button>
|
|
430
|
-
`, isInline: true, directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
431
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
471
|
+
`, isInline: true, components: [{ type: i3.Button, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
472
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerPrevButtonsComponent, decorators: [{
|
|
432
473
|
type: Component,
|
|
433
474
|
args: [{
|
|
434
475
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
435
476
|
selector: 'kendo-datapager-prev-buttons',
|
|
436
477
|
template: `
|
|
437
478
|
<button
|
|
438
|
-
type="button" kendoPagerFocusable
|
|
439
|
-
class="k-
|
|
440
|
-
[
|
|
479
|
+
type="button" kendoButton kendoPagerFocusable
|
|
480
|
+
class="k-pager-nav k-pager-first"
|
|
481
|
+
[disabled]="disabled"
|
|
482
|
+
icon="caret-alt-to-left"
|
|
483
|
+
fillMode="flat"
|
|
484
|
+
rounded="none"
|
|
485
|
+
[size]="size"
|
|
441
486
|
[title]="textFor('firstPage')"
|
|
442
487
|
[attr.aria-label]="textFor('firstPage')"
|
|
443
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
444
488
|
(click)="currentPage !== 1 ? changePage(0) : false">
|
|
445
|
-
<span class="k-icon k-i-seek-w" role="note" [attr.aria-label]="textFor('firstPage')"></span>
|
|
446
489
|
</button>
|
|
447
490
|
<button
|
|
448
|
-
type="button" kendoPagerFocusable
|
|
449
|
-
class="k-
|
|
450
|
-
[
|
|
491
|
+
type="button" kendoButton kendoPagerFocusable
|
|
492
|
+
class="k-pager-nav"
|
|
493
|
+
[disabled]="disabled"
|
|
494
|
+
icon="caret-alt-left"
|
|
495
|
+
fillMode="flat"
|
|
496
|
+
rounded="none"
|
|
497
|
+
[size]="size"
|
|
451
498
|
[title]="textFor('previousPage')"
|
|
452
499
|
[attr.aria-label]="textFor('previousPage')"
|
|
453
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
454
500
|
(click)="currentPage !== 1 ? changePage(currentPage-2) : false">
|
|
455
|
-
<span class="k-icon k-i-arrow-w" role="note" [attr.aria-label]="textFor('previousPage')"></span>
|
|
456
501
|
</button>
|
|
457
502
|
`
|
|
458
503
|
}]
|
|
459
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }]; }
|
|
504
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { size: [{
|
|
505
|
+
type: Input
|
|
506
|
+
}] } });
|
|
460
507
|
|
|
461
508
|
/**
|
|
462
509
|
* Displays a drop-down list for the page size selection ([see example]({% slug pager_settings %})).
|
|
463
510
|
*/
|
|
464
511
|
class PagerPageSizesComponent extends PagerElementComponent {
|
|
465
|
-
constructor(localization, cd, pagerContext) {
|
|
512
|
+
constructor(localization, cd, pagerContext, element, ngZone) {
|
|
466
513
|
super(localization, pagerContext, cd);
|
|
467
514
|
this.pagerContext = pagerContext;
|
|
515
|
+
this.element = element;
|
|
516
|
+
this.ngZone = ngZone;
|
|
517
|
+
/**
|
|
518
|
+
* Specifies the padding of the dropdown.
|
|
519
|
+
*
|
|
520
|
+
* The possible values are:
|
|
521
|
+
* * `small`
|
|
522
|
+
* * `medium` (default)
|
|
523
|
+
* * `large`
|
|
524
|
+
* * `none`
|
|
525
|
+
*/
|
|
526
|
+
this.size = DEFAULT_SIZE;
|
|
468
527
|
this._pageSizes = [];
|
|
469
528
|
}
|
|
470
529
|
/**
|
|
@@ -618,6 +677,12 @@ class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
618
677
|
}
|
|
619
678
|
ngAfterViewInit() {
|
|
620
679
|
this.dropDownList.wrapper.nativeElement.setAttribute('aria-label', this.textFor('itemsPerPage'));
|
|
680
|
+
this.ngZone.runOutsideAngular(() => {
|
|
681
|
+
this.element.nativeElement.addEventListener('keydown', this.keyDownHandler.bind(this), true);
|
|
682
|
+
});
|
|
683
|
+
}
|
|
684
|
+
ngOnDestroy() {
|
|
685
|
+
this.element.nativeElement.removeEventListener('keydown', this.keyDownHandler);
|
|
621
686
|
}
|
|
622
687
|
/**
|
|
623
688
|
* @hidden
|
|
@@ -635,11 +700,19 @@ class PagerPageSizesComponent extends PagerElementComponent {
|
|
|
635
700
|
this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
|
|
636
701
|
this.cd.markForCheck();
|
|
637
702
|
}
|
|
703
|
+
keyDownHandler(ev) {
|
|
704
|
+
if (ev.keyCode === Keys.Escape && this.dropDownList.isOpen) {
|
|
705
|
+
ev.stopPropagation();
|
|
706
|
+
this.dropDownList.toggle(false);
|
|
707
|
+
}
|
|
708
|
+
}
|
|
638
709
|
}
|
|
639
|
-
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
640
|
-
PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
710
|
+
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
711
|
+
PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerPageSizesComponent, 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: `
|
|
641
712
|
<kendo-dropdownlist kendoPagerFocusable
|
|
713
|
+
class="k-dropdown"
|
|
642
714
|
#dropdownlist
|
|
715
|
+
[size]="size"
|
|
643
716
|
[data]="pageSizes"
|
|
644
717
|
textField="text"
|
|
645
718
|
valueField="value"
|
|
@@ -647,15 +720,17 @@ PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
647
720
|
[value]="pageSize"
|
|
648
721
|
(valueChange)="pageSizeChange($event, dropdownlist)"></kendo-dropdownlist>
|
|
649
722
|
{{ textFor('itemsPerPage') }}
|
|
650
|
-
`, isInline: true, components: [{ type: i3.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }], directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
651
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
723
|
+
`, isInline: true, components: [{ type: i3$1.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }], directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
724
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
|
|
652
725
|
type: Component,
|
|
653
726
|
args: [{
|
|
654
727
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
655
728
|
selector: 'kendo-datapager-page-sizes',
|
|
656
729
|
template: `
|
|
657
730
|
<kendo-dropdownlist kendoPagerFocusable
|
|
731
|
+
class="k-dropdown"
|
|
658
732
|
#dropdownlist
|
|
733
|
+
[size]="size"
|
|
659
734
|
[data]="pageSizes"
|
|
660
735
|
textField="text"
|
|
661
736
|
valueField="value"
|
|
@@ -665,17 +740,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
665
740
|
{{ textFor('itemsPerPage') }}
|
|
666
741
|
`
|
|
667
742
|
}]
|
|
668
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { dropDownList: [{
|
|
743
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { dropDownList: [{
|
|
669
744
|
type: ViewChild,
|
|
670
745
|
args: ['dropdownlist', { static: true }]
|
|
671
746
|
}], pageSizes: [{
|
|
672
747
|
type: Input
|
|
748
|
+
}], size: [{
|
|
749
|
+
type: Input
|
|
673
750
|
}], classes: [{
|
|
674
751
|
type: HostBinding,
|
|
675
752
|
args: ["class.k-pager-sizes"]
|
|
676
|
-
}, {
|
|
677
|
-
type: HostBinding,
|
|
678
|
-
args: ["class.k-label"]
|
|
679
753
|
}] } });
|
|
680
754
|
|
|
681
755
|
/**
|
|
@@ -725,9 +799,9 @@ class PagerTemplateDirective {
|
|
|
725
799
|
this.templateRef = templateRef;
|
|
726
800
|
}
|
|
727
801
|
}
|
|
728
|
-
PagerTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
729
|
-
PagerTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "
|
|
730
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
802
|
+
PagerTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
803
|
+
PagerTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: PagerTemplateDirective, selector: "[kendoDataPagerTemplate]", ngImport: i0 });
|
|
804
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerTemplateDirective, decorators: [{
|
|
731
805
|
type: Directive,
|
|
732
806
|
args: [{
|
|
733
807
|
selector: '[kendoDataPagerTemplate]'
|
|
@@ -740,10 +814,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
740
814
|
* Displays numeric buttons to enable navigation between the pages.
|
|
741
815
|
*/
|
|
742
816
|
class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
743
|
-
constructor(localization, cd, pagerContext) {
|
|
817
|
+
constructor(localization, cd, pagerContext, renderer) {
|
|
744
818
|
super(localization, pagerContext, cd);
|
|
745
819
|
this.pagerContext = pagerContext;
|
|
746
|
-
this.
|
|
820
|
+
this.renderer = renderer;
|
|
821
|
+
this._size = DEFAULT_SIZE;
|
|
822
|
+
}
|
|
823
|
+
/**
|
|
824
|
+
* Specifies the padding of the numeric buttons.
|
|
825
|
+
*
|
|
826
|
+
* The possible values are:
|
|
827
|
+
* * `small`
|
|
828
|
+
* * `medium` (default)
|
|
829
|
+
* * `large`
|
|
830
|
+
* * `none`
|
|
831
|
+
*/
|
|
832
|
+
set size(size) {
|
|
833
|
+
const newSize = size ? size : DEFAULT_SIZE;
|
|
834
|
+
this.handleClasses(newSize, 'size');
|
|
835
|
+
this._size = newSize;
|
|
836
|
+
}
|
|
837
|
+
get size() {
|
|
838
|
+
return this._size;
|
|
747
839
|
}
|
|
748
840
|
/**
|
|
749
841
|
* @hidden
|
|
@@ -753,7 +845,7 @@ class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
753
845
|
* @memberOf PagerNumericButtonsComponent
|
|
754
846
|
*/
|
|
755
847
|
get buttons() {
|
|
756
|
-
|
|
848
|
+
const result = [];
|
|
757
849
|
for (let idx = this.start; idx <= this.end; idx++) {
|
|
758
850
|
result.push(idx);
|
|
759
851
|
}
|
|
@@ -777,6 +869,9 @@ class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
777
869
|
}
|
|
778
870
|
return 1;
|
|
779
871
|
}
|
|
872
|
+
ngAfterViewInit() {
|
|
873
|
+
this.handleClasses(this.size, 'size');
|
|
874
|
+
}
|
|
780
875
|
/**
|
|
781
876
|
* @hidden
|
|
782
877
|
*/
|
|
@@ -814,16 +909,28 @@ class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
814
909
|
get pageChooserLabel() {
|
|
815
910
|
return this.textFor('selectPage');
|
|
816
911
|
}
|
|
912
|
+
handleClasses(value, input) {
|
|
913
|
+
const elem = this.selectElement?.nativeElement;
|
|
914
|
+
const classes = getStylingClasses('picker', input, this[input], value);
|
|
915
|
+
if (!elem) {
|
|
916
|
+
return;
|
|
917
|
+
}
|
|
918
|
+
if (classes.toRemove) {
|
|
919
|
+
this.renderer.removeClass(elem, classes.toRemove);
|
|
920
|
+
}
|
|
921
|
+
if (classes.toAdd) {
|
|
922
|
+
this.renderer.addClass(elem, classes.toAdd);
|
|
923
|
+
}
|
|
924
|
+
}
|
|
817
925
|
}
|
|
818
|
-
PagerNumericButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
819
|
-
PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
820
|
-
<select kendoPagerFocusable
|
|
821
|
-
class="k-dropdown-list k-
|
|
926
|
+
PagerNumericButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerNumericButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
927
|
+
PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons", inputs: { buttonCount: "buttonCount", size: "size" }, viewQueries: [{ propertyName: "selectElement", first: true, predicate: ["select"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
|
|
928
|
+
<select kendoPagerFocusable #select
|
|
929
|
+
class="k-dropdown-list k-dropdown k-picker k-rounded-md"
|
|
822
930
|
[attr.title]="pageChooserLabel"
|
|
823
931
|
[attr.aria-label]="pageChooserLabel"
|
|
824
932
|
(change)="onSelectChange($event)">
|
|
825
933
|
<option *ngIf="start > 1"
|
|
826
|
-
class="k-link"
|
|
827
934
|
value="previousButtons"
|
|
828
935
|
[selected]="false"
|
|
829
936
|
[attr.aria-label]="pageLabel(start - 1)">...
|
|
@@ -833,59 +940,67 @@ PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
833
940
|
[selected]="num === currentPage"
|
|
834
941
|
[attr.aria-label]="pageLabel(num)"
|
|
835
942
|
[attr.aria-current]="currentPage === num ? 'page' : undefined"
|
|
836
|
-
[ngClass]="{'k-
|
|
943
|
+
[ngClass]="{'k-selected':currentPage === num}">
|
|
837
944
|
{{num}}
|
|
838
945
|
</option>
|
|
839
946
|
<option *ngIf="end < totalPages"
|
|
840
947
|
value="nextButtons"
|
|
841
948
|
[selected]="false"
|
|
842
|
-
class="k-link"
|
|
843
949
|
[attr.aria-label]="pageLabel(end + 1)">...
|
|
844
950
|
</option>
|
|
845
951
|
</select>
|
|
846
|
-
<
|
|
847
|
-
<
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
952
|
+
<div [ngClass]="{'k-pager-numbers': true}">
|
|
953
|
+
<button *ngIf="start > 1"
|
|
954
|
+
type="button"
|
|
955
|
+
kendoPagerFocusable
|
|
956
|
+
kendoButton
|
|
957
|
+
[size]="size"
|
|
958
|
+
fillMode="flat"
|
|
959
|
+
themeColor="primary"
|
|
960
|
+
rounded="none"
|
|
961
|
+
[attr.aria-label]="pageLabel(start - 1)"
|
|
962
|
+
[attr.title]="pageLabel(start - 1)"
|
|
963
|
+
(click)="changePage(start - 2)">...</button>
|
|
964
|
+
<button *ngFor="let num of buttons"
|
|
965
|
+
type="button"
|
|
966
|
+
kendoPagerFocusable
|
|
967
|
+
kendoButton
|
|
968
|
+
[size]="size"
|
|
969
|
+
fillMode="flat"
|
|
970
|
+
themeColor="primary"
|
|
971
|
+
rounded="none"
|
|
972
|
+
[attr.aria-label]="pageLabel(num)"
|
|
973
|
+
[attr.title]="pageLabel(num)"
|
|
974
|
+
[attr.aria-current]="currentPage === num ? 'page' : undefined"
|
|
975
|
+
[selected]="currentPage === num"
|
|
976
|
+
(click)="changePage(num - 1)">
|
|
977
|
+
{{num}}
|
|
978
|
+
</button>
|
|
979
|
+
<button *ngIf="end < totalPages"
|
|
980
|
+
type="button"
|
|
981
|
+
kendoPagerFocusable
|
|
982
|
+
kendoButton
|
|
983
|
+
[size]="size"
|
|
984
|
+
fillMode="flat"
|
|
985
|
+
themeColor="primary"
|
|
986
|
+
rounded="none"
|
|
987
|
+
[attr.aria-label]="pageLabel(end + 1)"
|
|
988
|
+
[attr.title]="pageLabel(end + 1)"
|
|
989
|
+
(click)="changePage(end)">...</button>
|
|
990
|
+
</div>
|
|
991
|
+
`, isInline: true, components: [{ type: i3.Button, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
992
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerNumericButtonsComponent, decorators: [{
|
|
877
993
|
type: Component,
|
|
878
994
|
args: [{
|
|
879
995
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
880
996
|
selector: 'kendo-datapager-numeric-buttons',
|
|
881
997
|
template: `
|
|
882
|
-
<select kendoPagerFocusable
|
|
883
|
-
class="k-dropdown-list k-
|
|
998
|
+
<select kendoPagerFocusable #select
|
|
999
|
+
class="k-dropdown-list k-dropdown k-picker k-rounded-md"
|
|
884
1000
|
[attr.title]="pageChooserLabel"
|
|
885
1001
|
[attr.aria-label]="pageChooserLabel"
|
|
886
1002
|
(change)="onSelectChange($event)">
|
|
887
1003
|
<option *ngIf="start > 1"
|
|
888
|
-
class="k-link"
|
|
889
1004
|
value="previousButtons"
|
|
890
1005
|
[selected]="false"
|
|
891
1006
|
[attr.aria-label]="pageLabel(start - 1)">...
|
|
@@ -895,52 +1010,63 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
895
1010
|
[selected]="num === currentPage"
|
|
896
1011
|
[attr.aria-label]="pageLabel(num)"
|
|
897
1012
|
[attr.aria-current]="currentPage === num ? 'page' : undefined"
|
|
898
|
-
[ngClass]="{'k-
|
|
1013
|
+
[ngClass]="{'k-selected':currentPage === num}">
|
|
899
1014
|
{{num}}
|
|
900
1015
|
</option>
|
|
901
1016
|
<option *ngIf="end < totalPages"
|
|
902
1017
|
value="nextButtons"
|
|
903
1018
|
[selected]="false"
|
|
904
|
-
class="k-link"
|
|
905
1019
|
[attr.aria-label]="pageLabel(end + 1)">...
|
|
906
1020
|
</option>
|
|
907
1021
|
</select>
|
|
908
|
-
<
|
|
909
|
-
<
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
1022
|
+
<div [ngClass]="{'k-pager-numbers': true}">
|
|
1023
|
+
<button *ngIf="start > 1"
|
|
1024
|
+
type="button"
|
|
1025
|
+
kendoPagerFocusable
|
|
1026
|
+
kendoButton
|
|
1027
|
+
[size]="size"
|
|
1028
|
+
fillMode="flat"
|
|
1029
|
+
themeColor="primary"
|
|
1030
|
+
rounded="none"
|
|
1031
|
+
[attr.aria-label]="pageLabel(start - 1)"
|
|
1032
|
+
[attr.title]="pageLabel(start - 1)"
|
|
1033
|
+
(click)="changePage(start - 2)">...</button>
|
|
1034
|
+
<button *ngFor="let num of buttons"
|
|
1035
|
+
type="button"
|
|
1036
|
+
kendoPagerFocusable
|
|
1037
|
+
kendoButton
|
|
1038
|
+
[size]="size"
|
|
1039
|
+
fillMode="flat"
|
|
1040
|
+
themeColor="primary"
|
|
1041
|
+
rounded="none"
|
|
1042
|
+
[attr.aria-label]="pageLabel(num)"
|
|
1043
|
+
[attr.title]="pageLabel(num)"
|
|
1044
|
+
[attr.aria-current]="currentPage === num ? 'page' : undefined"
|
|
1045
|
+
[selected]="currentPage === num"
|
|
1046
|
+
(click)="changePage(num - 1)">
|
|
1047
|
+
{{num}}
|
|
1048
|
+
</button>
|
|
1049
|
+
<button *ngIf="end < totalPages"
|
|
1050
|
+
type="button"
|
|
1051
|
+
kendoPagerFocusable
|
|
1052
|
+
kendoButton
|
|
1053
|
+
[size]="size"
|
|
1054
|
+
fillMode="flat"
|
|
1055
|
+
themeColor="primary"
|
|
1056
|
+
rounded="none"
|
|
1057
|
+
[attr.aria-label]="pageLabel(end + 1)"
|
|
1058
|
+
[attr.title]="pageLabel(end + 1)"
|
|
1059
|
+
(click)="changePage(end)">...</button>
|
|
1060
|
+
</div>
|
|
937
1061
|
`
|
|
938
1062
|
}]
|
|
939
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: {
|
|
940
|
-
type:
|
|
941
|
-
args: ['
|
|
1063
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: i0.Renderer2 }]; }, propDecorators: { selectElement: [{
|
|
1064
|
+
type: ViewChild,
|
|
1065
|
+
args: ['select', { read: ElementRef }]
|
|
942
1066
|
}], buttonCount: [{
|
|
943
1067
|
type: Input
|
|
1068
|
+
}], size: [{
|
|
1069
|
+
type: Input
|
|
944
1070
|
}] } });
|
|
945
1071
|
|
|
946
1072
|
// eslint-disable no-access-missing-member
|
|
@@ -950,6 +1076,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
950
1076
|
class PagerNextButtonsComponent extends PagerElementComponent {
|
|
951
1077
|
constructor(localization, pagerContext, cd) {
|
|
952
1078
|
super(localization, pagerContext, cd);
|
|
1079
|
+
/**
|
|
1080
|
+
* Specifies the padding of the buttons.
|
|
1081
|
+
*
|
|
1082
|
+
* The possible values are:
|
|
1083
|
+
* * `small`
|
|
1084
|
+
* * `medium` (default)
|
|
1085
|
+
* * `large`
|
|
1086
|
+
* * `none`
|
|
1087
|
+
*/
|
|
1088
|
+
this.size = DEFAULT_SIZE;
|
|
953
1089
|
}
|
|
954
1090
|
/**
|
|
955
1091
|
* @hidden
|
|
@@ -968,58 +1104,68 @@ class PagerNextButtonsComponent extends PagerElementComponent {
|
|
|
968
1104
|
this.cd.markForCheck();
|
|
969
1105
|
}
|
|
970
1106
|
}
|
|
971
|
-
PagerNextButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
972
|
-
PagerNextButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
973
|
-
<button
|
|
974
|
-
type="button"
|
|
975
|
-
|
|
976
|
-
|
|
1107
|
+
PagerNextButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerNextButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1108
|
+
PagerNextButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons", inputs: { size: "size" }, usesInheritance: true, ngImport: i0, template: `
|
|
1109
|
+
<button kendoButton kendoPagerFocusable
|
|
1110
|
+
type="button"
|
|
1111
|
+
[size]="size"
|
|
1112
|
+
icon="caret-alt-right"
|
|
1113
|
+
fillMode="flat"
|
|
1114
|
+
rounded="none"
|
|
1115
|
+
class="k-pager-nav"
|
|
1116
|
+
[disabled]="disabled"
|
|
977
1117
|
[title]="textFor('nextPage')"
|
|
978
1118
|
[attr.aria-label]="textFor('nextPage')"
|
|
979
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
980
1119
|
(click)="currentPage !== totalPages ? changePage(currentPage) : false">
|
|
981
|
-
<span class="k-icon k-i-arrow-e" role="note" [attr.aria-label]="textFor('nextPage')"></span>
|
|
982
1120
|
</button>
|
|
983
|
-
<button
|
|
984
|
-
type="button"
|
|
985
|
-
|
|
986
|
-
|
|
1121
|
+
<button kendoButton kendoPagerFocusable
|
|
1122
|
+
type="button"
|
|
1123
|
+
[size]="size"
|
|
1124
|
+
icon="caret-alt-to-right"
|
|
1125
|
+
fillMode="flat"
|
|
1126
|
+
rounded="none"
|
|
1127
|
+
class="k-pager-nav k-pager-last"
|
|
1128
|
+
[disabled]="disabled"
|
|
987
1129
|
[title]="textFor('lastPage')"
|
|
988
1130
|
[attr.aria-label]="textFor('lastPage')"
|
|
989
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
990
1131
|
(click)="currentPage !== totalPages ? changePage(totalPages-1) : false">
|
|
991
|
-
<span class="k-icon k-i-seek-e" role="note" [attr.aria-label]="textFor('lastPage')"></span>
|
|
992
1132
|
</button>
|
|
993
|
-
`, isInline: true, directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
994
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1133
|
+
`, isInline: true, components: [{ type: i3.Button, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerNextButtonsComponent, decorators: [{
|
|
995
1135
|
type: Component,
|
|
996
1136
|
args: [{
|
|
997
1137
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
998
1138
|
selector: 'kendo-datapager-next-buttons',
|
|
999
1139
|
template: `
|
|
1000
|
-
<button
|
|
1001
|
-
type="button"
|
|
1002
|
-
|
|
1003
|
-
|
|
1140
|
+
<button kendoButton kendoPagerFocusable
|
|
1141
|
+
type="button"
|
|
1142
|
+
[size]="size"
|
|
1143
|
+
icon="caret-alt-right"
|
|
1144
|
+
fillMode="flat"
|
|
1145
|
+
rounded="none"
|
|
1146
|
+
class="k-pager-nav"
|
|
1147
|
+
[disabled]="disabled"
|
|
1004
1148
|
[title]="textFor('nextPage')"
|
|
1005
1149
|
[attr.aria-label]="textFor('nextPage')"
|
|
1006
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
1007
1150
|
(click)="currentPage !== totalPages ? changePage(currentPage) : false">
|
|
1008
|
-
<span class="k-icon k-i-arrow-e" role="note" [attr.aria-label]="textFor('nextPage')"></span>
|
|
1009
1151
|
</button>
|
|
1010
|
-
<button
|
|
1011
|
-
type="button"
|
|
1012
|
-
|
|
1013
|
-
|
|
1152
|
+
<button kendoButton kendoPagerFocusable
|
|
1153
|
+
type="button"
|
|
1154
|
+
[size]="size"
|
|
1155
|
+
icon="caret-alt-to-right"
|
|
1156
|
+
fillMode="flat"
|
|
1157
|
+
rounded="none"
|
|
1158
|
+
class="k-pager-nav k-pager-last"
|
|
1159
|
+
[disabled]="disabled"
|
|
1014
1160
|
[title]="textFor('lastPage')"
|
|
1015
1161
|
[attr.aria-label]="textFor('lastPage')"
|
|
1016
|
-
[attr.aria-disabled]="disabled ? true : undefined"
|
|
1017
1162
|
(click)="currentPage !== totalPages ? changePage(totalPages-1) : false">
|
|
1018
|
-
<span class="k-icon k-i-seek-e" role="note" [attr.aria-label]="textFor('lastPage')"></span>
|
|
1019
1163
|
</button>
|
|
1020
1164
|
`
|
|
1021
1165
|
}]
|
|
1022
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }]; }
|
|
1166
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { size: [{
|
|
1167
|
+
type: Input
|
|
1168
|
+
}] } });
|
|
1023
1169
|
|
|
1024
1170
|
/**
|
|
1025
1171
|
* Displays an input element which allows the typing and rendering of page numbers.
|
|
@@ -1030,6 +1176,16 @@ class PagerInputComponent extends PagerElementComponent {
|
|
|
1030
1176
|
this.pagerContext = pagerContext;
|
|
1031
1177
|
this.zone = zone;
|
|
1032
1178
|
this.renderer = renderer;
|
|
1179
|
+
/**
|
|
1180
|
+
* Specifies the padding of the internal numeric input element.
|
|
1181
|
+
*
|
|
1182
|
+
* The possible values are:
|
|
1183
|
+
* * `small`
|
|
1184
|
+
* * `medium` (default)
|
|
1185
|
+
* * `large`
|
|
1186
|
+
* * `none`
|
|
1187
|
+
*/
|
|
1188
|
+
this.size = DEFAULT_SIZE;
|
|
1033
1189
|
/**
|
|
1034
1190
|
* @hidden
|
|
1035
1191
|
*
|
|
@@ -1038,7 +1194,7 @@ class PagerInputComponent extends PagerElementComponent {
|
|
|
1038
1194
|
* @memberOf PagerInputComponent
|
|
1039
1195
|
*/
|
|
1040
1196
|
this.handleKeyDown = (event) => {
|
|
1041
|
-
|
|
1197
|
+
const incomingValue = this.numericInput.value || this.current;
|
|
1042
1198
|
// eslint-disable import/no-deprecated
|
|
1043
1199
|
if (event.keyCode === Keys.Enter) {
|
|
1044
1200
|
event.preventDefault();
|
|
@@ -1092,14 +1248,15 @@ class PagerInputComponent extends PagerElementComponent {
|
|
|
1092
1248
|
this.cd.markForCheck();
|
|
1093
1249
|
}
|
|
1094
1250
|
}
|
|
1095
|
-
PagerInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1096
|
-
PagerInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
1251
|
+
PagerInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerInputComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
1252
|
+
PagerInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerInputComponent, selector: "kendo-datapager-input", inputs: { size: "size" }, viewQueries: [{ propertyName: "numericInput", first: true, predicate: NumericTextBoxComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
1097
1253
|
<span [ngClass]="{'k-pager-input': true, 'k-label': true}">
|
|
1098
1254
|
{{textFor('page')}}
|
|
1099
1255
|
<kendo-numerictextbox kendoPagerFocusable
|
|
1100
1256
|
[spinners]="false"
|
|
1101
1257
|
[decimals]="0"
|
|
1102
1258
|
format="n0"
|
|
1259
|
+
[size]="size"
|
|
1103
1260
|
[disabled]="!hasPages"
|
|
1104
1261
|
[value]="current"
|
|
1105
1262
|
[min]="hasPages ? 1 : 0"
|
|
@@ -1113,8 +1270,8 @@ PagerInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
1113
1270
|
</kendo-numerictextbox>
|
|
1114
1271
|
{{textFor('of')}} {{totalPages}}
|
|
1115
1272
|
</span>
|
|
1116
|
-
`, isInline: true, components: [{ type: i3$
|
|
1117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1273
|
+
`, isInline: true, components: [{ type: i3$2.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur"], exportAs: ["kendoNumericTextBox"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: PagerFocusableDirective, selector: "[kendoPagerFocusable]", exportAs: ["kendoPagerFocusable"] }, { type: i6.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
1274
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerInputComponent, decorators: [{
|
|
1118
1275
|
type: Component,
|
|
1119
1276
|
args: [{
|
|
1120
1277
|
selector: 'kendo-datapager-input',
|
|
@@ -1125,6 +1282,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1125
1282
|
[spinners]="false"
|
|
1126
1283
|
[decimals]="0"
|
|
1127
1284
|
format="n0"
|
|
1285
|
+
[size]="size"
|
|
1128
1286
|
[disabled]="!hasPages"
|
|
1129
1287
|
[value]="current"
|
|
1130
1288
|
[min]="hasPages ? 1 : 0"
|
|
@@ -1143,6 +1301,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1143
1301
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { numericInput: [{
|
|
1144
1302
|
type: ViewChild,
|
|
1145
1303
|
args: [NumericTextBoxComponent, { static: true }]
|
|
1304
|
+
}], size: [{
|
|
1305
|
+
type: Input
|
|
1146
1306
|
}] } });
|
|
1147
1307
|
|
|
1148
1308
|
// eslint-disable no-access-missing-member
|
|
@@ -1193,9 +1353,9 @@ class PagerInfoComponent extends PagerElementComponent {
|
|
|
1193
1353
|
this.cd.markForCheck();
|
|
1194
1354
|
}
|
|
1195
1355
|
}
|
|
1196
|
-
PagerInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1197
|
-
PagerInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
1198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1356
|
+
PagerInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerInfoComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1357
|
+
PagerInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerInfoComponent, 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 });
|
|
1358
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerInfoComponent, decorators: [{
|
|
1199
1359
|
type: Component,
|
|
1200
1360
|
args: [{
|
|
1201
1361
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
@@ -1205,9 +1365,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1205
1365
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
|
|
1206
1366
|
type: HostBinding,
|
|
1207
1367
|
args: ["class.k-pager-info"]
|
|
1208
|
-
}, {
|
|
1209
|
-
type: HostBinding,
|
|
1210
|
-
args: ["class.k-label"]
|
|
1211
1368
|
}] } });
|
|
1212
1369
|
|
|
1213
1370
|
/**
|
|
@@ -1226,9 +1383,9 @@ const packageMetadata = {
|
|
|
1226
1383
|
name: '@progress/kendo-angular-pager',
|
|
1227
1384
|
productName: 'Kendo UI for Angular',
|
|
1228
1385
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
1229
|
-
publishDate:
|
|
1386
|
+
publishDate: 1672320914,
|
|
1230
1387
|
version: '',
|
|
1231
|
-
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license
|
|
1388
|
+
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
1232
1389
|
};
|
|
1233
1390
|
|
|
1234
1391
|
class PagerComponent {
|
|
@@ -1284,6 +1441,7 @@ class PagerComponent {
|
|
|
1284
1441
|
this._pageSizeValues = DEFAULT_PAGE_SIZE_VALUES;
|
|
1285
1442
|
this.isInnerNavigationEnabled = false;
|
|
1286
1443
|
this._navigable = false;
|
|
1444
|
+
this._size = DEFAULT_SIZE;
|
|
1287
1445
|
this.resizeHandler = () => {
|
|
1288
1446
|
if (this.template) {
|
|
1289
1447
|
return;
|
|
@@ -1291,16 +1449,16 @@ class PagerComponent {
|
|
|
1291
1449
|
const element = this.element.nativeElement;
|
|
1292
1450
|
const width = element.offsetWidth;
|
|
1293
1451
|
if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
|
|
1294
|
-
element.classList.remove('k-pager-md');
|
|
1295
|
-
element.classList.add('k-pager-sm');
|
|
1452
|
+
element.classList.remove('k-pager-mobile-md');
|
|
1453
|
+
element.classList.add('k-pager-mobile-sm');
|
|
1296
1454
|
}
|
|
1297
1455
|
else if (width >= RESPONSIVE_BREAKPOINT_MEDIUM && width < RESPONSIVE_BREAKPOINT_LARGE) {
|
|
1298
|
-
element.classList.add('k-pager-md');
|
|
1299
|
-
element.classList.remove('k-pager-sm');
|
|
1456
|
+
element.classList.add('k-pager-mobile-md');
|
|
1457
|
+
element.classList.remove('k-pager-mobile-sm');
|
|
1300
1458
|
}
|
|
1301
1459
|
else {
|
|
1302
|
-
element.classList.remove('k-pager-md');
|
|
1303
|
-
element.classList.remove('k-pager-sm');
|
|
1460
|
+
element.classList.remove('k-pager-mobile-md');
|
|
1461
|
+
element.classList.remove('k-pager-mobile-sm');
|
|
1304
1462
|
}
|
|
1305
1463
|
};
|
|
1306
1464
|
validatePackage(packageMetadata);
|
|
@@ -1315,6 +1473,9 @@ class PagerComponent {
|
|
|
1315
1473
|
set pageSizeValues(pageSizeValues) {
|
|
1316
1474
|
this._pageSizeValues = Array.isArray(pageSizeValues) ? pageSizeValues : pageSizeValues ? DEFAULT_PAGE_SIZE_VALUES : false;
|
|
1317
1475
|
}
|
|
1476
|
+
get pageSizeValues() {
|
|
1477
|
+
return this._pageSizeValues;
|
|
1478
|
+
}
|
|
1318
1479
|
/**
|
|
1319
1480
|
* If set to `true`, the user can use dedicated shortcuts to interact with the Pager ([see example]({% slug keyboard_navigation_pager %})).
|
|
1320
1481
|
* By default, navigation is disabled and the Pager content is accessible in the normal tab sequence.
|
|
@@ -1329,6 +1490,23 @@ class PagerComponent {
|
|
|
1329
1490
|
return this._navigable;
|
|
1330
1491
|
}
|
|
1331
1492
|
;
|
|
1493
|
+
/**
|
|
1494
|
+
* Specifies the padding of all Pager elements.
|
|
1495
|
+
*
|
|
1496
|
+
* The possible values are:
|
|
1497
|
+
* * `small`
|
|
1498
|
+
* * `medium` (default)
|
|
1499
|
+
* * `large`
|
|
1500
|
+
* * `none`
|
|
1501
|
+
*/
|
|
1502
|
+
set size(size) {
|
|
1503
|
+
const newSize = size ? size : DEFAULT_SIZE;
|
|
1504
|
+
this.handleClasses(newSize, 'size');
|
|
1505
|
+
this._size = newSize;
|
|
1506
|
+
}
|
|
1507
|
+
get size() {
|
|
1508
|
+
return this._size;
|
|
1509
|
+
}
|
|
1332
1510
|
get dir() {
|
|
1333
1511
|
return this.direction;
|
|
1334
1512
|
}
|
|
@@ -1345,9 +1523,6 @@ class PagerComponent {
|
|
|
1345
1523
|
get currentPage() {
|
|
1346
1524
|
return Math.floor((this.skip || 0) / this.pageSize) + 1;
|
|
1347
1525
|
}
|
|
1348
|
-
get pageSizeValues() {
|
|
1349
|
-
return this._pageSizeValues;
|
|
1350
|
-
}
|
|
1351
1526
|
get templateContext() {
|
|
1352
1527
|
const context = this._templateContext;
|
|
1353
1528
|
context.totalPages = this.totalPages;
|
|
@@ -1375,6 +1550,7 @@ class PagerComponent {
|
|
|
1375
1550
|
ngAfterViewInit() {
|
|
1376
1551
|
this.resizeHandler();
|
|
1377
1552
|
this.renderer.setAttribute(this.element.nativeElement, 'aria-label', this.ariaLabel);
|
|
1553
|
+
this.handleClasses(this.size, 'size');
|
|
1378
1554
|
}
|
|
1379
1555
|
ngOnChanges(changes) {
|
|
1380
1556
|
if (anyChanged(["pageSize", "skip", "total"], changes, false)) {
|
|
@@ -1437,11 +1613,13 @@ class PagerComponent {
|
|
|
1437
1613
|
const isFirstPage = this.currentPage === 1;
|
|
1438
1614
|
const isLastPage = this.currentPage === this.totalPages;
|
|
1439
1615
|
this.ngZone.run(() => {
|
|
1440
|
-
if (isHome
|
|
1441
|
-
|
|
1616
|
+
if (isHome) {
|
|
1617
|
+
e.preventDefault();
|
|
1618
|
+
!isFirstPage && this.pagerContext.changePage(0);
|
|
1442
1619
|
}
|
|
1443
|
-
else if (isEnd
|
|
1444
|
-
|
|
1620
|
+
else if (isEnd) {
|
|
1621
|
+
e.preventDefault();
|
|
1622
|
+
!isLastPage && this.pagerContext.changePage(this.totalPages - 1);
|
|
1445
1623
|
}
|
|
1446
1624
|
else if (this.isInnerNavigationEnabled) {
|
|
1447
1625
|
if (isEsc) {
|
|
@@ -1453,11 +1631,13 @@ class PagerComponent {
|
|
|
1453
1631
|
}
|
|
1454
1632
|
}
|
|
1455
1633
|
else {
|
|
1456
|
-
if (isArrowLeftOrPageUp
|
|
1457
|
-
|
|
1634
|
+
if (isArrowLeftOrPageUp) {
|
|
1635
|
+
e.preventDefault();
|
|
1636
|
+
!isFirstPage && this.pagerContext.prevPage();
|
|
1458
1637
|
}
|
|
1459
|
-
else if (isArrowRightOrPageDown
|
|
1460
|
-
|
|
1638
|
+
else if (isArrowRightOrPageDown) {
|
|
1639
|
+
e.preventDefault();
|
|
1640
|
+
!isLastPage && this.pagerContext.nextPage();
|
|
1461
1641
|
}
|
|
1462
1642
|
else if (isEnter) {
|
|
1463
1643
|
if (e.target !== wrapper) {
|
|
@@ -1466,7 +1646,7 @@ class PagerComponent {
|
|
|
1466
1646
|
e.preventDefault();
|
|
1467
1647
|
const [firstFocusable] = this.navigationService.getFirstAndLastFocusable(wrapper);
|
|
1468
1648
|
this.navigationService.toggleInnerNavigation(true);
|
|
1469
|
-
firstFocusable
|
|
1649
|
+
firstFocusable?.focus();
|
|
1470
1650
|
}
|
|
1471
1651
|
}
|
|
1472
1652
|
});
|
|
@@ -1474,9 +1654,19 @@ class PagerComponent {
|
|
|
1474
1654
|
innerNavigationChange(value) {
|
|
1475
1655
|
this.isInnerNavigationEnabled = value;
|
|
1476
1656
|
}
|
|
1657
|
+
handleClasses(value, input) {
|
|
1658
|
+
const elem = this.element.nativeElement;
|
|
1659
|
+
const classes = getStylingClasses('pager', input, this[input], value);
|
|
1660
|
+
if (classes.toRemove) {
|
|
1661
|
+
this.renderer.removeClass(elem, classes.toRemove);
|
|
1662
|
+
}
|
|
1663
|
+
if (classes.toAdd) {
|
|
1664
|
+
this.renderer.addClass(elem, classes.toAdd);
|
|
1665
|
+
}
|
|
1666
|
+
}
|
|
1477
1667
|
}
|
|
1478
|
-
PagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1479
|
-
PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
1668
|
+
PagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerComponent, deps: [{ token: PagerContextService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: PagerNavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1669
|
+
PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PagerComponent, selector: "kendo-datapager", inputs: { total: "total", skip: "skip", pageSize: "pageSize", buttonCount: "buttonCount", info: "info", type: "type", pageSizeValues: "pageSizeValues", previousNext: "previousNext", navigable: "navigable", size: "size" }, outputs: { pageChange: "pageChange", pageSizeChange: "pageSizeChange" }, host: { listeners: { "focusin": "focusHandler($event)" }, properties: { "class.k-pager": "this.pagerClass", "attr.role": "this.widgetRole", "attr.aria-roledescription": "this.roleDescription", "attr.aria-keyshortcuts": "this.keyShortcuts", "attr.tabindex": "this.hostTabindex", "attr.dir": "this.dir" } }, providers: [
|
|
1480
1670
|
LocalizationService,
|
|
1481
1671
|
PagerContextService,
|
|
1482
1672
|
PagerNavigationService
|
|
@@ -1522,19 +1712,22 @@ PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
1522
1712
|
[ngTemplateOutletContext]="templateContext">
|
|
1523
1713
|
</ng-container>
|
|
1524
1714
|
<ng-container *ngIf="!template?.templateRef">
|
|
1525
|
-
<
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1715
|
+
<div class="k-pager-numbers-wrap">
|
|
1716
|
+
<kendo-datapager-prev-buttons [size]="size" *ngIf="previousNext"></kendo-datapager-prev-buttons>
|
|
1717
|
+
<kendo-datapager-numeric-buttons
|
|
1718
|
+
[size]="size"
|
|
1719
|
+
*ngIf="type === 'numeric' && buttonCount > 0"
|
|
1720
|
+
[buttonCount]="buttonCount">
|
|
1721
|
+
</kendo-datapager-numeric-buttons>
|
|
1722
|
+
<kendo-datapager-input [size]="size" *ngIf="type === 'input'"></kendo-datapager-input>
|
|
1723
|
+
<kendo-datapager-next-buttons [size]="size" *ngIf="previousNext"></kendo-datapager-next-buttons>
|
|
1724
|
+
</div>
|
|
1725
|
+
<kendo-datapager-page-sizes [size]="size" *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>
|
|
1532
1726
|
<kendo-datapager-info *ngIf='info'></kendo-datapager-info>
|
|
1533
|
-
<kendo-datapager-page-sizes *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>
|
|
1534
1727
|
</ng-container>
|
|
1535
1728
|
<kendo-resize-sensor></kendo-resize-sensor>
|
|
1536
|
-
`, isInline: true, components: [{ type: PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons" }, { type: PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons", inputs: ["buttonCount"] }, { type: PagerInputComponent, selector: "kendo-datapager-input" }, { type: PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons"
|
|
1537
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1729
|
+
`, isInline: true, components: [{ type: PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons", inputs: ["size"] }, { type: PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons", inputs: ["buttonCount", "size"] }, { type: PagerInputComponent, selector: "kendo-datapager-input", inputs: ["size"] }, { type: PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons", inputs: ["size"] }, { type: PagerPageSizesComponent, selector: "kendo-datapager-page-sizes", inputs: ["pageSizes", "size"] }, { type: PagerInfoComponent, selector: "kendo-datapager-info" }, { type: i6.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoDataPagerLocalizedMessages]" }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
1730
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerComponent, decorators: [{
|
|
1538
1731
|
type: Component,
|
|
1539
1732
|
args: [{
|
|
1540
1733
|
selector: 'kendo-datapager',
|
|
@@ -1586,15 +1779,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1586
1779
|
[ngTemplateOutletContext]="templateContext">
|
|
1587
1780
|
</ng-container>
|
|
1588
1781
|
<ng-container *ngIf="!template?.templateRef">
|
|
1589
|
-
<
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1782
|
+
<div class="k-pager-numbers-wrap">
|
|
1783
|
+
<kendo-datapager-prev-buttons [size]="size" *ngIf="previousNext"></kendo-datapager-prev-buttons>
|
|
1784
|
+
<kendo-datapager-numeric-buttons
|
|
1785
|
+
[size]="size"
|
|
1786
|
+
*ngIf="type === 'numeric' && buttonCount > 0"
|
|
1787
|
+
[buttonCount]="buttonCount">
|
|
1788
|
+
</kendo-datapager-numeric-buttons>
|
|
1789
|
+
<kendo-datapager-input [size]="size" *ngIf="type === 'input'"></kendo-datapager-input>
|
|
1790
|
+
<kendo-datapager-next-buttons [size]="size" *ngIf="previousNext"></kendo-datapager-next-buttons>
|
|
1791
|
+
</div>
|
|
1792
|
+
<kendo-datapager-page-sizes [size]="size" *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>
|
|
1596
1793
|
<kendo-datapager-info *ngIf='info'></kendo-datapager-info>
|
|
1597
|
-
<kendo-datapager-page-sizes *ngIf="pageSizeValues" [pageSizes]="pageSizeValues"></kendo-datapager-page-sizes>
|
|
1598
1794
|
</ng-container>
|
|
1599
1795
|
<kendo-resize-sensor></kendo-resize-sensor>
|
|
1600
1796
|
`
|
|
@@ -1623,6 +1819,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1623
1819
|
type: Input
|
|
1624
1820
|
}], navigable: [{
|
|
1625
1821
|
type: Input
|
|
1822
|
+
}], size: [{
|
|
1823
|
+
type: Input
|
|
1626
1824
|
}], pageChange: [{
|
|
1627
1825
|
type: Output
|
|
1628
1826
|
}], pageSizeChange: [{
|
|
@@ -1654,6 +1852,7 @@ const importedModules = [
|
|
|
1654
1852
|
CommonModule,
|
|
1655
1853
|
NumericTextBoxModule,
|
|
1656
1854
|
DropDownListModule,
|
|
1855
|
+
ButtonsModule,
|
|
1657
1856
|
EventsModule,
|
|
1658
1857
|
ResizeSensorModule
|
|
1659
1858
|
];
|
|
@@ -1693,8 +1892,8 @@ class PagerModule {
|
|
|
1693
1892
|
];
|
|
1694
1893
|
}
|
|
1695
1894
|
}
|
|
1696
|
-
PagerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1697
|
-
PagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
|
|
1895
|
+
PagerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1896
|
+
PagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerModule, declarations: [PagerComponent,
|
|
1698
1897
|
PagerPrevButtonsComponent,
|
|
1699
1898
|
PagerNextButtonsComponent,
|
|
1700
1899
|
PagerNumericButtonsComponent,
|
|
@@ -1707,6 +1906,7 @@ PagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "1
|
|
|
1707
1906
|
PagerFocusableDirective], imports: [CommonModule,
|
|
1708
1907
|
NumericTextBoxModule,
|
|
1709
1908
|
DropDownListModule,
|
|
1909
|
+
ButtonsModule,
|
|
1710
1910
|
EventsModule,
|
|
1711
1911
|
ResizeSensorModule], exports: [PagerComponent,
|
|
1712
1912
|
PagerPrevButtonsComponent,
|
|
@@ -1719,8 +1919,8 @@ PagerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "1
|
|
|
1719
1919
|
LocalizedMessagesDirective,
|
|
1720
1920
|
CustomMessagesComponent,
|
|
1721
1921
|
PagerFocusableDirective] });
|
|
1722
|
-
PagerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
1723
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1922
|
+
PagerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerModule, providers: [providers], imports: [[...importedModules]] });
|
|
1923
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PagerModule, decorators: [{
|
|
1724
1924
|
type: NgModule,
|
|
1725
1925
|
args: [{
|
|
1726
1926
|
declarations: [INTERNAL_COMPONENTS],
|