@progress/kendo-angular-grid 20.1.0-develop.5 → 20.1.0-develop.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/column-menu/column-list.component.d.ts +0 -2
- package/columns/command-column.component.d.ts +1 -1
- package/columns/span-column.component.d.ts +1 -1
- package/editing/cancel-command.directive.d.ts +1 -1
- package/editing/edit-row-options.interface.d.ts +1 -1
- package/editing/edit-template.directive.d.ts +1 -1
- package/editing/remove-command.directive.d.ts +1 -1
- package/editing/save-command.directive.d.ts +1 -1
- package/editing-directives/edit-service.interface.d.ts +2 -2
- package/editing-directives/external-editing.directive.d.ts +1 -1
- package/editing-directives/in-cell-editing.directive.d.ts +1 -1
- package/editing-directives/reactive-editing.directive.d.ts +1 -1
- package/editing-directives/template-editing.directive.d.ts +1 -1
- package/esm2022/column-menu/column-list-kb-nav.service.mjs +1 -1
- package/esm2022/column-menu/column-list.component.mjs +7 -43
- package/esm2022/column-menu/column-menu-container.component.mjs +10 -1
- package/esm2022/column-menu/column-menu.component.mjs +7 -1
- package/esm2022/columns/command-column.component.mjs +1 -1
- package/esm2022/columns/span-column.component.mjs +1 -1
- package/esm2022/editing/cancel-command.directive.mjs +1 -1
- package/esm2022/editing/edit-template.directive.mjs +1 -1
- package/esm2022/editing/remove-command.directive.mjs +1 -1
- package/esm2022/editing/save-command.directive.mjs +1 -1
- package/esm2022/editing-directives/external-editing.directive.mjs +1 -1
- package/esm2022/editing-directives/in-cell-editing.directive.mjs +1 -1
- package/esm2022/editing-directives/reactive-editing.directive.mjs +1 -1
- package/esm2022/editing-directives/template-editing.directive.mjs +1 -1
- package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +2 -2
- package/esm2022/filtering/menu/filter-menu.component.mjs +7 -1
- package/esm2022/navigation/logical-cell.directive.mjs +8 -2
- package/esm2022/navigation/navigation.service.mjs +1 -0
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rendering/toolbar/tools/column-chooser-tool.directive.mjs +1 -1
- package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +1 -1
- package/esm2022/rendering/toolbar/tools/group-toolbar-tool.component.mjs +2 -2
- package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +1 -1
- package/fesm2022/progress-kendo-angular-grid.mjs +58 -67
- package/navigation/navigation.service.d.ts +1 -0
- package/package.json +21 -21
- package/schematics/ngAdd/index.js +4 -4
|
@@ -58,7 +58,6 @@ export declare class ColumnListComponent implements OnInit, OnDestroy {
|
|
|
58
58
|
ngOnInit(): void;
|
|
59
59
|
ngAfterViewInit(): void;
|
|
60
60
|
ngOnChanges(changes: SimpleChanges): void;
|
|
61
|
-
onSelectAllClick(e: any): void;
|
|
62
61
|
onSelectAllCheckboxChange(checkedState: any): void;
|
|
63
62
|
ngOnDestroy(): void;
|
|
64
63
|
cancelChanges(): void;
|
|
@@ -70,7 +69,6 @@ export declare class ColumnListComponent implements OnInit, OnDestroy {
|
|
|
70
69
|
private disableFirstUnlockedCheckedCheckbox;
|
|
71
70
|
private enableLastDisabledColumn;
|
|
72
71
|
private setDisabledState;
|
|
73
|
-
checkBoxClick(e: any): void;
|
|
74
72
|
onCheckboxChange(checkedState: any, column: any, _index: number): void;
|
|
75
73
|
private setTabindex;
|
|
76
74
|
static ɵfac: i0.ɵɵFactoryDeclaration<ColumnListComponent, [null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
@@ -10,7 +10,7 @@ import { CellRowspanFn } from './cell-rowspan';
|
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
/**
|
|
12
12
|
* Represents the command columns of the Grid. Define the content of the column inside an `<ng-template>` tag.
|
|
13
|
-
* For more information and examples, see the [
|
|
13
|
+
* For more information and examples, see the [Editing Action Buttons](slug:basics_editing_grid#editing-action-buttons) article.
|
|
14
14
|
*
|
|
15
15
|
* @example
|
|
16
16
|
* ```html
|
|
@@ -74,7 +74,7 @@ export declare class SpanColumnComponent extends ColumnBase {
|
|
|
74
74
|
includeInChooser: boolean;
|
|
75
75
|
/**
|
|
76
76
|
* Sets whether the edit template of the column is rendered.
|
|
77
|
-
* To enable editing for a spanned column, set an edit template for it ([see example](slug:
|
|
77
|
+
* To enable editing for a spanned column, set an edit template for it ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
78
78
|
* @default false
|
|
79
79
|
*/
|
|
80
80
|
set editable(value: boolean);
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
/**
|
|
12
12
|
* Represents the `cancel` command of the Grid. Apply this directive to any `button`
|
|
13
13
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
14
|
-
* ([see example](slug:
|
|
14
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
15
15
|
*
|
|
16
16
|
* When a button with this directive is clicked, the
|
|
17
17
|
* [`cancel`]({% slug api_grid_gridcomponent %}#toc-cancel) event
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
/**
|
|
6
|
-
* Provides additional options for the [`editRow`]({% slug api_grid_gridcomponent %}#toc-editrow) method. [See example](
|
|
6
|
+
* Provides additional options for the [`editRow`]({% slug api_grid_gridcomponent %}#toc-editrow) method. [See example](slug:inline_editing_grid#managing-focus).
|
|
7
7
|
*
|
|
8
8
|
* @example
|
|
9
9
|
* ```typescript
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { TemplateRef } from '@angular/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
/**
|
|
8
|
-
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:
|
|
8
|
+
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
9
9
|
* Place an `<ng-template>` tag with the `kendoGridEditTemplate` directive inside a `<kendo-grid-column>` tag to define the template.
|
|
10
10
|
*
|
|
11
11
|
* The template context includes:
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
/**
|
|
12
12
|
* Represents the `remove` command of the Grid. Apply this directive to any `button` element
|
|
13
13
|
* inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
14
|
-
* ([see example](slug:
|
|
14
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
15
15
|
* When you click the button with this directive, the
|
|
16
16
|
* [`remove`]({% slug api_grid_gridcomponent %}#toc-remove) event fires.
|
|
17
17
|
* The button with `kendoGridRemoveCommand` is automatically hidden when the row is in edit mode.
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
/**
|
|
12
12
|
* Represents the `save` command of the Grid. Apply this directive to any `button`
|
|
13
13
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
14
|
-
* ([see example](slug:
|
|
14
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
15
15
|
* When you click the button with this directive, the
|
|
16
16
|
* [`save`]({% slug api_grid_gridcomponent %}#toc-save) event fires.
|
|
17
17
|
* The button with `kendoGridSaveCommand` is automatically hidden when the row is not in edit mode.
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* The interface which must be extended when creating custom edit service.
|
|
7
7
|
* This interface defines the methods that a custom editing service should implement to handle create, update, and remove operations on grid items.
|
|
8
|
-
* Set the custom edit service to the `editService` input of the respective editing directive
|
|
9
|
-
* [See
|
|
8
|
+
* Set the custom edit service to the `editService` input of the respective editing directive
|
|
9
|
+
* [See example](slug:custom_editing_service_grid).
|
|
10
10
|
*/
|
|
11
11
|
export interface EditService {
|
|
12
12
|
/**
|
|
@@ -13,7 +13,7 @@ import { AdaptiveGridService } from '../common/adaptiveness.service';
|
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
/**
|
|
15
15
|
* Represents the Kendo UI Grid external editing directive. The directive manages editing operations in the Grid when using the
|
|
16
|
-
* External Form ([see example](slug:
|
|
16
|
+
* External Form ([see example](slug:external_editing_grid#quick-setup)).
|
|
17
17
|
*
|
|
18
18
|
* @example
|
|
19
19
|
* ```typescript
|
|
@@ -9,7 +9,7 @@ import { LocalDataChangesService } from '../editing/local-data-changes.service';
|
|
|
9
9
|
import { CreateFormGroup } from '../common/create-form-group';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
/**
|
|
12
|
-
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](
|
|
12
|
+
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](slug:editing_incell_grid#quick-setup)).
|
|
13
13
|
*
|
|
14
14
|
* @example
|
|
15
15
|
* ```html
|
|
@@ -8,7 +8,7 @@ import { LocalDataChangesService } from '../editing/local-data-changes.service';
|
|
|
8
8
|
import { CreateFormGroup } from '../common/create-form-group';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
/**
|
|
11
|
-
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:
|
|
11
|
+
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:inline_editing_grid#using-reactive-forms)).
|
|
12
12
|
*
|
|
13
13
|
* @example
|
|
14
14
|
* ```html
|
|
@@ -7,7 +7,7 @@ import { GridComponent } from '../grid.component';
|
|
|
7
7
|
import { LocalDataChangesService } from '../editing/local-data-changes.service';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
/**
|
|
10
|
-
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](
|
|
10
|
+
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](slug:inline_editing_grid#using-template-driven-forms)).
|
|
11
11
|
*
|
|
12
12
|
* @example
|
|
13
13
|
* ```html
|
|
@@ -27,7 +27,7 @@ export class ColumnListKeyboardNavigation {
|
|
|
27
27
|
toggle(index, active) {
|
|
28
28
|
const element = this.items[index]?.hostElement.nativeElement.closest('.k-column-list-item');
|
|
29
29
|
element && this.renderer.setAttribute(element, 'tabindex', active ? '0' : '-1');
|
|
30
|
-
active && element?.focus();
|
|
30
|
+
active && element?.focus({ preventScroll: true });
|
|
31
31
|
}
|
|
32
32
|
toggleCheckedState() {
|
|
33
33
|
this.items[this.activeIndex].hostElement.nativeElement.closest('.k-column-list-item').firstElementChild.click();
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { Component, HostBinding, Input, ElementRef, NgZone, Renderer2, Output, EventEmitter, ViewChildren, QueryList, Optional, ChangeDetectorRef } from '@angular/core';
|
|
6
6
|
import { ColumnMenuService } from './column-menu.service';
|
|
7
7
|
import { ColumnListKeyboardNavigation } from './column-list-kb-nav.service';
|
|
8
|
-
import {
|
|
8
|
+
import { Keys, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
9
9
|
import { Subscription } from 'rxjs';
|
|
10
10
|
import { NgFor, NgIf } from '@angular/common';
|
|
11
11
|
import { CheckBoxComponent } from '@progress/kendo-angular-inputs';
|
|
@@ -136,15 +136,6 @@ export class ColumnListComponent {
|
|
|
136
136
|
this.service.menuTabbingService.lastFocusable = this.applyButton.nativeElement;
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
-
onSelectAllClick(e) {
|
|
140
|
-
if (e.target.classList.contains('k-checkbox')) {
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
e.preventDefault();
|
|
144
|
-
const label = e.target.closest('.k-column-list-item');
|
|
145
|
-
const input = label?.querySelector('input');
|
|
146
|
-
input.click();
|
|
147
|
-
}
|
|
148
139
|
onSelectAllCheckboxChange(checkedState) {
|
|
149
140
|
if (!checkedState && !this.allowHideAll) {
|
|
150
141
|
const columnsToKeep = [];
|
|
@@ -326,25 +317,6 @@ export class ColumnListComponent {
|
|
|
326
317
|
});
|
|
327
318
|
}
|
|
328
319
|
}
|
|
329
|
-
checkBoxClick(e) {
|
|
330
|
-
const closestItem = e.target.closest('.k-column-list-item');
|
|
331
|
-
if (!closestItem)
|
|
332
|
-
return;
|
|
333
|
-
const checkboxElement = closestItem.querySelector('.k-checkbox-wrap');
|
|
334
|
-
const input = checkboxElement?.querySelector('input');
|
|
335
|
-
if (e.target === input) {
|
|
336
|
-
return;
|
|
337
|
-
}
|
|
338
|
-
e.preventDefault();
|
|
339
|
-
if (input) {
|
|
340
|
-
const index = parseInt(input.getAttribute('data-index'), 10);
|
|
341
|
-
const column = this.filteredColumns[index];
|
|
342
|
-
const isDisabled = checkboxElement.classList.contains('k-disabled');
|
|
343
|
-
if (column && !isDisabled) {
|
|
344
|
-
input.click();
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
320
|
onCheckboxChange(checkedState, column, _index) {
|
|
349
321
|
column.currentlyChecked = checkedState;
|
|
350
322
|
if (this.autoSync) {
|
|
@@ -378,9 +350,7 @@ export class ColumnListComponent {
|
|
|
378
350
|
<label
|
|
379
351
|
*ngIf="showSelectAll"
|
|
380
352
|
class='k-column-list-item'
|
|
381
|
-
role="option"
|
|
382
|
-
[kendoEventsOutsideAngular]="{click: onSelectAllClick}"
|
|
383
|
-
[scope]="this">
|
|
353
|
+
role="option">
|
|
384
354
|
<kendo-checkbox
|
|
385
355
|
#checkbox
|
|
386
356
|
[inputAttributes]="{'data-index': '0'}"
|
|
@@ -393,9 +363,7 @@ export class ColumnListComponent {
|
|
|
393
363
|
<label
|
|
394
364
|
*ngFor="let column of filteredColumns; let index = index;"
|
|
395
365
|
class='k-column-list-item'
|
|
396
|
-
role="option"
|
|
397
|
-
[kendoEventsOutsideAngular]="{click: checkBoxClick}"
|
|
398
|
-
[scope]="this">
|
|
366
|
+
role="option">
|
|
399
367
|
<kendo-checkbox
|
|
400
368
|
#checkbox
|
|
401
369
|
[inputAttributes]="{'data-index': index.toString()}"
|
|
@@ -406,7 +374,7 @@ export class ColumnListComponent {
|
|
|
406
374
|
<span class="k-checkbox-label">{{ column.displayTitle }}</span>
|
|
407
375
|
</label>
|
|
408
376
|
</div>
|
|
409
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }
|
|
377
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }] });
|
|
410
378
|
}
|
|
411
379
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnListComponent, decorators: [{
|
|
412
380
|
type: Component,
|
|
@@ -422,9 +390,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
422
390
|
<label
|
|
423
391
|
*ngIf="showSelectAll"
|
|
424
392
|
class='k-column-list-item'
|
|
425
|
-
role="option"
|
|
426
|
-
[kendoEventsOutsideAngular]="{click: onSelectAllClick}"
|
|
427
|
-
[scope]="this">
|
|
393
|
+
role="option">
|
|
428
394
|
<kendo-checkbox
|
|
429
395
|
#checkbox
|
|
430
396
|
[inputAttributes]="{'data-index': '0'}"
|
|
@@ -437,9 +403,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
437
403
|
<label
|
|
438
404
|
*ngFor="let column of filteredColumns; let index = index;"
|
|
439
405
|
class='k-column-list-item'
|
|
440
|
-
role="option"
|
|
441
|
-
[kendoEventsOutsideAngular]="{click: checkBoxClick}"
|
|
442
|
-
[scope]="this">
|
|
406
|
+
role="option">
|
|
443
407
|
<kendo-checkbox
|
|
444
408
|
#checkbox
|
|
445
409
|
[inputAttributes]="{'data-index': index.toString()}"
|
|
@@ -452,7 +416,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
452
416
|
</div>
|
|
453
417
|
`,
|
|
454
418
|
standalone: true,
|
|
455
|
-
imports: [NgFor, NgIf, CheckBoxComponent
|
|
419
|
+
imports: [NgFor, NgIf, CheckBoxComponent]
|
|
456
420
|
}]
|
|
457
421
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.ColumnListKeyboardNavigation }, { type: i0.ChangeDetectorRef }, { type: i2.ColumnInfoService, decorators: [{
|
|
458
422
|
type: Optional
|
|
@@ -6,6 +6,7 @@ import { ColumnMenuItemDirective } from './column-menu-item.directive';
|
|
|
6
6
|
import { Component, ContentChildren, Inject, NgZone, QueryList } from '@angular/core';
|
|
7
7
|
import { take } from 'rxjs/operators';
|
|
8
8
|
import { ColumnMenuService } from './column-menu.service';
|
|
9
|
+
import { DropDownListComponent } from '@progress/kendo-angular-dropdowns';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
import * as i1 from "./column-menu.service";
|
|
11
12
|
/**
|
|
@@ -33,7 +34,15 @@ export class ColumnMenuContainerComponent {
|
|
|
33
34
|
else {
|
|
34
35
|
return;
|
|
35
36
|
}
|
|
36
|
-
this.ngZone.onStable.pipe(take(1)).subscribe(() =>
|
|
37
|
+
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
38
|
+
const firstFocusable = this.service.menuTabbingService.firstFocusable;
|
|
39
|
+
if (firstFocusable instanceof DropDownListComponent) {
|
|
40
|
+
firstFocusable.wrapper.nativeElement.focus({ preventScroll: true });
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
firstFocusable?.focus({ preventScroll: true });
|
|
44
|
+
}
|
|
45
|
+
});
|
|
37
46
|
}
|
|
38
47
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuContainerComponent, deps: [{ token: i1.ColumnMenuService }, { token: NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
48
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuContainerComponent, isStandalone: true, selector: "kendo-grid-columnmenu-container", queries: [{ propertyName: "columnMenuItems", predicate: ColumnMenuItemDirective, descendants: true }], ngImport: i0, template: `
|
|
@@ -353,7 +353,13 @@ export class ColumnMenuComponent {
|
|
|
353
353
|
ariaRoot && this.renderer.setAttribute(ariaRoot, 'aria-expanded', 'false');
|
|
354
354
|
}
|
|
355
355
|
focusRoot() {
|
|
356
|
-
|
|
356
|
+
if (this.isNavigable) {
|
|
357
|
+
this.navigationService.preventScroll = true;
|
|
358
|
+
this.navigationService.focusCell(0, this.column.leafIndex);
|
|
359
|
+
}
|
|
360
|
+
else {
|
|
361
|
+
this.anchor.nativeElement.focus({ preventScroll: true });
|
|
362
|
+
}
|
|
357
363
|
}
|
|
358
364
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuComponent, deps: [{ token: i1.NavigationService }, { token: i2.SinglePopupService }, { token: i3.ColumnMenuService }, { token: i4.ContextService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i5.ColumnInfoService }, { token: i6.IdService, optional: true }, { token: i7.AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Component });
|
|
359
365
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuComponent, isStandalone: true, selector: "kendo-grid-column-menu", inputs: { standalone: "standalone", column: "column", settings: "settings", sort: "sort", filter: "filter", sortable: "sortable", columnMenuTemplate: "columnMenuTemplate", tabIndex: "tabIndex" }, host: { properties: { "class.k-grid-column-menu-standalone": "this.standalone" } }, providers: [
|
|
@@ -11,7 +11,7 @@ import * as i1 from "./column-base";
|
|
|
11
11
|
import * as i2 from "../common/id.service";
|
|
12
12
|
/**
|
|
13
13
|
* Represents the command columns of the Grid. Define the content of the column inside an `<ng-template>` tag.
|
|
14
|
-
* For more information and examples, see the [
|
|
14
|
+
* For more information and examples, see the [Editing Action Buttons](slug:basics_editing_grid#editing-action-buttons) article.
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
17
|
* ```html
|
|
@@ -75,7 +75,7 @@ export class SpanColumnComponent extends ColumnBase {
|
|
|
75
75
|
includeInChooser = false;
|
|
76
76
|
/**
|
|
77
77
|
* Sets whether the edit template of the column is rendered.
|
|
78
|
-
* To enable editing for a spanned column, set an edit template for it ([see example](slug:
|
|
78
|
+
* To enable editing for a spanned column, set an edit template for it ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
79
79
|
* @default false
|
|
80
80
|
*/
|
|
81
81
|
set editable(value) {
|
|
@@ -15,7 +15,7 @@ import * as i2 from "../common/provider.service";
|
|
|
15
15
|
/**
|
|
16
16
|
* Represents the `cancel` command of the Grid. Apply this directive to any `button`
|
|
17
17
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
18
|
-
* ([see example](slug:
|
|
18
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
19
19
|
*
|
|
20
20
|
* When a button with this directive is clicked, the
|
|
21
21
|
* [`cancel`]({% slug api_grid_gridcomponent %}#toc-cancel) event
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { Directive, TemplateRef, Optional } from '@angular/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
/**
|
|
8
|
-
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:
|
|
8
|
+
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
9
9
|
* Place an `<ng-template>` tag with the `kendoGridEditTemplate` directive inside a `<kendo-grid-column>` tag to define the template.
|
|
10
10
|
*
|
|
11
11
|
* The template context includes:
|
|
@@ -15,7 +15,7 @@ import * as i2 from "../common/provider.service";
|
|
|
15
15
|
/**
|
|
16
16
|
* Represents the `remove` command of the Grid. Apply this directive to any `button` element
|
|
17
17
|
* inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
18
|
-
* ([see example](slug:
|
|
18
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
19
19
|
* When you click the button with this directive, the
|
|
20
20
|
* [`remove`]({% slug api_grid_gridcomponent %}#toc-remove) event fires.
|
|
21
21
|
* The button with `kendoGridRemoveCommand` is automatically hidden when the row is in edit mode.
|
|
@@ -15,7 +15,7 @@ import * as i2 from "../common/provider.service";
|
|
|
15
15
|
/**
|
|
16
16
|
* Represents the `save` command of the Grid. Apply this directive to any `button`
|
|
17
17
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
18
|
-
* ([see example](slug:
|
|
18
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
19
19
|
* When you click the button with this directive, the
|
|
20
20
|
* [`save`]({% slug api_grid_gridcomponent %}#toc-save) event fires.
|
|
21
21
|
* The button with `kendoGridSaveCommand` is automatically hidden when the row is not in edit mode.
|
|
@@ -16,7 +16,7 @@ import * as i2 from "../editing/local-data-changes.service";
|
|
|
16
16
|
import * as i3 from "../common/adaptiveness.service";
|
|
17
17
|
/**
|
|
18
18
|
* Represents the Kendo UI Grid external editing directive. The directive manages editing operations in the Grid when using the
|
|
19
|
-
* External Form ([see example](slug:
|
|
19
|
+
* External Form ([see example](slug:external_editing_grid#quick-setup)).
|
|
20
20
|
*
|
|
21
21
|
* @example
|
|
22
22
|
* ```typescript
|
|
@@ -12,7 +12,7 @@ import * as i0 from "@angular/core";
|
|
|
12
12
|
import * as i1 from "../grid.component";
|
|
13
13
|
import * as i2 from "../editing/local-data-changes.service";
|
|
14
14
|
/**
|
|
15
|
-
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](
|
|
15
|
+
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](slug:editing_incell_grid#quick-setup)).
|
|
16
16
|
*
|
|
17
17
|
* @example
|
|
18
18
|
* ```html
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
import * as i1 from "../grid.component";
|
|
12
12
|
import * as i2 from "../editing/local-data-changes.service";
|
|
13
13
|
/**
|
|
14
|
-
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:
|
|
14
|
+
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:inline_editing_grid#using-reactive-forms)).
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
17
|
* ```html
|
|
@@ -10,7 +10,7 @@ import * as i0 from "@angular/core";
|
|
|
10
10
|
import * as i1 from "../grid.component";
|
|
11
11
|
import * as i2 from "../editing/local-data-changes.service";
|
|
12
12
|
/**
|
|
13
|
-
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](
|
|
13
|
+
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](slug:inline_editing_grid#using-template-driven-forms)).
|
|
14
14
|
*
|
|
15
15
|
* @example
|
|
16
16
|
* ```html
|
|
@@ -45,11 +45,11 @@ export class FilterMenuInputWrapperComponent extends FilterInputWrapperComponent
|
|
|
45
45
|
this.filterService.menuTabbingService.firstFocusable = this.firstOperatorDropDown;
|
|
46
46
|
if (this.ctx.grid?.isActionSheetExpanded) {
|
|
47
47
|
this.subs.add(this.adaptiveGridService.animationEnd.subscribe(() => {
|
|
48
|
-
this.firstOperatorDropDown.focus();
|
|
48
|
+
this.firstOperatorDropDown.wrapper.nativeElement.focus({ preventScroll: true });
|
|
49
49
|
}));
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
52
|
-
this.firstOperatorDropDown.focus();
|
|
52
|
+
this.firstOperatorDropDown.wrapper.nativeElement.focus({ preventScroll: true });
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -139,7 +139,13 @@ export class FilterMenuComponent {
|
|
|
139
139
|
this.cdr.markForCheck();
|
|
140
140
|
}
|
|
141
141
|
focusRoot() {
|
|
142
|
-
|
|
142
|
+
if (this.isNavigable) {
|
|
143
|
+
this.navigationService.preventScroll = true;
|
|
144
|
+
this.navigationService.focusCell(0, this.column.leafIndex);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
this.anchor.nativeElement.focus({ preventScroll: true });
|
|
148
|
+
}
|
|
143
149
|
}
|
|
144
150
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuComponent, deps: [{ token: i1.FilterService }, { token: i2.SinglePopupService }, { token: i3.ContextService }, { token: i4.NavigationService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i5.AdaptiveGridService }, { token: i0.NgZone }, { token: i6.IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
145
151
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterMenuComponent, isStandalone: true, selector: "kendo-grid-filter-menu", inputs: { column: "column", filter: "filter", tabIndex: "tabIndex" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
|
|
@@ -123,8 +123,14 @@ export class LogicalCellDirective {
|
|
|
123
123
|
this.focusGroup.focus();
|
|
124
124
|
}
|
|
125
125
|
else {
|
|
126
|
-
if (!this.logicalSlaveCell &&
|
|
127
|
-
this.
|
|
126
|
+
if (!this.logicalSlaveCell &&
|
|
127
|
+
this.navigationService.autoFocusCell(this.logicalColIndex, this.logicalColIndex + this.colSpan - 1)) {
|
|
128
|
+
this.microtask(() => {
|
|
129
|
+
if (this.isFocused()) {
|
|
130
|
+
el.focus({ preventScroll: this.navigationService.preventScroll });
|
|
131
|
+
this.navigationService.preventScroll = false;
|
|
132
|
+
}
|
|
133
|
+
});
|
|
128
134
|
}
|
|
129
135
|
this.renderer.addClass(el, 'k-focus');
|
|
130
136
|
}
|
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '20.1.0-develop.
|
|
13
|
+
publishDate: 1759477759,
|
|
14
|
+
version: '20.1.0-develop.7',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -216,7 +216,7 @@ export class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
216
216
|
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
217
217
|
this.buttonElement?.removeAttribute('aria-controls');
|
|
218
218
|
this.host.selected = false;
|
|
219
|
-
focusAnchor && this.buttonElement?.focus();
|
|
219
|
+
focusAnchor && this.buttonElement?.focus({ preventScroll: true });
|
|
220
220
|
}
|
|
221
221
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i1.PopupService }, { token: i2.ToolBarButtonComponent }, { token: i3.ContextService }, { token: i0.NgZone }, { token: i2.RefreshService }, { token: i4.AdaptiveGridService }, { token: i5.ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
222
222
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll", filterable: "filterable", showSelectAll: "showSelectAll" }, usesInheritance: true, ngImport: i0 });
|
|
@@ -91,7 +91,7 @@ export class FilterToolbarToolComponent {
|
|
|
91
91
|
}
|
|
92
92
|
ngAfterViewInit() {
|
|
93
93
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
94
|
-
this.filterItems?.get(0)?.nativeElement.focus();
|
|
94
|
+
this.filterItems?.get(0)?.nativeElement.focus({ preventScroll: true });
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
97
|
ngOnDestroy() {
|
|
@@ -34,12 +34,12 @@ export class GroupToolbarToolComponent {
|
|
|
34
34
|
if (items?.first && (!isPresent(this.currentFocusedItemIndex) || this.currentFocusedItemIndex >= items.length || this.currentFocusedItemIndex < 0)) {
|
|
35
35
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
36
36
|
this.currentFocusedItemIndex = 0;
|
|
37
|
-
this.groupItems.first.nativeElement.focus();
|
|
37
|
+
this.groupItems.first.nativeElement.focus({ preventScroll: true });
|
|
38
38
|
});
|
|
39
39
|
return;
|
|
40
40
|
}
|
|
41
41
|
if (items?.first) {
|
|
42
|
-
items.get(this.currentFocusedItemIndex).nativeElement.focus();
|
|
42
|
+
items.get(this.currentFocusedItemIndex).nativeElement.focus({ preventScroll: true });
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
get groupItems() {
|
|
@@ -70,7 +70,7 @@ export class SortToolbarToolComponent {
|
|
|
70
70
|
}
|
|
71
71
|
ngAfterViewInit() {
|
|
72
72
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
73
|
-
this.sortItems?.get(0)?.nativeElement.focus();
|
|
73
|
+
this.sortItems?.get(0)?.nativeElement.focus({ preventScroll: true });
|
|
74
74
|
});
|
|
75
75
|
}
|
|
76
76
|
ngOnDestroy() {
|
|
@@ -1933,7 +1933,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1933
1933
|
}] }]; } });
|
|
1934
1934
|
|
|
1935
1935
|
/**
|
|
1936
|
-
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:
|
|
1936
|
+
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
1937
1937
|
* Place an `<ng-template>` tag with the `kendoGridEditTemplate` directive inside a `<kendo-grid-column>` tag to define the template.
|
|
1938
1938
|
*
|
|
1939
1939
|
* The template context includes:
|
|
@@ -3045,7 +3045,7 @@ class SpanColumnComponent extends ColumnBase {
|
|
|
3045
3045
|
includeInChooser = false;
|
|
3046
3046
|
/**
|
|
3047
3047
|
* Sets whether the edit template of the column is rendered.
|
|
3048
|
-
* To enable editing for a spanned column, set an edit template for it ([see example](slug:
|
|
3048
|
+
* To enable editing for a spanned column, set an edit template for it ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
3049
3049
|
* @default false
|
|
3050
3050
|
*/
|
|
3051
3051
|
set editable(value) {
|
|
@@ -3507,6 +3507,7 @@ class NavigationService {
|
|
|
3507
3507
|
return columnIndexInsideGroup !== columnGroupChildren.length - 1;
|
|
3508
3508
|
}
|
|
3509
3509
|
}
|
|
3510
|
+
preventScroll = false;
|
|
3510
3511
|
viewport;
|
|
3511
3512
|
columnViewport;
|
|
3512
3513
|
activeRowIndex = 0;
|
|
@@ -5264,8 +5265,14 @@ class LogicalCellDirective {
|
|
|
5264
5265
|
this.focusGroup.focus();
|
|
5265
5266
|
}
|
|
5266
5267
|
else {
|
|
5267
|
-
if (!this.logicalSlaveCell &&
|
|
5268
|
-
this.
|
|
5268
|
+
if (!this.logicalSlaveCell &&
|
|
5269
|
+
this.navigationService.autoFocusCell(this.logicalColIndex, this.logicalColIndex + this.colSpan - 1)) {
|
|
5270
|
+
this.microtask(() => {
|
|
5271
|
+
if (this.isFocused()) {
|
|
5272
|
+
el.focus({ preventScroll: this.navigationService.preventScroll });
|
|
5273
|
+
this.navigationService.preventScroll = false;
|
|
5274
|
+
}
|
|
5275
|
+
});
|
|
5269
5276
|
}
|
|
5270
5277
|
this.renderer.addClass(el, 'k-focus');
|
|
5271
5278
|
}
|
|
@@ -8964,11 +8971,11 @@ class FilterMenuInputWrapperComponent extends FilterInputWrapperComponent {
|
|
|
8964
8971
|
this.filterService.menuTabbingService.firstFocusable = this.firstOperatorDropDown;
|
|
8965
8972
|
if (this.ctx.grid?.isActionSheetExpanded) {
|
|
8966
8973
|
this.subs.add(this.adaptiveGridService.animationEnd.subscribe(() => {
|
|
8967
|
-
this.firstOperatorDropDown.focus();
|
|
8974
|
+
this.firstOperatorDropDown.wrapper.nativeElement.focus({ preventScroll: true });
|
|
8968
8975
|
}));
|
|
8969
8976
|
}
|
|
8970
8977
|
else {
|
|
8971
|
-
this.firstOperatorDropDown.focus();
|
|
8978
|
+
this.firstOperatorDropDown.wrapper.nativeElement.focus({ preventScroll: true });
|
|
8972
8979
|
}
|
|
8973
8980
|
}
|
|
8974
8981
|
}
|
|
@@ -11072,7 +11079,13 @@ class FilterMenuComponent {
|
|
|
11072
11079
|
this.cdr.markForCheck();
|
|
11073
11080
|
}
|
|
11074
11081
|
focusRoot() {
|
|
11075
|
-
|
|
11082
|
+
if (this.isNavigable) {
|
|
11083
|
+
this.navigationService.preventScroll = true;
|
|
11084
|
+
this.navigationService.focusCell(0, this.column.leafIndex);
|
|
11085
|
+
}
|
|
11086
|
+
else {
|
|
11087
|
+
this.anchor.nativeElement.focus({ preventScroll: true });
|
|
11088
|
+
}
|
|
11076
11089
|
}
|
|
11077
11090
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuComponent, deps: [{ token: FilterService }, { token: SinglePopupService }, { token: ContextService }, { token: NavigationService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: AdaptiveGridService }, { token: i0.NgZone }, { token: IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
11078
11091
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterMenuComponent, isStandalone: true, selector: "kendo-grid-filter-menu", inputs: { column: "column", filter: "filter", tabIndex: "tabIndex" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
|
|
@@ -12087,7 +12100,7 @@ class ColumnListKeyboardNavigation {
|
|
|
12087
12100
|
toggle(index, active) {
|
|
12088
12101
|
const element = this.items[index]?.hostElement.nativeElement.closest('.k-column-list-item');
|
|
12089
12102
|
element && this.renderer.setAttribute(element, 'tabindex', active ? '0' : '-1');
|
|
12090
|
-
active && element?.focus();
|
|
12103
|
+
active && element?.focus({ preventScroll: true });
|
|
12091
12104
|
}
|
|
12092
12105
|
toggleCheckedState() {
|
|
12093
12106
|
this.items[this.activeIndex].hostElement.nativeElement.closest('.k-column-list-item').firstElementChild.click();
|
|
@@ -12217,15 +12230,6 @@ class ColumnListComponent {
|
|
|
12217
12230
|
this.service.menuTabbingService.lastFocusable = this.applyButton.nativeElement;
|
|
12218
12231
|
}
|
|
12219
12232
|
}
|
|
12220
|
-
onSelectAllClick(e) {
|
|
12221
|
-
if (e.target.classList.contains('k-checkbox')) {
|
|
12222
|
-
return;
|
|
12223
|
-
}
|
|
12224
|
-
e.preventDefault();
|
|
12225
|
-
const label = e.target.closest('.k-column-list-item');
|
|
12226
|
-
const input = label?.querySelector('input');
|
|
12227
|
-
input.click();
|
|
12228
|
-
}
|
|
12229
12233
|
onSelectAllCheckboxChange(checkedState) {
|
|
12230
12234
|
if (!checkedState && !this.allowHideAll) {
|
|
12231
12235
|
const columnsToKeep = [];
|
|
@@ -12407,25 +12411,6 @@ class ColumnListComponent {
|
|
|
12407
12411
|
});
|
|
12408
12412
|
}
|
|
12409
12413
|
}
|
|
12410
|
-
checkBoxClick(e) {
|
|
12411
|
-
const closestItem = e.target.closest('.k-column-list-item');
|
|
12412
|
-
if (!closestItem)
|
|
12413
|
-
return;
|
|
12414
|
-
const checkboxElement = closestItem.querySelector('.k-checkbox-wrap');
|
|
12415
|
-
const input = checkboxElement?.querySelector('input');
|
|
12416
|
-
if (e.target === input) {
|
|
12417
|
-
return;
|
|
12418
|
-
}
|
|
12419
|
-
e.preventDefault();
|
|
12420
|
-
if (input) {
|
|
12421
|
-
const index = parseInt(input.getAttribute('data-index'), 10);
|
|
12422
|
-
const column = this.filteredColumns[index];
|
|
12423
|
-
const isDisabled = checkboxElement.classList.contains('k-disabled');
|
|
12424
|
-
if (column && !isDisabled) {
|
|
12425
|
-
input.click();
|
|
12426
|
-
}
|
|
12427
|
-
}
|
|
12428
|
-
}
|
|
12429
12414
|
onCheckboxChange(checkedState, column, _index) {
|
|
12430
12415
|
column.currentlyChecked = checkedState;
|
|
12431
12416
|
if (this.autoSync) {
|
|
@@ -12459,9 +12444,7 @@ class ColumnListComponent {
|
|
|
12459
12444
|
<label
|
|
12460
12445
|
*ngIf="showSelectAll"
|
|
12461
12446
|
class='k-column-list-item'
|
|
12462
|
-
role="option"
|
|
12463
|
-
[kendoEventsOutsideAngular]="{click: onSelectAllClick}"
|
|
12464
|
-
[scope]="this">
|
|
12447
|
+
role="option">
|
|
12465
12448
|
<kendo-checkbox
|
|
12466
12449
|
#checkbox
|
|
12467
12450
|
[inputAttributes]="{'data-index': '0'}"
|
|
@@ -12474,9 +12457,7 @@ class ColumnListComponent {
|
|
|
12474
12457
|
<label
|
|
12475
12458
|
*ngFor="let column of filteredColumns; let index = index;"
|
|
12476
12459
|
class='k-column-list-item'
|
|
12477
|
-
role="option"
|
|
12478
|
-
[kendoEventsOutsideAngular]="{click: checkBoxClick}"
|
|
12479
|
-
[scope]="this">
|
|
12460
|
+
role="option">
|
|
12480
12461
|
<kendo-checkbox
|
|
12481
12462
|
#checkbox
|
|
12482
12463
|
[inputAttributes]="{'data-index': index.toString()}"
|
|
@@ -12487,7 +12468,7 @@ class ColumnListComponent {
|
|
|
12487
12468
|
<span class="k-checkbox-label">{{ column.displayTitle }}</span>
|
|
12488
12469
|
</label>
|
|
12489
12470
|
</div>
|
|
12490
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }
|
|
12471
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }] });
|
|
12491
12472
|
}
|
|
12492
12473
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnListComponent, decorators: [{
|
|
12493
12474
|
type: Component,
|
|
@@ -12503,9 +12484,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12503
12484
|
<label
|
|
12504
12485
|
*ngIf="showSelectAll"
|
|
12505
12486
|
class='k-column-list-item'
|
|
12506
|
-
role="option"
|
|
12507
|
-
[kendoEventsOutsideAngular]="{click: onSelectAllClick}"
|
|
12508
|
-
[scope]="this">
|
|
12487
|
+
role="option">
|
|
12509
12488
|
<kendo-checkbox
|
|
12510
12489
|
#checkbox
|
|
12511
12490
|
[inputAttributes]="{'data-index': '0'}"
|
|
@@ -12518,9 +12497,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12518
12497
|
<label
|
|
12519
12498
|
*ngFor="let column of filteredColumns; let index = index;"
|
|
12520
12499
|
class='k-column-list-item'
|
|
12521
|
-
role="option"
|
|
12522
|
-
[kendoEventsOutsideAngular]="{click: checkBoxClick}"
|
|
12523
|
-
[scope]="this">
|
|
12500
|
+
role="option">
|
|
12524
12501
|
<kendo-checkbox
|
|
12525
12502
|
#checkbox
|
|
12526
12503
|
[inputAttributes]="{'data-index': index.toString()}"
|
|
@@ -12533,7 +12510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12533
12510
|
</div>
|
|
12534
12511
|
`,
|
|
12535
12512
|
standalone: true,
|
|
12536
|
-
imports: [NgFor, NgIf, CheckBoxComponent
|
|
12513
|
+
imports: [NgFor, NgIf, CheckBoxComponent]
|
|
12537
12514
|
}]
|
|
12538
12515
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: ColumnListKeyboardNavigation }, { type: i0.ChangeDetectorRef }, { type: ColumnInfoService, decorators: [{
|
|
12539
12516
|
type: Optional
|
|
@@ -13375,7 +13352,7 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
13375
13352
|
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
13376
13353
|
this.buttonElement?.removeAttribute('aria-controls');
|
|
13377
13354
|
this.host.selected = false;
|
|
13378
|
-
focusAnchor && this.buttonElement?.focus();
|
|
13355
|
+
focusAnchor && this.buttonElement?.focus({ preventScroll: true });
|
|
13379
13356
|
}
|
|
13380
13357
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i2.PopupService }, { token: i54.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i54.RefreshService }, { token: AdaptiveGridService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13381
13358
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll", filterable: "filterable", showSelectAll: "showSelectAll" }, usesInheritance: true, ngImport: i0 });
|
|
@@ -14899,7 +14876,15 @@ class ColumnMenuContainerComponent {
|
|
|
14899
14876
|
else {
|
|
14900
14877
|
return;
|
|
14901
14878
|
}
|
|
14902
|
-
this.ngZone.onStable.pipe(take(1)).subscribe(() =>
|
|
14879
|
+
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
14880
|
+
const firstFocusable = this.service.menuTabbingService.firstFocusable;
|
|
14881
|
+
if (firstFocusable instanceof DropDownListComponent) {
|
|
14882
|
+
firstFocusable.wrapper.nativeElement.focus({ preventScroll: true });
|
|
14883
|
+
}
|
|
14884
|
+
else {
|
|
14885
|
+
firstFocusable?.focus({ preventScroll: true });
|
|
14886
|
+
}
|
|
14887
|
+
});
|
|
14903
14888
|
}
|
|
14904
14889
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuContainerComponent, deps: [{ token: ColumnMenuService }, { token: NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
14905
14890
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuContainerComponent, isStandalone: true, selector: "kendo-grid-columnmenu-container", queries: [{ propertyName: "columnMenuItems", predicate: ColumnMenuItemDirective, descendants: true }], ngImport: i0, template: `
|
|
@@ -15354,7 +15339,13 @@ class ColumnMenuComponent {
|
|
|
15354
15339
|
ariaRoot && this.renderer.setAttribute(ariaRoot, 'aria-expanded', 'false');
|
|
15355
15340
|
}
|
|
15356
15341
|
focusRoot() {
|
|
15357
|
-
|
|
15342
|
+
if (this.isNavigable) {
|
|
15343
|
+
this.navigationService.preventScroll = true;
|
|
15344
|
+
this.navigationService.focusCell(0, this.column.leafIndex);
|
|
15345
|
+
}
|
|
15346
|
+
else {
|
|
15347
|
+
this.anchor.nativeElement.focus({ preventScroll: true });
|
|
15348
|
+
}
|
|
15358
15349
|
}
|
|
15359
15350
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuComponent, deps: [{ token: NavigationService }, { token: SinglePopupService }, { token: ColumnMenuService }, { token: ContextService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: ColumnInfoService }, { token: IdService, optional: true }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15360
15351
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuComponent, isStandalone: true, selector: "kendo-grid-column-menu", inputs: { standalone: "standalone", column: "column", settings: "settings", sort: "sort", filter: "filter", sortable: "sortable", columnMenuTemplate: "columnMenuTemplate", tabIndex: "tabIndex" }, host: { properties: { "class.k-grid-column-menu-standalone": "this.standalone" } }, providers: [
|
|
@@ -19549,7 +19540,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19549
19540
|
|
|
19550
19541
|
/**
|
|
19551
19542
|
* Represents the command columns of the Grid. Define the content of the column inside an `<ng-template>` tag.
|
|
19552
|
-
* For more information and examples, see the [
|
|
19543
|
+
* For more information and examples, see the [Editing Action Buttons](slug:basics_editing_grid#editing-action-buttons) article.
|
|
19553
19544
|
*
|
|
19554
19545
|
* @example
|
|
19555
19546
|
* ```html
|
|
@@ -21796,7 +21787,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
21796
21787
|
/**
|
|
21797
21788
|
* Represents the `cancel` command of the Grid. Apply this directive to any `button`
|
|
21798
21789
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
21799
|
-
* ([see example](slug:
|
|
21790
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
21800
21791
|
*
|
|
21801
21792
|
* When a button with this directive is clicked, the
|
|
21802
21793
|
* [`cancel`]({% slug api_grid_gridcomponent %}#toc-cancel) event
|
|
@@ -21900,7 +21891,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
21900
21891
|
/**
|
|
21901
21892
|
* Represents the `save` command of the Grid. Apply this directive to any `button`
|
|
21902
21893
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
21903
|
-
* ([see example](slug:
|
|
21894
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
21904
21895
|
* When you click the button with this directive, the
|
|
21905
21896
|
* [`save`]({% slug api_grid_gridcomponent %}#toc-save) event fires.
|
|
21906
21897
|
* The button with `kendoGridSaveCommand` is automatically hidden when the row is not in edit mode.
|
|
@@ -22003,7 +21994,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
22003
21994
|
/**
|
|
22004
21995
|
* Represents the `remove` command of the Grid. Apply this directive to any `button` element
|
|
22005
21996
|
* inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
22006
|
-
* ([see example](slug:
|
|
21997
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
22007
21998
|
* When you click the button with this directive, the
|
|
22008
21999
|
* [`remove`]({% slug api_grid_gridcomponent %}#toc-remove) event fires.
|
|
22009
22000
|
* The button with `kendoGridRemoveCommand` is automatically hidden when the row is in edit mode.
|
|
@@ -22427,8 +22418,8 @@ const packageMetadata = {
|
|
|
22427
22418
|
productName: 'Kendo UI for Angular',
|
|
22428
22419
|
productCode: 'KENDOUIANGULAR',
|
|
22429
22420
|
productCodes: ['KENDOUIANGULAR'],
|
|
22430
|
-
publishDate:
|
|
22431
|
-
version: '20.1.0-develop.
|
|
22421
|
+
publishDate: 1759477759,
|
|
22422
|
+
version: '20.1.0-develop.7',
|
|
22432
22423
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
22433
22424
|
};
|
|
22434
22425
|
|
|
@@ -26941,7 +26932,7 @@ class FilterToolbarToolComponent {
|
|
|
26941
26932
|
}
|
|
26942
26933
|
ngAfterViewInit() {
|
|
26943
26934
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
26944
|
-
this.filterItems?.get(0)?.nativeElement.focus();
|
|
26935
|
+
this.filterItems?.get(0)?.nativeElement.focus({ preventScroll: true });
|
|
26945
26936
|
});
|
|
26946
26937
|
}
|
|
26947
26938
|
ngOnDestroy() {
|
|
@@ -27127,7 +27118,7 @@ class SortToolbarToolComponent {
|
|
|
27127
27118
|
}
|
|
27128
27119
|
ngAfterViewInit() {
|
|
27129
27120
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
27130
|
-
this.sortItems?.get(0)?.nativeElement.focus();
|
|
27121
|
+
this.sortItems?.get(0)?.nativeElement.focus({ preventScroll: true });
|
|
27131
27122
|
});
|
|
27132
27123
|
}
|
|
27133
27124
|
ngOnDestroy() {
|
|
@@ -27689,12 +27680,12 @@ class GroupToolbarToolComponent {
|
|
|
27689
27680
|
if (items?.first && (!isPresent$1(this.currentFocusedItemIndex) || this.currentFocusedItemIndex >= items.length || this.currentFocusedItemIndex < 0)) {
|
|
27690
27681
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
27691
27682
|
this.currentFocusedItemIndex = 0;
|
|
27692
|
-
this.groupItems.first.nativeElement.focus();
|
|
27683
|
+
this.groupItems.first.nativeElement.focus({ preventScroll: true });
|
|
27693
27684
|
});
|
|
27694
27685
|
return;
|
|
27695
27686
|
}
|
|
27696
27687
|
if (items?.first) {
|
|
27697
|
-
items.get(this.currentFocusedItemIndex).nativeElement.focus();
|
|
27688
|
+
items.get(this.currentFocusedItemIndex).nativeElement.focus({ preventScroll: true });
|
|
27698
27689
|
}
|
|
27699
27690
|
}
|
|
27700
27691
|
get groupItems() {
|
|
@@ -34722,7 +34713,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34722
34713
|
}] });
|
|
34723
34714
|
|
|
34724
34715
|
/**
|
|
34725
|
-
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](
|
|
34716
|
+
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](slug:inline_editing_grid#using-template-driven-forms)).
|
|
34726
34717
|
*
|
|
34727
34718
|
* @example
|
|
34728
34719
|
* ```html
|
|
@@ -34799,7 +34790,7 @@ const markAllAsTouched = (control) => {
|
|
|
34799
34790
|
};
|
|
34800
34791
|
|
|
34801
34792
|
/**
|
|
34802
|
-
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:
|
|
34793
|
+
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:inline_editing_grid#using-reactive-forms)).
|
|
34803
34794
|
*
|
|
34804
34795
|
* @example
|
|
34805
34796
|
* ```html
|
|
@@ -34848,7 +34839,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34848
34839
|
}] } });
|
|
34849
34840
|
|
|
34850
34841
|
/**
|
|
34851
|
-
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](
|
|
34842
|
+
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](slug:editing_incell_grid#quick-setup)).
|
|
34852
34843
|
*
|
|
34853
34844
|
* @example
|
|
34854
34845
|
* ```html
|
|
@@ -34934,7 +34925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34934
34925
|
|
|
34935
34926
|
/**
|
|
34936
34927
|
* Represents the Kendo UI Grid external editing directive. The directive manages editing operations in the Grid when using the
|
|
34937
|
-
* External Form ([see example](slug:
|
|
34928
|
+
* External Form ([see example](slug:external_editing_grid#quick-setup)).
|
|
34938
34929
|
*
|
|
34939
34930
|
* @example
|
|
34940
34931
|
* ```typescript
|
|
@@ -59,6 +59,7 @@ export declare class NavigationService implements OnDestroy {
|
|
|
59
59
|
get activeCell(): NavigationCell;
|
|
60
60
|
get activeRow(): NavigationRow;
|
|
61
61
|
get isColumnResizable(): boolean;
|
|
62
|
+
preventScroll: boolean;
|
|
62
63
|
viewport: NavigationViewport;
|
|
63
64
|
columnViewport: NavigationViewport;
|
|
64
65
|
private activeRowIndex;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-grid",
|
|
3
|
-
"version": "20.1.0-develop.
|
|
3
|
+
"version": "20.1.0-develop.7",
|
|
4
4
|
"description": "Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"package": {
|
|
42
42
|
"productName": "Kendo UI for Angular",
|
|
43
43
|
"productCode": "KENDOUIANGULAR",
|
|
44
|
-
"publishDate":
|
|
44
|
+
"publishDate": 1759477759,
|
|
45
45
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
46
46
|
}
|
|
47
47
|
},
|
|
@@ -54,29 +54,29 @@
|
|
|
54
54
|
"@progress/kendo-data-query": "^1.0.0",
|
|
55
55
|
"@progress/kendo-drawing": "^1.21.0",
|
|
56
56
|
"@progress/kendo-licensing": "^1.7.0",
|
|
57
|
-
"@progress/kendo-angular-buttons": "20.1.0-develop.
|
|
58
|
-
"@progress/kendo-angular-common": "20.1.0-develop.
|
|
59
|
-
"@progress/kendo-angular-dateinputs": "20.1.0-develop.
|
|
60
|
-
"@progress/kendo-angular-layout": "20.1.0-develop.
|
|
61
|
-
"@progress/kendo-angular-navigation": "20.1.0-develop.
|
|
62
|
-
"@progress/kendo-angular-dropdowns": "20.1.0-develop.
|
|
63
|
-
"@progress/kendo-angular-excel-export": "20.1.0-develop.
|
|
64
|
-
"@progress/kendo-angular-icons": "20.1.0-develop.
|
|
65
|
-
"@progress/kendo-angular-inputs": "20.1.0-develop.
|
|
66
|
-
"@progress/kendo-angular-conversational-ui": "20.1.0-develop.
|
|
67
|
-
"@progress/kendo-angular-intl": "20.1.0-develop.
|
|
68
|
-
"@progress/kendo-angular-l10n": "20.1.0-develop.
|
|
69
|
-
"@progress/kendo-angular-label": "20.1.0-develop.
|
|
70
|
-
"@progress/kendo-angular-pager": "20.1.0-develop.
|
|
71
|
-
"@progress/kendo-angular-pdf-export": "20.1.0-develop.
|
|
72
|
-
"@progress/kendo-angular-popup": "20.1.0-develop.
|
|
73
|
-
"@progress/kendo-angular-toolbar": "20.1.0-develop.
|
|
74
|
-
"@progress/kendo-angular-utils": "20.1.0-develop.
|
|
57
|
+
"@progress/kendo-angular-buttons": "20.1.0-develop.7",
|
|
58
|
+
"@progress/kendo-angular-common": "20.1.0-develop.7",
|
|
59
|
+
"@progress/kendo-angular-dateinputs": "20.1.0-develop.7",
|
|
60
|
+
"@progress/kendo-angular-layout": "20.1.0-develop.7",
|
|
61
|
+
"@progress/kendo-angular-navigation": "20.1.0-develop.7",
|
|
62
|
+
"@progress/kendo-angular-dropdowns": "20.1.0-develop.7",
|
|
63
|
+
"@progress/kendo-angular-excel-export": "20.1.0-develop.7",
|
|
64
|
+
"@progress/kendo-angular-icons": "20.1.0-develop.7",
|
|
65
|
+
"@progress/kendo-angular-inputs": "20.1.0-develop.7",
|
|
66
|
+
"@progress/kendo-angular-conversational-ui": "20.1.0-develop.7",
|
|
67
|
+
"@progress/kendo-angular-intl": "20.1.0-develop.7",
|
|
68
|
+
"@progress/kendo-angular-l10n": "20.1.0-develop.7",
|
|
69
|
+
"@progress/kendo-angular-label": "20.1.0-develop.7",
|
|
70
|
+
"@progress/kendo-angular-pager": "20.1.0-develop.7",
|
|
71
|
+
"@progress/kendo-angular-pdf-export": "20.1.0-develop.7",
|
|
72
|
+
"@progress/kendo-angular-popup": "20.1.0-develop.7",
|
|
73
|
+
"@progress/kendo-angular-toolbar": "20.1.0-develop.7",
|
|
74
|
+
"@progress/kendo-angular-utils": "20.1.0-develop.7",
|
|
75
75
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
76
76
|
},
|
|
77
77
|
"dependencies": {
|
|
78
78
|
"tslib": "^2.3.1",
|
|
79
|
-
"@progress/kendo-angular-schematics": "20.1.0-develop.
|
|
79
|
+
"@progress/kendo-angular-schematics": "20.1.0-develop.7",
|
|
80
80
|
"@progress/kendo-common": "^1.0.1",
|
|
81
81
|
"@progress/kendo-file-saver": "^1.0.0"
|
|
82
82
|
},
|
|
@@ -4,14 +4,14 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
4
4
|
function default_1(options) {
|
|
5
5
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
|
|
6
6
|
// peer deps of the dropdowns
|
|
7
|
-
'@progress/kendo-angular-treeview': '20.1.0-develop.
|
|
8
|
-
'@progress/kendo-angular-navigation': '20.1.0-develop.
|
|
7
|
+
'@progress/kendo-angular-treeview': '20.1.0-develop.7',
|
|
8
|
+
'@progress/kendo-angular-navigation': '20.1.0-develop.7',
|
|
9
9
|
// peer dependency of kendo-angular-inputs
|
|
10
|
-
'@progress/kendo-angular-dialog': '20.1.0-develop.
|
|
10
|
+
'@progress/kendo-angular-dialog': '20.1.0-develop.7',
|
|
11
11
|
// peer dependency of kendo-angular-icons
|
|
12
12
|
'@progress/kendo-svg-icons': '^4.0.0',
|
|
13
13
|
// peer dependency of kendo-angular-layout
|
|
14
|
-
'@progress/kendo-angular-progressbar': '20.1.0-develop.
|
|
14
|
+
'@progress/kendo-angular-progressbar': '20.1.0-develop.7'
|
|
15
15
|
} });
|
|
16
16
|
return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
|
|
17
17
|
}
|