@progress/kendo-angular-grid 13.4.0-develop.2 → 13.4.0-develop.4

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.
@@ -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, Directive, Optional, QueryList, isDevMode, ContentChildren, ContentChild, forwardRef, SkipSelf, Host, Inject, Output, SecurityContext, HostListener, ChangeDetectionStrategy, ViewChild, ViewChildren, Self, TemplateRef, Pipe, ViewEncapsulation, NgModule } from '@angular/core';
6
+ import { InjectionToken, Component, HostBinding, Input, EventEmitter, Injectable, Directive, Optional, QueryList, isDevMode, ContentChildren, ContentChild, forwardRef, SkipSelf, Host, Inject, 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 * as i3 from '@progress/kendo-angular-icons';
24
24
  import { IconsModule } from '@progress/kendo-angular-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';
@@ -4474,8 +4474,8 @@ const packageMetadata = {
4474
4474
  name: '@progress/kendo-angular-grid',
4475
4475
  productName: 'Kendo UI for Angular',
4476
4476
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
4477
- publishDate: 1692303317,
4478
- version: '13.4.0-develop.2',
4477
+ publishDate: 1692620937,
4478
+ version: '13.4.0-develop.4',
4479
4479
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
4480
4480
  };
4481
4481
 
@@ -7105,23 +7105,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7105
7105
  type: Input
7106
7106
  }] } });
7107
7107
 
7108
+ // eslint-disable no-access-missing-member
7108
7109
  /**
7109
- * Displays buttons for navigating to the first and to the previous page ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7110
+ * Displays information about the current page and the total number of records ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7110
7111
  */
7111
- class PagerPrevButtonsComponent extends PagerElementComponent {
7112
- constructor(ctx, pagerContext, cd, navigationService) {
7112
+ class PagerInfoComponent extends PagerElementComponent {
7113
+ constructor(ctx, cd, pagerContext) {
7113
7114
  super(ctx, pagerContext, cd);
7114
- this.navigationService = navigationService;
7115
+ this.pagerContext = pagerContext;
7116
+ }
7117
+ /**
7118
+ * @hidden
7119
+ *
7120
+ * @readonly
7121
+ * @type {number}
7122
+ * @memberOf PagerInfoComponent
7123
+ */
7124
+ get maxItems() {
7125
+ return Math.min(this.currentPage * this.pageSize, this.total);
7126
+ }
7127
+ /**
7128
+ * @hidden
7129
+ *
7130
+ * @readonly
7131
+ * @type {number}
7132
+ * @memberOf PagerInfoComponent
7133
+ */
7134
+ get currentPageText() {
7135
+ return this.total ?
7136
+ (this.currentPage - 1) * this.pageSize + 1 :
7137
+ 0;
7115
7138
  }
7116
7139
  /**
7117
7140
  * @hidden
7118
7141
  *
7119
7142
  * @readonly
7120
7143
  * @type {boolean}
7121
- * @memberOf PagerPrevButtonsComponent
7144
+ * @memberOf PagerInfoComponent
7122
7145
  */
7123
- get disabled() {
7124
- return this.currentPage === 1 || !this.total;
7146
+ get classes() {
7147
+ return true;
7125
7148
  }
7126
7149
  onChanges({ total, skip, pageSize }) {
7127
7150
  this.total = total;
@@ -7130,168 +7153,266 @@ class PagerPrevButtonsComponent extends PagerElementComponent {
7130
7153
  this.cd.markForCheck();
7131
7154
  }
7132
7155
  }
7133
- 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 });
7134
- PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons", usesInheritance: true, ngImport: i0, template: `
7135
- <button
7136
- [kendoGridFocusable]="!disabled"
7137
- kendoButton
7138
- type="button"
7139
- [title]="textFor('pagerFirstPage')"
7140
- [attr.aria-label]="textFor('pagerFirstPage')"
7141
- (click)="currentPage !== 1 ? changePage(0) : false"
7142
- role="button"
7143
- [icon]="prevArrowIcons[0]"
7144
- [svgIcon]="prevArrowSVGIcons[0]"
7145
- class="k-pager-nav k-pager-first"
7146
- [disabled]="disabled"
7147
- fillMode="flat"
7148
- rounded="none"
7149
- [size]="size">
7150
- </button>
7151
- <button
7152
- kendoButton
7153
- [kendoGridFocusable]="!disabled"
7154
- type="button"
7155
- class="k-pager-nav"
7156
- [disabled]="disabled"
7157
- [icon]="prevArrowIcons[1]"
7158
- [svgIcon]="prevArrowSVGIcons[1]"
7159
- fillMode="flat"
7160
- rounded="none"
7161
- [size]="size"
7162
- [title]="textFor('pagerPreviousPage')"
7163
- [attr.aria-label]="textFor('pagerPreviousPage')"
7164
- (click)="currentPage !== 1 ? changePage(currentPage-2) : false">
7165
- </button>
7166
- `, 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 });
7167
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPrevButtonsComponent, decorators: [{
7156
+ 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 });
7157
+ 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 });
7158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, decorators: [{
7168
7159
  type: Component,
7169
7160
  args: [{
7170
7161
  changeDetection: ChangeDetectionStrategy.OnPush,
7171
- selector: 'kendo-pager-prev-buttons',
7172
- template: `
7173
- <button
7174
- [kendoGridFocusable]="!disabled"
7175
- kendoButton
7176
- type="button"
7177
- [title]="textFor('pagerFirstPage')"
7178
- [attr.aria-label]="textFor('pagerFirstPage')"
7179
- (click)="currentPage !== 1 ? changePage(0) : false"
7180
- role="button"
7181
- [icon]="prevArrowIcons[0]"
7182
- [svgIcon]="prevArrowSVGIcons[0]"
7183
- class="k-pager-nav k-pager-first"
7184
- [disabled]="disabled"
7185
- fillMode="flat"
7186
- rounded="none"
7187
- [size]="size">
7188
- </button>
7189
- <button
7190
- kendoButton
7191
- [kendoGridFocusable]="!disabled"
7192
- type="button"
7193
- class="k-pager-nav"
7194
- [disabled]="disabled"
7195
- [icon]="prevArrowIcons[1]"
7196
- [svgIcon]="prevArrowSVGIcons[1]"
7197
- fillMode="flat"
7198
- rounded="none"
7199
- [size]="size"
7200
- [title]="textFor('pagerPreviousPage')"
7201
- [attr.aria-label]="textFor('pagerPreviousPage')"
7202
- (click)="currentPage !== 1 ? changePage(currentPage-2) : false">
7203
- </button>
7204
- `
7162
+ selector: 'kendo-pager-info',
7163
+ template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`
7205
7164
  }]
