@progress/kendo-angular-grid 11.4.0-develop.1 → 11.4.0-develop.11
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/common/provider.service.d.ts +6 -0
- package/esm2020/column-menu/column-list.component.mjs +1 -1
- package/esm2020/column-menu/column-menu-chooser.component.mjs +1 -1
- package/esm2020/column-menu/column-menu-filter.component.mjs +1 -1
- package/esm2020/column-menu/column-menu-position.component.mjs +1 -1
- package/esm2020/common/provider.service.mjs +9 -3
- package/esm2020/filtering/cell/date-filter-cell.component.mjs +1 -1
- package/esm2020/filtering/cell/filter-cell.component.mjs +7 -3
- package/esm2020/filtering/menu/date-filter-menu-input.component.mjs +1 -1
- package/esm2020/filtering/menu/filter-menu-container.component.mjs +1 -1
- package/esm2020/filtering/shared-filtering.module.mjs +1 -1
- package/esm2020/grid.component.mjs +54 -4
- package/esm2020/grid.module.mjs +8 -3
- package/esm2020/grouping/group-panel.component.mjs +16 -4
- package/esm2020/index.mjs +2 -0
- package/esm2020/localization/messages.mjs +7 -1
- package/esm2020/navigation/navigation.service.mjs +5 -0
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/rendering/cell.component.mjs +1 -1
- package/esm2020/rendering/footer/footer.component.mjs +7 -3
- package/esm2020/rendering/header/header.component.mjs +72 -22
- package/esm2020/rendering/list.component.mjs +8 -12
- package/esm2020/rendering/table-body.component.mjs +4 -2
- package/esm2020/rendering/toolbar/toolbar-focusable.directive.mjs +63 -0
- package/esm2020/rendering/toolbar/toolbar-navigation.service.mjs +53 -0
- package/esm2020/rendering/toolbar/toolbar-position.mjs +5 -0
- package/esm2020/rendering/toolbar/toolbar-template.directive.mjs +1 -1
- package/esm2020/rendering/toolbar/toolbar.component.mjs +74 -9
- package/fesm2015/progress-kendo-angular-grid.mjs +366 -63
- package/fesm2020/progress-kendo-angular-grid.mjs +363 -63
- package/filtering/cell/filter-cell.component.d.ts +1 -0
- package/grid.component.d.ts +5 -0
- package/grid.module.d.ts +97 -96
- package/grouping/group-panel.component.d.ts +5 -1
- package/index.d.ts +2 -0
- package/localization/messages.d.ts +13 -1
- package/navigation/navigable-settings.d.ts +1 -1
- package/navigation/navigation.service.d.ts +2 -0
- package/package.json +14 -14
- package/rendering/footer/footer.component.d.ts +1 -0
- package/rendering/header/header.component.d.ts +5 -1
- package/rendering/list.component.d.ts +2 -2
- package/rendering/toolbar/toolbar-focusable.directive.d.ts +29 -0
- package/rendering/toolbar/toolbar-navigation.service.d.ts +21 -0
- package/rendering/toolbar/toolbar-position.d.ts +5 -0
- package/rendering/toolbar/toolbar.component.d.ts +11 -2
- package/schematics/ngAdd/index.js +2 -2
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Renderer2 } from '@angular/core';
|
|
5
6
|
import type { GridComponent } from '../grid.component';
|
|
7
|
+
import { GridToolbarNavigationService } from '../rendering/toolbar/toolbar-navigation.service';
|
|
6
8
|
import * as i0 from "@angular/core";
|
|
7
9
|
/**
|
|
8
10
|
* @hidden
|
|
@@ -14,7 +16,11 @@ import * as i0 from "@angular/core";
|
|
|
14
16
|
* and a avoids dependency cycles between components.
|
|
15
17
|
*/
|
|
16
18
|
export declare class ContextService {
|
|
19
|
+
private renderer;
|
|
17
20
|
grid: GridComponent;
|
|
21
|
+
topToolbarNavigation: GridToolbarNavigationService;
|
|
22
|
+
bottomToolbarNavigation: GridToolbarNavigationService;
|
|
23
|
+
constructor(renderer: Renderer2);
|
|
18
24
|
static ɵfac: i0.ɵɵFactoryDeclaration<ContextService, never>;
|
|
19
25
|
static ɵprov: i0.ɵɵInjectableDeclaration<ContextService>;
|
|
20
26
|
}
|
|
@@ -20,7 +20,7 @@ export class ColumnListComponent {
|
|
|
20
20
|
this.columnChange = new EventEmitter();
|
|
21
21
|
this.autoSync = true;
|
|
22
22
|
this.allowHideAll = false;
|
|
23
|
-
this.actionsClass = 'k-
|
|
23
|
+
this.actionsClass = 'k-actions';
|
|
24
24
|
this.unlockedCount = 0;
|
|
25
25
|
}
|
|
26
26
|
get className() {
|
|
@@ -63,7 +63,7 @@ export class ColumnMenuPositionComponent extends ColumnMenuItemBase {
|
|
|
63
63
|
/**
|
|
64
64
|
* @hidden
|
|
65
65
|
*/
|
|
66
|
-
this.actionsClass = 'k-
|
|
66
|
+
this.actionsClass = 'k-actions';
|
|
67
67
|
this.setColumnPositionIcon = setColumnPositionIcon;
|
|
68
68
|
this._isLast = false;
|
|
69
69
|
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Injectable } from '@angular/core';
|
|
5
|
+
import { Injectable, Renderer2 } from '@angular/core';
|
|
6
|
+
import { GridToolbarNavigationService } from '../rendering/toolbar/toolbar-navigation.service';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
/**
|
|
8
9
|
* @hidden
|
|
@@ -14,9 +15,14 @@ import * as i0 from "@angular/core";
|
|
|
14
15
|
* and a avoids dependency cycles between components.
|
|
15
16
|
*/
|
|
16
17
|
export class ContextService {
|
|
18
|
+
constructor(renderer) {
|
|
19
|
+
this.renderer = renderer;
|
|
20
|
+
this.topToolbarNavigation = new GridToolbarNavigationService(this.renderer);
|
|
21
|
+
this.bottomToolbarNavigation = new GridToolbarNavigationService(this.renderer);
|
|
22
|
+
}
|
|
17
23
|
}
|
|
18
|
-
ContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
24
|
+
ContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
19
25
|
ContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService });
|
|
20
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, decorators: [{
|
|
21
27
|
type: Injectable
|
|
22
|
-
}] });
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
|
|
@@ -94,7 +94,7 @@ DateFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
94
94
|
</kendo-datepicker-messages>
|
|
95
95
|
</kendo-datepicker>
|
|
96
96
|
</kendo-grid-filter-wrapper-cell>
|
|
97
|
-
`, isInline: true, components: [{ type: i4.FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { type: i5.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }, { type: i5.DatePickerCustomMessagesComponent, selector: "kendo-datepicker-messages" }], directives: [{ type: i6.FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { type: i7.FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }] });
|
|
97
|
+
`, isInline: true, components: [{ type: i4.FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { type: i5.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "subtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }, { type: i5.DatePickerCustomMessagesComponent, selector: "kendo-datepicker-messages" }], directives: [{ type: i6.FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { type: i7.FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }] });
|
|
98
98
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterCellComponent, decorators: [{
|
|
99
99
|
type: Component,
|
|
100
100
|
args: [{
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, Input } from '@angular/core';
|
|
5
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
6
6
|
import { ColumnComponent } from '../../columns/column.component';
|
|
7
7
|
import { isPresent, isNullOrEmptyString } from '../../utils';
|
|
8
8
|
import { cloneFilters } from '../../common/filter-descriptor-differ';
|
|
@@ -14,6 +14,7 @@ import * as i2 from "./filter-cell-host.directive";
|
|
|
14
14
|
*/
|
|
15
15
|
export class FilterCellComponent {
|
|
16
16
|
constructor() {
|
|
17
|
+
this.hostRole = 'gridcell';
|
|
17
18
|
this.size = 'medium';
|
|
18
19
|
this._templateContext = {};
|
|
19
20
|
}
|
|
@@ -37,7 +38,7 @@ export class FilterCellComponent {
|
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
FilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
40
|
-
FilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterCellComponent, selector: "[kendoGridFilterCell]", inputs: { column: "column", filter: "filter", size: "size" }, ngImport: i0, template: `
|
|
41
|
+
FilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterCellComponent, selector: "[kendoGridFilterCell]", inputs: { column: "column", filter: "filter", size: "size" }, host: { properties: { "attr.role": "this.hostRole" } }, ngImport: i0, template: `
|
|
41
42
|
<ng-container *ngIf="isFilterable">
|
|
42
43
|
<ng-container [ngSwitch]="hasTemplate">
|
|
43
44
|
<ng-container *ngSwitchCase="false">
|
|
@@ -74,7 +75,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
74
75
|
</ng-container>
|
|
75
76
|
`
|
|
76
77
|
}]
|
|
77
|
-
}], propDecorators: {
|
|
78
|
+
}], propDecorators: { hostRole: [{
|
|
79
|
+
type: HostBinding,
|
|
80
|
+
args: ['attr.role']
|
|
81
|
+
}], column: [{
|
|
78
82
|
type: Input
|
|
79
83
|
}], filter: [{
|
|
80
84
|
type: Input
|
|
@@ -80,7 +80,7 @@ DateFilterMenuInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
80
80
|
</kendo-datepicker-messages>
|
|
81
81
|
</kendo-datepicker>
|
|
82
82
|
</kendo-grid-filter-menu-input-wrapper>
|
|
83
|
-
`, isInline: true, components: [{ type: i3.FilterMenuInputWrapperComponent, selector: "kendo-grid-filter-menu-input-wrapper", inputs: ["filterService", "isFirstDropDown", "menuTabbingService", "currentFilter"] }, { type: i4.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }, { type: i4.DatePickerCustomMessagesComponent, selector: "kendo-datepicker-messages" }], directives: [{ type: i5.FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }] });
|
|
83
|
+
`, isInline: true, components: [{ type: i3.FilterMenuInputWrapperComponent, selector: "kendo-grid-filter-menu-input-wrapper", inputs: ["filterService", "isFirstDropDown", "menuTabbingService", "currentFilter"] }, { type: i4.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "subtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }, { type: i4.DatePickerCustomMessagesComponent, selector: "kendo-datepicker-messages" }], directives: [{ type: i5.FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }] });
|
|
84
84
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterMenuInputComponent, decorators: [{
|
|
85
85
|
type: Component,
|
|
86
86
|
args: [{
|
|
@@ -72,6 +72,7 @@ import { CellLoadingTemplateDirective } from './rendering/cell-loading.template.
|
|
|
72
72
|
import { ContextService } from './common/provider.service';
|
|
73
73
|
import { LoadingTemplateDirective } from './rendering/loading-template.directive';
|
|
74
74
|
import { SizingOptionsService } from './layout/sizing-options.service';
|
|
75
|
+
import { guid } from '@progress/kendo-angular-common';
|
|
75
76
|
import * as i0 from "@angular/core";
|
|
76
77
|
import * as i1 from "./layout/browser-support.service";
|
|
77
78
|
import * as i2 from "./selection/selection.service";
|
|
@@ -446,6 +447,7 @@ export class GridComponent {
|
|
|
446
447
|
this.hostClass = true;
|
|
447
448
|
this.footer = new QueryList();
|
|
448
449
|
this.selectionDirective = false;
|
|
450
|
+
this.ariaRootId = `k-${guid()}`;
|
|
449
451
|
this.columnsContainer = new ColumnsContainer(() => this.columnList.filterHierarchy(column => {
|
|
450
452
|
if (!isUniversal()) {
|
|
451
453
|
column.matchesMedia = this.matchesMedia(column);
|
|
@@ -615,7 +617,7 @@ export class GridComponent {
|
|
|
615
617
|
*/
|
|
616
618
|
set navigable(value) {
|
|
617
619
|
if (typeof value === 'boolean') {
|
|
618
|
-
this._navigable = value ? ['table', 'pager'] : [];
|
|
620
|
+
this._navigable = value ? ['table', 'pager', 'toolbar'] : [];
|
|
619
621
|
return;
|
|
620
622
|
}
|
|
621
623
|
this._navigable = value;
|
|
@@ -1178,6 +1180,12 @@ export class GridComponent {
|
|
|
1178
1180
|
get ariaLabel() {
|
|
1179
1181
|
return this.localization.get('gridLabel');
|
|
1180
1182
|
}
|
|
1183
|
+
/**
|
|
1184
|
+
* @hidden
|
|
1185
|
+
*/
|
|
1186
|
+
messageFor(token) {
|
|
1187
|
+
return this.localization.get(token);
|
|
1188
|
+
}
|
|
1181
1189
|
/**
|
|
1182
1190
|
* Switches the specified table row in the edit mode ([see example]({% slug inline_editing_grid %}#toc-editing-records-1)).
|
|
1183
1191
|
*
|
|
@@ -2409,12 +2417,24 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
2409
2417
|
|
|
2410
2418
|
i18n-selectPage="kendo.grid.selectPage|The text of the title and aria-label attributes applied to the page chooser in the Grid Pager"
|
|
2411
2419
|
selectPage="Select page"
|
|
2420
|
+
|
|
2421
|
+
i18n-topToolbarLabel="kendo.grid.topToolbarLabel|The label for the Grid top toolbar"
|
|
2422
|
+
topToolbarLabel="Top toolbar"
|
|
2423
|
+
|
|
2424
|
+
i18n-bottomToolbarLabel="kendo.grid.bottomToolbarLabel|The label for the Grid bottom toolbar"
|
|
2425
|
+
bottomToolbarLabel="Bottom toolbar"
|
|
2426
|
+
|
|
2427
|
+
i18n-groupPanelLabel="kendo.grid.groupPanelLabel|The label for the Grid group panel toolbar"
|
|
2428
|
+
groupPanelLabel="Group panel"
|
|
2412
2429
|
>
|
|
2413
2430
|
</ng-container>
|
|
2414
2431
|
<kendo-grid-toolbar
|
|
2415
2432
|
class="k-toolbar k-grid-toolbar"
|
|
2416
2433
|
*ngIf="showTopToolbar"
|
|
2417
2434
|
[size]="size"
|
|
2435
|
+
[attr.aria-label]="messageFor('topToolbarLabel')"
|
|
2436
|
+
[navigable]="navigation.toolbarEnabled"
|
|
2437
|
+
[attr.aria-controls]="ariaRootId"
|
|
2418
2438
|
position="top"></kendo-grid-toolbar>
|
|
2419
2439
|
<kendo-pager
|
|
2420
2440
|
*ngIf="showTopPager"
|
|
@@ -2431,13 +2451,18 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
2431
2451
|
</kendo-pager>
|
|
2432
2452
|
<kendo-grid-group-panel
|
|
2433
2453
|
*ngIf="showGroupPanel"
|
|
2454
|
+
[navigable]="navigation.toolbarEnabled"
|
|
2434
2455
|
[text]="groupableEmptyText"
|
|
2435
2456
|
[groups]="group"
|
|
2457
|
+
role="toolbar"
|
|
2458
|
+
[attr.aria-label]="messageFor('groupPanelLabel')"
|
|
2459
|
+
[attr.aria-controls]="ariaRootId"
|
|
2436
2460
|
(change)="groupChange.emit($event)">
|
|
2437
2461
|
</kendo-grid-group-panel>
|
|
2438
2462
|
<div #ariaRoot
|
|
2439
2463
|
class="k-grid-aria-root"
|
|
2440
2464
|
role="grid"
|
|
2465
|
+
[id]="ariaRootId"
|
|
2441
2466
|
[attr.aria-label]="ariaLabel"
|
|
2442
2467
|
[attr.aria-rowcount]="ariaRowCount"
|
|
2443
2468
|
[attr.aria-colcount]="ariaColCount">
|
|
@@ -2465,6 +2490,7 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
2465
2490
|
[detailTemplate]="detailTemplate">
|
|
2466
2491
|
</colgroup>
|
|
2467
2492
|
<thead kendoGridHeader
|
|
2493
|
+
role="rowgroup"
|
|
2468
2494
|
[resizable]="resizable"
|
|
2469
2495
|
[scrollable]="true"
|
|
2470
2496
|
[columns]="$any(lockedColumns)"
|
|
@@ -2502,7 +2528,7 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
2502
2528
|
</colgroup>
|
|
2503
2529
|
<thead kendoGridHeader
|
|
2504
2530
|
[resizable]="resizable"
|
|
2505
|
-
role="
|
|
2531
|
+
role="rowgroup"
|
|
2506
2532
|
[scrollable]="true"
|
|
2507
2533
|
[columns]="headerColumns"
|
|
2508
2534
|
[totalColumnLevels]="totalColumnLevels"
|
|
@@ -2689,8 +2715,11 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
2689
2715
|
class="k-toolbar k-grid-toolbar k-grid-toolbar-bottom"
|
|
2690
2716
|
*ngIf="showBottomToolbar"
|
|
2691
2717
|
[size]="size"
|
|
2718
|
+
[navigable]="navigation.toolbarEnabled"
|
|
2719
|
+
[attr.aria-label]="messageFor('bottomToolbarLabel')"
|
|
2720
|
+
[attr.aria-controls]="ariaRootId"
|
|
2692
2721
|
position="bottom"></kendo-grid-toolbar>
|
|
2693
|
-
`, isInline: true, components: [{ type: i24.ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size"] }, { type: i25.PagerComponent, selector: "kendo-pager", inputs: ["total", "skip", "pageSize", "options", "size", "template"], outputs: ["pageChange"] }, { type: i26.GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "groups"], outputs: ["change"] }, { type: i27.ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { type: i28.HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "tabIndex", "size"] }, { type: i29.ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "stickyRowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { type: i30.FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex"] }, { type: i31.TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "data", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "showGroupFooters", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "rowClass"] }, { type: i32.LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }], directives: [{ type: i33.LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { type: i34.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i35.TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: i36.GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { type: i37.ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { type: i38.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: i39.GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }], encapsulation: i0.ViewEncapsulation.None });
|
|
2722
|
+
`, isInline: true, components: [{ type: i24.ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { type: i25.PagerComponent, selector: "kendo-pager", inputs: ["total", "skip", "pageSize", "options", "size", "template"], outputs: ["pageChange"] }, { type: i26.GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { type: i27.ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { type: i28.HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "tabIndex", "size"] }, { type: i29.ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "stickyRowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { type: i30.FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex"] }, { type: i31.TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "data", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "showGroupFooters", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "rowClass"] }, { type: i32.LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }], directives: [{ type: i33.LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { type: i34.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i35.TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: i36.GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { type: i37.ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { type: i38.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: i39.GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }], encapsulation: i0.ViewEncapsulation.None });
|
|
2694
2723
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridComponent, decorators: [{
|
|
2695
2724
|
type: Component,
|
|
2696
2725
|
args: [{
|
|
@@ -2957,12 +2986,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2957
2986
|
|
|
2958
2987
|
i18n-selectPage="kendo.grid.selectPage|The text of the title and aria-label attributes applied to the page chooser in the Grid Pager"
|
|
2959
2988
|
selectPage="Select page"
|
|
2989
|
+
|
|
2990
|
+
i18n-topToolbarLabel="kendo.grid.topToolbarLabel|The label for the Grid top toolbar"
|
|
2991
|
+
topToolbarLabel="Top toolbar"
|
|
2992
|
+
|
|
2993
|
+
i18n-bottomToolbarLabel="kendo.grid.bottomToolbarLabel|The label for the Grid bottom toolbar"
|
|
2994
|
+
bottomToolbarLabel="Bottom toolbar"
|
|
2995
|
+
|
|
2996
|
+
i18n-groupPanelLabel="kendo.grid.groupPanelLabel|The label for the Grid group panel toolbar"
|
|
2997
|
+
groupPanelLabel="Group panel"
|
|
2960
2998
|
>
|
|
2961
2999
|
</ng-container>
|
|
2962
3000
|
<kendo-grid-toolbar
|
|
2963
3001
|
class="k-toolbar k-grid-toolbar"
|
|
2964
3002
|
*ngIf="showTopToolbar"
|
|
2965
3003
|
[size]="size"
|
|
3004
|
+
[attr.aria-label]="messageFor('topToolbarLabel')"
|
|
3005
|
+
[navigable]="navigation.toolbarEnabled"
|
|
3006
|
+
[attr.aria-controls]="ariaRootId"
|
|
2966
3007
|
position="top"></kendo-grid-toolbar>
|
|
2967
3008
|
<kendo-pager
|
|
2968
3009
|
*ngIf="showTopPager"
|
|
@@ -2979,13 +3020,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2979
3020
|
</kendo-pager>
|
|
2980
3021
|
<kendo-grid-group-panel
|
|
2981
3022
|
*ngIf="showGroupPanel"
|
|
3023
|
+
[navigable]="navigation.toolbarEnabled"
|
|
2982
3024
|
[text]="groupableEmptyText"
|
|
2983
3025
|
[groups]="group"
|
|
3026
|
+
role="toolbar"
|
|
3027
|
+
[attr.aria-label]="messageFor('groupPanelLabel')"
|
|
3028
|
+
[attr.aria-controls]="ariaRootId"
|
|
2984
3029
|
(change)="groupChange.emit($event)">
|
|
2985
3030
|
</kendo-grid-group-panel>
|
|
2986
3031
|
<div #ariaRoot
|
|
2987
3032
|
class="k-grid-aria-root"
|
|
2988
3033
|
role="grid"
|
|
3034
|
+
[id]="ariaRootId"
|
|
2989
3035
|
[attr.aria-label]="ariaLabel"
|
|
2990
3036
|
[attr.aria-rowcount]="ariaRowCount"
|
|
2991
3037
|
[attr.aria-colcount]="ariaColCount">
|
|
@@ -3013,6 +3059,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3013
3059
|
[detailTemplate]="detailTemplate">
|
|
3014
3060
|
</colgroup>
|
|
3015
3061
|
<thead kendoGridHeader
|
|
3062
|
+
role="rowgroup"
|
|
3016
3063
|
[resizable]="resizable"
|
|
3017
3064
|
[scrollable]="true"
|
|
3018
3065
|
[columns]="$any(lockedColumns)"
|
|
@@ -3050,7 +3097,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3050
3097
|
</colgroup>
|
|
3051
3098
|
<thead kendoGridHeader
|
|
3052
3099
|
[resizable]="resizable"
|
|
3053
|
-
role="
|
|
3100
|
+
role="rowgroup"
|
|
3054
3101
|
[scrollable]="true"
|
|
3055
3102
|
[columns]="headerColumns"
|
|
3056
3103
|
[totalColumnLevels]="totalColumnLevels"
|
|
@@ -3237,6 +3284,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
3237
3284
|
class="k-toolbar k-grid-toolbar k-grid-toolbar-bottom"
|
|
3238
3285
|
*ngIf="showBottomToolbar"
|
|
3239
3286
|
[size]="size"
|
|
3287
|
+
[navigable]="navigation.toolbarEnabled"
|
|
3288
|
+
[attr.aria-label]="messageFor('bottomToolbarLabel')"
|
|
3289
|
+
[attr.aria-controls]="ariaRootId"
|
|
3240
3290
|
position="bottom"></kendo-grid-toolbar>
|
|
3241
3291
|
`
|
|
3242
3292
|
}]
|
package/esm2020/grid.module.mjs
CHANGED
|
@@ -30,6 +30,7 @@ import { InCellEditingDirective } from './editing-directives/in-cell-editing.dir
|
|
|
30
30
|
import { GroupBindingDirective } from './grouping/group-scroll-binding.directive';
|
|
31
31
|
import { FilterMenuModule } from "./filtering/menu/filter-menu.module";
|
|
32
32
|
import { ColumnMenuModule } from './column-menu/column-menu.module';
|
|
33
|
+
import { GridToolbarFocusableDirective } from './rendering/toolbar/toolbar-focusable.directive';
|
|
33
34
|
import * as i0 from "@angular/core";
|
|
34
35
|
import * as i1 from "./grouping/group-header-template.directive";
|
|
35
36
|
import * as i2 from "./grouping/group-header-column-template.directive";
|
|
@@ -129,6 +130,7 @@ const exportedModules = [
|
|
|
129
130
|
InCellEditingDirective,
|
|
130
131
|
ExpandDetailsDirective,
|
|
131
132
|
ExpandGroupDirective,
|
|
133
|
+
GridToolbarFocusableDirective,
|
|
132
134
|
...GroupModule.exports(),
|
|
133
135
|
...SharedModule.exports(),
|
|
134
136
|
...BodyModule.exports(),
|
|
@@ -155,7 +157,8 @@ const declarations = [
|
|
|
155
157
|
ExpandGroupDirective,
|
|
156
158
|
GroupBindingDirective,
|
|
157
159
|
GridMarqueeDirective,
|
|
158
|
-
GridSpacerComponent
|
|
160
|
+
GridSpacerComponent,
|
|
161
|
+
GridToolbarFocusableDirective
|
|
159
162
|
];
|
|
160
163
|
/**
|
|
161
164
|
* Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
|
|
@@ -206,7 +209,8 @@ GridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13
|
|
|
206
209
|
ExpandGroupDirective,
|
|
207
210
|
GroupBindingDirective,
|
|
208
211
|
GridMarqueeDirective,
|
|
209
|
-
GridSpacerComponent
|
|
212
|
+
GridSpacerComponent,
|
|
213
|
+
GridToolbarFocusableDirective], imports: [CommonModule,
|
|
210
214
|
GroupModule,
|
|
211
215
|
SharedModule,
|
|
212
216
|
BodyModule,
|
|
@@ -228,7 +232,8 @@ GridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13
|
|
|
228
232
|
ReactiveEditingDirective,
|
|
229
233
|
InCellEditingDirective,
|
|
230
234
|
ExpandDetailsDirective,
|
|
231
|
-
ExpandGroupDirective,
|
|
235
|
+
ExpandGroupDirective,
|
|
236
|
+
GridToolbarFocusableDirective, i1.GroupHeaderTemplateDirective, i2.GroupHeaderColumnTemplateDirective, i3.GroupFooterTemplateDirective, i4.ColumnComponent, i5.SpanColumnComponent, i6.ColumnGroupComponent, i7.FooterTemplateDirective, i8.DetailTemplateDirective, i9.FocusableDirective, i10.GridTableDirective, i11.CommandColumnComponent, i12.CheckboxColumnComponent, i13.SelectionCheckboxDirective, i14.CellTemplateDirective, i15.NoRecordsTemplateDirective, i16.EditTemplateDirective, i17.EditCommandDirective, i18.CancelCommandDirective, i19.SaveCommandDirective, i20.RemoveCommandDirective, i21.AddCommandDirective, i22.CellLoadingTemplateDirective, i23.LoadingTemplateDirective, i24.HeaderTemplateDirective, i25.SelectAllCheckboxDirective, i26.PagerComponent, i27.PagerPrevButtonsComponent, i28.PagerNextButtonsComponent, i29.PagerNumericButtonsComponent, i30.PagerInputComponent, i31.PagerInfoComponent, i32.PagerPageSizesComponent, i33.PagerTemplateDirective, i34.PagerDropDownListDirective, i35.PagerInputDirective, i36.FilterRowComponent, i37.FilterCellComponent, i38.FilterCellTemplateDirective, i39.FilterCellOperatorsComponent, i40.StringFilterCellComponent, i41.NumericFilterCellComponent, i42.AutoCompleteFilterCellComponent, i43.BooleanFilterCellComponent, i44.DateFilterCellComponent, i39.FilterCellOperatorsComponent, i45.ContainsFilterOperatorComponent, i46.DoesNotContainFilterOperatorComponent, i47.EndsWithFilterOperatorComponent, i48.EqualFilterOperatorComponent, i49.IsEmptyFilterOperatorComponent, i50.IsNotEmptyFilterOperatorComponent, i51.IsNotNullFilterOperatorComponent, i52.IsNullFilterOperatorComponent, i53.NotEqualFilterOperatorComponent, i54.StartsWithFilterOperatorComponent, i55.GreaterFilterOperatorComponent, i56.GreaterOrEqualToFilterOperatorComponent, i57.LessFilterOperatorComponent, i58.LessOrEqualToFilterOperatorComponent, i59.AfterFilterOperatorComponent, i60.AfterEqFilterOperatorComponent, i61.BeforeEqFilterOperatorComponent, i62.BeforeFilterOperatorComponent, i63.StringFilterMenuComponent, i64.FilterMenuTemplateDirective, i65.NumericFilterMenuComponent, i66.DateFilterMenuComponent, i67.BooleanFilterMenuComponent, i68.FilterMenuDropDownListDirective, i69.BooleanFilterRadioButtonDirective, i39.FilterCellOperatorsComponent, i45.ContainsFilterOperatorComponent, i46.DoesNotContainFilterOperatorComponent, i47.EndsWithFilterOperatorComponent, i48.EqualFilterOperatorComponent, i49.IsEmptyFilterOperatorComponent, i50.IsNotEmptyFilterOperatorComponent, i51.IsNotNullFilterOperatorComponent, i52.IsNullFilterOperatorComponent, i53.NotEqualFilterOperatorComponent, i54.StartsWithFilterOperatorComponent, i55.GreaterFilterOperatorComponent, i56.GreaterOrEqualToFilterOperatorComponent, i57.LessFilterOperatorComponent, i58.LessOrEqualToFilterOperatorComponent, i59.AfterFilterOperatorComponent, i60.AfterEqFilterOperatorComponent, i61.BeforeEqFilterOperatorComponent, i62.BeforeFilterOperatorComponent, i70.ColumnChooserComponent, i71.ColumnMenuFilterComponent, i72.ColumnMenuItemComponent, i73.ColumnMenuItemContentTemplateDirective, i74.ColumnMenuSortComponent, i75.ColumnMenuLockComponent, i76.ColumnMenuStickComponent, i77.ColumnMenuPositionComponent, i78.ColumnMenuChooserComponent, i79.ColumnMenuTemplateDirective, i80.ColumnMenuContainerComponent, i81.ColumnMenuItemDirective, i82.ColumnMenuComponent, i83.ColumnMenuAutoSizeColumnComponent, i84.ColumnMenuAutoSizeAllColumnsComponent] });
|
|
232
237
|
GridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridModule, imports: [[
|
|
233
238
|
CommonModule,
|
|
234
239
|
GroupModule,
|
|
@@ -78,6 +78,12 @@ export class GroupPanelComponent {
|
|
|
78
78
|
this.targetSubscription.unsubscribe();
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
+
messageFor(token) {
|
|
82
|
+
return this.localization.get(token);
|
|
83
|
+
}
|
|
84
|
+
getTitle(group) {
|
|
85
|
+
return this.messageFor(group.dir === 'desc' ? 'sortedDescending' : 'sortedAscending');
|
|
86
|
+
}
|
|
81
87
|
getDirectionIcon(group) {
|
|
82
88
|
return group.dir === 'desc' ? 'sort-desc-sm' : 'sort-asc-sm';
|
|
83
89
|
}
|
|
@@ -143,7 +149,7 @@ export class GroupPanelComponent {
|
|
|
143
149
|
}
|
|
144
150
|
}
|
|
145
151
|
GroupPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupPanelComponent, deps: [{ token: i1.DragHintService }, { token: i2.DropCueService }, { token: i3.GroupInfoService }, { token: i4.LocalizationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
146
|
-
GroupPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: { text: "text", groups: "groups" }, outputs: { change: "change" }, host: { properties: { "class.k-grouping-header": "this.groupHeaderClass" } }, viewQueries: [{ propertyName: "dropTargets", predicate: DropTargetDirective, descendants: true }], ngImport: i0, template: `
|
|
152
|
+
GroupPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: { text: "text", navigable: "navigable", groups: "groups" }, outputs: { change: "change" }, host: { properties: { "class.k-grouping-header": "this.groupHeaderClass" } }, viewQueries: [{ propertyName: "dropTargets", predicate: DropTargetDirective, descendants: true }], ngImport: i0, template: `
|
|
147
153
|
<div
|
|
148
154
|
*ngIf="groups.length === 0"
|
|
149
155
|
class="k-grouping-drop-container"
|
|
@@ -157,12 +163,14 @@ GroupPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
157
163
|
|
|
158
164
|
<kendo-chiplist
|
|
159
165
|
*ngIf="groups.length !== 0"
|
|
160
|
-
|
|
166
|
+
[navigable]="navigable"
|
|
167
|
+
role="none">
|
|
161
168
|
<kendo-chip
|
|
162
169
|
*ngFor="let group of groups; let index = index;"
|
|
163
170
|
kendoDropTarget
|
|
164
171
|
kendoDraggableColumn
|
|
165
172
|
kendoDraggable
|
|
173
|
+
[title]="getTitle(group)"
|
|
166
174
|
[enableDrag]="true"
|
|
167
175
|
[context]="{
|
|
168
176
|
field: group.field,
|
|
@@ -187,7 +195,7 @@ GroupPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
187
195
|
}"
|
|
188
196
|
kendoDropTarget
|
|
189
197
|
> </div>
|
|
190
|
-
`, isInline: true, components: [{ type: i5.ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: ["selection", "size"], outputs: ["selectedChange", "remove"] }, { type: i5.ChipComponent, selector: "kendo-chip", inputs: ["label", "icon", "svgIcon", "iconClass", "avatarClass", "selected", "removable", "removeIcon", "removeSvgIcon", "disabled", "size", "rounded", "fillMode", "themeColor"], outputs: ["remove", "contentClick"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["context"], outputs: ["enter", "leave", "drop"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i8.DraggableColumnDirective, selector: "[kendoDraggableColumn]", inputs: ["context", "enableDrag"], outputs: ["drag"] }, { type: i9.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
198
|
+
`, isInline: true, components: [{ type: i5.ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: ["selection", "size", "role", "navigable"], outputs: ["selectedChange", "remove"] }, { type: i5.ChipComponent, selector: "kendo-chip", inputs: ["label", "icon", "svgIcon", "iconClass", "avatarClass", "selected", "removable", "removeIcon", "removeSvgIcon", "disabled", "size", "rounded", "fillMode", "themeColor"], outputs: ["remove", "contentClick"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["context"], outputs: ["enter", "leave", "drop"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i8.DraggableColumnDirective, selector: "[kendoDraggableColumn]", inputs: ["context", "enableDrag"], outputs: ["drag"] }, { type: i9.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
191
199
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupPanelComponent, decorators: [{
|
|
192
200
|
type: Component,
|
|
193
201
|
args: [{
|
|
@@ -207,12 +215,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
207
215
|
|
|
208
216
|
<kendo-chiplist
|
|
209
217
|
*ngIf="groups.length !== 0"
|
|
210
|
-
|
|
218
|
+
[navigable]="navigable"
|
|
219
|
+
role="none">
|
|
211
220
|
<kendo-chip
|
|
212
221
|
*ngFor="let group of groups; let index = index;"
|
|
213
222
|
kendoDropTarget
|
|
214
223
|
kendoDraggableColumn
|
|
215
224
|
kendoDraggable
|
|
225
|
+
[title]="getTitle(group)"
|
|
216
226
|
[enableDrag]="true"
|
|
217
227
|
[context]="{
|
|
218
228
|
field: group.field,
|
|
@@ -246,6 +256,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
246
256
|
args: ["class.k-grouping-header"]
|
|
247
257
|
}], text: [{
|
|
248
258
|
type: Input
|
|
259
|
+
}], navigable: [{
|
|
260
|
+
type: Input
|
|
249
261
|
}], groups: [{
|
|
250
262
|
type: Input
|
|
251
263
|
}], dropTargets: [{
|
package/esm2020/index.mjs
CHANGED
|
@@ -14,6 +14,8 @@ export { ColumnGroupComponent } from './columns/column-group.component';
|
|
|
14
14
|
export { CheckboxColumnComponent } from './columns/checkbox-column.component';
|
|
15
15
|
export { ToolbarComponent } from './rendering/toolbar/toolbar.component';
|
|
16
16
|
export { ToolbarTemplateDirective } from './rendering/toolbar/toolbar-template.directive';
|
|
17
|
+
export { GridToolbarFocusableDirective } from './rendering/toolbar/toolbar-focusable.directive';
|
|
18
|
+
export { GridToolbarNavigationService } from './rendering/toolbar/toolbar-navigation.service';
|
|
17
19
|
export { CellTemplateDirective } from './rendering/cell-template.directive';
|
|
18
20
|
export { CellLoadingTemplateDirective } from './rendering/cell-loading.template.directive';
|
|
19
21
|
export { LoadingTemplateDirective } from './rendering/loading-template.directive';
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
export class GridMessages extends ComponentMessages {
|
|
12
12
|
}
|
|
13
13
|
GridMessages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
14
|
-
GridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: GridMessages, selector: "kendo-grid-messages-base", inputs: { groupPanelEmpty: "groupPanelEmpty", noRecords: "noRecords", pagerLabel: "pagerLabel", pagerFirstPage: "pagerFirstPage", pagerLastPage: "pagerLastPage", pagerPreviousPage: "pagerPreviousPage", pagerNextPage: "pagerNextPage", pagerPage: "pagerPage", pagerItemsPerPage: "pagerItemsPerPage", pagerOf: "pagerOf", pagerItems: "pagerItems", pagerPageNumberInputTitle: "pagerPageNumberInputTitle", selectPage: "selectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterGteOperator: "filterGteOperator", filterGtOperator: "filterGtOperator", filterLteOperator: "filterLteOperator", filterLtOperator: "filterLtOperator", filterIsTrue: "filterIsTrue", filterIsFalse: "filterIsFalse", filterBooleanAll: "filterBooleanAll", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", columnsApply: "columnsApply", columnsReset: "columnsReset", detailExpand: "detailExpand", detailCollapse: "detailCollapse", filterDateToday: "filterDateToday", filterDateToggle: "filterDateToggle", filterNumericDecrement: "filterNumericDecrement", filterNumericIncrement: "filterNumericIncrement", selectionCheckboxLabel: "selectionCheckboxLabel", selectAllCheckboxLabel: "selectAllCheckboxLabel", groupCollapse: "groupCollapse", groupExpand: "groupExpand" }, usesInheritance: true, ngImport: i0 });
|
|
14
|
+
GridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: GridMessages, selector: "kendo-grid-messages-base", inputs: { groupPanelEmpty: "groupPanelEmpty", noRecords: "noRecords", pagerLabel: "pagerLabel", pagerFirstPage: "pagerFirstPage", pagerLastPage: "pagerLastPage", pagerPreviousPage: "pagerPreviousPage", pagerNextPage: "pagerNextPage", pagerPage: "pagerPage", pagerItemsPerPage: "pagerItemsPerPage", pagerOf: "pagerOf", pagerItems: "pagerItems", pagerPageNumberInputTitle: "pagerPageNumberInputTitle", selectPage: "selectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterGteOperator: "filterGteOperator", filterGtOperator: "filterGtOperator", filterLteOperator: "filterLteOperator", filterLtOperator: "filterLtOperator", filterIsTrue: "filterIsTrue", filterIsFalse: "filterIsFalse", filterBooleanAll: "filterBooleanAll", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", columnsApply: "columnsApply", columnsReset: "columnsReset", detailExpand: "detailExpand", detailCollapse: "detailCollapse", filterDateToday: "filterDateToday", filterDateToggle: "filterDateToggle", filterNumericDecrement: "filterNumericDecrement", filterNumericIncrement: "filterNumericIncrement", selectionCheckboxLabel: "selectionCheckboxLabel", selectAllCheckboxLabel: "selectAllCheckboxLabel", groupCollapse: "groupCollapse", groupExpand: "groupExpand", topToolbarLabel: "topToolbarLabel", bottomToolbarLabel: "bottomToolbarLabel", groupPanelLabel: "groupPanelLabel" }, usesInheritance: true, ngImport: i0 });
|
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridMessages, decorators: [{
|
|
16
16
|
type: Directive,
|
|
17
17
|
args: [{
|
|
@@ -162,4 +162,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
162
162
|
type: Input
|
|
163
163
|
}], groupExpand: [{
|
|
164
164
|
type: Input
|
|
165
|
+
}], topToolbarLabel: [{
|
|
166
|
+
type: Input
|
|
167
|
+
}], bottomToolbarLabel: [{
|
|
168
|
+
type: Input
|
|
169
|
+
}], groupPanelLabel: [{
|
|
170
|
+
type: Input
|
|
165
171
|
}] } });
|
|
@@ -105,6 +105,7 @@ export class NavigationService {
|
|
|
105
105
|
this.cursor = new NavigationCursor(this.model);
|
|
106
106
|
this.pagerIsNavigable = false;
|
|
107
107
|
this.tableIsNavigable = false;
|
|
108
|
+
this.toolbarIsNavigable = false;
|
|
108
109
|
this.changes = this.cursor.changes;
|
|
109
110
|
}
|
|
110
111
|
set metadata(value) {
|
|
@@ -123,6 +124,9 @@ export class NavigationService {
|
|
|
123
124
|
get tableEnabled() {
|
|
124
125
|
return this.alive && this.tableIsNavigable;
|
|
125
126
|
}
|
|
127
|
+
get toolbarEnabled() {
|
|
128
|
+
return this.alive && this.toolbarIsNavigable;
|
|
129
|
+
}
|
|
126
130
|
get activeCell() {
|
|
127
131
|
if (this.mode !== 0 /* Standby */) {
|
|
128
132
|
return this.cursor.cell;
|
|
@@ -318,6 +322,7 @@ export class NavigationService {
|
|
|
318
322
|
setActiveSections(navigableOptions) {
|
|
319
323
|
this.pagerIsNavigable = navigableOptions.includes('pager');
|
|
320
324
|
this.tableIsNavigable = navigableOptions.includes('table');
|
|
325
|
+
this.toolbarIsNavigable = navigableOptions.includes('toolbar');
|
|
321
326
|
}
|
|
322
327
|
focusAdjacentCell(fwd, wrap) {
|
|
323
328
|
this.focusCell();
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-grid',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
13
|
-
version: '11.4.0-develop.
|
|
12
|
+
publishDate: 1678814679,
|
|
13
|
+
version: '11.4.0-develop.11',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
15
15
|
};
|
|
@@ -213,7 +213,7 @@ CellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
213
213
|
</ng-container>
|
|
214
214
|
</ng-container>
|
|
215
215
|
</ng-container>
|
|
216
|
-
`, isInline: true, components: [{ type: i4.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur"], exportAs: ["kendoNumericTextBox"] }, { type: i5.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }], directives: [{ type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { type: i8.SelectionCheckboxDirective, selector: "[kendoGridSelectionCheckbox]", inputs: ["kendoGridSelectionCheckbox"] }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i9.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i6.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }], pipes: { "valueOf": i10.FieldAccessorPipe } });
|
|
216
|
+
`, isInline: true, components: [{ type: i4.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur"], exportAs: ["kendoNumericTextBox"] }, { type: i5.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "subtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }], directives: [{ type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { type: i8.SelectionCheckboxDirective, selector: "[kendoGridSelectionCheckbox]", inputs: ["kendoGridSelectionCheckbox"] }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i9.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i6.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }], pipes: { "valueOf": i10.FieldAccessorPipe } });
|
|
217
217
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CellComponent, decorators: [{
|
|
218
218
|
type: Component,
|
|
219
219
|
args: [{
|