@progress/kendo-angular-grid 19.0.0-develop.13 → 19.0.0-develop.14
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-chooser-tool.directive.d.ts +1 -0
- package/esm2022/column-menu/column-chooser-tool.directive.mjs +51 -50
- package/esm2022/column-menu/column-list.component.mjs +1 -0
- package/esm2022/editing/toolbar-editing-tool-base.directive.mjs +4 -6
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rendering/toolbar/tools/filter-command-tool.directive.mjs +12 -9
- package/esm2022/rendering/toolbar/tools/filter-tool-wrapper.component.mjs +9 -1
- package/esm2022/rendering/toolbar/tools/sort-command-tool.directive.mjs +12 -9
- package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +8 -5
- package/fesm2022/progress-kendo-angular-grid.mjs +99 -82
- package/package.json +20 -20
- package/rendering/toolbar/tools/filter-command-tool.directive.d.ts +1 -0
- package/rendering/toolbar/tools/filter-tool-wrapper.component.d.ts +1 -0
- package/rendering/toolbar/tools/sort-command-tool.directive.d.ts +1 -0
- package/rendering/toolbar/tools/sort-toolbar-tool.component.d.ts +1 -1
- package/schematics/ngAdd/index.js +4 -4
|
@@ -52,6 +52,7 @@ export declare class ColumnChooserToolbarDirective extends ToolbarToolBase imple
|
|
|
52
52
|
*/
|
|
53
53
|
onClick(e: any): void;
|
|
54
54
|
private closePopup;
|
|
55
|
+
private get buttonElement();
|
|
55
56
|
static ɵfac: i0.ɵɵFactoryDeclaration<ColumnChooserToolbarDirective, never>;
|
|
56
57
|
static ɵdir: i0.ɵɵDirectiveDeclaration<ColumnChooserToolbarDirective, "[kendoGridColumnChooserTool]", never, { "autoSync": { "alias": "autoSync"; "required": false; }; "allowHideAll": { "alias": "allowHideAll"; "required": false; }; }, {}, never, never, true, never>;
|
|
57
58
|
}
|
|
@@ -65,9 +65,9 @@ export class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
65
65
|
ngAfterViewInit() {
|
|
66
66
|
super.ngAfterViewInit();
|
|
67
67
|
this.zone.onStable.pipe(take(1)).subscribe(() => {
|
|
68
|
-
this.
|
|
69
|
-
this.
|
|
70
|
-
this.
|
|
68
|
+
this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
|
|
69
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
70
|
+
this.buttonElement?.setAttribute('title', this.ctx.localization.get('columns'));
|
|
71
71
|
});
|
|
72
72
|
this.subs.add(this.refresh.onRefresh.pipe(filter((tool) => tool === this.host)).subscribe((tool) => {
|
|
73
73
|
if (tool.overflows && this.popupRef) {
|
|
@@ -85,52 +85,50 @@ export class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
85
85
|
onClick(e) {
|
|
86
86
|
e.preventDefault();
|
|
87
87
|
if (!this.popupRef) {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
88
|
+
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
89
|
+
this.popupRef = this.popupSerivce.open({
|
|
90
|
+
anchor: this.buttonElement,
|
|
91
|
+
content: ColumnListComponent,
|
|
92
|
+
positionMode: 'absolute',
|
|
93
|
+
anchorAlign: { vertical: 'bottom', horizontal: direction },
|
|
94
|
+
popupAlign: { vertical: 'top', horizontal: direction }
|
|
95
|
+
});
|
|
96
|
+
const popupElement = this.popupRef.popupElement;
|
|
97
|
+
const popupId = `k-column-chooser-tool-${this.nextId}-popup`;
|
|
98
|
+
const popupAriaElement = popupElement.querySelector('.k-popup');
|
|
99
|
+
this.zone.runOutsideAngular(() => {
|
|
100
|
+
this.renderer.listen(popupAriaElement, 'keydown', (e) => {
|
|
101
|
+
if (e.key === 'Escape') {
|
|
102
|
+
this.closePopup(true);
|
|
103
|
+
}
|
|
96
104
|
});
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
});
|
|
106
|
+
this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
107
|
+
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
108
|
+
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
109
|
+
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
110
|
+
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
111
|
+
const columnList = this.popupRef.content.instance;
|
|
112
|
+
columnList.isLast = true;
|
|
113
|
+
columnList.autoSync = this.autoSync;
|
|
114
|
+
columnList.allowHideAll = this.allowHideAll;
|
|
115
|
+
columnList.applyText = this.ctx.localization.get('columnsApply');
|
|
116
|
+
columnList.resetText = this.ctx.localization.get('columnsReset');
|
|
117
|
+
columnList.columns = this.ctx.grid.columns;
|
|
118
|
+
columnList.ariaLabel = this.ctx.localization.get('columns');
|
|
119
|
+
this.subs.add(this.popupRef.popup.instance.anchorViewportLeave.subscribe(() => {
|
|
120
|
+
this.closePopup(true);
|
|
121
|
+
}));
|
|
122
|
+
this.subs.add(columnList.apply.subscribe(() => {
|
|
123
|
+
this.closePopup();
|
|
124
|
+
}));
|
|
125
|
+
this.zone.runOutsideAngular(() => this.renderer.listen('document', 'click', ({ target }) => {
|
|
126
|
+
if (this.popupRef && !closest(target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
|
|
127
|
+
this.zone.run(() => {
|
|
128
|
+
this.closePopup();
|
|
105
129
|
});
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
109
|
-
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
110
|
-
this.host.toolbarButtonElement.nativeElement.setAttribute('aria-expanded', 'true');
|
|
111
|
-
this.host.toolbarButtonElement.nativeElement.setAttribute('aria-controls', popupId);
|
|
112
|
-
const columnList = this.popupRef.content.instance;
|
|
113
|
-
columnList.isLast = true;
|
|
114
|
-
columnList.autoSync = this.autoSync;
|
|
115
|
-
columnList.allowHideAll = this.allowHideAll;
|
|
116
|
-
columnList.applyText = this.ctx.localization.get('columnsApply');
|
|
117
|
-
columnList.resetText = this.ctx.localization.get('columnsReset');
|
|
118
|
-
columnList.columns = this.ctx.grid.columns;
|
|
119
|
-
columnList.ariaLabel = this.ctx.localization.get('columns');
|
|
120
|
-
this.subs.add(this.popupRef.popup.instance.anchorViewportLeave.subscribe(() => {
|
|
121
|
-
this.closePopup(true);
|
|
122
|
-
}));
|
|
123
|
-
this.subs.add(columnList.apply.subscribe(() => {
|
|
124
|
-
this.closePopup();
|
|
125
|
-
}));
|
|
126
|
-
this.zone.runOutsideAngular(() => this.renderer.listen('document', 'click', ({ target }) => {
|
|
127
|
-
if (this.popupRef && !closest(target, node => node === this.popupRef.popupElement || node === this.host.toolbarButtonElement.nativeElement)) {
|
|
128
|
-
this.zone.run(() => {
|
|
129
|
-
this.closePopup();
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
}));
|
|
133
|
-
}
|
|
130
|
+
}
|
|
131
|
+
}));
|
|
134
132
|
}
|
|
135
133
|
else {
|
|
136
134
|
this.closePopup();
|
|
@@ -139,9 +137,12 @@ export class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
139
137
|
closePopup(focusAnchor = false) {
|
|
140
138
|
this.popupRef.close();
|
|
141
139
|
this.popupRef = null;
|
|
142
|
-
this.
|
|
143
|
-
this.
|
|
144
|
-
focusAnchor && this.
|
|
140
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
141
|
+
this.buttonElement?.removeAttribute('aria-controls');
|
|
142
|
+
focusAnchor && this.buttonElement?.focus();
|
|
143
|
+
}
|
|
144
|
+
get buttonElement() {
|
|
145
|
+
return this.host.getButton();
|
|
145
146
|
}
|
|
146
147
|
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: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
147
148
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, usesInheritance: true, ngImport: i0 });
|
|
@@ -70,6 +70,7 @@ export class ColumnListComponent {
|
|
|
70
70
|
}
|
|
71
71
|
this.ngZone.runOutsideAngular(() => {
|
|
72
72
|
this.domSubscriptions.add(this.renderer.listen(this.element.nativeElement, 'click', (e) => {
|
|
73
|
+
e.stopImmediatePropagation();
|
|
73
74
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
74
75
|
this.handleCheckBoxClick(e);
|
|
75
76
|
});
|
|
@@ -61,15 +61,13 @@ export class ToolbarEditingToolBase extends ToolbarToolBase {
|
|
|
61
61
|
if (this.ctx.grid.showInactiveTools) {
|
|
62
62
|
this.host.disabled = isToolInactive;
|
|
63
63
|
}
|
|
64
|
-
else {
|
|
64
|
+
else if (this.host.isHidden !== isToolInactive) {
|
|
65
65
|
this.host.isHidden = isToolInactive;
|
|
66
66
|
const toolbar = this.host.host;
|
|
67
67
|
toolbar.refreshService.refresh(this.host);
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
});
|
|
72
|
-
}
|
|
68
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => {
|
|
69
|
+
toolbar.onResize();
|
|
70
|
+
});
|
|
73
71
|
}
|
|
74
72
|
}
|
|
75
73
|
}
|
|
@@ -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: '19.0.0-develop.
|
|
13
|
+
publishDate: 1747136992,
|
|
14
|
+
version: '19.0.0-develop.14',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -81,9 +81,9 @@ export class FilterCommandToolbarDirective {
|
|
|
81
81
|
this.host.text = this.ctx.localization.get(`filterToolbarToolText`);
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
|
-
this.
|
|
85
|
-
this.
|
|
86
|
-
this.
|
|
84
|
+
this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
|
|
85
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
86
|
+
this.buttonElement?.setAttribute('title', this.ctx.localization.get('filter'));
|
|
87
87
|
}
|
|
88
88
|
ngOnDestroy() {
|
|
89
89
|
if (this.toolSubs) {
|
|
@@ -112,7 +112,7 @@ export class FilterCommandToolbarDirective {
|
|
|
112
112
|
openPopup() {
|
|
113
113
|
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
114
114
|
this.popupRef = this.popupService.open({
|
|
115
|
-
anchor: this.
|
|
115
|
+
anchor: this.buttonElement,
|
|
116
116
|
content: FilterToolWrapperComponent,
|
|
117
117
|
popupClass: 'k-grid-columnmenu-popup',
|
|
118
118
|
positionMode: 'absolute',
|
|
@@ -125,7 +125,7 @@ export class FilterCommandToolbarDirective {
|
|
|
125
125
|
return;
|
|
126
126
|
}
|
|
127
127
|
this.removeClickListener = this.renderer.listen('document', 'click', (e) => {
|
|
128
|
-
if (this.popupRef && !closest(e.target, node => node === this.popupRef.popupElement || node === this.
|
|
128
|
+
if (this.popupRef && !closest(e.target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
|
|
129
129
|
this.closePopup();
|
|
130
130
|
}
|
|
131
131
|
});
|
|
@@ -144,8 +144,8 @@ export class FilterCommandToolbarDirective {
|
|
|
144
144
|
this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
145
145
|
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
146
146
|
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
147
|
-
this.
|
|
148
|
-
this.
|
|
147
|
+
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
148
|
+
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
149
149
|
}
|
|
150
150
|
initPopupProperties() {
|
|
151
151
|
this.popupRef.content.instance.columnInfoService = this.columnInfoService;
|
|
@@ -157,8 +157,8 @@ export class FilterCommandToolbarDirective {
|
|
|
157
157
|
}));
|
|
158
158
|
}
|
|
159
159
|
closePopup() {
|
|
160
|
-
this.
|
|
161
|
-
this.
|
|
160
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
161
|
+
this.buttonElement?.removeAttribute('aria-controls');
|
|
162
162
|
if (this.popupRef) {
|
|
163
163
|
this.popupRef.close();
|
|
164
164
|
this.popupRef = null;
|
|
@@ -172,6 +172,9 @@ export class FilterCommandToolbarDirective {
|
|
|
172
172
|
this.removeClickListener = null;
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
|
+
get buttonElement() {
|
|
176
|
+
return this.host.getButton();
|
|
177
|
+
}
|
|
175
178
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token: i1.ToolBarButtonComponent }, { token: i2.PopupService }, { token: i3.ContextService }, { token: i4.FilterService }, { token: i5.ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
176
179
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FilterCommandToolbarDirective, isStandalone: true, selector: "[kendoGridFilterTool]", ngImport: i0 });
|
|
177
180
|
}
|
|
@@ -26,6 +26,11 @@ export class FilterToolWrapperComponent {
|
|
|
26
26
|
this.close.emit();
|
|
27
27
|
this.hostButton?.focus(event);
|
|
28
28
|
}
|
|
29
|
+
onClick(event) {
|
|
30
|
+
if (this.hostButton.location !== 'toolbar') {
|
|
31
|
+
event.stopImmediatePropagation();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
29
34
|
close = new EventEmitter();
|
|
30
35
|
hostButton;
|
|
31
36
|
clearIcon = filterClearIcon;
|
|
@@ -93,7 +98,7 @@ export class FilterToolWrapperComponent {
|
|
|
93
98
|
}
|
|
94
99
|
}
|
|
95
100
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterToolWrapperComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterToolWrapperComponent, isStandalone: true, selector: "kendo-filter-tool-wrapper", outputs: { close: "close" }, host: { listeners: { "keydown.escape": "onEscKeyDown($event)" }, properties: { "class.k-column-menu": "this.wrapperClasses", "class.k-column-menu-md": "this.wrapperClasses" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `
|
|
101
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterToolWrapperComponent, isStandalone: true, selector: "kendo-filter-tool-wrapper", outputs: { close: "close" }, host: { listeners: { "keydown.escape": "onEscKeyDown($event)", "click": "onClick($event)" }, properties: { "class.k-column-menu": "this.wrapperClasses", "class.k-column-menu-md": "this.wrapperClasses" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `
|
|
97
102
|
<ng-container #container></ng-container>
|
|
98
103
|
<div class="k-actions k-actions-stretched k-actions-horizontal k-column-menu-footer">
|
|
99
104
|
<button kendoButton [svgIcon]="clearIcon" (click)="clear()">Clear all filters</button>
|
|
@@ -125,6 +130,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
125
130
|
}], onEscKeyDown: [{
|
|
126
131
|
type: HostListener,
|
|
127
132
|
args: ['keydown.escape', ['$event']]
|
|
133
|
+
}], onClick: [{
|
|
134
|
+
type: HostListener,
|
|
135
|
+
args: ['click', ['$event']]
|
|
128
136
|
}], close: [{
|
|
129
137
|
type: Output
|
|
130
138
|
}] } });
|
|
@@ -82,9 +82,9 @@ export class SortCommandToolbarDirective {
|
|
|
82
82
|
this.host.text = this.ctx.localization.get(`sortToolbarToolText`);
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
|
-
this.
|
|
86
|
-
this.
|
|
87
|
-
this.
|
|
85
|
+
this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
|
|
86
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
87
|
+
this.buttonElement?.setAttribute('title', this.ctx.localization.get('sortable'));
|
|
88
88
|
}
|
|
89
89
|
ngOnDestroy() {
|
|
90
90
|
if (this.toolSubs) {
|
|
@@ -113,7 +113,7 @@ export class SortCommandToolbarDirective {
|
|
|
113
113
|
openPopup() {
|
|
114
114
|
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
115
115
|
this.popupRef = this.popupService.open({
|
|
116
|
-
anchor: this.
|
|
116
|
+
anchor: this.buttonElement,
|
|
117
117
|
content: SortToolbarToolComponent,
|
|
118
118
|
popupClass: 'k-grid-columnmenu-popup',
|
|
119
119
|
positionMode: 'absolute',
|
|
@@ -126,7 +126,7 @@ export class SortCommandToolbarDirective {
|
|
|
126
126
|
return;
|
|
127
127
|
}
|
|
128
128
|
this.removeClickListener = this.renderer.listen('document', 'click', (e) => {
|
|
129
|
-
if (this.popupRef && !closest(e.target, node => node === this.popupRef.popupElement || node === this.
|
|
129
|
+
if (this.popupRef && !closest(e.target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
|
|
130
130
|
this.closePopup();
|
|
131
131
|
}
|
|
132
132
|
});
|
|
@@ -145,8 +145,8 @@ export class SortCommandToolbarDirective {
|
|
|
145
145
|
this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
146
146
|
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
147
147
|
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
148
|
-
this.
|
|
149
|
-
this.
|
|
148
|
+
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
149
|
+
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
150
150
|
}
|
|
151
151
|
initPopupProperties() {
|
|
152
152
|
this.popupRef.content.instance.columnInfoService = this.columnInfoService;
|
|
@@ -161,8 +161,8 @@ export class SortCommandToolbarDirective {
|
|
|
161
161
|
}));
|
|
162
162
|
}
|
|
163
163
|
closePopup() {
|
|
164
|
-
this.
|
|
165
|
-
this.
|
|
164
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
165
|
+
this.buttonElement?.removeAttribute('aria-controls');
|
|
166
166
|
if (this.popupRef) {
|
|
167
167
|
this.popupRef.close();
|
|
168
168
|
this.popupRef = null;
|
|
@@ -176,6 +176,9 @@ export class SortCommandToolbarDirective {
|
|
|
176
176
|
this.removeClickListener = null;
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
|
+
get buttonElement() {
|
|
180
|
+
return this.host.getButton();
|
|
181
|
+
}
|
|
179
182
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token: i1.ToolBarButtonComponent }, { token: i2.PopupService }, { token: i3.ContextService }, { token: i4.SortService }, { token: i5.ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
180
183
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SortCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSortTool]", ngImport: i0 });
|
|
181
184
|
}
|
|
@@ -75,7 +75,10 @@ export class SortToolbarToolComponent {
|
|
|
75
75
|
this.subscription.unsubscribe();
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
-
toggleSort(column) {
|
|
78
|
+
toggleSort(column, ev) {
|
|
79
|
+
if (this.hostButton.location !== 'toolbar') {
|
|
80
|
+
ev.stopImmediatePropagation();
|
|
81
|
+
}
|
|
79
82
|
const field = column?.field;
|
|
80
83
|
if (!field) {
|
|
81
84
|
return;
|
|
@@ -142,8 +145,8 @@ export class SortToolbarToolComponent {
|
|
|
142
145
|
#sortItem
|
|
143
146
|
role="button"
|
|
144
147
|
class="k-columnmenu-item"
|
|
145
|
-
(click)="toggleSort(column)"
|
|
146
|
-
(keydown.enter)="toggleSort(column)"
|
|
148
|
+
(click)="toggleSort(column, $event)"
|
|
149
|
+
(keydown.enter)="toggleSort(column, $event)"
|
|
147
150
|
[tabindex]="'0'"
|
|
148
151
|
>
|
|
149
152
|
{{column.title || getColumnComponent(column).field}}
|
|
@@ -179,8 +182,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
179
182
|
#sortItem
|
|
180
183
|
role="button"
|
|
181
184
|
class="k-columnmenu-item"
|
|
182
|
-
(click)="toggleSort(column)"
|
|
183
|
-
(keydown.enter)="toggleSort(column)"
|
|
185
|
+
(click)="toggleSort(column, $event)"
|
|
186
|
+
(keydown.enter)="toggleSort(column, $event)"
|
|
184
187
|
[tabindex]="'0'"
|
|
185
188
|
>
|
|
186
189
|
{{column.title || getColumnComponent(column).field}}
|
|
@@ -11119,6 +11119,7 @@ class ColumnListComponent {
|
|
|
11119
11119
|
}
|
|
11120
11120
|
this.ngZone.runOutsideAngular(() => {
|
|
11121
11121
|
this.domSubscriptions.add(this.renderer.listen(this.element.nativeElement, 'click', (e) => {
|
|
11122
|
+
e.stopImmediatePropagation();
|
|
11122
11123
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
11123
11124
|
this.handleCheckBoxClick(e);
|
|
11124
11125
|
});
|
|
@@ -11770,9 +11771,9 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
11770
11771
|
ngAfterViewInit() {
|
|
11771
11772
|
super.ngAfterViewInit();
|
|
11772
11773
|
this.zone.onStable.pipe(take(1)).subscribe(() => {
|
|
11773
|
-
this.
|
|
11774
|
-
this.
|
|
11775
|
-
this.
|
|
11774
|
+
this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
|
|
11775
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
11776
|
+
this.buttonElement?.setAttribute('title', this.ctx.localization.get('columns'));
|
|
11776
11777
|
});
|
|
11777
11778
|
this.subs.add(this.refresh.onRefresh.pipe(filter((tool) => tool === this.host)).subscribe((tool) => {
|
|
11778
11779
|
if (tool.overflows && this.popupRef) {
|
|
@@ -11790,52 +11791,50 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
11790
11791
|
onClick(e) {
|
|
11791
11792
|
e.preventDefault();
|
|
11792
11793
|
if (!this.popupRef) {
|
|
11793
|
-
|
|
11794
|
-
|
|
11795
|
-
|
|
11796
|
-
|
|
11797
|
-
|
|
11798
|
-
|
|
11799
|
-
|
|
11800
|
-
|
|
11794
|
+
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
11795
|
+
this.popupRef = this.popupSerivce.open({
|
|
11796
|
+
anchor: this.buttonElement,
|
|
11797
|
+
content: ColumnListComponent,
|
|
11798
|
+
positionMode: 'absolute',
|
|
11799
|
+
anchorAlign: { vertical: 'bottom', horizontal: direction },
|
|
11800
|
+
popupAlign: { vertical: 'top', horizontal: direction }
|
|
11801
|
+
});
|
|
11802
|
+
const popupElement = this.popupRef.popupElement;
|
|
11803
|
+
const popupId = `k-column-chooser-tool-${this.nextId}-popup`;
|
|
11804
|
+
const popupAriaElement = popupElement.querySelector('.k-popup');
|
|
11805
|
+
this.zone.runOutsideAngular(() => {
|
|
11806
|
+
this.renderer.listen(popupAriaElement, 'keydown', (e) => {
|
|
11807
|
+
if (e.key === 'Escape') {
|
|
11808
|
+
this.closePopup(true);
|
|
11809
|
+
}
|
|
11801
11810
|
});
|
|
11802
|
-
|
|
11803
|
-
|
|
11804
|
-
|
|
11805
|
-
|
|
11806
|
-
|
|
11807
|
-
|
|
11808
|
-
|
|
11809
|
-
|
|
11811
|
+
});
|
|
11812
|
+
this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
11813
|
+
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
11814
|
+
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
11815
|
+
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
11816
|
+
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
11817
|
+
const columnList = this.popupRef.content.instance;
|
|
11818
|
+
columnList.isLast = true;
|
|
11819
|
+
columnList.autoSync = this.autoSync;
|
|
11820
|
+
columnList.allowHideAll = this.allowHideAll;
|
|
11821
|
+
columnList.applyText = this.ctx.localization.get('columnsApply');
|
|
11822
|
+
columnList.resetText = this.ctx.localization.get('columnsReset');
|
|
11823
|
+
columnList.columns = this.ctx.grid.columns;
|
|
11824
|
+
columnList.ariaLabel = this.ctx.localization.get('columns');
|
|
11825
|
+
this.subs.add(this.popupRef.popup.instance.anchorViewportLeave.subscribe(() => {
|
|
11826
|
+
this.closePopup(true);
|
|
11827
|
+
}));
|
|
11828
|
+
this.subs.add(columnList.apply.subscribe(() => {
|
|
11829
|
+
this.closePopup();
|
|
11830
|
+
}));
|
|
11831
|
+
this.zone.runOutsideAngular(() => this.renderer.listen('document', 'click', ({ target }) => {
|
|
11832
|
+
if (this.popupRef && !closest$1(target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
|
|
11833
|
+
this.zone.run(() => {
|
|
11834
|
+
this.closePopup();
|
|
11810
11835
|
});
|
|
11811
|
-
}
|
|
11812
|
-
|
|
11813
|
-
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
11814
|
-
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
11815
|
-
this.host.toolbarButtonElement.nativeElement.setAttribute('aria-expanded', 'true');
|
|
11816
|
-
this.host.toolbarButtonElement.nativeElement.setAttribute('aria-controls', popupId);
|
|
11817
|
-
const columnList = this.popupRef.content.instance;
|
|
11818
|
-
columnList.isLast = true;
|
|
11819
|
-
columnList.autoSync = this.autoSync;
|
|
11820
|
-
columnList.allowHideAll = this.allowHideAll;
|
|
11821
|
-
columnList.applyText = this.ctx.localization.get('columnsApply');
|
|
11822
|
-
columnList.resetText = this.ctx.localization.get('columnsReset');
|
|
11823
|
-
columnList.columns = this.ctx.grid.columns;
|
|
11824
|
-
columnList.ariaLabel = this.ctx.localization.get('columns');
|
|
11825
|
-
this.subs.add(this.popupRef.popup.instance.anchorViewportLeave.subscribe(() => {
|
|
11826
|
-
this.closePopup(true);
|
|
11827
|
-
}));
|
|
11828
|
-
this.subs.add(columnList.apply.subscribe(() => {
|
|
11829
|
-
this.closePopup();
|
|
11830
|
-
}));
|
|
11831
|
-
this.zone.runOutsideAngular(() => this.renderer.listen('document', 'click', ({ target }) => {
|
|
11832
|
-
if (this.popupRef && !closest$1(target, node => node === this.popupRef.popupElement || node === this.host.toolbarButtonElement.nativeElement)) {
|
|
11833
|
-
this.zone.run(() => {
|
|
11834
|
-
this.closePopup();
|
|
11835
|
-
});
|
|
11836
|
-
}
|
|
11837
|
-
}));
|
|
11838
|
-
}
|
|
11836
|
+
}
|
|
11837
|
+
}));
|
|
11839
11838
|
}
|
|
11840
11839
|
else {
|
|
11841
11840
|
this.closePopup();
|
|
@@ -11844,9 +11843,12 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
11844
11843
|
closePopup(focusAnchor = false) {
|
|
11845
11844
|
this.popupRef.close();
|
|
11846
11845
|
this.popupRef = null;
|
|
11847
|
-
this.
|
|
11848
|
-
this.
|
|
11849
|
-
focusAnchor && this.
|
|
11846
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
11847
|
+
this.buttonElement?.removeAttribute('aria-controls');
|
|
11848
|
+
focusAnchor && this.buttonElement?.focus();
|
|
11849
|
+
}
|
|
11850
|
+
get buttonElement() {
|
|
11851
|
+
return this.host.getButton();
|
|
11850
11852
|
}
|
|
11851
11853
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i1$5.PopupService }, { token: i51.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i51.RefreshService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
11852
11854
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, usesInheritance: true, ngImport: i0 });
|
|
@@ -20126,8 +20128,8 @@ const packageMetadata = {
|
|
|
20126
20128
|
productName: 'Kendo UI for Angular',
|
|
20127
20129
|
productCode: 'KENDOUIANGULAR',
|
|
20128
20130
|
productCodes: ['KENDOUIANGULAR'],
|
|
20129
|
-
publishDate:
|
|
20130
|
-
version: '19.0.0-develop.
|
|
20131
|
+
publishDate: 1747136992,
|
|
20132
|
+
version: '19.0.0-develop.14',
|
|
20131
20133
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
20132
20134
|
};
|
|
20133
20135
|
|
|
@@ -30039,15 +30041,13 @@ class ToolbarEditingToolBase extends ToolbarToolBase {
|
|
|
30039
30041
|
if (this.ctx.grid.showInactiveTools) {
|
|
30040
30042
|
this.host.disabled = isToolInactive;
|
|
30041
30043
|
}
|
|
30042
|
-
else {
|
|
30044
|
+
else if (this.host.isHidden !== isToolInactive) {
|
|
30043
30045
|
this.host.isHidden = isToolInactive;
|
|
30044
30046
|
const toolbar = this.host.host;
|
|
30045
30047
|
toolbar.refreshService.refresh(this.host);
|
|
30046
|
-
|
|
30047
|
-
|
|
30048
|
-
|
|
30049
|
-
});
|
|
30050
|
-
}
|
|
30048
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => {
|
|
30049
|
+
toolbar.onResize();
|
|
30050
|
+
});
|
|
30051
30051
|
}
|
|
30052
30052
|
}
|
|
30053
30053
|
}
|
|
@@ -30715,7 +30715,10 @@ class SortToolbarToolComponent {
|
|
|
30715
30715
|
this.subscription.unsubscribe();
|
|
30716
30716
|
}
|
|
30717
30717
|
}
|
|
30718
|
-
toggleSort(column) {
|
|
30718
|
+
toggleSort(column, ev) {
|
|
30719
|
+
if (this.hostButton.location !== 'toolbar') {
|
|
30720
|
+
ev.stopImmediatePropagation();
|
|
30721
|
+
}
|
|
30719
30722
|
const field = column?.field;
|
|
30720
30723
|
if (!field) {
|
|
30721
30724
|
return;
|
|
@@ -30782,8 +30785,8 @@ class SortToolbarToolComponent {
|
|
|
30782
30785
|
#sortItem
|
|
30783
30786
|
role="button"
|
|
30784
30787
|
class="k-columnmenu-item"
|
|
30785
|
-
(click)="toggleSort(column)"
|
|
30786
|
-
(keydown.enter)="toggleSort(column)"
|
|
30788
|
+
(click)="toggleSort(column, $event)"
|
|
30789
|
+
(keydown.enter)="toggleSort(column, $event)"
|
|
30787
30790
|
[tabindex]="'0'"
|
|
30788
30791
|
>
|
|
30789
30792
|
{{column.title || getColumnComponent(column).field}}
|
|
@@ -30819,8 +30822,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
30819
30822
|
#sortItem
|
|
30820
30823
|
role="button"
|
|
30821
30824
|
class="k-columnmenu-item"
|
|
30822
|
-
(click)="toggleSort(column)"
|
|
30823
|
-
(keydown.enter)="toggleSort(column)"
|
|
30825
|
+
(click)="toggleSort(column, $event)"
|
|
30826
|
+
(keydown.enter)="toggleSort(column, $event)"
|
|
30824
30827
|
[tabindex]="'0'"
|
|
30825
30828
|
>
|
|
30826
30829
|
{{column.title || getColumnComponent(column).field}}
|
|
@@ -30924,9 +30927,9 @@ class SortCommandToolbarDirective {
|
|
|
30924
30927
|
this.host.text = this.ctx.localization.get(`sortToolbarToolText`);
|
|
30925
30928
|
});
|
|
30926
30929
|
}
|
|
30927
|
-
this.
|
|
30928
|
-
this.
|
|
30929
|
-
this.
|
|
30930
|
+
this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
|
|
30931
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
30932
|
+
this.buttonElement?.setAttribute('title', this.ctx.localization.get('sortable'));
|
|
30930
30933
|
}
|
|
30931
30934
|
ngOnDestroy() {
|
|
30932
30935
|
if (this.toolSubs) {
|
|
@@ -30955,7 +30958,7 @@ class SortCommandToolbarDirective {
|
|
|
30955
30958
|
openPopup() {
|
|
30956
30959
|
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
30957
30960
|
this.popupRef = this.popupService.open({
|
|
30958
|
-
anchor: this.
|
|
30961
|
+
anchor: this.buttonElement,
|
|
30959
30962
|
content: SortToolbarToolComponent,
|
|
30960
30963
|
popupClass: 'k-grid-columnmenu-popup',
|
|
30961
30964
|
positionMode: 'absolute',
|
|
@@ -30968,7 +30971,7 @@ class SortCommandToolbarDirective {
|
|
|
30968
30971
|
return;
|
|
30969
30972
|
}
|
|
30970
30973
|
this.removeClickListener = this.renderer.listen('document', 'click', (e) => {
|
|
30971
|
-
if (this.popupRef && !closest$1(e.target, node => node === this.popupRef.popupElement || node === this.
|
|
30974
|
+
if (this.popupRef && !closest$1(e.target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
|
|
30972
30975
|
this.closePopup();
|
|
30973
30976
|
}
|
|
30974
30977
|
});
|
|
@@ -30987,8 +30990,8 @@ class SortCommandToolbarDirective {
|
|
|
30987
30990
|
this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
30988
30991
|
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
30989
30992
|
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
30990
|
-
this.
|
|
30991
|
-
this.
|
|
30993
|
+
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
30994
|
+
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
30992
30995
|
}
|
|
30993
30996
|
initPopupProperties() {
|
|
30994
30997
|
this.popupRef.content.instance.columnInfoService = this.columnInfoService;
|
|
@@ -31003,8 +31006,8 @@ class SortCommandToolbarDirective {
|
|
|
31003
31006
|
}));
|
|
31004
31007
|
}
|
|
31005
31008
|
closePopup() {
|
|
31006
|
-
this.
|
|
31007
|
-
this.
|
|
31009
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
31010
|
+
this.buttonElement?.removeAttribute('aria-controls');
|
|
31008
31011
|
if (this.popupRef) {
|
|
31009
31012
|
this.popupRef.close();
|
|
31010
31013
|
this.popupRef = null;
|
|
@@ -31018,6 +31021,9 @@ class SortCommandToolbarDirective {
|
|
|
31018
31021
|
this.removeClickListener = null;
|
|
31019
31022
|
}
|
|
31020
31023
|
}
|
|
31024
|
+
get buttonElement() {
|
|
31025
|
+
return this.host.getButton();
|
|
31026
|
+
}
|
|
31021
31027
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token: i51.ToolBarButtonComponent }, { token: i1$5.PopupService }, { token: ContextService }, { token: SortService }, { token: ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
31022
31028
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SortCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSortTool]", ngImport: i0 });
|
|
31023
31029
|
}
|
|
@@ -31174,6 +31180,11 @@ class FilterToolWrapperComponent {
|
|
|
31174
31180
|
this.close.emit();
|
|
31175
31181
|
this.hostButton?.focus(event);
|
|
31176
31182
|
}
|
|
31183
|
+
onClick(event) {
|
|
31184
|
+
if (this.hostButton.location !== 'toolbar') {
|
|
31185
|
+
event.stopImmediatePropagation();
|
|
31186
|
+
}
|
|
31187
|
+
}
|
|
31177
31188
|
close = new EventEmitter();
|
|
31178
31189
|
hostButton;
|
|
31179
31190
|
clearIcon = filterClearIcon;
|
|
@@ -31241,7 +31252,7 @@ class FilterToolWrapperComponent {
|
|
|
31241
31252
|
}
|
|
31242
31253
|
}
|
|
31243
31254
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterToolWrapperComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
31244
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterToolWrapperComponent, isStandalone: true, selector: "kendo-filter-tool-wrapper", outputs: { close: "close" }, host: { listeners: { "keydown.escape": "onEscKeyDown($event)" }, properties: { "class.k-column-menu": "this.wrapperClasses", "class.k-column-menu-md": "this.wrapperClasses" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `
|
|
31255
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterToolWrapperComponent, isStandalone: true, selector: "kendo-filter-tool-wrapper", outputs: { close: "close" }, host: { listeners: { "keydown.escape": "onEscKeyDown($event)", "click": "onClick($event)" }, properties: { "class.k-column-menu": "this.wrapperClasses", "class.k-column-menu-md": "this.wrapperClasses" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `
|
|
31245
31256
|
<ng-container #container></ng-container>
|
|
31246
31257
|
<div class="k-actions k-actions-stretched k-actions-horizontal k-column-menu-footer">
|
|
31247
31258
|
<button kendoButton [svgIcon]="clearIcon" (click)="clear()">Clear all filters</button>
|
|
@@ -31273,6 +31284,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
31273
31284
|
}], onEscKeyDown: [{
|
|
31274
31285
|
type: HostListener,
|
|
31275
31286
|
args: ['keydown.escape', ['$event']]
|
|
31287
|
+
}], onClick: [{
|
|
31288
|
+
type: HostListener,
|
|
31289
|
+
args: ['click', ['$event']]
|
|
31276
31290
|
}], close: [{
|
|
31277
31291
|
type: Output
|
|
31278
31292
|
}] } });
|
|
@@ -31339,9 +31353,9 @@ class FilterCommandToolbarDirective {
|
|
|
31339
31353
|
this.host.text = this.ctx.localization.get(`filterToolbarToolText`);
|
|
31340
31354
|
});
|
|
31341
31355
|
}
|
|
31342
|
-
this.
|
|
31343
|
-
this.
|
|
31344
|
-
this.
|
|
31356
|
+
this.buttonElement?.setAttribute('aria-haspopup', 'dialog');
|
|
31357
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
31358
|
+
this.buttonElement?.setAttribute('title', this.ctx.localization.get('filter'));
|
|
31345
31359
|
}
|
|
31346
31360
|
ngOnDestroy() {
|
|
31347
31361
|
if (this.toolSubs) {
|
|
@@ -31370,7 +31384,7 @@ class FilterCommandToolbarDirective {
|
|
|
31370
31384
|
openPopup() {
|
|
31371
31385
|
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
31372
31386
|
this.popupRef = this.popupService.open({
|
|
31373
|
-
anchor: this.
|
|
31387
|
+
anchor: this.buttonElement,
|
|
31374
31388
|
content: FilterToolWrapperComponent,
|
|
31375
31389
|
popupClass: 'k-grid-columnmenu-popup',
|
|
31376
31390
|
positionMode: 'absolute',
|
|
@@ -31383,7 +31397,7 @@ class FilterCommandToolbarDirective {
|
|
|
31383
31397
|
return;
|
|
31384
31398
|
}
|
|
31385
31399
|
this.removeClickListener = this.renderer.listen('document', 'click', (e) => {
|
|
31386
|
-
if (this.popupRef && !closest$1(e.target, node => node === this.popupRef.popupElement || node === this.
|
|
31400
|
+
if (this.popupRef && !closest$1(e.target, node => node === this.popupRef.popupElement || node === this.buttonElement)) {
|
|
31387
31401
|
this.closePopup();
|
|
31388
31402
|
}
|
|
31389
31403
|
});
|
|
@@ -31402,8 +31416,8 @@ class FilterCommandToolbarDirective {
|
|
|
31402
31416
|
this.renderer.setAttribute(popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
31403
31417
|
this.renderer.setAttribute(popupAriaElement, 'id', popupId);
|
|
31404
31418
|
this.renderer.setAttribute(popupAriaElement, 'role', 'dialog');
|
|
31405
|
-
this.
|
|
31406
|
-
this.
|
|
31419
|
+
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
31420
|
+
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
31407
31421
|
}
|
|
31408
31422
|
initPopupProperties() {
|
|
31409
31423
|
this.popupRef.content.instance.columnInfoService = this.columnInfoService;
|
|
@@ -31415,8 +31429,8 @@ class FilterCommandToolbarDirective {
|
|
|
31415
31429
|
}));
|
|
31416
31430
|
}
|
|
31417
31431
|
closePopup() {
|
|
31418
|
-
this.
|
|
31419
|
-
this.
|
|
31432
|
+
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
31433
|
+
this.buttonElement?.removeAttribute('aria-controls');
|
|
31420
31434
|
if (this.popupRef) {
|
|
31421
31435
|
this.popupRef.close();
|
|
31422
31436
|
this.popupRef = null;
|
|
@@ -31430,6 +31444,9 @@ class FilterCommandToolbarDirective {
|
|
|
31430
31444
|
this.removeClickListener = null;
|
|
31431
31445
|
}
|
|
31432
31446
|
}
|
|
31447
|
+
get buttonElement() {
|
|
31448
|
+
return this.host.getButton();
|
|
31449
|
+
}
|
|
31433
31450
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token: i51.ToolBarButtonComponent }, { token: i1$5.PopupService }, { token: ContextService }, { token: FilterService }, { token: ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
31434
31451
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FilterCommandToolbarDirective, isStandalone: true, selector: "[kendoGridFilterTool]", ngImport: i0 });
|
|
31435
31452
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-grid",
|
|
3
|
-
"version": "19.0.0-develop.
|
|
3
|
+
"version": "19.0.0-develop.14",
|
|
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",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"package": {
|
|
27
27
|
"productName": "Kendo UI for Angular",
|
|
28
28
|
"productCode": "KENDOUIANGULAR",
|
|
29
|
-
"publishDate":
|
|
29
|
+
"publishDate": 1747136992,
|
|
30
30
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
31
31
|
}
|
|
32
32
|
},
|
|
@@ -39,28 +39,28 @@
|
|
|
39
39
|
"@progress/kendo-data-query": "^1.0.0",
|
|
40
40
|
"@progress/kendo-drawing": "^1.21.0",
|
|
41
41
|
"@progress/kendo-licensing": "^1.5.0",
|
|
42
|
-
"@progress/kendo-angular-buttons": "19.0.0-develop.
|
|
43
|
-
"@progress/kendo-angular-common": "19.0.0-develop.
|
|
44
|
-
"@progress/kendo-angular-dateinputs": "19.0.0-develop.
|
|
45
|
-
"@progress/kendo-angular-layout": "19.0.0-develop.
|
|
46
|
-
"@progress/kendo-angular-dropdowns": "19.0.0-develop.
|
|
47
|
-
"@progress/kendo-angular-excel-export": "19.0.0-develop.
|
|
48
|
-
"@progress/kendo-angular-icons": "19.0.0-develop.
|
|
49
|
-
"@progress/kendo-angular-inputs": "19.0.0-develop.
|
|
50
|
-
"@progress/kendo-angular-indicators": "19.0.0-develop.
|
|
51
|
-
"@progress/kendo-angular-intl": "19.0.0-develop.
|
|
52
|
-
"@progress/kendo-angular-l10n": "19.0.0-develop.
|
|
53
|
-
"@progress/kendo-angular-label": "19.0.0-develop.
|
|
54
|
-
"@progress/kendo-angular-pager": "19.0.0-develop.
|
|
55
|
-
"@progress/kendo-angular-pdf-export": "19.0.0-develop.
|
|
56
|
-
"@progress/kendo-angular-popup": "19.0.0-develop.
|
|
57
|
-
"@progress/kendo-angular-toolbar": "19.0.0-develop.
|
|
58
|
-
"@progress/kendo-angular-utils": "19.0.0-develop.
|
|
42
|
+
"@progress/kendo-angular-buttons": "19.0.0-develop.14",
|
|
43
|
+
"@progress/kendo-angular-common": "19.0.0-develop.14",
|
|
44
|
+
"@progress/kendo-angular-dateinputs": "19.0.0-develop.14",
|
|
45
|
+
"@progress/kendo-angular-layout": "19.0.0-develop.14",
|
|
46
|
+
"@progress/kendo-angular-dropdowns": "19.0.0-develop.14",
|
|
47
|
+
"@progress/kendo-angular-excel-export": "19.0.0-develop.14",
|
|
48
|
+
"@progress/kendo-angular-icons": "19.0.0-develop.14",
|
|
49
|
+
"@progress/kendo-angular-inputs": "19.0.0-develop.14",
|
|
50
|
+
"@progress/kendo-angular-indicators": "19.0.0-develop.14",
|
|
51
|
+
"@progress/kendo-angular-intl": "19.0.0-develop.14",
|
|
52
|
+
"@progress/kendo-angular-l10n": "19.0.0-develop.14",
|
|
53
|
+
"@progress/kendo-angular-label": "19.0.0-develop.14",
|
|
54
|
+
"@progress/kendo-angular-pager": "19.0.0-develop.14",
|
|
55
|
+
"@progress/kendo-angular-pdf-export": "19.0.0-develop.14",
|
|
56
|
+
"@progress/kendo-angular-popup": "19.0.0-develop.14",
|
|
57
|
+
"@progress/kendo-angular-toolbar": "19.0.0-develop.14",
|
|
58
|
+
"@progress/kendo-angular-utils": "19.0.0-develop.14",
|
|
59
59
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
62
|
"tslib": "^2.3.1",
|
|
63
|
-
"@progress/kendo-angular-schematics": "19.0.0-develop.
|
|
63
|
+
"@progress/kendo-angular-schematics": "19.0.0-develop.14",
|
|
64
64
|
"@progress/kendo-common": "^1.0.1",
|
|
65
65
|
"@progress/kendo-file-saver": "^1.0.0"
|
|
66
66
|
},
|
|
@@ -48,6 +48,7 @@ export declare class FilterCommandToolbarDirective implements AfterViewInit, OnD
|
|
|
48
48
|
private setPopupAttributes;
|
|
49
49
|
private initPopupProperties;
|
|
50
50
|
private closePopup;
|
|
51
|
+
private get buttonElement();
|
|
51
52
|
static ɵfac: i0.ɵɵFactoryDeclaration<FilterCommandToolbarDirective, never>;
|
|
52
53
|
static ɵdir: i0.ɵɵDirectiveDeclaration<FilterCommandToolbarDirective, "[kendoGridFilterTool]", never, {}, {}, never, never, true, never>;
|
|
53
54
|
}
|
|
@@ -18,6 +18,7 @@ export declare class FilterToolWrapperComponent {
|
|
|
18
18
|
container: ViewContainerRef;
|
|
19
19
|
wrapperClasses: boolean;
|
|
20
20
|
onEscKeyDown(event: KeyboardEvent): void;
|
|
21
|
+
onClick(event: any): void;
|
|
21
22
|
close: EventEmitter<any>;
|
|
22
23
|
hostButton: ToolBarButtonComponent;
|
|
23
24
|
clearIcon: SVGIcon;
|
|
@@ -48,6 +48,7 @@ export declare class SortCommandToolbarDirective implements AfterViewInit, OnDes
|
|
|
48
48
|
private setPopupAttributes;
|
|
49
49
|
private initPopupProperties;
|
|
50
50
|
private closePopup;
|
|
51
|
+
private get buttonElement();
|
|
51
52
|
static ɵfac: i0.ɵɵFactoryDeclaration<SortCommandToolbarDirective, never>;
|
|
52
53
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SortCommandToolbarDirective, "[kendoGridSortTool]", never, {}, {}, never, never, true, never>;
|
|
53
54
|
}
|
|
@@ -41,7 +41,7 @@ export declare class SortToolbarToolComponent implements AfterViewInit, OnDestro
|
|
|
41
41
|
constructor(element: ElementRef, ngZone: NgZone);
|
|
42
42
|
ngAfterViewInit(): void;
|
|
43
43
|
ngOnDestroy(): void;
|
|
44
|
-
toggleSort(column: ColumnBase): void;
|
|
44
|
+
toggleSort(column: ColumnBase, ev: any): void;
|
|
45
45
|
getColumnComponent(column: ColumnBase): ColumnComponent;
|
|
46
46
|
sortDescriptor(field: string): SortDescriptor;
|
|
47
47
|
getDescriptor(column: ColumnBase): SortDescriptor[];
|
|
@@ -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': '19.0.0-develop.
|
|
8
|
-
'@progress/kendo-angular-navigation': '19.0.0-develop.
|
|
7
|
+
'@progress/kendo-angular-treeview': '19.0.0-develop.14',
|
|
8
|
+
'@progress/kendo-angular-navigation': '19.0.0-develop.14',
|
|
9
9
|
// peer dependency of kendo-angular-inputs
|
|
10
|
-
'@progress/kendo-angular-dialog': '19.0.0-develop.
|
|
10
|
+
'@progress/kendo-angular-dialog': '19.0.0-develop.14',
|
|
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': '19.0.0-develop.
|
|
14
|
+
'@progress/kendo-angular-progressbar': '19.0.0-develop.14'
|
|
15
15
|
} });
|
|
16
16
|
return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
|
|
17
17
|
}
|