7206
- }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
7165
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
7166
+ type: HostBinding,
7167
+ args: ["class.k-pager-info"]
7168
+ }, {
7169
+ type: HostBinding,
7170
+ args: ["class.k-label"]
7171
+ }] } });
7207
7172
 
7208
7173
  /**
7209
- * Displays numeric buttons to enable navigation between the pages ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7174
+ * @hidden
7210
7175
  */
7211
- class PagerNumericButtonsComponent extends PagerElementComponent {
7212
- constructor(ctx, cd, pagerContext) {
7176
+ class PagerDropDownListDirective {
7177
+ constructor(host) {
7178
+ this.host = host;
7179
+ this.keydownHandler = (e) => {
7180
+ if (e.keyCode === Keys.Escape && this.host.isOpen) {
7181
+ e.stopPropagation();
7182
+ this.host.toggle(false);
7183
+ }
7184
+ };
7185
+ }
7186
+ ngAfterViewInit() {
7187
+ const wrapperElement = this.host.wrapper.nativeElement;
7188
+ wrapperElement.addEventListener('keydown', this.keydownHandler, true);
7189
+ }
7190
+ ngOnDestroy() {
7191
+ this.host.wrapper.nativeElement.removeEventListener('keydown', this.keydownHandler);
7192
+ }
7193
+ }
7194
+ 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 });
7195
+ PagerDropDownListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]", ngImport: i0 });
7196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerDropDownListDirective, decorators: [{
7197
+ type: Directive,
7198
+ args: [{ selector: '[kendoGridPagerDropDown]' }]
7199
+ }], ctorParameters: function () { return [{ type: i1$4.DropDownListComponent }]; } });
7200
+
7201
+ /**
7202
+ * Displays a drop-down list for the page size selection ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7203
+ */
7204
+ class PagerPageSizesComponent extends PagerElementComponent {
7205
+ constructor(ctx, cd, pagerContext, navigationService) {
7213
7206
  super(ctx, pagerContext, cd);
7214
7207
  this.pagerContext = pagerContext;
7215
- this.numbersWrapClass = true;
7208
+ this.navigationService = navigationService;
7209
+ this._pageSizes = [];
7216
7210
  }
7217
7211
  /**
7218
- * @hidden
7219
- *
7220
- * @readonly
7221
- * @type {number[]}
7222
- * @memberOf PagerNumericButtonsComponent
7212
+ * The page sizes collection. Can be an Array of numbers and/or [`PageSizeItem`](slug:api_grid_pagesizeitem) objects
7213
+ * ([see example]({% slug paging_grid %}#toc-pager-templates))
7223
7214
  */
7224
- get buttons() {
7225
- const result = [];
7226
- for (let idx = this.start; idx <= this.end; idx++) {
7227
- result.push(idx);
7215
+ set pageSizes(pageSizes) {
7216
+ let normalizedItems = [];
7217
+ pageSizes.forEach(item => {
7218
+ if (typeof item === 'number') {
7219
+ normalizedItems.push({
7220
+ text: item.toString(),
7221
+ value: item
7222
+ });
7223
+ }
7224
+ else {
7225
+ normalizedItems.push(item);
7226
+ }
7227
+ });
7228
+ if (this.pageSize && !normalizedItems.some(item => item.value === this.pageSize)) {
7229
+ normalizedItems = [{ text: this.pageSize.toString(), value: this.pageSize }, ...normalizedItems];
7228
7230
  }
7229
- return result;
7231
+ this._pageSizes = normalizedItems;
7232
+ }
7233
+ get pageSizes() {
7234
+ return this._pageSizes;
7230
7235
  }
7231
7236
  /**
7232
7237
  * @hidden
7238
+ *
7239
+ * @readonly
7233
7240
  */
7234
- get end() {
7235
- return Math.min((this.start + this.buttonCount) - 1, this.totalPages);
7241
+ get classes() {
7242
+ return true;
7236
7243
  }
7237
7244
  /**
7238
7245
  * @hidden
7246
+ *
7247
+ * @readonly
7239
7248
  */
7240
- get start() {
7241
- const page = this.currentPage;
7242
- const buttonCount = this.buttonCount;
7243
- if (page > buttonCount) {
7244
- const reminder = (page % buttonCount);
7245
- return (reminder === 0) ? (page - buttonCount) + 1 : (page - reminder) + 1;
7246
- }
7247
- return 1;
7249
+ get showInitialPageSize() {
7250
+ return this.pageSizes
7251
+ .filter(item => {
7252
+ if (typeof item.value === 'number') {
7253
+ return item.value === Number(this.pageSize);
7254
+ }
7255
+ return this.total === Number(this.pageSize);
7256
+ })
7257
+ .length === 0;
7248
7258
  }
7249
7259
  /**
7250
7260
  * @hidden
7251
7261
  */
7252
- pageLabel(num) {
7253
- const pageText = this.textFor('pagerPage');
7254
- if (pageText) {
7255
- return pageText + ' ' + num;
7256
- }
7257
- return num.toString();
7262
+ pageSizeChange(value) {
7263
+ this.pageSize = typeof value === 'number' ? value : this.total;
7264
+ this.pagerContext.changePageSize(this.pageSize);
7258
7265
  }
7259
7266
  /**
7260
7267
  * @hidden
7261
7268
  */
7262
- onSelectChange(e) {
7263
- const target = e.target;
7264
- const valueAsNumber = Number(target.value);
7265
- if (!Number.isNaN(valueAsNumber)) {
7266
- this.changePage(valueAsNumber - 1);
7267
- }
7268
- else {
7269
- if (target.value === 'previousButtons') {
7270
- this.changePage(this.start - 2);
7271
- }
7272
- else {
7273
- this.changePage(this.end);
7274
- }
7275
- }
7269
+ getValue(page) {
7270
+ return typeof page.value === 'number' ? page.value : this.total;
7276
7271
  }
7277
7272
  onChanges({ total, skip, pageSize }) {
7278
7273
  this.total = total;
7279
7274
  this.skip = skip;
7280
- this.pageSize = pageSize;
7275
+ this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
7281
7276
  this.cd.markForCheck();
7282
7277
  }
7283
7278
  }
7284
- 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 });
7285
- PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: { buttonCount: "buttonCount" }, host: { properties: { "class.k-pager-numbers-wrap": "this.numbersWrapClass" } }, usesInheritance: true, ngImport: i0, template: `
7286
- <select
7287
- class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
7288
- kendoGridFocusable
7289
- [attr.title]="textFor('selectPage')"
7290
- [attr.aria-label]="textFor('selectPage')"
7291
- [ngClass]="{
7292
- 'k-picker-sm': size === 'small',
7293
- 'k-picker-md': size === 'medium' || !size
7294
- }"
7279
+ 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 });
7280
+ 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: `
7281
+ <kendo-dropdownlist
7282
+ class="k-dropdown"
7283
+ #dropdownlist
7284
+ [size]="size"
7285
+ kendoGridPagerDropDown
7286
+ [tabindex]="0"
7287
+ kendoGridFocusable
7288
+ [data]="pageSizes"
7289
+ textField="text"
7290
+ valueField="value"
7291
+ [valuePrimitive]="true"
7292
+ [value]="pageSize"
7293
+ (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
7294
+ <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
7295
+ `, 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 });
7296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
7297
+ type: Component,
7298
+ args: [{
7299
+ changeDetection: ChangeDetectionStrategy.OnPush,
7300
+ selector: 'kendo-pager-page-sizes',
7301
+ template: `
7302
+ <kendo-dropdownlist
7303
+ class="k-dropdown"
7304
+ #dropdownlist
7305
+ [size]="size"
7306
+ kendoGridPagerDropDown
7307
+ [tabindex]="0"
7308
+ kendoGridFocusable
7309
+ [data]="pageSizes"
7310
+ textField="text"
7311
+ valueField="value"
7312
+ [valuePrimitive]="true"
7313
+ [value]="pageSize"
7314
+ (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
7315
+ <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
7316
+ `
7317
+ }]
7318
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: NavigationService }]; }, propDecorators: { pageSizes: [{
7319
+ type: Input
7320
+ }], classes: [{
7321
+ type: HostBinding,
7322
+ args: ['class.k-pager-sizes']
7323
+ }, {
7324
+ type: HostBinding,
7325
+ args: ['class.k-label']
7326
+ }] } });
7327
+
7328
+ /**
7329
+ * Displays numeric buttons to enable navigation between the pages ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7330
+ */
7331
+ class PagerNumericButtonsComponent extends PagerElementComponent {
7332
+ constructor(ctx, cd, pagerContext) {
7333
+ super(ctx, pagerContext, cd);
7334
+ this.pagerContext = pagerContext;
7335
+ }
7336
+ /**
7337
+ * @hidden
7338
+ *
7339
+ * @readonly
7340
+ * @type {number[]}
7341
+ * @memberOf PagerNumericButtonsComponent
7342
+ */
7343
+ get buttons() {
7344
+ const result = [];
7345
+ for (let idx = this.start; idx <= this.end; idx++) {
7346
+ result.push(idx);
7347
+ }
7348
+ return result;
7349
+ }
7350
+ /**
7351
+ * @hidden
7352
+ */
7353
+ get end() {
7354
+ return Math.min((this.start + this.buttonCount) - 1, this.totalPages);
7355
+ }
7356
+ /**
7357
+ * @hidden
7358
+ */
7359
+ get start() {
7360
+ const page = this.currentPage;
7361
+ const buttonCount = this.buttonCount;
7362
+ if (page > buttonCount) {
7363
+ const reminder = (page % buttonCount);
7364
+ return (reminder === 0) ? (page - buttonCount) + 1 : (page - reminder) + 1;
7365
+ }
7366
+ return 1;
7367
+ }
7368
+ /**
7369
+ * @hidden
7370
+ */
7371
+ pageLabel(num) {
7372
+ const pageText = this.textFor('pagerPage');
7373
+ if (pageText) {
7374
+ return pageText + ' ' + num;
7375
+ }
7376
+ return num.toString();
7377
+ }
7378
+ /**
7379
+ * @hidden
7380
+ */
7381
+ onSelectChange(e) {
7382
+ const target = e.target;
7383
+ const valueAsNumber = Number(target.value);
7384
+ if (!Number.isNaN(valueAsNumber)) {
7385
+ this.changePage(valueAsNumber - 1);
7386
+ }
7387
+ else {
7388
+ if (target.value === 'previousButtons') {
7389
+ this.changePage(this.start - 2);
7390
+ }
7391
+ else {
7392
+ this.changePage(this.end);
7393
+ }
7394
+ }
7395
+ }
7396
+ onChanges({ total, skip, pageSize }) {
7397
+ this.total = total;
7398
+ this.skip = skip;
7399
+ this.pageSize = pageSize;
7400
+ this.cd.markForCheck();
7401
+ }
7402
+ }
7403
+ 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 });
7404
+ 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: `
7405
+ <select
7406
+ #select
7407
+ class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
7408
+ kendoGridFocusable
7409
+ [style.display]="'none'"
7410
+ [attr.title]="textFor('selectPage')"
7411
+ [attr.aria-label]="textFor('selectPage')"
7412
+ [ngClass]="{
7413
+ 'k-picker-sm': size === 'small',
7414
+ 'k-picker-md': size === 'medium' || !size
7415
+ }"
7295
7416
  (change)="onSelectChange($event)">
7296
7417
  <option *ngIf="start > 1"
7297
7418
  value="previousButtons"
@@ -7312,7 +7433,7 @@ PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
7312
7433
  [attr.aria-label]="pageLabel(end + 1)">...
7313
7434
  </option>
7314
7435
  </select>
7315
- <div class="k-pager-numbers">
7436
+ <div class="k-pager-numbers" #numbers>
7316
7437
  <button *ngIf="start > 1"
7317
7438
  type="button"
7318
7439
  kendoGridFocusable
@@ -7362,8 +7483,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7362
7483
  selector: 'kendo-pager-numeric-buttons',
7363
7484
  template: `
7364
7485
  <select
7486
+ #select
7365
7487
  class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
7366
7488
  kendoGridFocusable
7489
+ [style.display]="'none'"
7367
7490
  [attr.title]="textFor('selectPage')"
7368
7491
  [attr.aria-label]="textFor('selectPage')"
7369
7492
  [ngClass]="{
@@ -7390,7 +7513,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7390
7513
  [attr.aria-label]="pageLabel(end + 1)">...
7391
7514
  </option>
7392
7515
  </select>
7393
- <div class="k-pager-numbers">
7516
+ <div class="k-pager-numbers" #numbers>
7394
7517
  <button *ngIf="start > 1"
7395
7518
  type="button"
7396
7519
  kendoGridFocusable
@@ -7434,13 +7557,116 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7434
7557
  </div>
7435
7558
  `
7436
7559
  }]
7437
- }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { numbersWrapClass: [{
7438
- type: HostBinding,
7439
- args: ['class.k-pager-numbers-wrap']
7560
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { selectElement: [{
7561
+ type: ViewChild,
7562
+ args: ['select', { read: ElementRef }]
7563
+ }], numbersElement: [{
7564
+ type: ViewChild,
7565
+ args: ['numbers', { read: ElementRef }]
7440
7566
  }], buttonCount: [{
7441
7567
  type: Input
7442
7568
  }] } });
7443
7569
 
7570
+ /**
7571
+ * Displays buttons for navigating to the first and to the previous page ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7572
+ */
7573
+ class PagerPrevButtonsComponent extends PagerElementComponent {
7574
+ constructor(ctx, pagerContext, cd, navigationService) {
7575
+ super(ctx, pagerContext, cd);
7576
+ this.navigationService = navigationService;
7577
+ }
7578
+ /**
7579
+ * @hidden
7580
+ *
7581
+ * @readonly
7582
+ * @type {boolean}
7583
+ * @memberOf PagerPrevButtonsComponent
7584
+ */
7585
+ get disabled() {
7586
+ return this.currentPage === 1 || !this.total;
7587
+ }
7588
+ onChanges({ total, skip, pageSize }) {
7589
+ this.total = total;
7590
+ this.skip = skip;
7591
+ this.pageSize = pageSize;
7592
+ this.cd.markForCheck();
7593
+ }
7594
+ }
7595
+ 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 });
7596
+ PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons", usesInheritance: true, ngImport: i0, template: `
7597
+ <button
7598
+ [kendoGridFocusable]="!disabled"
7599
+ kendoButton
7600
+ type="button"
7601
+ [title]="textFor('pagerFirstPage')"
7602
+ [attr.aria-label]="textFor('pagerFirstPage')"
7603
+ (click)="currentPage !== 1 ? changePage(0) : false"
7604
+ role="button"
7605
+ [icon]="prevArrowIcons[0]"
7606
+ [svgIcon]="prevArrowSVGIcons[0]"
7607
+ class="k-pager-nav k-pager-first"
7608
+ [disabled]="disabled"
7609
+ fillMode="flat"
7610
+ rounded="none"
7611
+ [size]="size">
7612
+ </button>
7613
+ <button
7614
+ kendoButton
7615
+ [kendoGridFocusable]="!disabled"
7616
+ type="button"
7617
+ class="k-pager-nav"
7618
+ [disabled]="disabled"
7619
+ [icon]="prevArrowIcons[1]"
7620
+ [svgIcon]="prevArrowSVGIcons[1]"
7621
+ fillMode="flat"
7622
+ rounded="none"
7623
+ [size]="size"
7624
+ [title]="textFor('pagerPreviousPage')"
7625
+ [attr.aria-label]="textFor('pagerPreviousPage')"
7626
+ (click)="currentPage !== 1 ? changePage(currentPage-2) : false">
7627
+ </button>
7628
+ `, 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 });
7629
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPrevButtonsComponent, decorators: [{
7630
+ type: Component,
7631
+ args: [{
7632
+ changeDetection: ChangeDetectionStrategy.OnPush,
7633
+ selector: 'kendo-pager-prev-buttons',
7634
+ template: `
7635
+ <button
7636
+ [kendoGridFocusable]="!disabled"
7637
+ kendoButton
7638
+ type="button"
7639
+ [title]="textFor('pagerFirstPage')"
7640
+ [attr.aria-label]="textFor('pagerFirstPage')"
7641
+ (click)="currentPage !== 1 ? changePage(0) : false"
7642
+ role="button"
7643
+ [icon]="prevArrowIcons[0]"
7644
+ [svgIcon]="prevArrowSVGIcons[0]"
7645
+ class="k-pager-nav k-pager-first"
7646
+ [disabled]="disabled"
7647
+ fillMode="flat"
7648
+ rounded="none"
7649
+ [size]="size">
7650
+ </button>
7651
+ <button
7652
+ kendoButton
7653
+ [kendoGridFocusable]="!disabled"
7654
+ type="button"
7655
+ class="k-pager-nav"
7656
+ [disabled]="disabled"
7657
+ [icon]="prevArrowIcons[1]"
7658
+ [svgIcon]="prevArrowSVGIcons[1]"
7659
+ fillMode="flat"
7660
+ rounded="none"
7661
+ [size]="size"
7662
+ [title]="textFor('pagerPreviousPage')"
7663
+ [attr.aria-label]="textFor('pagerPreviousPage')"
7664
+ (click)="currentPage !== 1 ? changePage(currentPage-2) : false">
7665
+ </button>
7666
+ `
7667
+ }]
7668
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
7669
+
7444
7670
  /**
7445
7671
  * @hidden
7446
7672
  */
@@ -7683,226 +7909,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7683
7909
  }]
7684
7910
  }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
7685
7911
 
7686
- // eslint-disable no-access-missing-member
7687
- /**
7688
- * Displays information about the current page and the total number of records ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7689
- */
7690
- class PagerInfoComponent extends PagerElementComponent {
7691
- constructor(ctx, cd, pagerContext) {
7692
- super(ctx, pagerContext, cd);
7693
- this.pagerContext = pagerContext;
7694
- }
7695
- /**
7696
- * @hidden
7697
- *
7698
- * @readonly
7699
- * @type {number}
7700
- * @memberOf PagerInfoComponent
7701
- */
7702
- get maxItems() {
7703
- return Math.min(this.currentPage * this.pageSize, this.total);
7704
- }
7705
- /**
7706
- * @hidden
7707
- *
7708
- * @readonly
7709
- * @type {number}
7710
- * @memberOf PagerInfoComponent
7711
- */
7712
- get currentPageText() {
7713
- return this.total ?
7714
- (this.currentPage - 1) * this.pageSize + 1 :
7715
- 0;
7716
- }
7717
- /**
7718
- * @hidden
7719
- *
7720
- * @readonly
7721
- * @type {boolean}
7722
- * @memberOf PagerInfoComponent
7723
- */
7724
- get classes() {
7725
- return true;
7726
- }
7727
- onChanges({ total, skip, pageSize }) {
7728
- this.total = total;
7729
- this.skip = skip;
7730
- this.pageSize = pageSize;
7731
- this.cd.markForCheck();
7732
- }
7733
- }
7734
- 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 });
7735
- 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 });
7736
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, decorators: [{
7737
- type: Component,
7738
- args: [{
7739
- changeDetection: ChangeDetectionStrategy.OnPush,
7740
- selector: 'kendo-pager-info',
7741
- template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`
7742
- }]
7743
- }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
7744
- type: HostBinding,
7745
- args: ["class.k-pager-info"]
7746
- }, {
7747
- type: HostBinding,
7748
- args: ["class.k-label"]
7749
- }] } });
7750
-
7751
- /**
7752
- * @hidden
7753
- */
7754
- class PagerDropDownListDirective {
7755
- constructor(host) {
7756
- this.host = host;
7757
- this.keydownHandler = (e) => {
7758
- if (e.keyCode === Keys.Escape && this.host.isOpen) {
7759
- e.stopPropagation();
7760
- this.host.toggle(false);
7761
- }
7762
- };
7763
- }
7764
- ngAfterViewInit() {
7765
- const wrapperElement = this.host.wrapper.nativeElement;
7766
- wrapperElement.addEventListener('keydown', this.keydownHandler, true);
7767
- }
7768
- ngOnDestroy() {
7769
- this.host.wrapper.nativeElement.removeEventListener('keydown', this.keydownHandler);
7770
- }
7771
- }
7772
- 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 });
7773
- PagerDropDownListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]", ngImport: i0 });
7774
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerDropDownListDirective, decorators: [{
7775
- type: Directive,
7776
- args: [{ selector: '[kendoGridPagerDropDown]' }]
7777
- }], ctorParameters: function () { return [{ type: i1$4.DropDownListComponent }]; } });
7778
-
7779
- /**
7780
- * Displays a drop-down list for the page size selection ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7781
- */
7782
- class PagerPageSizesComponent extends PagerElementComponent {
7783
- constructor(ctx, cd, pagerContext, navigationService) {
7784
- super(ctx, pagerContext, cd);
7785
- this.pagerContext = pagerContext;
7786
- this.navigationService = navigationService;
7787
- this._pageSizes = [];
7788
- }
7789
- /**
7790
- * The page sizes collection. Can be an Array of numbers and/or [`PageSizeItem`](slug:api_grid_pagesizeitem) objects
7791
- * ([see example]({% slug paging_grid %}#toc-pager-templates))
7792
- */
7793
- set pageSizes(pageSizes) {
7794
- let normalizedItems = [];
7795
- pageSizes.forEach(item => {
7796
- if (typeof item === 'number') {
7797
- normalizedItems.push({
7798
- text: item.toString(),
7799
- value: item
7800
- });
7801
- }
7802
- else {
7803
- normalizedItems.push(item);
7804
- }
7805
- });
7806
- if (this.pageSize && !normalizedItems.some(item => item.value === this.pageSize)) {
7807
- normalizedItems = [{ text: this.pageSize.toString(), value: this.pageSize }, ...normalizedItems];
7808
- }
7809
- this._pageSizes = normalizedItems;
7810
- }
7811
- get pageSizes() {
7812
- return this._pageSizes;
7813
- }
7814
- /**
7815
- * @hidden
7816
- *
7817
- * @readonly
7818
- */
7819
- get classes() {
7820
- return true;
7821
- }
7822
- /**
7823
- * @hidden
7824
- *
7825
- * @readonly
7826
- */
7827
- get showInitialPageSize() {
7828
- return this.pageSizes
7829
- .filter(item => {
7830
- if (typeof item.value === 'number') {
7831
- return item.value === Number(this.pageSize);
7832
- }
7833
- return this.total === Number(this.pageSize);
7834
- })
7835
- .length === 0;
7836
- }
7837
- /**
7838
- * @hidden
7839
- */
7840
- pageSizeChange(value) {
7841
- this.pageSize = typeof value === 'number' ? value : this.total;
7842
- this.pagerContext.changePageSize(this.pageSize);
7843
- }
7844
- /**
7845
- * @hidden
7846
- */
7847
- getValue(page) {
7848
- return typeof page.value === 'number' ? page.value : this.total;
7849
- }
7850
- onChanges({ total, skip, pageSize }) {
7851
- this.total = total;
7852
- this.skip = skip;
7853
- this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
7854
- this.cd.markForCheck();
7855
- }
7856
- }
7857
- 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 });
7858
- 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: `
7859
- <kendo-dropdownlist
7860
- class="k-dropdown"
7861
- #dropdownlist
7862
- [size]="size"
7863
- kendoGridPagerDropDown
7864
- [tabindex]="0"
7865
- kendoGridFocusable
7866
- [data]="pageSizes"
7867
- textField="text"
7868
- valueField="value"
7869
- [valuePrimitive]="true"
7870
- [value]="pageSize"
7871
- (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
7872
- <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
7873
- `, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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 });
7874
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
7875
- type: Component,
7876
- args: [{
7877
- changeDetection: ChangeDetectionStrategy.OnPush,
7878
- selector: 'kendo-pager-page-sizes',
7879
- template: `
7880
- <kendo-dropdownlist
7881
- class="k-dropdown"
7882
- #dropdownlist
7883
- [size]="size"
7884
- kendoGridPagerDropDown
7885
- [tabindex]="0"
7886
- kendoGridFocusable
7887
- [data]="pageSizes"
7888
- textField="text"
7889
- valueField="value"
7890
- [valuePrimitive]="true"
7891
- [value]="pageSize"
7892
- (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
7893
- <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
7894
- `
7895
- }]
7896
- }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: NavigationService }]; }, propDecorators: { pageSizes: [{
7897
- type: Input
7898
- }], classes: [{
7899
- type: HostBinding,
7900
- args: ['class.k-pager-sizes']
7901
- }, {
7902
- type: HostBinding,
7903
- args: ['class.k-label']
7904
- }] } });
7905
-
7906
7912
  /**
7907
7913
  * @hidden
7908
7914
  */
