@progress/kendo-angular-grid 13.4.0-develop.3 → 13.4.0-develop.5
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/esm2020/package-metadata.mjs +2 -2
- package/esm2020/pager/pager-numeric-buttons.component.mjs +14 -8
- package/esm2020/pager/pager.component.mjs +76 -42
- package/esm2020/rendering/groups-expand.directive.mjs +9 -1
- package/fesm2015/progress-kendo-angular-grid.mjs +395 -349
- package/fesm2020/progress-kendo-angular-grid.mjs +394 -349
- package/package.json +16 -16
- package/pager/pager-numeric-buttons.component.d.ts +2 -1
- package/pager/pager.component.d.ts +5 -1
- package/schematics/ngAdd/index.js +3 -3
|
@@ -3,7 +3,7 @@
|
|
|
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 { InjectionToken, Component, HostBinding, Input, EventEmitter, Injectable, Optional, Inject, Directive, SkipSelf, QueryList, isDevMode, ContentChildren, ContentChild, forwardRef, Host, Output, SecurityContext, HostListener, ChangeDetectionStrategy, ViewChild, ViewChildren, Self, TemplateRef, Pipe, ViewEncapsulation, NgModule } from '@angular/core';
|
|
6
|
+
import { InjectionToken, Component, HostBinding, Input, EventEmitter, Injectable, Optional, Inject, Directive, SkipSelf, QueryList, isDevMode, ContentChildren, ContentChild, forwardRef, Host, Output, SecurityContext, HostListener, ChangeDetectionStrategy, ElementRef, ViewChild, ViewChildren, Self, TemplateRef, Pipe, ViewEncapsulation, NgModule } from '@angular/core';
|
|
7
7
|
import * as i1$1 from '@progress/kendo-angular-common';
|
|
8
8
|
import { isDocumentAvailable, Keys, isPresent as isPresent$1, closest as closest$1, isFocusable as isFocusable$1, anyChanged, isChanged as isChanged$1, KendoInput, guid, hasObservers, ResizeSensorComponent, DraggableModule, EventsModule, ResizeSensorModule } from '@progress/kendo-angular-common';
|
|
9
9
|
import { merge, of, Subject, from, Subscription, interval, fromEvent, zip as zip$1, BehaviorSubject, Observable } from 'rxjs';
|
|
@@ -24,14 +24,14 @@ import { IconsModule } from '@progress/kendo-angular-icons';
|
|
|
24
24
|
import { plusIcon, cancelIcon, lockIcon, unlockIcon, insertMiddleIcon, caretAltLeftIcon, caretAltToLeftIcon, caretAltRightIcon, caretAltToRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterIcon, stickIcon, unstickIcon, setColumnPositionIcon, columnsIcon, maxWidthIcon, displayInlineFlexIcon, slidersIcon, moreVerticalIcon, filterClearIcon, reorderIcon, caretAltDownIcon, minusIcon } from '@progress/kendo-svg-icons';
|
|
25
25
|
import * as i41 from '@progress/kendo-angular-utils';
|
|
26
26
|
import { DragTargetContainerDirective, DropTargetContainerDirective, DragAndDropModule as DragAndDropModule$1 } from '@progress/kendo-angular-utils';
|
|
27
|
-
import * as i4$1 from '@progress/kendo-angular-buttons';
|
|
28
|
-
import { ButtonModule, ChipModule, Button } from '@progress/kendo-angular-buttons';
|
|
29
|
-
import * as i3$1 from '@progress/kendo-angular-inputs';
|
|
30
|
-
import { NumericTextBoxComponent, InputsModule, NumericTextBoxModule } from '@progress/kendo-angular-inputs';
|
|
31
27
|
import * as i1$4 from '@progress/kendo-angular-dropdowns';
|
|
32
28
|
import { DropDownListComponent, DropDownListModule, AutoCompleteModule, DropDownsModule } from '@progress/kendo-angular-dropdowns';
|
|
33
29
|
import * as i5 from '@progress/kendo-angular-label';
|
|
34
30
|
import { LabelModule } from '@progress/kendo-angular-label';
|
|
31
|
+
import * as i4$1 from '@progress/kendo-angular-buttons';
|
|
32
|
+
import { ButtonModule, ChipModule, Button } from '@progress/kendo-angular-buttons';
|
|
33
|
+
import * as i3$1 from '@progress/kendo-angular-inputs';
|
|
34
|
+
import { NumericTextBoxComponent, InputsModule, NumericTextBoxModule } from '@progress/kendo-angular-inputs';
|
|
35
35
|
import * as i4$3 from '@progress/kendo-angular-dateinputs';
|
|
36
36
|
import { DatePickerModule } from '@progress/kendo-angular-dateinputs';
|
|
37
37
|
import * as i16 from '@progress/kendo-angular-layout';
|
|
@@ -4442,8 +4442,8 @@ const packageMetadata = {
|
|
|
4442
4442
|
name: '@progress/kendo-angular-grid',
|
|
4443
4443
|
productName: 'Kendo UI for Angular',
|
|
4444
4444
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
4445
|
-
publishDate:
|
|
4446
|
-
version: '13.4.0-develop.
|
|
4445
|
+
publishDate: 1692699707,
|
|
4446
|
+
version: '13.4.0-develop.5',
|
|
4447
4447
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
4448
4448
|
};
|
|
4449
4449
|
|
|
@@ -7059,23 +7059,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7059
7059
|
type: Input
|
|
7060
7060
|
}] } });
|
|
7061
7061
|
|
|
7062
|
+
// eslint-disable no-access-missing-member
|
|
7062
7063
|
/**
|
|
7063
|
-
* Displays
|
|
7064
|
+
* Displays information about the current page and the total number of records ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
|
|
7064
7065
|
*/
|
|
7065
|
-
class
|
|
7066
|
-
constructor(ctx,
|
|
7066
|
+
class PagerInfoComponent extends PagerElementComponent {
|
|
7067
|
+
constructor(ctx, cd, pagerContext) {
|
|
7067
7068
|
super(ctx, pagerContext, cd);
|
|
7068
|
-
this.
|
|
7069
|
+
this.pagerContext = pagerContext;
|
|
7070
|
+
}
|
|
7071
|
+
/**
|
|
7072
|
+
* @hidden
|
|
7073
|
+
*
|
|
7074
|
+
* @readonly
|
|
7075
|
+
* @type {number}
|
|
7076
|
+
* @memberOf PagerInfoComponent
|
|
7077
|
+
*/
|
|
7078
|
+
get maxItems() {
|
|
7079
|
+
return Math.min(this.currentPage * this.pageSize, this.total);
|
|
7080
|
+
}
|
|
7081
|
+
/**
|
|
7082
|
+
* @hidden
|
|
7083
|
+
*
|
|
7084
|
+
* @readonly
|
|
7085
|
+
* @type {number}
|
|
7086
|
+
* @memberOf PagerInfoComponent
|
|
7087
|
+
*/
|
|
7088
|
+
get currentPageText() {
|
|
7089
|
+
return this.total ?
|
|
7090
|
+
(this.currentPage - 1) * this.pageSize + 1 :
|
|
7091
|
+
0;
|
|
7069
7092
|
}
|
|
7070
7093
|
/**
|
|
7071
7094
|
* @hidden
|
|
7072
7095
|
*
|
|
7073
7096
|
* @readonly
|
|
7074
7097
|
* @type {boolean}
|
|
7075
|
-
* @memberOf
|
|
7098
|
+
* @memberOf PagerInfoComponent
|
|
7076
7099
|
*/
|
|
7077
|
-
get
|
|
7078
|
-
return
|
|
7100
|
+
get classes() {
|
|
7101
|
+
return true;
|
|
7079
7102
|
}
|
|
7080
7103
|
onChanges({ total, skip, pageSize }) {
|
|
7081
7104
|
this.total = total;
|
|
@@ -7084,80 +7107,177 @@ class PagerPrevButtonsComponent extends PagerElementComponent {
|
|
|
7084
7107
|
this.cd.markForCheck();
|
|
7085
7108
|
}
|
|
7086
7109
|
}
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
7095
|
-
|
|
7096
|
-
|
|
7097
|
-
|
|
7098
|
-
|
|
7099
|
-
|
|
7100
|
-
|
|
7101
|
-
|
|
7102
|
-
|
|
7103
|
-
|
|
7104
|
-
|
|
7105
|
-
|
|
7106
|
-
|
|
7107
|
-
|
|
7108
|
-
|
|
7109
|
-
|
|
7110
|
-
|
|
7111
|
-
|
|
7112
|
-
|
|
7113
|
-
|
|
7114
|
-
|
|
7110
|
+
PagerInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7111
|
+
PagerInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerInfoComponent, selector: "kendo-pager-info", host: { properties: { "class.k-pager-info": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7112
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, decorators: [{
|
|
7113
|
+
type: Component,
|
|
7114
|
+
args: [{
|
|
7115
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7116
|
+
selector: 'kendo-pager-info',
|
|
7117
|
+
template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`
|
|
7118
|
+
}]
|
|
7119
|
+
}], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
|
|
7120
|
+
type: HostBinding,
|
|
7121
|
+
args: ["class.k-pager-info"]
|
|
7122
|
+
}, {
|
|
7123
|
+
type: HostBinding,
|
|
7124
|
+
args: ["class.k-label"]
|
|
7125
|
+
}] } });
|
|
7126
|
+
|
|
7127
|
+
/**
|
|
7128
|
+
* @hidden
|
|
7129
|
+
*/
|
|
7130
|
+
class PagerDropDownListDirective {
|
|
7131
|
+
constructor(host) {
|
|
7132
|
+
this.host = host;
|
|
7133
|
+
this.keydownHandler = (e) => {
|
|
7134
|
+
if (e.keyCode === Keys.Escape && this.host.isOpen) {
|
|
7135
|
+
e.stopPropagation();
|
|
7136
|
+
this.host.toggle(false);
|
|
7137
|
+
}
|
|
7138
|
+
};
|
|
7139
|
+
}
|
|
7140
|
+
ngAfterViewInit() {
|
|
7141
|
+
const wrapperElement = this.host.wrapper.nativeElement;
|
|
7142
|
+
wrapperElement.addEventListener('keydown', this.keydownHandler, true);
|
|
7143
|
+
}
|
|
7144
|
+
ngOnDestroy() {
|
|
7145
|
+
this.host.wrapper.nativeElement.removeEventListener('keydown', this.keydownHandler);
|
|
7146
|
+
}
|
|
7147
|
+
}
|
|
7148
|
+
PagerDropDownListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerDropDownListDirective, deps: [{ token: i1$4.DropDownListComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
7149
|
+
PagerDropDownListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]", ngImport: i0 });
|
|
7150
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerDropDownListDirective, decorators: [{
|
|
7151
|
+
type: Directive,
|
|
7152
|
+
args: [{ selector: '[kendoGridPagerDropDown]' }]
|
|
7153
|
+
}], ctorParameters: function () { return [{ type: i1$4.DropDownListComponent }]; } });
|
|
7154
|
+
|
|
7155
|
+
/**
|
|
7156
|
+
* Displays a drop-down list for the page size selection ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
|
|
7157
|
+
*/
|
|
7158
|
+
class PagerPageSizesComponent extends PagerElementComponent {
|
|
7159
|
+
constructor(ctx, cd, pagerContext, navigationService) {
|
|
7160
|
+
super(ctx, pagerContext, cd);
|
|
7161
|
+
this.pagerContext = pagerContext;
|
|
7162
|
+
this.navigationService = navigationService;
|
|
7163
|
+
this._pageSizes = [];
|
|
7164
|
+
}
|
|
7165
|
+
/**
|
|
7166
|
+
* The page sizes collection. Can be an Array of numbers and/or [`PageSizeItem`](slug:api_grid_pagesizeitem) objects
|
|
7167
|
+
* ([see example]({% slug paging_grid %}#toc-pager-templates))
|
|
7168
|
+
*/
|
|
7169
|
+
set pageSizes(pageSizes) {
|
|
7170
|
+
let normalizedItems = [];
|
|
7171
|
+
pageSizes.forEach(item => {
|
|
7172
|
+
if (typeof item === 'number') {
|
|
7173
|
+
normalizedItems.push({
|
|
7174
|
+
text: item.toString(),
|
|
7175
|
+
value: item
|
|
7176
|
+
});
|
|
7177
|
+
}
|
|
7178
|
+
else {
|
|
7179
|
+
normalizedItems.push(item);
|
|
7180
|
+
}
|
|
7181
|
+
});
|
|
7182
|
+
if (this.pageSize && !normalizedItems.some(item => item.value === this.pageSize)) {
|
|
7183
|
+
normalizedItems = [{ text: this.pageSize.toString(), value: this.pageSize }, ...normalizedItems];
|
|
7184
|
+
}
|
|
7185
|
+
this._pageSizes = normalizedItems;
|
|
7186
|
+
}
|
|
7187
|
+
get pageSizes() {
|
|
7188
|
+
return this._pageSizes;
|
|
7189
|
+
}
|
|
7190
|
+
/**
|
|
7191
|
+
* @hidden
|
|
7192
|
+
*
|
|
7193
|
+
* @readonly
|
|
7194
|
+
*/
|
|
7195
|
+
get classes() {
|
|
7196
|
+
return true;
|
|
7197
|
+
}
|
|
7198
|
+
/**
|
|
7199
|
+
* @hidden
|
|
7200
|
+
*
|
|
7201
|
+
* @readonly
|
|
7202
|
+
*/
|
|
7203
|
+
get showInitialPageSize() {
|
|
7204
|
+
return this.pageSizes
|
|
7205
|
+
.filter(item => {
|
|
7206
|
+
if (typeof item.value === 'number') {
|
|
7207
|
+
return item.value === Number(this.pageSize);
|
|
7208
|
+
}
|
|
7209
|
+
return this.total === Number(this.pageSize);
|
|
7210
|
+
})
|
|
7211
|
+
.length === 0;
|
|
7212
|
+
}
|
|
7213
|
+
/**
|
|
7214
|
+
* @hidden
|
|
7215
|
+
*/
|
|
7216
|
+
pageSizeChange(value) {
|
|
7217
|
+
this.pageSize = typeof value === 'number' ? value : this.total;
|
|
7218
|
+
this.pagerContext.changePageSize(this.pageSize);
|
|
7219
|
+
}
|
|
7220
|
+
/**
|
|
7221
|
+
* @hidden
|
|
7222
|
+
*/
|
|
7223
|
+
getValue(page) {
|
|
7224
|
+
return typeof page.value === 'number' ? page.value : this.total;
|
|
7225
|
+
}
|
|
7226
|
+
onChanges({ total, skip, pageSize }) {
|
|
7227
|
+
this.total = total;
|
|
7228
|
+
this.skip = skip;
|
|
7229
|
+
this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
|
|
7230
|
+
this.cd.markForCheck();
|
|
7231
|
+
}
|
|
7232
|
+
}
|
|
7233
|
+
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7234
|
+
PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPageSizesComponent, selector: "kendo-pager-page-sizes", inputs: { pageSizes: "pageSizes" }, host: { properties: { "class.k-pager-sizes": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `
|
|
7235
|
+
<kendo-dropdownlist
|
|
7236
|
+
class="k-dropdown"
|
|
7237
|
+
#dropdownlist
|
|
7115
7238
|
[size]="size"
|
|
7116
|
-
|
|
7117
|
-
[
|
|
7118
|
-
|
|
7119
|
-
|
|
7120
|
-
|
|
7121
|
-
|
|
7239
|
+
kendoGridPagerDropDown
|
|
7240
|
+
[tabindex]="0"
|
|
7241
|
+
kendoGridFocusable
|
|
7242
|
+
[data]="pageSizes"
|
|
7243
|
+
textField="text"
|
|
7244
|
+
valueField="value"
|
|
7245
|
+
[valuePrimitive]="true"
|
|
7246
|
+
[value]="pageSize"
|
|
7247
|
+
(valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
|
|
7248
|
+
<kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
|
|
7249
|
+
`, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["showStickyHeader", "iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "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"] }, { type: i5.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }], directives: [{ type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]" }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7250
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
|
|
7122
7251
|
type: Component,
|
|
7123
7252
|
args: [{
|
|
7124
7253
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7125
|
-
selector: 'kendo-pager-
|
|
7254
|
+
selector: 'kendo-pager-page-sizes',
|
|
7126
7255
|
template: `
|
|
7127
|
-
<
|
|
7128
|
-
|
|
7129
|
-
|
|
7130
|
-
type="button"
|
|
7131
|
-
[title]="textFor('pagerFirstPage')"
|
|
7132
|
-
[attr.aria-label]="textFor('pagerFirstPage')"
|
|
7133
|
-
(click)="currentPage !== 1 ? changePage(0) : false"
|
|
7134
|
-
role="button"
|
|
7135
|
-
[icon]="prevArrowIcons[0]"
|
|
7136
|
-
[svgIcon]="prevArrowSVGIcons[0]"
|
|
7137
|
-
class="k-pager-nav k-pager-first"
|
|
7138
|
-
[disabled]="disabled"
|
|
7139
|
-
fillMode="flat"
|
|
7140
|
-
rounded="none"
|
|
7141
|
-
[size]="size">
|
|
7142
|
-
</button>
|
|
7143
|
-
<button
|
|
7144
|
-
kendoButton
|
|
7145
|
-
[kendoGridFocusable]="!disabled"
|
|
7146
|
-
type="button"
|
|
7147
|
-
class="k-pager-nav"
|
|
7148
|
-
[disabled]="disabled"
|
|
7149
|
-
[icon]="prevArrowIcons[1]"
|
|
7150
|
-
[svgIcon]="prevArrowSVGIcons[1]"
|
|
7151
|
-
fillMode="flat"
|
|
7152
|
-
rounded="none"
|
|
7256
|
+
<kendo-dropdownlist
|
|
7257
|
+
class="k-dropdown"
|
|
7258
|
+
#dropdownlist
|
|
7153
7259
|
[size]="size"
|
|
7154
|
-
|
|
7155
|
-
[
|
|
7156
|
-
|
|
7157
|
-
|
|
7260
|
+
kendoGridPagerDropDown
|
|
7261
|
+
[tabindex]="0"
|
|
7262
|
+
kendoGridFocusable
|
|
7263
|
+
[data]="pageSizes"
|
|
7264
|
+
textField="text"
|
|
7265
|
+
valueField="value"
|
|
7266
|
+
[valuePrimitive]="true"
|
|
7267
|
+
[value]="pageSize"
|
|
7268
|
+
(valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
|
|
7269
|
+
<kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
|
|
7158
7270
|
`
|
|
7159
7271
|
}]
|
|
7160
|
-
}], ctorParameters: function () { return [{ type: ContextService }, { type:
|
|
7272
|
+
}], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: NavigationService }]; }, propDecorators: { pageSizes: [{
|
|
7273
|
+
type: Input
|
|
7274
|
+
}], classes: [{
|
|
7275
|
+
type: HostBinding,
|
|
7276
|
+
args: ['class.k-pager-sizes']
|
|
7277
|
+
}, {
|
|
7278
|
+
type: HostBinding,
|
|
7279
|
+
args: ['class.k-label']
|
|
7280
|
+
}] } });
|
|
7161
7281
|
|
|
7162
7282
|
/**
|
|
7163
7283
|
* Displays numeric buttons to enable navigation between the pages ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
|
|
@@ -7166,7 +7286,6 @@ class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
7166
7286
|
constructor(ctx, cd, pagerContext) {
|
|
7167
7287
|
super(ctx, pagerContext, cd);
|
|
7168
7288
|
this.pagerContext = pagerContext;
|
|
7169
|
-
this.numbersWrapClass = true;
|
|
7170
7289
|
}
|
|
7171
7290
|
/**
|
|
7172
7291
|
* @hidden
|
|
@@ -7236,10 +7355,12 @@ class PagerNumericButtonsComponent extends PagerElementComponent {
|
|
|
7236
7355
|
}
|
|
7237
7356
|
}
|
|
7238
7357
|
PagerNumericButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerNumericButtonsComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7239
|
-
PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: { buttonCount: "buttonCount" },
|
|
7358
|
+
PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: { buttonCount: "buttonCount" }, viewQueries: [{ propertyName: "selectElement", first: true, predicate: ["select"], descendants: true, read: ElementRef }, { propertyName: "numbersElement", first: true, predicate: ["numbers"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: `
|
|
7240
7359
|
<select
|
|
7360
|
+
#select
|
|
7241
7361
|
class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
|
|
7242
7362
|
kendoGridFocusable
|
|
7363
|
+
[style.display]="'none'"
|
|
7243
7364
|
[attr.title]="textFor('selectPage')"
|
|
7244
7365
|
[attr.aria-label]="textFor('selectPage')"
|
|
7245
7366
|
[ngClass]="{
|
|
@@ -7266,7 +7387,7 @@ PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
7266
7387
|
[attr.aria-label]="pageLabel(end + 1)">...
|
|
7267
7388
|
</option>
|
|
7268
7389
|
</select>
|
|
7269
|
-
<div class="k-pager-numbers">
|
|
7390
|
+
<div class="k-pager-numbers" #numbers>
|
|
7270
7391
|
<button *ngIf="start > 1"
|
|
7271
7392
|
type="button"
|
|
7272
7393
|
kendoGridFocusable
|
|
@@ -7316,8 +7437,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7316
7437
|
selector: 'kendo-pager-numeric-buttons',
|
|
7317
7438
|
template: `
|
|
7318
7439
|
<select
|
|
7440
|
+
#select
|
|
7319
7441
|
class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
|
|
7320
7442
|
kendoGridFocusable
|
|
7443
|
+
[style.display]="'none'"
|
|
7321
7444
|
[attr.title]="textFor('selectPage')"
|
|
7322
7445
|
[attr.aria-label]="textFor('selectPage')"
|
|
7323
7446
|
[ngClass]="{
|
|
@@ -7344,7 +7467,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7344
7467
|
[attr.aria-label]="pageLabel(end + 1)">...
|
|
7345
7468
|
</option>
|
|
7346
7469
|
</select>
|
|
7347
|
-
<div class="k-pager-numbers">
|
|
7470
|
+
<div class="k-pager-numbers" #numbers>
|
|
7348
7471
|
<button *ngIf="start > 1"
|
|
7349
7472
|
type="button"
|
|
7350
7473
|
kendoGridFocusable
|
|
@@ -7388,13 +7511,116 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7388
7511
|
</div>
|
|
7389
7512
|
`
|
|
7390
7513
|
}]
|
|
7391
|
-
}], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: {
|
|
7392
|
-
type:
|
|
7393
|
-
args: ['
|
|
7514
|
+
}], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { selectElement: [{
|
|
7515
|
+
type: ViewChild,
|
|
7516
|
+
args: ['select', { read: ElementRef }]
|
|
7517
|
+
}], numbersElement: [{
|
|
7518
|
+
type: ViewChild,
|
|
7519
|
+
args: ['numbers', { read: ElementRef }]
|
|
7394
7520
|
}], buttonCount: [{
|
|
7395
7521
|
type: Input
|
|
7396
7522
|
}] } });
|
|
7397
7523
|
|
|
7524
|
+
/**
|
|
7525
|
+
* Displays buttons for navigating to the first and to the previous page ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
|
|
7526
|
+
*/
|
|
7527
|
+
class PagerPrevButtonsComponent extends PagerElementComponent {
|
|
7528
|
+
constructor(ctx, pagerContext, cd, navigationService) {
|
|
7529
|
+
super(ctx, pagerContext, cd);
|
|
7530
|
+
this.navigationService = navigationService;
|
|
7531
|
+
}
|
|
7532
|
+
/**
|
|
7533
|
+
* @hidden
|
|
7534
|
+
*
|
|
7535
|
+
* @readonly
|
|
7536
|
+
* @type {boolean}
|
|
7537
|
+
* @memberOf PagerPrevButtonsComponent
|
|
7538
|
+
*/
|
|
7539
|
+
get disabled() {
|
|
7540
|
+
return this.currentPage === 1 || !this.total;
|
|
7541
|
+
}
|
|
7542
|
+
onChanges({ total, skip, pageSize }) {
|
|
7543
|
+
this.total = total;
|
|
7544
|
+
this.skip = skip;
|
|
7545
|
+
this.pageSize = pageSize;
|
|
7546
|
+
this.cd.markForCheck();
|
|
7547
|
+
}
|
|
7548
|
+
}
|
|
7549
|
+
PagerPrevButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPrevButtonsComponent, deps: [{ token: ContextService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7550
|
+
PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons", usesInheritance: true, ngImport: i0, template: `
|
|
7551
|
+
<button
|
|
7552
|
+
[kendoGridFocusable]="!disabled"
|
|
7553
|
+
kendoButton
|
|
7554
|
+
type="button"
|
|
7555
|
+
[title]="textFor('pagerFirstPage')"
|
|
7556
|
+
[attr.aria-label]="textFor('pagerFirstPage')"
|
|
7557
|
+
(click)="currentPage !== 1 ? changePage(0) : false"
|
|
7558
|
+
role="button"
|
|
7559
|
+
[icon]="prevArrowIcons[0]"
|
|
7560
|
+
[svgIcon]="prevArrowSVGIcons[0]"
|
|
7561
|
+
class="k-pager-nav k-pager-first"
|
|
7562
|
+
[disabled]="disabled"
|
|
7563
|
+
fillMode="flat"
|
|
7564
|
+
rounded="none"
|
|
7565
|
+
[size]="size">
|
|
7566
|
+
</button>
|
|
7567
|
+
<button
|
|
7568
|
+
kendoButton
|
|
7569
|
+
[kendoGridFocusable]="!disabled"
|
|
7570
|
+
type="button"
|
|
7571
|
+
class="k-pager-nav"
|
|
7572
|
+
[disabled]="disabled"
|
|
7573
|
+
[icon]="prevArrowIcons[1]"
|
|
7574
|
+
[svgIcon]="prevArrowSVGIcons[1]"
|
|
7575
|
+
fillMode="flat"
|
|
7576
|
+
rounded="none"
|
|
7577
|
+
[size]="size"
|
|
7578
|
+
[title]="textFor('pagerPreviousPage')"
|
|
7579
|
+
[attr.aria-label]="textFor('pagerPreviousPage')"
|
|
7580
|
+
(click)="currentPage !== 1 ? changePage(currentPage-2) : false">
|
|
7581
|
+
</button>
|
|
7582
|
+
`, isInline: true, components: [{ type: i4$1.ButtonComponent, 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: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7583
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPrevButtonsComponent, decorators: [{
|
|
7584
|
+
type: Component,
|
|
7585
|
+
args: [{
|
|
7586
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7587
|
+
selector: 'kendo-pager-prev-buttons',
|
|
7588
|
+
template: `
|
|
7589
|
+
<button
|
|
7590
|
+
[kendoGridFocusable]="!disabled"
|
|
7591
|
+
kendoButton
|
|
7592
|
+
type="button"
|
|
7593
|
+
[title]="textFor('pagerFirstPage')"
|
|
7594
|
+
[attr.aria-label]="textFor('pagerFirstPage')"
|
|
7595
|
+
(click)="currentPage !== 1 ? changePage(0) : false"
|
|
7596
|
+
role="button"
|
|
7597
|
+
[icon]="prevArrowIcons[0]"
|
|
7598
|
+
[svgIcon]="prevArrowSVGIcons[0]"
|
|
7599
|
+
class="k-pager-nav k-pager-first"
|
|
7600
|
+
[disabled]="disabled"
|
|
7601
|
+
fillMode="flat"
|
|
7602
|
+
rounded="none"
|
|
7603
|
+
[size]="size">
|
|
7604
|
+
</button>
|
|
7605
|
+
<button
|
|
7606
|
+
kendoButton
|
|
7607
|
+
[kendoGridFocusable]="!disabled"
|
|
7608
|
+
type="button"
|
|
7609
|
+
class="k-pager-nav"
|
|
7610
|
+
[disabled]="disabled"
|
|
7611
|
+
[icon]="prevArrowIcons[1]"
|
|
7612
|
+
[svgIcon]="prevArrowSVGIcons[1]"
|
|
7613
|
+
fillMode="flat"
|
|
7614
|
+
rounded="none"
|
|
7615
|
+
[size]="size"
|
|
7616
|
+
[title]="textFor('pagerPreviousPage')"
|
|
7617
|
+
[attr.aria-label]="textFor('pagerPreviousPage')"
|
|
7618
|
+
(click)="currentPage !== 1 ? changePage(currentPage-2) : false">
|
|
7619
|
+
</button>
|
|
7620
|
+
`
|
|
7621
|
+
}]
|
|
7622
|
+
}], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
|
|
7623
|
+
|
|
7398
7624
|
/**
|
|
7399
7625
|
* @hidden
|
|
7400
7626
|
*/
|
|
@@ -7637,226 +7863,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
7637
7863
|
}]
|
|
7638
7864
|
}], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
|
|
7639
7865
|
|
|
7640
|
-
// eslint-disable no-access-missing-member
|
|
7641
|
-
/**
|
|
7642
|
-
* Displays information about the current page and the total number of records ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
|
|
7643
|
-
*/
|
|
7644
|
-
class PagerInfoComponent extends PagerElementComponent {
|
|
7645
|
-
constructor(ctx, cd, pagerContext) {
|
|
7646
|
-
super(ctx, pagerContext, cd);
|
|
7647
|
-
this.pagerContext = pagerContext;
|
|
7648
|
-
}
|
|
7649
|
-
/**
|
|
7650
|
-
* @hidden
|
|
7651
|
-
*
|
|
7652
|
-
* @readonly
|
|
7653
|
-
* @type {number}
|
|
7654
|
-
* @memberOf PagerInfoComponent
|
|
7655
|
-
*/
|
|
7656
|
-
get maxItems() {
|
|
7657
|
-
return Math.min(this.currentPage * this.pageSize, this.total);
|
|
7658
|
-
}
|
|
7659
|
-
/**
|
|
7660
|
-
* @hidden
|
|
7661
|
-
*
|
|
7662
|
-
* @readonly
|
|
7663
|
-
* @type {number}
|
|
7664
|
-
* @memberOf PagerInfoComponent
|
|
7665
|
-
*/
|
|
7666
|
-
get currentPageText() {
|
|
7667
|
-
return this.total ?
|
|
7668
|
-
(this.currentPage - 1) * this.pageSize + 1 :
|
|
7669
|
-
0;
|
|
7670
|
-
}
|
|
7671
|
-
/**
|
|
7672
|
-
* @hidden
|
|
7673
|
-
*
|
|
7674
|
-
* @readonly
|
|
7675
|
-
* @type {boolean}
|
|
7676
|
-
* @memberOf PagerInfoComponent
|
|
7677
|
-
*/
|
|
7678
|
-
get classes() {
|
|
7679
|
-
return true;
|
|
7680
|
-
}
|
|
7681
|
-
onChanges({ total, skip, pageSize }) {
|
|
7682
|
-
this.total = total;
|
|
7683
|
-
this.skip = skip;
|
|
7684
|
-
this.pageSize = pageSize;
|
|
7685
|
-
this.cd.markForCheck();
|
|
7686
|
-
}
|
|
7687
|
-
}
|
|
7688
|
-
PagerInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7689
|
-
PagerInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerInfoComponent, selector: "kendo-pager-info", host: { properties: { "class.k-pager-info": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7690
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, decorators: [{
|
|
7691
|
-
type: Component,
|
|
7692
|
-
args: [{
|
|
7693
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7694
|
-
selector: 'kendo-pager-info',
|
|
7695
|
-
template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`
|
|
7696
|
-
}]
|
|
7697
|
-
}], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
|
|
7698
|
-
type: HostBinding,
|
|
7699
|
-
args: ["class.k-pager-info"]
|
|
7700
|
-
}, {
|
|
7701
|
-
type: HostBinding,
|
|
7702
|
-
args: ["class.k-label"]
|
|
7703
|
-
}] } });
|
|
7704
|
-
|
|
7705
|
-
/**
|
|
7706
|
-
* @hidden
|
|
7707
|
-
*/
|
|
7708
|
-
class PagerDropDownListDirective {
|
|
7709
|
-
constructor(host) {
|
|
7710
|
-
this.host = host;
|
|
7711
|
-
this.keydownHandler = (e) => {
|
|
7712
|
-
if (e.keyCode === Keys.Escape && this.host.isOpen) {
|
|
7713
|
-
e.stopPropagation();
|
|
7714
|
-
this.host.toggle(false);
|
|
7715
|
-
}
|
|
7716
|
-
};
|
|
7717
|
-
}
|
|
7718
|
-
ngAfterViewInit() {
|
|
7719
|
-
const wrapperElement = this.host.wrapper.nativeElement;
|
|
7720
|
-
wrapperElement.addEventListener('keydown', this.keydownHandler, true);
|
|
7721
|
-
}
|
|
7722
|
-
ngOnDestroy() {
|
|
7723
|
-
this.host.wrapper.nativeElement.removeEventListener('keydown', this.keydownHandler);
|
|
7724
|
-
}
|
|
7725
|
-
}
|
|
7726
|
-
PagerDropDownListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerDropDownListDirective, deps: [{ token: i1$4.DropDownListComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
7727
|
-
PagerDropDownListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]", ngImport: i0 });
|
|
7728
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerDropDownListDirective, decorators: [{
|
|
7729
|
-
type: Directive,
|
|
7730
|
-
args: [{ selector: '[kendoGridPagerDropDown]' }]
|
|
7731
|
-
}], ctorParameters: function () { return [{ type: i1$4.DropDownListComponent }]; } });
|
|
7732
|
-
|
|
7733
|
-
/**
|
|
7734
|
-
* Displays a drop-down list for the page size selection ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
|
|
7735
|
-
*/
|
|
7736
|
-
class PagerPageSizesComponent extends PagerElementComponent {
|
|
7737
|
-
constructor(ctx, cd, pagerContext, navigationService) {
|
|
7738
|
-
super(ctx, pagerContext, cd);
|
|
7739
|
-
this.pagerContext = pagerContext;
|
|
7740
|
-
this.navigationService = navigationService;
|
|
7741
|
-
this._pageSizes = [];
|
|
7742
|
-
}
|
|
7743
|
-
/**
|
|
7744
|
-
* The page sizes collection. Can be an Array of numbers and/or [`PageSizeItem`](slug:api_grid_pagesizeitem) objects
|
|
7745
|
-
* ([see example]({% slug paging_grid %}#toc-pager-templates))
|
|
7746
|
-
*/
|
|
7747
|
-
set pageSizes(pageSizes) {
|
|
7748
|
-
let normalizedItems = [];
|
|
7749
|
-
pageSizes.forEach(item => {
|
|
7750
|
-
if (typeof item === 'number') {
|
|
7751
|
-
normalizedItems.push({
|
|
7752
|
-
text: item.toString(),
|
|
7753
|
-
value: item
|
|
7754
|
-
});
|
|
7755
|
-
}
|
|
7756
|
-
else {
|
|
7757
|
-
normalizedItems.push(item);
|
|
7758
|
-
}
|
|
7759
|
-
});
|
|
7760
|
-
if (this.pageSize && !normalizedItems.some(item => item.value === this.pageSize)) {
|
|
7761
|
-
normalizedItems = [{ text: this.pageSize.toString(), value: this.pageSize }, ...normalizedItems];
|
|
7762
|
-
}
|
|
7763
|
-
this._pageSizes = normalizedItems;
|
|
7764
|
-
}
|
|
7765
|
-
get pageSizes() {
|
|
7766
|
-
return this._pageSizes;
|
|
7767
|
-
}
|
|
7768
|
-
/**
|
|
7769
|
-
* @hidden
|
|
7770
|
-
*
|
|
7771
|
-
* @readonly
|
|
7772
|
-
*/
|
|
7773
|
-
get classes() {
|
|
7774
|
-
return true;
|
|
7775
|
-
}
|
|
7776
|
-
/**
|
|
7777
|
-
* @hidden
|
|
7778
|
-
*
|
|
7779
|
-
* @readonly
|
|
7780
|
-
*/
|
|
7781
|
-
get showInitialPageSize() {
|
|
7782
|
-
return this.pageSizes
|
|
7783
|
-
.filter(item => {
|
|
7784
|
-
if (typeof item.value === 'number') {
|
|
7785
|
-
return item.value === Number(this.pageSize);
|
|
7786
|
-
}
|
|
7787
|
-
return this.total === Number(this.pageSize);
|
|
7788
|
-
})
|
|
7789
|
-
.length === 0;
|
|
7790
|
-
}
|
|
7791
|
-
/**
|
|
7792
|
-
* @hidden
|
|
7793
|
-
*/
|
|
7794
|
-
pageSizeChange(value) {
|
|
7795
|
-
this.pageSize = typeof value === 'number' ? value : this.total;
|
|
7796
|
-
this.pagerContext.changePageSize(this.pageSize);
|
|
7797
|
-
}
|
|
7798
|
-
/**
|
|
7799
|
-
* @hidden
|
|
7800
|
-
*/
|
|
7801
|
-
getValue(page) {
|
|
7802
|
-
return typeof page.value === 'number' ? page.value : this.total;
|
|
7803
|
-
}
|
|
7804
|
-
onChanges({ total, skip, pageSize }) {
|
|
7805
|
-
this.total = total;
|
|
7806
|
-
this.skip = skip;
|
|
7807
|
-
this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
|
|
7808
|
-
this.cd.markForCheck();
|
|
7809
|
-
}
|
|
7810
|
-
}
|
|
7811
|
-
PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7812
|
-
PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPageSizesComponent, selector: "kendo-pager-page-sizes", inputs: { pageSizes: "pageSizes" }, host: { properties: { "class.k-pager-sizes": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `
|
|
7813
|
-
<kendo-dropdownlist
|
|
7814
|
-
class="k-dropdown"
|
|
7815
|
-
#dropdownlist
|
|
7816
|
-
[size]="size"
|
|
7817
|
-
kendoGridPagerDropDown
|
|
7818
|
-
[tabindex]="0"
|
|
7819
|
-
kendoGridFocusable
|
|
7820
|
-
[data]="pageSizes"
|
|
7821
|
-
textField="text"
|
|
7822
|
-
valueField="value"
|
|
7823
|
-
[valuePrimitive]="true"
|
|
7824
|
-
[value]="pageSize"
|
|
7825
|
-
(valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
|
|
7826
|
-
<kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
|
|
7827
|
-
`, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["showStickyHeader", "iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "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"] }, { type: i5.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }], directives: [{ type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]" }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7828
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
|
|
7829
|
-
type: Component,
|
|
7830
|
-
args: [{
|
|
7831
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7832
|
-
selector: 'kendo-pager-page-sizes',
|
|
7833
|
-
template: `
|
|
7834
|
-
<kendo-dropdownlist
|
|
7835
|
-
class="k-dropdown"
|
|
7836
|
-
#dropdownlist
|
|
7837
|
-
[size]="size"
|
|
7838
|
-
kendoGridPagerDropDown
|
|
7839
|
-
[tabindex]="0"
|
|
7840
|
-
kendoGridFocusable
|
|
7841
|
-
[data]="pageSizes"
|
|
7842
|
-
textField="text"
|
|
7843
|
-
valueField="value"
|
|
7844
|
-
[valuePrimitive]="true"
|
|
7845
|
-
[value]="pageSize"
|
|
7846
|
-
(valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
|
|
7847
|
-
<kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
|
|
7848
|
-
`
|
|
7849
|
-
}]
|
|
7850
|
-
}], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: NavigationService }]; }, propDecorators: { pageSizes: [{
|
|
7851
|
-
type: Input
|
|
7852
|
-
}], classes: [{
|
|
7853
|
-
type: HostBinding,
|
|
7854
|
-
args: ['class.k-pager-sizes']
|
|
7855
|
-
}, {
|
|
7856
|
-
type: HostBinding,
|
|
7857
|
-
args: ['class.k-label']
|
|
7858
|
-
}] } });
|
|
7859
|
-
|
|
7860
7866
|
/**
|
|
7861
7867
|
* @hidden
|
|
7862
7868
|
*/
|
|
@@ -7886,18 +7892,33 @@ class PagerComponent {
|
|
|
7886
7892
|
if (this.template || !element) {
|
|
7887
7893
|
return;
|
|
7888
7894
|
}
|
|
7889
|
-
|
|
7890
|
-
|
|
7891
|
-
|
|
7892
|
-
|
|
7893
|
-
|
|
7894
|
-
|
|
7895
|
-
|
|
7896
|
-
|
|
7897
|
-
|
|
7898
|
-
|
|
7899
|
-
|
|
7900
|
-
|
|
7895
|
+
this.zone.runOutsideAngular(() => {
|
|
7896
|
+
setTimeout(() => {
|
|
7897
|
+
const width = element.offsetWidth;
|
|
7898
|
+
if (this.numericButtons) {
|
|
7899
|
+
const selectElement = this.numericButtons.selectElement.nativeElement;
|
|
7900
|
+
const numbersElement = this.numericButtons.numbersElement.nativeElement;
|
|
7901
|
+
this.renderer.removeStyle(numbersElement, 'display');
|
|
7902
|
+
this.renderer.setStyle(selectElement, 'display', 'none');
|
|
7903
|
+
if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
|
|
7904
|
+
this.renderer.removeStyle(selectElement, 'display');
|
|
7905
|
+
this.renderer.setStyle(numbersElement, 'display', 'none');
|
|
7906
|
+
}
|
|
7907
|
+
}
|
|
7908
|
+
if (this.pagerInfo) {
|
|
7909
|
+
this.renderer.removeStyle(this.pagerInfo.nativeElement, 'display');
|
|
7910
|
+
if (width < RESPONSIVE_BREAKPOINT_LARGE) {
|
|
7911
|
+
this.renderer.setStyle(this.pagerInfo.nativeElement, 'display', 'none');
|
|
7912
|
+
}
|
|
7913
|
+
}
|
|
7914
|
+
if (this.pagerPageSizes) {
|
|
7915
|
+
this.renderer.removeStyle(this.pagerPageSizes.nativeElement, 'display');
|
|
7916
|
+
if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
|
|
7917
|
+
this.renderer.setStyle(this.pagerPageSizes.nativeElement, 'display', 'none');
|
|
7918
|
+
}
|
|
7919
|
+
}
|
|
7920
|
+
});
|
|
7921
|
+
});
|
|
7901
7922
|
};
|
|
7902
7923
|
}
|
|
7903
7924
|
set options(value) {
|
|
@@ -8016,12 +8037,10 @@ class PagerComponent {
|
|
|
8016
8037
|
}
|
|
8017
8038
|
const changesInTemplate = changes['template'];
|
|
8018
8039
|
if (changesInTemplate) {
|
|
8019
|
-
|
|
8020
|
-
changesInTemplate.currentValue ? this.clearResponsiveClasses() : this.resizeHandler();
|
|
8040
|
+
changesInTemplate.currentValue ? this.clearResponsiveStyling() : this.resizeHandler();
|
|
8021
8041
|
}
|
|
8022
8042
|
if (changes['options']) {
|
|
8023
|
-
|
|
8024
|
-
this.settings.responsive ? this.resizeHandler() : this.clearResponsiveClasses();
|
|
8043
|
+
this.settings.responsive ? this.resizeHandler() : this.clearResponsiveStyling();
|
|
8025
8044
|
}
|
|
8026
8045
|
}
|
|
8027
8046
|
ngOnDestroy() {
|
|
@@ -8047,11 +8066,6 @@ class PagerComponent {
|
|
|
8047
8066
|
}
|
|
8048
8067
|
});
|
|
8049
8068
|
}
|
|
8050
|
-
clearResponsiveClasses() {
|
|
8051
|
-
const element = this.element.nativeElement;
|
|
8052
|
-
this.renderer.removeClass(element, 'k-pager-mobile-sm');
|
|
8053
|
-
this.renderer.removeClass(element, 'k-pager-mobile-md');
|
|
8054
|
-
}
|
|
8055
8069
|
shouldTriggerPageChange(target, condition) {
|
|
8056
8070
|
return this.navigationService.pagerEnabled &&
|
|
8057
8071
|
target === this.element.nativeElement &&
|
|
@@ -8074,6 +8088,18 @@ class PagerComponent {
|
|
|
8074
8088
|
this.cellContext.focusGroup = this.focusGroup;
|
|
8075
8089
|
}
|
|
8076
8090
|
}
|
|
8091
|
+
clearResponsiveStyling() {
|
|
8092
|
+
this.zone.runOutsideAngular(() => {
|
|
8093
|
+
setTimeout(() => {
|
|
8094
|
+
if (this.numericButtons) {
|
|
8095
|
+
this.renderer.removeStyle(this.numericButtons.numbersElement.nativeElement, 'display');
|
|
8096
|
+
this.renderer.setStyle(this.numericButtons.selectElement.nativeElement, 'display', 'none');
|
|
8097
|
+
}
|
|
8098
|
+
this.pagerInfo && this.renderer.removeStyle(this.pagerInfo.nativeElement, 'display');
|
|
8099
|
+
this.pagerPageSizes && this.renderer.removeStyle(this.pagerPageSizes.nativeElement, 'display');
|
|
8100
|
+
});
|
|
8101
|
+
});
|
|
8102
|
+
}
|
|
8077
8103
|
}
|
|
8078
8104
|
PagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerComponent, deps: [{ token: PagerContextService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: ContextService }, { token: CELL_CONTEXT, optional: true }, { token: FocusRoot }, { token: FocusGroup }], target: i0.ɵɵFactoryTarget.Component });
|
|
8079
8105
|
PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerComponent, selector: "kendo-pager", inputs: { total: "total", skip: "skip", pageSize: "pageSize", options: "options", size: "size", template: "template" }, outputs: { pageChange: "pageChange" }, host: { listeners: { "focusin": "onFocusIn($event)", "focusout": "onFocusOut()", "keydown.escape": "onEscape()", "keydown.enter": "onEnter($event)", "keydown.arrowleft": "navigateToPreviousPage($event)", "keydown.pageup": "navigateToPreviousPage($event)", "keydown.arrowright": "navigateToNextPage($event)", "keydown.pagedown": "navigateToNextPage($event)", "keydown.home": "navigateToFirstPage($event)", "keydown.end": "navigateToLastPage($event)" }, properties: { "class.k-pager-wrap": "this.pagerWrapClass", "class.k-grid-pager": "this.gridPagerClass", "class.k-pager-sm": "this.sizeSmallClass", "class.k-pager-md": "this.sizeMediumClass", "class.k-focus": "this.isFocused", "attr.aria-label": "this.pagerAriaLabel" } }, providers: [{
|
|
@@ -8087,7 +8113,7 @@ PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
8087
8113
|
provide: FocusGroup,
|
|
8088
8114
|
deps: [FocusRoot],
|
|
8089
8115
|
useClass: FocusGroup
|
|
8090
|
-
}], usesOnChanges: true, ngImport: i0, template: `
|
|
8116
|
+
}], viewQueries: [{ propertyName: "pagerInfo", first: true, predicate: PagerInfoComponent, descendants: true, read: ElementRef }, { propertyName: "pagerPageSizes", first: true, predicate: PagerPageSizesComponent, descendants: true, read: ElementRef }, { propertyName: "numericButtons", first: true, predicate: PagerNumericButtonsComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
8091
8117
|
<div
|
|
8092
8118
|
*ngIf="navigationService.pagerEnabled"
|
|
8093
8119
|
class="k-sr-only"
|
|
@@ -8101,20 +8127,21 @@ PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
|
|
|
8101
8127
|
[ngTemplateOutletContext]="templateContext">
|
|
8102
8128
|
</ng-container>
|
|
8103
8129
|
<ng-container *ngIf="!template?.templateRef">
|
|
8104
|
-
<
|
|
8105
|
-
|
|
8106
|
-
|
|
8107
|
-
|
|
8108
|
-
|
|
8109
|
-
|
|
8110
|
-
|
|
8111
|
-
|
|
8130
|
+
<div class="k-pager-numbers-wrap">
|
|
8131
|
+
<kendo-pager-prev-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-prev-buttons>
|
|
8132
|
+
<kendo-pager-numeric-buttons
|
|
8133
|
+
[size]="size"
|
|
8134
|
+
*ngIf="settings.type === 'numeric'"
|
|
8135
|
+
[buttonCount]="settings.buttonCount">
|
|
8136
|
+
</kendo-pager-numeric-buttons>
|
|
8137
|
+
<kendo-pager-input [size]="size" *ngIf="settings.type === 'input'"></kendo-pager-input>
|
|
8138
|
+
<kendo-pager-next-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-next-buttons>
|
|
8139
|
+
</div>
|
|
8112
8140
|
<kendo-pager-info *ngIf='settings.info'></kendo-pager-info>
|
|
8113
8141
|
<kendo-pager-page-sizes
|
|
8114
8142
|
[size]="size"
|
|
8115
8143
|
*ngIf="settings.pageSizes"
|
|
8116
8144
|
[pageSizes]="$any(settings.pageSizes)"
|
|
8117
|
-
#pageSizes
|
|
8118
8145
|
></kendo-pager-page-sizes>
|
|
8119
8146
|
</ng-container>
|
|
8120
8147
|
<div
|
|
@@ -8156,20 +8183,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
8156
8183
|
[ngTemplateOutletContext]="templateContext">
|
|
8157
8184
|
</ng-container>
|
|
8158
8185
|
<ng-container *ngIf="!template?.templateRef">
|
|
8159
|
-
<
|
|
8160
|
-
|
|
8161
|
-
|
|
8162
|
-
|
|
8163
|
-
|
|
8164
|
-
|
|
8165
|
-
|
|
8166
|
-
|
|
8186
|
+
<div class="k-pager-numbers-wrap">
|
|
8187
|
+
<kendo-pager-prev-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-prev-buttons>
|
|
8188
|
+
<kendo-pager-numeric-buttons
|
|
8189
|
+
[size]="size"
|
|
8190
|
+
*ngIf="settings.type === 'numeric'"
|
|
8191
|
+
[buttonCount]="settings.buttonCount">
|
|
8192
|
+
</kendo-pager-numeric-buttons>
|
|
8193
|
+
<kendo-pager-input [size]="size" *ngIf="settings.type === 'input'"></kendo-pager-input>
|
|
8194
|
+
<kendo-pager-next-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-next-buttons>
|
|
8195
|
+
</div>
|
|
8167
8196
|
<kendo-pager-info *ngIf='settings.info'></kendo-pager-info>
|
|
8168
8197
|
<kendo-pager-page-sizes
|
|
8169
8198
|
[size]="size"
|
|
8170
8199
|
*ngIf="settings.pageSizes"
|
|
8171
8200
|
[pageSizes]="$any(settings.pageSizes)"
|
|
8172
|
-
#pageSizes
|
|
8173
8201
|
></kendo-pager-page-sizes>
|
|
8174
8202
|
</ng-container>
|
|
8175
8203
|
<div
|
|
@@ -8187,7 +8215,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
8187
8215
|
}, {
|
|
8188
8216
|
type: Inject,
|
|
8189
8217
|
args: [CELL_CONTEXT]
|
|
8190
|
-
}] }, { type: FocusRoot }, { type: FocusGroup }]; }, propDecorators: {
|
|
8218
|
+
}] }, { type: FocusRoot }, { type: FocusGroup }]; }, propDecorators: { pagerInfo: [{
|
|
8219
|
+
type: ViewChild,
|
|
8220
|
+
args: [PagerInfoComponent, { read: ElementRef }]
|
|
8221
|
+
}], pagerPageSizes: [{
|
|
8222
|
+
type: ViewChild,
|
|
8223
|
+
args: [PagerPageSizesComponent, { read: ElementRef }]
|
|
8224
|
+
}], numericButtons: [{
|
|
8225
|
+
type: ViewChild,
|
|
8226
|
+
args: [PagerNumericButtonsComponent]
|
|
8227
|
+
}], total: [{
|
|
8191
8228
|
type: Input
|
|
8192
8229
|
}], skip: [{
|
|
8193
8230
|
type: Input
|
|
@@ -22850,7 +22887,15 @@ class ExpandGroupDirective {
|
|
|
22850
22887
|
this.expandedGroupKeys.push(key);
|
|
22851
22888
|
}
|
|
22852
22889
|
else {
|
|
22853
|
-
const index = this.expandedGroupKeys.
|
|
22890
|
+
const index = this.expandedGroupKeys.findIndex(group => {
|
|
22891
|
+
if (this.expandGroupBy) {
|
|
22892
|
+
return group === key;
|
|
22893
|
+
}
|
|
22894
|
+
else if (key.parentGroupKeys?.length === 0) {
|
|
22895
|
+
return group.value === key.value;
|
|
22896
|
+
}
|
|
22897
|
+
return JSON.stringify(group) === JSON.stringify(key);
|
|
22898
|
+
});
|
|
22854
22899
|
this.expandedGroupKeys.splice(index, 1);
|
|
22855
22900
|
}
|
|
22856
22901
|
this.expandedGroupKeysChange.emit(this.expandedGroupKeys.slice());
|