@progress/kendo-angular-treelist 17.0.0-develop.34 → 17.0.0-develop.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/directives.d.ts +4 -17
  2. package/esm2022/directives.mjs +3 -24
  3. package/esm2022/filtering/cell/row-filtering.module.mjs +3 -2
  4. package/esm2022/filtering/menu/filter-menu.module.mjs +3 -2
  5. package/esm2022/filtering/shared-filtering.module.mjs +3 -2
  6. package/esm2022/index.mjs +0 -9
  7. package/esm2022/localization/messages.mjs +9 -3
  8. package/esm2022/navigation/navigation.service.mjs +2 -2
  9. package/esm2022/package-metadata.mjs +2 -2
  10. package/esm2022/rendering/common/spacer.component.mjs +2 -2
  11. package/esm2022/rendering/header/header.module.mjs +25 -24
  12. package/esm2022/shared.module.mjs +3 -2
  13. package/esm2022/treelist.component.mjs +145 -26
  14. package/esm2022/treelist.module.mjs +73 -79
  15. package/fesm2022/progress-kendo-angular-treelist.mjs +317 -1617
  16. package/filtering/cell/row-filtering.module.d.ts +2 -1
  17. package/filtering/menu/filter-menu.module.d.ts +2 -1
  18. package/filtering/shared-filtering.module.d.ts +7 -6
  19. package/index.d.ts +1 -11
  20. package/localization/messages.d.ts +6 -2
  21. package/navigation/navigation.service.d.ts +1 -1
  22. package/package.json +16 -16
  23. package/rendering/common/spacer.component.d.ts +1 -1
  24. package/rendering/header/header.module.d.ts +26 -25
  25. package/schematics/ngAdd/index.js +3 -3
  26. package/shared.module.d.ts +3 -2
  27. package/treelist.component.d.ts +3 -2
  28. package/treelist.module.d.ts +70 -77
  29. package/constants.d.ts +0 -12
  30. package/esm2022/constants.mjs +0 -12
  31. package/esm2022/pager/pager-context.service.mjs +0 -44
  32. package/esm2022/pager/pager-element.component.mjs +0 -111
  33. package/esm2022/pager/pager-info.component.mjs +0 -76
  34. package/esm2022/pager/pager-input.component.mjs +0 -148
  35. package/esm2022/pager/pager-next-buttons.component.mjs +0 -131
  36. package/esm2022/pager/pager-numeric-buttons.component.mjs +0 -254
  37. package/esm2022/pager/pager-page-sizes.component.mjs +0 -141
  38. package/esm2022/pager/pager-prev-buttons.component.mjs +0 -127
  39. package/esm2022/pager/pager-template.directive.mjs +0 -49
  40. package/esm2022/pager/pager.component.mjs +0 -429
  41. package/esm2022/pager/pager.module.mjs +0 -43
  42. package/esm2022/pager/pagesize-item.interface.mjs +0 -5
  43. package/pager/pager-context.service.d.ts +0 -32
  44. package/pager/pager-element.component.d.ts +0 -74
  45. package/pager/pager-info.component.d.ts +0 -43
  46. package/pager/pager-input.component.d.ts +0 -45
  47. package/pager/pager-next-buttons.component.d.ts +0 -36
  48. package/pager/pager-numeric-buttons.component.d.ts +0 -52
  49. package/pager/pager-page-sizes.component.d.ts +0 -48
  50. package/pager/pager-prev-buttons.component.d.ts +0 -32
  51. package/pager/pager-template.directive.d.ts +0 -38
  52. package/pager/pager.component.d.ts +0 -73
  53. package/pager/pager.module.d.ts +0 -27
  54. package/pager/pagesize-item.interface.d.ts +0 -14
  55. /package/{pager → common}/pager-settings.d.ts +0 -0
  56. /package/esm2022/{pager → common}/pager-settings.mjs +0 -0