@@ -7932,18 +7938,33 @@ class PagerComponent {
7932
7938
  if (this.template || !element) {
7933
7939
  return;
7934
7940
  }
7935
- const width = element.offsetWidth;
7936
- if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
7937
- this.renderer.removeClass(element, 'k-pager-mobile-md');
7938
- this.renderer.addClass(element, 'k-pager-mobile-sm');
7939
- }
7940
- else if (width >= RESPONSIVE_BREAKPOINT_MEDIUM && width < RESPONSIVE_BREAKPOINT_LARGE) {
7941
- this.renderer.addClass(element, 'k-pager-mobile-md');
7942
- this.renderer.removeClass(element, 'k-pager-mobile-sm');
7943
- }
7944
- else {
7945
- this.clearResponsiveClasses();
7946
- }
7941
+ this.zone.runOutsideAngular(() => {
7942
+ setTimeout(() => {
7943
+ const width = element.offsetWidth;
7944
+ if (this.numericButtons) {
7945
+ const selectElement = this.numericButtons.selectElement.nativeElement;
7946
+ const numbersElement = this.numericButtons.numbersElement.nativeElement;
7947
+ this.renderer.removeStyle(numbersElement, 'display');
7948
+ this.renderer.setStyle(selectElement, 'display', 'none');
7949
+ if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
7950
+ this.renderer.removeStyle(selectElement, 'display');
7951
+ this.renderer.setStyle(numbersElement, 'display', 'none');
7952
+ }
7953
+ }
7954
+ if (this.pagerInfo) {
7955
+ this.renderer.removeStyle(this.pagerInfo.nativeElement, 'display');
7956
+ if (width < RESPONSIVE_BREAKPOINT_LARGE) {
7957
+ this.renderer.setStyle(this.pagerInfo.nativeElement, 'display', 'none');
7958
+ }
7959
+ }
7960
+ if (this.pagerPageSizes) {
7961
+ this.renderer.removeStyle(this.pagerPageSizes.nativeElement, 'display');
7962
+ if (width < RESPONSIVE_BREAKPOINT_MEDIUM) {
7963
+ this.renderer.setStyle(this.pagerPageSizes.nativeElement, 'display', 'none');
7964
+ }
7965
+ }
7966
+ });
7967
+ });
7947
7968
  };
7948
7969
  }
7949
7970
  set options(value) {
@@ -8062,12 +8083,10 @@ class PagerComponent {
8062
8083
  }
8063
8084
  const changesInTemplate = changes['template'];
8064
8085
  if (changesInTemplate) {
8065
- // eslint-disable-next-line no-unused-expressions
8066
- changesInTemplate.currentValue ? this.clearResponsiveClasses() : this.resizeHandler();
8086
+ changesInTemplate.currentValue ? this.clearResponsiveStyling() : this.resizeHandler();
8067
8087
  }
8068
8088
  if (changes['options']) {
8069
- // eslint-disable-next-line no-unused-expressions
8070
- this.settings.responsive ? this.resizeHandler() : this.clearResponsiveClasses();
8089
+ this.settings.responsive ? this.resizeHandler() : this.clearResponsiveStyling();
8071
8090
  }
8072
8091
  }
8073
8092
  ngOnDestroy() {
@@ -8093,11 +8112,6 @@ class PagerComponent {
8093
8112
  }
8094
8113
  });
8095
8114
  }
8096
- clearResponsiveClasses() {
8097
- const element = this.element.nativeElement;
8098
- this.renderer.removeClass(element, 'k-pager-mobile-sm');
8099
- this.renderer.removeClass(element, 'k-pager-mobile-md');
8100
- }
8101
8115
  shouldTriggerPageChange(target, condition) {
8102
8116
  return this.navigationService.pagerEnabled &&
8103
8117
  target === this.element.nativeElement &&
@@ -8120,6 +8134,18 @@ class PagerComponent {
8120
8134
  this.cellContext.focusGroup = this.focusGroup;
8121
8135
  }
8122
8136
  }