@@ -1,131 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- // eslint-disable no-access-missing-member
6
- import { Component, ChangeDetectionStrategy, ChangeDetectorRef, Input } from '@angular/core';
7
- import { LocalizationService } from '@progress/kendo-angular-l10n';
8
- import { ButtonComponent } from '@progress/kendo-angular-buttons';
9
- import { PagerContextService } from "./pager-context.service";
10
- import { PagerElementComponent } from './pager-element.component';
11
- import { NavigationService } from '../navigation/navigation.service';
12
- import { FocusableDirective } from '../navigation/focusable.directive';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@progress/kendo-angular-l10n";
15
- import * as i2 from "./pager-context.service";
16
- import * as i3 from "../navigation/navigation.service";
17
- /**
18
- * Displays buttons for navigating to the next and to the last page ([see example](slug:pager_template_treelist)).
19
- */
20
- export class PagerNextButtonsComponent extends PagerElementComponent {
21
- navigationService;
22
- /**
23
- * @hidden
24
- *
25
- * @readonly
26
- * @type {boolean}
27
- * @memberOf PagerNextButtonsComponent
28
- */
29
- get disabled() {
30
- return this.currentPage === this.totalPages || !this.total;
31
- }
32
- /**
33
- * @hidden
34
- */
35
- navigable;
36
- constructor(localization, pagerContext, cd, navigationService) {
37
- super(localization, pagerContext, cd);
38
- this.navigationService = navigationService;
39
- }
40
- /**
41
- * @hidden
42
- */
43
- onButtonClick(buttonName) {
44
- if (this.currentPage !== this.totalPages) {
45
- const skipToPage = buttonName === 'nextPage' ? this.currentPage : this.totalPages - 1;
46
- this.changePage(skipToPage);
47
- }
48
- }
49
- onChanges({ total, skip, pageSize }) {
50
- this.total = total;
51
- this.skip = skip;
52
- this.pageSize = pageSize;
53
- this.cd.markForCheck();
54
- }
55
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerNextButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PagerContextService }, { token: i0.ChangeDetectorRef }, { token: i3.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
56
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerNextButtonsComponent, isStandalone: true, selector: "kendo-treelist-pager-next-buttons", inputs: { navigable: "navigable" }, usesInheritance: true, ngImport: i0, template: `
57
- <button
58
- kendoButton
59
- type="button"
60
- kendoTreeListFocusable
61
- [enabled]="!disabled"
62
- [icon]="nextArrowIcons[0]"
63
- [svgIcon]="nextArrowSVGIcons[0]"
64
- fillMode="flat"
65
- rounded="none"
66
- class="k-pager-nav"
67
- [disabled]="disabled"
68
- [title]="textFor('pagerNextPage')"
69
- [attr.aria-label]="textFor('pagerNextPage')"
70
- (click)="onButtonClick('nextPage')">
71
- </button>
72
- <button
73
- kendoButton
74
- type="button"
75
- kendoTreeListFocusable
76
- [enabled]="!disabled"
77
- [icon]="nextArrowIcons[1]"
78
- [svgIcon]="nextArrowSVGIcons[1]"
79
- fillMode="flat"
80
- rounded="none"
81
- class="k-pager-nav k-pager-last"
82
- [disabled]="disabled"
83
- [title]="textFor('pagerLastPage')"
84
- [attr.aria-label]="textFor('pagerLastPage')"
85
- (click)="onButtonClick('lastPage')">
86
- </button>
87
- `, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoTreeListFocusable],\n [kendoTreeListAddCommand],\n [kendoTreeListEditCommand],\n [kendoTreeListRemoveCommand],\n [kendoTreeListSaveCommand],\n [kendoTreeListCancelCommand]\n ", inputs: ["kendoTreeListFocusable", "enabled", "kendoTreeListAddCommand", "kendoTreeListEditCommand", "kendoTreeListRemoveCommand", "kendoTreeListSaveCommand", "kendoTreeListCancelCommand"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
88
- }
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerNextButtonsComponent, decorators: [{
90
- type: Component,
91
- args: [{
92
- changeDetection: ChangeDetectionStrategy.OnPush,
93
- selector: 'kendo-treelist-pager-next-buttons',
94
- template: `
95
- <button
96
- kendoButton
97
- type="button"
98
- kendoTreeListFocusable
99
- [enabled]="!disabled"
100
- [icon]="nextArrowIcons[0]"
101
- [svgIcon]="nextArrowSVGIcons[0]"
102
- fillMode="flat"
103
- rounded="none"
104
- class="k-pager-nav"
105
- [disabled]="disabled"
106
- [title]="textFor('pagerNextPage')"
107
- [attr.aria-label]="textFor('pagerNextPage')"
108
- (click)="onButtonClick('nextPage')">
109
- </button>
110
- <button
111
- kendoButton
112
- type="button"
113
- kendoTreeListFocusable
114
- [enabled]="!disabled"
115
- [icon]="nextArrowIcons[1]"
116
- [svgIcon]="nextArrowSVGIcons[1]"
117
- fillMode="flat"
118
- rounded="none"
119
- class="k-pager-nav k-pager-last"
120
- [disabled]="disabled"
121
- [title]="textFor('pagerLastPage')"
122
- [attr.aria-label]="textFor('pagerLastPage')"
123
- (click)="onButtonClick('lastPage')">
124
- </button>
125
- `,
126
- standalone: true,
127
- imports: [ButtonComponent, FocusableDirective]
128
- }]
129
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.PagerContextService }, { type: i0.ChangeDetectorRef }, { type: i3.NavigationService }]; }, propDecorators: { navigable: [{
130
- type: Input
131
- }] } });
@@ -1,254 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- /* eslint-disable @typescript-eslint/no-inferrable-types */
6
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, ViewChild } from '@angular/core';
7
- import { NgIf, NgFor, NgClass } from '@angular/common';
8
- import { LocalizationService } from '@progress/kendo-angular-l10n';
9
- import { ButtonComponent } from '@progress/kendo-angular-buttons';
10
- import { PagerContextService } from './pager-context.service';
11
- import { PagerElementComponent } from './pager-element.component';
12
- import { FocusableDirective } from '../navigation/focusable.directive';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@progress/kendo-angular-l10n";
15
- import * as i2 from "./pager-context.service";
16
- /**
17
- * Displays numeric buttons to enable navigation between the pages ([see example](slug:pager_template_treelist)).
18
- */
19
- export class PagerNumericButtonsComponent extends PagerElementComponent {
20
- pagerContext;
21
- selectElement;
22
- numbersElement;
23
- /**
24
- * The count of the displayed buttons.
25
- *
26
- * @type {number}
27
- * @memberOf PagerNumericButtonsComponent
28
- */
29
- buttonCount;
30
- /**
31
- * @hidden
32
- *
33
- * @readonly
34
- * @type {number[]}
35
- * @memberOf PagerNumericButtonsComponent
36
- */
37
- get buttons() {
38
- const result = [];
39
- for (let idx = this.start; idx <= this.end; idx++) {
40
- result.push(idx);
41
- }
42
- return result;
43
- }
44
- /**
45
- * @hidden
46
- */
47
- get end() {
48
- return Math.min((this.start + this.buttonCount) - 1, this.totalPages);
49
- }
50
- /**
51
- * @hidden
52
- */
53
- get start() {
54
- const page = this.currentPage;
55
- const buttonCount = this.buttonCount;
56
- if (page > buttonCount) {
57
- const reminder = (page % buttonCount);
58
- return (reminder === 0) ? (page - buttonCount) + 1 : (page - reminder) + 1;
59
- }
60
- return 1;
61
- }
62
- constructor(localization, cd, pagerContext) {
63
- super(localization, pagerContext, cd);
64
- this.pagerContext = pagerContext;
65
- }
66
- /**
67
- * @hidden
68
- */
69
- pageLabel(num) {
70
- const pageText = this.textFor('pagerPage');
71
- if (pageText) {
72
- return pageText + ' ' + num;
73
- }
74
- return num.toString();
75
- }
76
- /**
77
- * @hidden
78
- */
79
- onSelectChange(e) {
80
- const target = e.target;
81
- const valueAsNumber = Number(target.value);
82
- if (!Number.isNaN(valueAsNumber)) {
83
- this.changePage(valueAsNumber - 1);
84
- }
85
- else {
86
- if (target.value === 'previousButtons') {
87
- this.changePage(this.start - 2);
88
- }
89
- else {
90
- this.changePage(this.end);
91
- }
92
- }
93
- }
94
- onChanges({ total, skip, pageSize }) {
95
- this.total = total;
96
- this.skip = skip;
97
- this.pageSize = pageSize;
98
- this.cd.markForCheck();
99
- }
100
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerNumericButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
101
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerNumericButtonsComponent, isStandalone: true, selector: "kendo-treelist-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: `
102
- <select
103
- class="k-dropdown-list k-dropdown k-picker k-picker-solid k-picker-md k-rounded-md"
104
- kendoTreeListFocusable
105
- [style.display]="'none'"
106
- #select
107
- [attr.title]="textFor('selectPage')"
108
- [attr.aria-label]="textFor('selectPage')"
109
- (change)="onSelectChange($event)">
110
- <option *ngIf="start > 1"
111
- value="previousButtons"
112
- [selected]="false"
113
- [attr.aria-label]="pageLabel(start - 1)">...
114
- </option>
115
- <option *ngFor="let num of buttons"
116
- [value]="num.toString()"
117
- [selected]="num === currentPage"
118
- [attr.aria-label]="pageLabel(num)"
119
- [attr.aria-current]="currentPage === num ? 'page' : undefined"
120
- [ngClass]="{'k-selected':currentPage === num}">
121
- {{num}}
122
- </option>
123
- <option *ngIf="end < totalPages"
124
- value="nextButtons"
125
- [selected]="false"
126
- [attr.aria-label]="pageLabel(end + 1)">...
127
- </option>
128
- </select>
129
- <div class="k-pager-numbers" #numbers>
130
- <button *ngIf="start > 1"
131
- type="button"
132
- kendoTreeListFocusable
133
- kendoButton
134
- fillMode="flat"
135
- themeColor="primary"
136
- class="k-pager-nav"
137
- rounded="none"
138
- [attr.aria-label]="pageLabel(start - 1)"
139
- [attr.title]="pageLabel(start - 1)"
140
- (click)="changePage(start - 2)">...</button>
141
- <button *ngFor="let num of buttons"
142
- type="button"
143
- kendoTreeListFocusable
144
- kendoButton
145
- fillMode="flat"
146
- themeColor="primary"
147
- class="k-pager-nav"
148
- rounded="none"
149
- [attr.aria-label]="pageLabel(num)"
150
- [attr.title]="pageLabel(num)"
151
- [attr.aria-current]="currentPage === num ? 'page' : undefined"
152
- [selected]="currentPage === num"
153
- (click)="changePage(num - 1)">
154
- {{num}}
155
- </button>
156
- <button *ngIf="end < totalPages"
157
- type="button"
158
- kendoTreeListFocusable
159
- kendoButton
160
- class="k-pager-nav"
161
- fillMode="flat"
162
- themeColor="primary"
163
- rounded="none"
164
- [attr.aria-label]="pageLabel(end + 1)"
165
- [attr.title]="pageLabel(end + 1)"
166
- (click)="changePage(end)">...</button>
167
- </div>
168
- `, isInline: true, dependencies: [{ kind: "directive", type: FocusableDirective, selector: "[kendoTreeListFocusable],\n [kendoTreeListAddCommand],\n [kendoTreeListEditCommand],\n [kendoTreeListRemoveCommand],\n [kendoTreeListSaveCommand],\n [kendoTreeListCancelCommand]\n ", inputs: ["kendoTreeListFocusable", "enabled", "kendoTreeListAddCommand", "kendoTreeListEditCommand", "kendoTreeListRemoveCommand", "kendoTreeListSaveCommand", "kendoTreeListCancelCommand"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
169
- }
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerNumericButtonsComponent, decorators: [{
171
- type: Component,
172
- args: [{
173
- changeDetection: ChangeDetectionStrategy.OnPush,
174
- selector: 'kendo-treelist-pager-numeric-buttons',
175
- template: `
176
- <select
177
- class="k-dropdown-list k-dropdown k-picker k-picker-solid k-picker-md k-rounded-md"
178
- kendoTreeListFocusable
179
- [style.display]="'none'"
180
- #select
181
- [attr.title]="textFor('selectPage')"
182
- [attr.aria-label]="textFor('selectPage')"
183
- (change)="onSelectChange($event)">
184
- <option *ngIf="start > 1"
185
- value="previousButtons"
186
- [selected]="false"
187
- [attr.aria-label]="pageLabel(start - 1)">...
188
- </option>
189
- <option *ngFor="let num of buttons"
190
- [value]="num.toString()"
191
- [selected]="num === currentPage"
192
- [attr.aria-label]="pageLabel(num)"
193
- [attr.aria-current]="currentPage === num ? 'page' : undefined"
194
- [ngClass]="{'k-selected':currentPage === num}">
195
- {{num}}
196
- </option>
197
- <option *ngIf="end < totalPages"
198
- value="nextButtons"
199
- [selected]="false"
200
- [attr.aria-label]="pageLabel(end + 1)">...
201
- </option>
202
- </select>
203
- <div class="k-pager-numbers" #numbers>
204
- <button *ngIf="start > 1"
205
- type="button"
206
- kendoTreeListFocusable
207
- kendoButton
208
- fillMode="flat"
209
- themeColor="primary"
210
- class="k-pager-nav"
211
- rounded="none"
212
- [attr.aria-label]="pageLabel(start - 1)"
213
- [attr.title]="pageLabel(start - 1)"
214
- (click)="changePage(start - 2)">...</button>
215
- <button *ngFor="let num of buttons"
216
- type="button"
217
- kendoTreeListFocusable
218
- kendoButton
219
- fillMode="flat"
220
- themeColor="primary"
221
- class="k-pager-nav"
222
- rounded="none"
223
- [attr.aria-label]="pageLabel(num)"
224
- [attr.title]="pageLabel(num)"
225
- [attr.aria-current]="currentPage === num ? 'page' : undefined"
226
- [selected]="currentPage === num"
227
- (click)="changePage(num - 1)">
228
- {{num}}
229
- </button>
230
- <button *ngIf="end < totalPages"
231
- type="button"
232
- kendoTreeListFocusable
233
- kendoButton
234
- class="k-pager-nav"
235
- fillMode="flat"
236
- themeColor="primary"
237
- rounded="none"
238
- [attr.aria-label]="pageLabel(end + 1)"
239
- [attr.title]="pageLabel(end + 1)"
240
- (click)="changePage(end)">...</button>
241
- </div>
242
- `,
243
- standalone: true,
244
- imports: [FocusableDirective, NgIf, NgFor, NgClass, ButtonComponent]
245
- }]
246
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i2.PagerContextService }]; }, propDecorators: { selectElement: [{
247
- type: ViewChild,
248
- args: ['select', { read: ElementRef }]
249
- }], numbersElement: [{
250
- type: ViewChild,
251
- args: ['numbers', { read: ElementRef }]
252
- }], buttonCount: [{
253
- type: Input
254
- }] } });
@@ -1,141 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- // eslint-disable no-access-missing-member
6
- import { Component, ChangeDetectorRef, ChangeDetectionStrategy, HostBinding, Input, ElementRef } from '@angular/core';
7
- import { LocalizationService } from '@progress/kendo-angular-l10n';
8
- import { LabelComponent } from '@progress/kendo-angular-label';
9
- import { DropDownListComponent } from '@progress/kendo-angular-dropdowns';
10
- import { PagerElementComponent } from './pager-element.component';
11
- import { PagerContextService } from "./pager-context.service";
12
- import { FocusableDirective } from '../navigation/focusable.directive';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@progress/kendo-angular-l10n";
15
- import * as i2 from "./pager-context.service";
16
- /**
17
- * Displays a drop-down list for the page size selection ([see example](slug:pager_template_treelist)).
18
- */
19
- export class PagerPageSizesComponent extends PagerElementComponent {
20
- elem;
21
- pagerContext;
22
- /**
23
- * The page sizes collection. Can be an Array of numbers and/or PageSizeItem objects.
24
- * [More information and example]({% slug api_treelist_pagerpagesizescomponent %})
25
- */
26
- set pageSizes(pageSizes) {
27
- let normalizedItems = [];
28
- pageSizes.forEach(item => {
29
- if (typeof item === 'number') {
30
- normalizedItems.push({
31
- text: item.toString(),
32
- value: item
33
- });
34
- }
35
- else {
36
- normalizedItems.push(item);
37
- }
38
- });
39
- if (this.pageSize && !normalizedItems.some(item => item.value === this.pageSize)) {
40
- normalizedItems = [{ text: this.pageSize.toString(), value: this.pageSize }, ...normalizedItems];
41
- }
42
- this._pageSizes = normalizedItems;
43
- }
44
- get pageSizes() {
45
- return this._pageSizes;
46
- }
47
- /**
48
- * @hidden
49
- *
50
- * @readonly
51
- */
52
- get classes() {
53
- return true;
54
- }
55
- /**
56
- * @hidden
57
- *
58
- * @readonly
59
- */
60
- get showInitialPageSize() {
61
- return this.pageSizes
62
- .filter(item => {
63
- if (typeof item.value === 'number') {
64
- return item.value === Number(this.pageSize);
65
- }
66
- return this.total === Number(this.pageSize);
67
- })
68
- .length === 0;
69
- }
70
- _pageSizes = [];
71
- constructor(elem, localization, cd, pagerContext) {
72
- super(localization, pagerContext, cd);
73
- this.elem = elem;
74
- this.pagerContext = pagerContext;
75
- }
76
- /**
77
- * @hidden
78
- */
79
- pageSizeChange(value) {
80
- this.pageSize = typeof value === 'number' ? value : this.total;
81
- this.pagerContext.changePageSize(this.pageSize);
82
- }
83
- /**
84
- * @hidden
85
- */
86
- getValue(page) {
87
- return typeof page.value === 'number' ? page.value : this.total;
88
- }
89
- onChanges({ total, skip, pageSize }) {
90
- this.total = total;
91
- this.skip = skip;
92
- this.pageSize = typeof pageSize === 'number' ? pageSize : this.total;
93
- this.cd.markForCheck();
94
- }
95
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
96
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerPageSizesComponent, isStandalone: true, selector: "kendo-treelist-pager-page-sizes", inputs: { pageSizes: "pageSizes" }, host: { properties: { "class.k-pager-sizes": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `
97
- <kendo-dropdownlist
98
- #dropdownlist
99
- class="k-dropdown"
100
- [data]="pageSizes"
101
- textField="text"
102
- valueField="value"
103
- kendoTreeListFocusable
104
- [valuePrimitive]="true"
105
- [value]="pageSize"
106
- [attr.aria-label]="textFor('pagerItemsPerPage')"
107
- (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
108
- <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
109
- `, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoTreeListFocusable],\n [kendoTreeListAddCommand],\n [kendoTreeListEditCommand],\n [kendoTreeListRemoveCommand],\n [kendoTreeListSaveCommand],\n [kendoTreeListCancelCommand]\n ", inputs: ["kendoTreeListFocusable", "enabled", "kendoTreeListAddCommand", "kendoTreeListEditCommand", "kendoTreeListRemoveCommand", "kendoTreeListSaveCommand", "kendoTreeListCancelCommand"] }, { kind: "component", type: LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
110
- }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
112
- type: Component,
113
- args: [{
114
- changeDetection: ChangeDetectionStrategy.OnPush,
115
- selector: 'kendo-treelist-pager-page-sizes',
116
- template: `
117
- <kendo-dropdownlist
118
- #dropdownlist
119
- class="k-dropdown"
120
- [data]="pageSizes"
121
- textField="text"
122
- valueField="value"
123
- kendoTreeListFocusable
124
- [valuePrimitive]="true"
125
- [value]="pageSize"
126
- [attr.aria-label]="textFor('pagerItemsPerPage')"
127
- (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
128
- <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
129
- `,
130
- standalone: true,
131
- imports: [DropDownListComponent, FocusableDirective, LabelComponent]
132
- }]
133
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i2.PagerContextService }]; }, propDecorators: { pageSizes: [{
134
- type: Input
135
- }], classes: [{
136
- type: HostBinding,
137
- args: ["class.k-pager-sizes"]
138
- }, {
139
- type: HostBinding,
140
- args: ["class.k-label"]
141
- }] } });
@@ -1,127 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- // eslint-disable no-access-missing-member
6
- import { Component, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
7
- import { LocalizationService } from '@progress/kendo-angular-l10n';
8
- import { ButtonComponent } from '@progress/kendo-angular-buttons';
9
- import { PagerContextService } from "./pager-context.service";
10
- import { PagerElementComponent } from './pager-element.component';
11
- import { NavigationService } from '../navigation/navigation.service';
12
- import { FocusableDirective } from '../navigation/focusable.directive';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@progress/kendo-angular-l10n";
15
- import * as i2 from "./pager-context.service";
16
- import * as i3 from "../navigation/navigation.service";
17
- /**
18
- * Displays buttons for navigating to the first and to the previous page ([see example](slug:pager_template_treelist)).
19
- */
20
- export class PagerPrevButtonsComponent extends PagerElementComponent {
21
- navigationService;
22
- constructor(localization, pagerContext, cd, navigationService) {
23
- super(localization, pagerContext, cd);
24
- this.navigationService = navigationService;
25
- }
26
- /**
27
- * @hidden
28
- *
29
- * @readonly
30
- * @type {boolean}
31
- * @memberOf PagerPrevButtonsComponent
32
- */
33
- get disabled() {
34
- return this.currentPage === 1 || !this.total;
35
- }
36
- /**
37
- * @hidden
38
- */
39
- onButtonClick(buttonName) {
40
- if (this.currentPage !== 1) {
41
- const skipToPage = buttonName === 'prevPage' ? this.currentPage - 2 : 0;
42
- this.changePage(skipToPage);
43
- }
44
- }
45
- onChanges({ total, skip, pageSize }) {
46
- this.total = total;
47
- this.skip = skip;
48
- this.pageSize = pageSize;
49
- this.cd.markForCheck();
50
- }
51
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerPrevButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PagerContextService }, { token: i0.ChangeDetectorRef }, { token: i3.NavigationService }], target: i0.ɵɵFactoryTarget.Component });
52
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PagerPrevButtonsComponent, isStandalone: true, selector: "kendo-treelist-pager-prev-buttons", usesInheritance: true, ngImport: i0, template: `
53
- <button
54
- kendoButton
55
- type="button"
56
- kendoTreeListFocusable
57
- [enabled]="!disabled"
58
- [title]="textFor('pagerFirstPage')"
59
- [attr.aria-label]="textFor('pagerFirstPage')"
60
- (click)="onButtonClick('firstPage')"
61
- role="button"
62
- [icon]="prevArrowIcons[0]"
63
- [svgIcon]="prevArrowSVGIcons[0]"
64
- class="k-pager-nav k-pager-first"
65
- [disabled]="disabled"
66
- fillMode="flat"
67
- rounded="none">
68
- </button>
69
- <button
70
- kendoButton
71
- type="button"
72
- kendoTreeListFocusable
73
- [enabled]="!disabled"
74
- class="k-pager-nav"
75
- [disabled]="disabled"
76
- [icon]="prevArrowIcons[1]"
77
- [svgIcon]="prevArrowSVGIcons[1]"
78
- fillMode="flat"
79
- rounded="none"
80
- [title]="textFor('pagerPreviousPage')"
81
- [attr.aria-label]="textFor('pagerPreviousPage')"
82
- (click)="onButtonClick('prevPage')">
83
- </button>
84
- `, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoTreeListFocusable],\n [kendoTreeListAddCommand],\n [kendoTreeListEditCommand],\n [kendoTreeListRemoveCommand],\n [kendoTreeListSaveCommand],\n [kendoTreeListCancelCommand]\n ", inputs: ["kendoTreeListFocusable", "enabled", "kendoTreeListAddCommand", "kendoTreeListEditCommand", "kendoTreeListRemoveCommand", "kendoTreeListSaveCommand", "kendoTreeListCancelCommand"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
85
- }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PagerPrevButtonsComponent, decorators: [{
87
- type: Component,
88
- args: [{
89
- changeDetection: ChangeDetectionStrategy.OnPush,
90
- selector: 'kendo-treelist-pager-prev-buttons',
91
- template: `
92
- <button
93
- kendoButton
94
- type="button"
95
- kendoTreeListFocusable
96
- [enabled]="!disabled"
97
- [title]="textFor('pagerFirstPage')"
98
- [attr.aria-label]="textFor('pagerFirstPage')"
99
- (click)="onButtonClick('firstPage')"
100
- role="button"
101
- [icon]="prevArrowIcons[0]"
102
- [svgIcon]="prevArrowSVGIcons[0]"
103
- class="k-pager-nav k-pager-first"
104
- [disabled]="disabled"
105
- fillMode="flat"
106
- rounded="none">
107
- </button>
108
- <button
109
- kendoButton
110
- type="button"
111
- kendoTreeListFocusable
112
- [enabled]="!disabled"
113
- class="k-pager-nav"
114
- [disabled]="disabled"
115
- [icon]="prevArrowIcons[1]"
116
- [svgIcon]="prevArrowSVGIcons[1]"
117
- fillMode="flat"
118
- rounded="none"
119
- [title]="textFor('pagerPreviousPage')"
120
- [attr.aria-label]="textFor('pagerPreviousPage')"
121
- (click)="onButtonClick('prevPage')">
122
- </button>
123
- `,
124
- standalone: true,
125
- imports: [ButtonComponent, FocusableDirective]
126
- }]
127
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.PagerContextService }, { type: i0.ChangeDetectorRef }, { type: i3.NavigationService }]; } });