8137
+ clearResponsiveStyling() {
8138
+ this.zone.runOutsideAngular(() => {
8139
+ setTimeout(() => {
8140
+ if (this.numericButtons) {
8141
+ this.renderer.removeStyle(this.numericButtons.numbersElement.nativeElement, 'display');
8142
+ this.renderer.setStyle(this.numericButtons.selectElement.nativeElement, 'display', 'none');
8143
+ }
8144
+ this.pagerInfo && this.renderer.removeStyle(this.pagerInfo.nativeElement, 'display');
8145
+ this.pagerPageSizes && this.renderer.removeStyle(this.pagerPageSizes.nativeElement, 'display');
8146
+ });
8147
+ });
8148
+ }
8123
8149
  }
8124
8150
  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 });
8125
8151
  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: [{
@@ -8133,7 +8159,7 @@ PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
8133
8159
  provide: FocusGroup,
8134
8160
  deps: [FocusRoot],
8135
8161
  useClass: FocusGroup
8136
- }], usesOnChanges: true, ngImport: i0, template: `
8162
+ }], 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: `
8137
8163
  <div
8138
8164
  *ngIf="navigationService.pagerEnabled"
8139
8165
  class="k-sr-only"
@@ -8147,20 +8173,21 @@ PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
8147
8173
  [ngTemplateOutletContext]="templateContext">
8148
8174
  </ng-container>
8149
8175
  <ng-container *ngIf="!template?.templateRef">
8150
- <kendo-pager-prev-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-prev-buttons>
8151
- <kendo-pager-numeric-buttons
8152
- [size]="size"
8153
- *ngIf="settings.type === 'numeric'"
8154
- [buttonCount]="settings.buttonCount">
8155
- </kendo-pager-numeric-buttons>
8156
- <kendo-pager-input [size]="size" *ngIf="settings.type === 'input'"></kendo-pager-input>
8157
- <kendo-pager-next-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-next-buttons>
8176
+ <div class="k-pager-numbers-wrap">
8177
+ <kendo-pager-prev-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-prev-buttons>
8178
+ <kendo-pager-numeric-buttons
8179
+ [size]="size"
8180
+ *ngIf="settings.type === 'numeric'"
8181
+ [buttonCount]="settings.buttonCount">
8182
+ </kendo-pager-numeric-buttons>
8183
+ <kendo-pager-input [size]="size" *ngIf="settings.type === 'input'"></kendo-pager-input>
8184
+ <kendo-pager-next-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-next-buttons>
8185
+ </div>
8158
8186
  <kendo-pager-info *ngIf='settings.info'></kendo-pager-info>
8159
8187
  <kendo-pager-page-sizes
8160
8188
  [size]="size"
8161
8189
  *ngIf="settings.pageSizes"
8162
8190
  [pageSizes]="$any(settings.pageSizes)"
8163
- #pageSizes
8164
8191
  ></kendo-pager-page-sizes>
8165
8192
  </ng-container>
8166
8193
  <div
@@ -8202,20 +8229,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
8202
8229
  [ngTemplateOutletContext]="templateContext">
8203
8230
  </ng-container>
8204
8231
  <ng-container *ngIf="!template?.templateRef">
8205
- <kendo-pager-prev-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-prev-buttons>
8206
- <kendo-pager-numeric-buttons
8207
- [size]="size"
8208
- *ngIf="settings.type === 'numeric'"
8209
- [buttonCount]="settings.buttonCount">
8210
- </kendo-pager-numeric-buttons>
8211
- <kendo-pager-input [size]="size" *ngIf="settings.type === 'input'"></kendo-pager-input>
8212
- <kendo-pager-next-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-next-buttons>
8232
+ <div class="k-pager-numbers-wrap">
8233
+ <kendo-pager-prev-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-prev-buttons>
8234
+ <kendo-pager-numeric-buttons
8235
+ [size]="size"
8236
+ *ngIf="settings.type === 'numeric'"
8237
+ [buttonCount]="settings.buttonCount">
8238
+ </kendo-pager-numeric-buttons>
8239
+ <kendo-pager-input [size]="size" *ngIf="settings.type === 'input'"></kendo-pager-input>
8240
+ <kendo-pager-next-buttons [size]="size" *ngIf="settings.previousNext"></kendo-pager-next-buttons>
8241
+ </div>
8213
8242
  <kendo-pager-info *ngIf='settings.info'></kendo-pager-info>
8214
8243
  <kendo-pager-page-sizes
8215
8244
  [size]="size"
8216
8245
  *ngIf="settings.pageSizes"
8217
8246
  [pageSizes]="$any(settings.pageSizes)"
8218
- #pageSizes
8219
8247
  ></kendo-pager-page-sizes>
8220
8248
  </ng-container>
8221
8249
  <div
@@ -8235,7 +8263,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
8235
8263
  type: Inject,
8236
8264
  args: [CELL_CONTEXT]
8237
8265
  }] }, { type: FocusRoot }, { type: FocusGroup }];
8238
- }, propDecorators: { total: [{
8266
+ }, propDecorators: { pagerInfo: [{
8267
+ type: ViewChild,
8268
+ args: [PagerInfoComponent, { read: ElementRef }]
8269
+ }], pagerPageSizes: [{
8270
+ type: ViewChild,
8271
+ args: [PagerPageSizesComponent, { read: ElementRef }]
8272
+ }], numericButtons: [{
8273
+ type: ViewChild,
8274
+ args: [PagerNumericButtonsComponent]
8275
+ }], total: [{
8239
8276
  type: Input
8240
8277
  }], skip: [{
8241
8278
  type: Input
@@ -9584,7 +9621,7 @@ FilterMenuInputWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion:
9584
9621
  (keydown.shift.tab)="onShiftTab($event)">
9585
9622
  </kendo-dropdownlist>
9586
9623
  <ng-content></ng-content>
9587
- `, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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"] }], directives: [{ type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
9624
+ `, 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"] }], directives: [{ type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
9588
9625
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuInputWrapperComponent, decorators: [{
9589
9626
  type: Component,
9590
9627
  args: [{
@@ -9780,7 +9817,7 @@ StringFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
9780
9817
  [filter]="filter"
9781
9818
  [menuTabbingService]="menuTabbingService">
9782
9819
  </kendo-grid-string-filter-menu-input>
9783
- `, isInline: true, components: [{ type: StringFilterMenuInputComponent, selector: "kendo-grid-string-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "isFirstDropDown", "menuTabbingService"] }, { type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
9820
+ `, isInline: true, components: [{ type: StringFilterMenuInputComponent, selector: "kendo-grid-string-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "isFirstDropDown", "menuTabbingService"] }, { 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"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
9784
9821
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterMenuComponent, decorators: [{
9785
9822
  type: Component,
9786
9823
  args: [{
@@ -10186,7 +10223,7 @@ NumericFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
10186
10223
  [menuTabbingService]="menuTabbingService"
10187
10224
  >
10188
10225
  </kendo-grid-numeric-filter-menu-input>
10189
- `, isInline: true, components: [{ type: NumericFilterMenuInputComponent, selector: "kendo-grid-numeric-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "filterDelay", "isFirstDropDown", "menuTabbingService", "step", "min", "max", "spinners", "decimals", "format"] }, { type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
10226
+ `, isInline: true, components: [{ type: NumericFilterMenuInputComponent, selector: "kendo-grid-numeric-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "filterDelay", "isFirstDropDown", "menuTabbingService", "step", "min", "max", "spinners", "decimals", "format"] }, { 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"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
10190
10227
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterMenuComponent, decorators: [{
10191
10228
  type: Component,
10192
10229
  args: [{
@@ -10641,7 +10678,7 @@ DateFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
10641
10678
  [menuTabbingService]="menuTabbingService"
10642
10679
  >
10643
10680
  </kendo-grid-date-filter-menu-input>
10644
- `, isInline: true, components: [{ type: DateFilterMenuInputComponent, selector: "kendo-grid-date-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "menuTabbingService", "format", "formatPlaceholder", "placeholder", "min", "max", "activeView", "bottomView", "topView", "weekNumber", "isFirstDropDown"] }, { type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
10681
+ `, isInline: true, components: [{ type: DateFilterMenuInputComponent, selector: "kendo-grid-date-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "menuTabbingService", "format", "formatPlaceholder", "placeholder", "min", "max", "activeView", "bottomView", "topView", "weekNumber", "isFirstDropDown"] }, { 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"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
10645
10682
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterMenuComponent, decorators: [{
10646
10683
  type: Component,
10647
10684
  args: [{
@@ -13010,7 +13047,7 @@ class ColumnMenuComponent {
13010
13047
  this.expandedPosition = this.getExpandedState(this.settings.setColumnPosition);
13011
13048
  this.popupRef = this.popupService.open(anchor, template, this.popupRef, POPUP_CLASS);
13012
13049
  if (this.popupRef && this.settings.view === 'tabbed') {
13013
- this.renderer.addClass(this.popupRef.popupElement.firstChild, 'k-column-menu-tabbed');
13050
+ this.renderer.addClass(this.popupRef.popupElement.querySelector('.k-grid-columnmenu-popup'), 'k-column-menu-tabbed');
13014
13051
  this.cdr.detectChanges();
13015
13052
  (_a = this.tabStrip) === null || _a === void 0 ? void 0 : _a.selectTab(0);
13016
13053
  }
@@ -13553,7 +13590,7 @@ FilterCellOperatorsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
13553
13590
  [size]="size"
13554
13591
  (click)="clearClick()"
13555
13592
  (keydown)="clearKeydown($event)"></button>
13556
- `, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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: 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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }] });
13593
+ `, 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: 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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }] });
13557
13594
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterCellOperatorsComponent, decorators: [{
13558
13595
  type: Component,
13559
13596
  args: [{
@@ -13958,7 +13995,7 @@ BooleanFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
13958
13995
  [value]="currentFilter?.value">
13959
13996
  </kendo-dropdownlist>
13960
13997
  </kendo-grid-filter-wrapper-cell>
13961
- `, isInline: true, components: [{ type: FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["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"] }], directives: [{ type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }] });
13998
+ `, isInline: true, components: [{ type: FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { 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"] }], directives: [{ type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }] });
13962
13999
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterCellComponent, decorators: [{
13963
14000
  type: Component,
13964
14001
  args: [{
@@ -23045,7 +23082,7 @@ AutoCompleteFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion:
23045
23082
  [value]="currentFilter?.value">
23046
23083
  </kendo-autocomplete>
23047
23084
  </kendo-grid-filter-wrapper-cell>
23048
- `, isInline: true, components: [{ type: FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { type: i1$4.AutoCompleteComponent, selector: "kendo-autocomplete", inputs: ["highlightFirst", "focusableId", "data", "value", "valueField", "placeholder", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "loading", "clearButton", "suggest", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoAutoComplete"] }], directives: [{ type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }] });
23085
+ `, isInline: true, components: [{ type: FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { type: i1$4.AutoCompleteComponent, selector: "kendo-autocomplete", inputs: ["highlightFirst", "showStickyHeader", "focusableId", "data", "value", "valueField", "placeholder", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "loading", "clearButton", "suggest", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoAutoComplete"] }], directives: [{ type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }] });
23049
23086
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteFilterCellComponent, decorators: [{
23050
23087
  type: Component,
23051
23088
  args: [{