@progress/kendo-angular-grid 20.0.4-develop.2 → 20.1.0-develop.10
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/adaptiveness/adaptive-renderer.component.d.ts +2 -3
- package/column-menu/column-chooser-content.component.d.ts +60 -0
- package/column-menu/column-chooser.component.d.ts +15 -4
- package/column-menu/column-list-kb-nav.service.d.ts +2 -2
- package/column-menu/column-list.component.d.ts +28 -21
- package/column-menu/column-menu-chooser.component.d.ts +2 -7
- package/column-menu/column-menu.component.d.ts +0 -4
- package/columns/column-base.d.ts +8 -0
- package/columns/command-column.component.d.ts +1 -1
- package/columns/span-column.component.d.ts +1 -1
- package/directives.d.ts +1 -2
- package/editing/cancel-command.directive.d.ts +1 -1
- package/editing/edit-row-options.interface.d.ts +1 -1
- package/editing/edit-template.directive.d.ts +1 -1
- package/editing/remove-command.directive.d.ts +1 -1
- package/editing/save-command.directive.d.ts +1 -1
- package/editing-directives/edit-service.interface.d.ts +2 -2
- package/editing-directives/external-editing.directive.d.ts +1 -1
- package/editing-directives/in-cell-editing.directive.d.ts +1 -1
- package/editing-directives/reactive-editing.directive.d.ts +1 -1
- package/editing-directives/template-editing.directive.d.ts +1 -1
- package/esm2022/adaptiveness/adaptive-renderer.component.mjs +26 -46
- package/esm2022/column-menu/column-chooser-content.component.mjs +306 -0
- package/esm2022/column-menu/column-chooser.component.mjs +39 -31
- package/esm2022/column-menu/column-list-kb-nav.service.mjs +4 -4
- package/esm2022/column-menu/column-list.component.mjs +221 -176
- package/esm2022/column-menu/column-menu-chooser.component.mjs +17 -36
- package/esm2022/column-menu/column-menu-container.component.mjs +10 -1
- package/esm2022/column-menu/column-menu.component.mjs +19 -29
- package/esm2022/columns/column-base.mjs +8 -0
- package/esm2022/columns/command-column.component.mjs +1 -1
- package/esm2022/columns/span-column.component.mjs +1 -1
- package/esm2022/common/column-info.service.mjs +3 -0
- package/esm2022/directives.mjs +0 -2
- package/esm2022/editing/cancel-command.directive.mjs +1 -1
- package/esm2022/editing/edit-template.directive.mjs +1 -1
- package/esm2022/editing/remove-command.directive.mjs +1 -1
- package/esm2022/editing/save-command.directive.mjs +1 -1
- package/esm2022/editing-directives/external-editing.directive.mjs +1 -1
- package/esm2022/editing-directives/in-cell-editing.directive.mjs +1 -1
- package/esm2022/editing-directives/reactive-editing.directive.mjs +1 -1
- package/esm2022/editing-directives/template-editing.directive.mjs +1 -1
- package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +2 -2
- package/esm2022/filtering/menu/filter-menu.component.mjs +7 -1
- package/esm2022/grid.component.mjs +6 -0
- package/esm2022/grid.module.mjs +47 -48
- package/esm2022/localization/messages.mjs +12 -1
- package/esm2022/navigation/logical-cell.directive.mjs +8 -2
- package/esm2022/navigation/navigation.service.mjs +1 -0
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rendering/list.component.mjs +23 -1
- package/esm2022/rendering/toolbar/tools/column-chooser-tool.directive.mjs +39 -13
- package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +1 -1
- package/esm2022/rendering/toolbar/tools/group-toolbar-tool.component.mjs +2 -2
- package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +1 -1
- package/fesm2022/progress-kendo-angular-grid.mjs +739 -391
- package/grid.module.d.ts +46 -47
- package/localization/messages.d.ts +10 -1
- package/navigation/navigation.service.d.ts +1 -0
- package/package.json +21 -21
- package/rendering/list.component.d.ts +1 -0
- package/rendering/toolbar/tools/column-chooser-tool.directive.d.ts +13 -1
- package/schematics/ngAdd/index.js +4 -4
- package/column-menu/column-chooser-item-checked.directive.d.ts +0 -21
- package/esm2022/column-menu/column-chooser-item-checked.directive.mjs +0 -45
|
@@ -6,17 +6,17 @@ import * as i0 from '@angular/core';
|
|
|
6
6
|
import { EventEmitter, Injectable, SecurityContext, InjectionToken, Optional, Inject, Directive, SkipSelf, Input, isDevMode, QueryList, Component, ContentChildren, ContentChild, forwardRef, Host, Output, HostBinding, Pipe, TemplateRef, ChangeDetectionStrategy, ViewChildren, ViewChild, Self, NgZone, HostListener, ElementRef, ViewContainerRef, ViewEncapsulation, inject, Injector, NgModule } from '@angular/core';
|
|
7
7
|
import { merge, of, Subject, zip as zip$1, from, Subscription, interval, fromEvent, Observable, BehaviorSubject } from 'rxjs';
|
|
8
8
|
import * as i1$3 from '@progress/kendo-angular-common';
|
|
9
|
-
import { isDocumentAvailable, Keys, hasClasses as hasClasses$1, isPresent as isPresent$1, normalizeNumpadKeys, anyChanged, TemplateContextDirective, DraggableDirective, EventsOutsideAngularDirective, replaceMessagePlaceholder, isChanged as isChanged$1, KendoInput, guid, closest as closest$1, hasObservers, ResizeSensorComponent, isFirefox, firefoxMaxHeight, closestInScope as closestInScope$1, isFocusable as isFocusable$1, PreventableEvent as PreventableEvent$1, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, ResizeBatchService } from '@progress/kendo-angular-common';
|
|
9
|
+
import { isDocumentAvailable, Keys, hasClasses as hasClasses$1, isPresent as isPresent$1, normalizeNumpadKeys, anyChanged, TemplateContextDirective, DraggableDirective, EventsOutsideAngularDirective, replaceMessagePlaceholder, isChanged as isChanged$1, KendoInput, guid, PrefixTemplateDirective, closest as closest$1, hasObservers, ResizeSensorComponent, isFirefox, firefoxMaxHeight, closestInScope as closestInScope$1, isFocusable as isFocusable$1, PreventableEvent as PreventableEvent$1, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, ResizeBatchService } from '@progress/kendo-angular-common';
|
|
10
10
|
import * as i1 from '@angular/platform-browser';
|
|
11
11
|
import * as i1$1 from '@progress/kendo-angular-icons';
|
|
12
12
|
import { IconWrapperComponent, IconsService, KENDO_ICONS } from '@progress/kendo-angular-icons';
|
|
13
|
-
import { plusIcon, cancelIcon, lockIcon, unlockIcon, caretAltDownIcon, caretAltRightIcon, caretAltLeftIcon, arrowLeftIcon, arrowRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterClearIcon, filterIcon, checkIcon, arrowRotateCcwIcon, columnsIcon, pencilIcon, saveIcon, trashIcon, fileExcelIcon, filePdfIcon, sparklesIcon, chevronUpIcon, chevronDownIcon, chevronRightIcon, displayInlineFlexIcon, maxWidthIcon, stickIcon, unstickIcon, setColumnPositionIcon, slidersIcon, moreVerticalIcon, reorderIcon, minusIcon, insertMiddleIcon, xIcon, xCircleIcon, plusCircleIcon, chevronLeftIcon, tableWizardIcon, undoIcon, redoIcon, arrowsSwapIcon, groupIcon } from '@progress/kendo-svg-icons';
|
|
13
|
+
import { plusIcon, cancelIcon, lockIcon, unlockIcon, caretAltDownIcon, caretAltRightIcon, caretAltLeftIcon, arrowLeftIcon, arrowRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterClearIcon, filterIcon, searchIcon, checkIcon, arrowRotateCcwIcon, columnsIcon, pencilIcon, saveIcon, trashIcon, fileExcelIcon, filePdfIcon, sparklesIcon, chevronUpIcon, chevronDownIcon, chevronRightIcon, displayInlineFlexIcon, maxWidthIcon, stickIcon, unstickIcon, setColumnPositionIcon, slidersIcon, moreVerticalIcon, reorderIcon, minusIcon, insertMiddleIcon, xIcon, xCircleIcon, plusCircleIcon, chevronLeftIcon, tableWizardIcon, undoIcon, redoIcon, arrowsSwapIcon, groupIcon } from '@progress/kendo-svg-icons';
|
|
14
14
|
import { switchMap, take, map, filter, takeUntil, switchMapTo, delay, tap, throttleTime, debounceTime, distinctUntilChanged, skip, auditTime, bufferCount, flatMap } from 'rxjs/operators';
|
|
15
15
|
import * as i1$2 from '@progress/kendo-angular-l10n';
|
|
16
16
|
import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
17
17
|
import * as i53 from '@progress/kendo-angular-pager';
|
|
18
18
|
import { PagerContextService, PagerNavigationService, PagerTemplateDirective, KENDO_PAGER } from '@progress/kendo-angular-pager';
|
|
19
|
-
import { orderBy, isCompositeFilterDescriptor,
|
|
19
|
+
import { orderBy, isCompositeFilterDescriptor, filterBy, groupBy, process } from '@progress/kendo-data-query';
|
|
20
20
|
import { NgFor, NgIf, NgTemplateOutlet, NgSwitch, NgSwitchCase, NgClass, NgStyle, NgSwitchDefault, KeyValuePipe } from '@angular/common';
|
|
21
21
|
import { getter } from '@progress/kendo-common';
|
|
22
22
|
import * as i1$4 from '@progress/kendo-angular-intl';
|
|
@@ -1933,7 +1933,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1933
1933
|
}] }]; } });
|
|
1934
1934
|
|
|
1935
1935
|
/**
|
|
1936
|
-
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:
|
|
1936
|
+
* Lets you customize the content of edited cells by providing a column edit-cell template for the Grid ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
1937
1937
|
* Place an `<ng-template>` tag with the `kendoGridEditTemplate` directive inside a `<kendo-grid-column>` tag to define the template.
|
|
1938
1938
|
*
|
|
1939
1939
|
* The template context includes:
|
|
@@ -2218,6 +2218,14 @@ class ColumnBase {
|
|
|
2218
2218
|
* @hidden
|
|
2219
2219
|
*/
|
|
2220
2220
|
initialMinResizableWidth;
|
|
2221
|
+
/**
|
|
2222
|
+
* @hidden
|
|
2223
|
+
*/
|
|
2224
|
+
initiallyChecked;
|
|
2225
|
+
/**
|
|
2226
|
+
* @hidden
|
|
2227
|
+
*/
|
|
2228
|
+
currentlyChecked;
|
|
2221
2229
|
/**
|
|
2222
2230
|
* @hidden
|
|
2223
2231
|
*/
|
|
@@ -3037,7 +3045,7 @@ class SpanColumnComponent extends ColumnBase {
|
|
|
3037
3045
|
includeInChooser = false;
|
|
3038
3046
|
/**
|
|
3039
3047
|
* Sets whether the edit template of the column is rendered.
|
|
3040
|
-
* To enable editing for a spanned column, set an edit template for it ([see example](slug:
|
|
3048
|
+
* To enable editing for a spanned column, set an edit template for it ([see example](slug:custom_editors_grid#setting-up-custom-editors)).
|
|
3041
3049
|
* @default false
|
|
3042
3050
|
*/
|
|
3043
3051
|
set editable(value) {
|
|
@@ -3499,6 +3507,7 @@ class NavigationService {
|
|
|
3499
3507
|
return columnIndexInsideGroup !== columnGroupChildren.length - 1;
|
|
3500
3508
|
}
|
|
3501
3509
|
}
|
|
3510
|
+
preventScroll = false;
|
|
3502
3511
|
viewport;
|
|
3503
3512
|
columnViewport;
|
|
3504
3513
|
activeRowIndex = 0;
|
|
@@ -5094,6 +5103,9 @@ class ColumnInfoService {
|
|
|
5094
5103
|
return this.list().filter(column => !column.isVisible);
|
|
5095
5104
|
}
|
|
5096
5105
|
get leafNamedColumns() {
|
|
5106
|
+
if (!this.list) {
|
|
5107
|
+
return [];
|
|
5108
|
+
}
|
|
5097
5109
|
const columns = expandColumns(this.list().filterSort(column => !column.isColumnGroup))
|
|
5098
5110
|
.filter(column => column.matchesMedia && column.displayTitle);
|
|
5099
5111
|
return orderBy(columns, [{ field: 'locked', dir: 'desc' }]);
|
|
@@ -5253,8 +5265,14 @@ class LogicalCellDirective {
|
|
|
5253
5265
|
this.focusGroup.focus();
|
|
5254
5266
|
}
|
|
5255
5267
|
else {
|
|
5256
|
-
if (!this.logicalSlaveCell &&
|
|
5257
|
-
this.
|
|
5268
|
+
if (!this.logicalSlaveCell &&
|
|
5269
|
+
this.navigationService.autoFocusCell(this.logicalColIndex, this.logicalColIndex + this.colSpan - 1)) {
|
|
5270
|
+
this.microtask(() => {
|
|
5271
|
+
if (this.isFocused()) {
|
|
5272
|
+
el.focus({ preventScroll: this.navigationService.preventScroll });
|
|
5273
|
+
this.navigationService.preventScroll = false;
|
|
5274
|
+
}
|
|
5275
|
+
});
|
|
5258
5276
|
}
|
|
5259
5277
|
this.renderer.addClass(el, 'k-focus');
|
|
5260
5278
|
}
|
|
@@ -8953,11 +8971,11 @@ class FilterMenuInputWrapperComponent extends FilterInputWrapperComponent {
|
|
|
8953
8971
|
this.filterService.menuTabbingService.firstFocusable = this.firstOperatorDropDown;
|
|
8954
8972
|
if (this.ctx.grid?.isActionSheetExpanded) {
|
|
8955
8973
|
this.subs.add(this.adaptiveGridService.animationEnd.subscribe(() => {
|
|
8956
|
-
this.firstOperatorDropDown.focus();
|
|
8974
|
+
this.firstOperatorDropDown.wrapper.nativeElement.focus({ preventScroll: true });
|
|
8957
8975
|
}));
|
|
8958
8976
|
}
|
|
8959
8977
|
else {
|
|
8960
|
-
this.firstOperatorDropDown.focus();
|
|
8978
|
+
this.firstOperatorDropDown.wrapper.nativeElement.focus({ preventScroll: true });
|
|
8961
8979
|
}
|
|
8962
8980
|
}
|
|
8963
8981
|
}
|
|
@@ -11061,7 +11079,13 @@ class FilterMenuComponent {
|
|
|
11061
11079
|
this.cdr.markForCheck();
|
|
11062
11080
|
}
|
|
11063
11081
|
focusRoot() {
|
|
11064
|
-
|
|
11082
|
+
if (this.isNavigable) {
|
|
11083
|
+
this.navigationService.preventScroll = true;
|
|
11084
|
+
this.navigationService.focusCell(0, this.column.leafIndex);
|
|
11085
|
+
}
|
|
11086
|
+
else {
|
|
11087
|
+
this.anchor.nativeElement.focus({ preventScroll: true });
|
|
11088
|
+
}
|
|
11065
11089
|
}
|
|
11066
11090
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuComponent, deps: [{ token: FilterService }, { token: SinglePopupService }, { token: ContextService }, { token: NavigationService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: AdaptiveGridService }, { token: i0.NgZone }, { token: IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
11067
11091
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterMenuComponent, isStandalone: true, selector: "kendo-grid-filter-menu", inputs: { column: "column", filter: "filter", tabIndex: "tabIndex" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
|
|
@@ -11989,44 +12013,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
11989
12013
|
args: ['class.k-filter-row']
|
|
11990
12014
|
}] } });
|
|
11991
12015
|
|
|
11992
|
-
/**
|
|
11993
|
-
* @hidden
|
|
11994
|
-
*/
|
|
11995
|
-
class ColumnMenuChooserItemCheckedDirective {
|
|
11996
|
-
host;
|
|
11997
|
-
kendoColumnMenuChooserItemChecked;
|
|
11998
|
-
checkbox;
|
|
11999
|
-
checkedChangeSub = new Subscription();
|
|
12000
|
-
constructor(host) {
|
|
12001
|
-
this.host = host;
|
|
12002
|
-
}
|
|
12003
|
-
ngAfterViewInit() {
|
|
12004
|
-
this.checkedChangeSub.add(this.checkbox.checkedStateChange.subscribe(() => {
|
|
12005
|
-
this.kendoColumnMenuChooserItemChecked = this.checkbox.checkedState === true;
|
|
12006
|
-
}));
|
|
12007
|
-
}
|
|
12008
|
-
ngOnDestroy() {
|
|
12009
|
-
this.checkedChangeSub.unsubscribe();
|
|
12010
|
-
}
|
|
12011
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserItemCheckedDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
12012
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuChooserItemCheckedDirective, isStandalone: true, selector: "[kendoColumnMenuChooserItemChecked]", inputs: { kendoColumnMenuChooserItemChecked: "kendoColumnMenuChooserItemChecked" }, host: { properties: { "attr.aria-checked": "this.kendoColumnMenuChooserItemChecked" } }, queries: [{ propertyName: "checkbox", first: true, predicate: CheckBoxComponent, descendants: true }], ngImport: i0 });
|
|
12013
|
-
}
|
|
12014
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserItemCheckedDirective, decorators: [{
|
|
12015
|
-
type: Directive,
|
|
12016
|
-
args: [{
|
|
12017
|
-
selector: '[kendoColumnMenuChooserItemChecked]',
|
|
12018
|
-
standalone: true
|
|
12019
|
-
}]
|
|
12020
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { kendoColumnMenuChooserItemChecked: [{
|
|
12021
|
-
type: HostBinding,
|
|
12022
|
-
args: ['attr.aria-checked']
|
|
12023
|
-
}, {
|
|
12024
|
-
type: Input
|
|
12025
|
-
}], checkbox: [{
|
|
12026
|
-
type: ContentChild,
|
|
12027
|
-
args: [CheckBoxComponent]
|
|
12028
|
-
}] } });
|
|
12029
|
-
|
|
12030
12016
|
/**
|
|
12031
12017
|
* Represents the service passed to the [`ColumnMenuTemplate`]({% slug api_grid_columnmenutemplatedirective %}) directive.
|
|
12032
12018
|
*
|
|
@@ -12112,12 +12098,12 @@ class ColumnListKeyboardNavigation {
|
|
|
12112
12098
|
this.toggle(this.activeIndex, true);
|
|
12113
12099
|
}
|
|
12114
12100
|
toggle(index, active) {
|
|
12115
|
-
const element = this.items[index]?.
|
|
12116
|
-
element && this.renderer.setAttribute(
|
|
12117
|
-
active && element?.focus();
|
|
12101
|
+
const element = this.items[index]?.hostElement.nativeElement.closest('.k-column-list-item');
|
|
12102
|
+
element && this.renderer.setAttribute(element, 'tabindex', active ? '0' : '-1');
|
|
12103
|
+
active && element?.focus({ preventScroll: true });
|
|
12118
12104
|
}
|
|
12119
12105
|
toggleCheckedState() {
|
|
12120
|
-
this.items[this.activeIndex].
|
|
12106
|
+
this.items[this.activeIndex].hostElement.nativeElement.closest('.k-column-list-item').firstElementChild.click();
|
|
12121
12107
|
}
|
|
12122
12108
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnListKeyboardNavigation, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12123
12109
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnListKeyboardNavigation });
|
|
@@ -12134,10 +12120,10 @@ class ColumnListComponent {
|
|
|
12134
12120
|
ngZone;
|
|
12135
12121
|
renderer;
|
|
12136
12122
|
listNavigationService;
|
|
12123
|
+
cdr;
|
|
12124
|
+
columnInfoService;
|
|
12137
12125
|
adaptiveGridService;
|
|
12138
12126
|
ctx;
|
|
12139
|
-
checkIcon = checkIcon;
|
|
12140
|
-
arrowRotateCcwIcon = arrowRotateCcwIcon;
|
|
12141
12127
|
className = true;
|
|
12142
12128
|
get listSizeMd() {
|
|
12143
12129
|
return !(this.ctx?.grid?.isActionSheetExpanded);
|
|
@@ -12149,40 +12135,59 @@ class ColumnListComponent {
|
|
|
12149
12135
|
apply = new EventEmitter();
|
|
12150
12136
|
columnChange = new EventEmitter();
|
|
12151
12137
|
set columns(value) {
|
|
12138
|
+
this.listNavigationService.items = this.checkboxes?.toArray();
|
|
12152
12139
|
this._columns = value.filter(column => column.includeInChooser !== false);
|
|
12153
|
-
this.allColumns = value;
|
|
12154
|
-
this.updateColumnState();
|
|
12155
12140
|
}
|
|
12156
12141
|
get columns() {
|
|
12157
12142
|
return this._columns;
|
|
12158
12143
|
}
|
|
12159
|
-
|
|
12144
|
+
get checkedCheckboxesLength() {
|
|
12145
|
+
return this.columns?.filter(column => column.currentlyChecked).length;
|
|
12146
|
+
}
|
|
12147
|
+
filteredColumns = [];
|
|
12160
12148
|
autoSync = true;
|
|
12149
|
+
showSelectAll = false;
|
|
12150
|
+
isFiltered = false;
|
|
12161
12151
|
ariaLabel;
|
|
12162
12152
|
allowHideAll = false;
|
|
12163
12153
|
applyText;
|
|
12164
12154
|
resetText;
|
|
12165
|
-
actionsClass = 'k-actions k-actions-stretched k-actions-horizontal';
|
|
12166
12155
|
isLast;
|
|
12167
12156
|
isExpanded;
|
|
12168
12157
|
service;
|
|
12158
|
+
filterable = false;
|
|
12159
|
+
checkboxes;
|
|
12160
|
+
get columnCheckboxes() {
|
|
12161
|
+
if (this.showSelectAll) {
|
|
12162
|
+
return this.checkboxes?.toArray().slice(1);
|
|
12163
|
+
}
|
|
12164
|
+
return this.checkboxes?.toArray();
|
|
12165
|
+
}
|
|
12166
|
+
get lockedColumnCheckboxes() {
|
|
12167
|
+
return this.columnCheckboxes?.filter((checkbox, index) => this.filteredColumns[index]?.locked);
|
|
12168
|
+
}
|
|
12169
|
+
get unlockedColumnCheckboxes() {
|
|
12170
|
+
return this.columnCheckboxes?.filter((checkbox, index) => !this.filteredColumns[index]?.locked);
|
|
12171
|
+
}
|
|
12172
|
+
get checkedCheckboxes() {
|
|
12173
|
+
if (this.showSelectAll && !this.isFiltered) {
|
|
12174
|
+
return this.checkboxes?.toArray().slice(1).filter(checkbox => checkbox.checkedState).length;
|
|
12175
|
+
}
|
|
12176
|
+
return this.checkboxes?.filter(checkbox => checkbox.checkedState).length;
|
|
12177
|
+
}
|
|
12169
12178
|
resetButton;
|
|
12170
12179
|
applyButton;
|
|
12171
|
-
|
|
12172
|
-
checkboxes;
|
|
12173
|
-
hasLocked;
|
|
12174
|
-
hasVisibleLocked;
|
|
12175
|
-
unlockedCount = 0;
|
|
12176
|
-
hasUnlockedFiltered;
|
|
12177
|
-
hasFiltered;
|
|
12180
|
+
filterInput;
|
|
12178
12181
|
_columns;
|
|
12179
|
-
allColumns;
|
|
12180
12182
|
domSubscriptions = new Subscription();
|
|
12181
|
-
|
|
12183
|
+
lastDisabledCheckbox;
|
|
12184
|
+
constructor(element, ngZone, renderer, listNavigationService, cdr, columnInfoService, adaptiveGridService, ctx) {
|
|
12182
12185
|
this.element = element;
|
|
12183
12186
|
this.ngZone = ngZone;
|
|
12184
12187
|
this.renderer = renderer;
|
|
12185
12188
|
this.listNavigationService = listNavigationService;
|
|
12189
|
+
this.cdr = cdr;
|
|
12190
|
+
this.columnInfoService = columnInfoService;
|
|
12186
12191
|
this.adaptiveGridService = adaptiveGridService;
|
|
12187
12192
|
this.ctx = ctx;
|
|
12188
12193
|
}
|
|
@@ -12192,17 +12197,17 @@ class ColumnListComponent {
|
|
|
12192
12197
|
}
|
|
12193
12198
|
this.ngZone.runOutsideAngular(() => {
|
|
12194
12199
|
this.domSubscriptions.add(this.renderer.listen(this.element.nativeElement, 'click', (e) => {
|
|
12195
|
-
e.
|
|
12196
|
-
|
|
12197
|
-
this.
|
|
12198
|
-
}
|
|
12200
|
+
if (e.target.classList.contains('k-checkbox')) {
|
|
12201
|
+
const label = e.target.closest('.k-column-list-item');
|
|
12202
|
+
this.setTabindex(label);
|
|
12203
|
+
}
|
|
12199
12204
|
}));
|
|
12200
12205
|
this.domSubscriptions.add(this.renderer.listen(this.element.nativeElement, 'keydown', this.onKeydown));
|
|
12201
12206
|
});
|
|
12202
12207
|
}
|
|
12203
12208
|
ngAfterViewInit() {
|
|
12204
12209
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
12205
|
-
this.listNavigationService.items = this.
|
|
12210
|
+
this.listNavigationService.items = this.checkboxes.toArray();
|
|
12206
12211
|
if (this.adaptiveGridService?.viewType !== 'columnMenu') {
|
|
12207
12212
|
this.listNavigationService.toggle(0, true);
|
|
12208
12213
|
}
|
|
@@ -12219,38 +12224,88 @@ class ColumnListComponent {
|
|
|
12219
12224
|
return;
|
|
12220
12225
|
}
|
|
12221
12226
|
if (changes['isLast'] && this.isLast) {
|
|
12222
|
-
this.service.menuTabbingService.lastFocusable = this.applyButton
|
|
12227
|
+
this.service.menuTabbingService.lastFocusable = this.applyButton?.nativeElement;
|
|
12223
12228
|
}
|
|
12224
12229
|
if (changes['isExpanded'] && this.isExpanded && this.isLast && this.applyButton) {
|
|
12225
12230
|
this.service.menuTabbingService.lastFocusable = this.applyButton.nativeElement;
|
|
12226
12231
|
}
|
|
12227
12232
|
}
|
|
12233
|
+
onSelectAllCheckboxChange(checkedState) {
|
|
12234
|
+
if (!checkedState && !this.allowHideAll) {
|
|
12235
|
+
const columnsToKeep = [];
|
|
12236
|
+
if (!columnsToKeep.length) {
|
|
12237
|
+
const unlockedColumns = this.filteredColumns.filter(c => !c.locked);
|
|
12238
|
+
if (unlockedColumns.length > 0) {
|
|
12239
|
+
columnsToKeep.push(unlockedColumns[0]);
|
|
12240
|
+
}
|
|
12241
|
+
}
|
|
12242
|
+
if (this.lockedColumnCheckboxes.length > 0) {
|
|
12243
|
+
const lockedColumns = this.filteredColumns.filter(c => c.locked);
|
|
12244
|
+
if (lockedColumns.length > 0) {
|
|
12245
|
+
columnsToKeep.unshift(lockedColumns[0]);
|
|
12246
|
+
}
|
|
12247
|
+
}
|
|
12248
|
+
this.filteredColumns.forEach(column => {
|
|
12249
|
+
const isChecked = columnsToKeep.indexOf(column) >= 0;
|
|
12250
|
+
column.currentlyChecked = isChecked;
|
|
12251
|
+
});
|
|
12252
|
+
}
|
|
12253
|
+
else {
|
|
12254
|
+
this.filteredColumns.forEach(column => {
|
|
12255
|
+
column.currentlyChecked = checkedState;
|
|
12256
|
+
});
|
|
12257
|
+
}
|
|
12258
|
+
if (this.autoSync) {
|
|
12259
|
+
const changedColumns = this.filteredColumns.filter(column => column.initiallyChecked !== column.currentlyChecked);
|
|
12260
|
+
if (changedColumns.length > 0) {
|
|
12261
|
+
changedColumns.forEach(column => {
|
|
12262
|
+
column.hidden = !column.currentlyChecked;
|
|
12263
|
+
column.initiallyChecked = column.currentlyChecked;
|
|
12264
|
+
});
|
|
12265
|
+
this.ngZone.run(() => {
|
|
12266
|
+
this.columnChange.emit(changedColumns);
|
|
12267
|
+
});
|
|
12268
|
+
}
|
|
12269
|
+
}
|
|
12270
|
+
this.filteredColumns = [...this.filteredColumns];
|
|
12271
|
+
this.updateDisabled();
|
|
12272
|
+
}
|
|
12228
12273
|
ngOnDestroy() {
|
|
12229
12274
|
this.domSubscriptions.unsubscribe();
|
|
12230
12275
|
}
|
|
12231
|
-
isDisabled(column) {
|
|
12232
|
-
return !(this.allowHideAll || this.hasFiltered || column.hidden || this.columns.find(current => current !== column && !current.hidden)) ||
|
|
12233
|
-
(this.hasVisibleLocked && !this.hasUnlockedFiltered && this.unlockedCount === 1 && !column.locked && !column.hidden);
|
|
12234
|
-
}
|
|
12235
12276
|
cancelChanges() {
|
|
12236
|
-
this.
|
|
12237
|
-
|
|
12277
|
+
this.columns.forEach((column) => {
|
|
12278
|
+
column.currentlyChecked = !column.hidden;
|
|
12279
|
+
column.initiallyChecked = !column.hidden;
|
|
12280
|
+
});
|
|
12281
|
+
this.filteredColumns.forEach((column) => {
|
|
12282
|
+
column.currentlyChecked = !column.hidden;
|
|
12283
|
+
column.initiallyChecked = !column.hidden;
|
|
12238
12284
|
});
|
|
12239
12285
|
this.updateDisabled();
|
|
12240
12286
|
this.reset.emit();
|
|
12241
12287
|
}
|
|
12242
12288
|
applyChanges() {
|
|
12243
12289
|
const changed = [];
|
|
12244
|
-
this.
|
|
12245
|
-
|
|
12246
|
-
|
|
12247
|
-
if (Boolean(column.hidden) !== hidden) {
|
|
12248
|
-
column.hidden = hidden;
|
|
12290
|
+
this.columns.forEach(column => {
|
|
12291
|
+
if (column.initiallyChecked !== column.currentlyChecked) {
|
|
12292
|
+
column.hidden = !column.currentlyChecked;
|
|
12249
12293
|
changed.push(column);
|
|
12250
12294
|
}
|
|
12251
12295
|
});
|
|
12252
12296
|
this.updateDisabled();
|
|
12253
12297
|
this.apply.emit(changed);
|
|
12298
|
+
if (changed.length) {
|
|
12299
|
+
this.cdr.markForCheck();
|
|
12300
|
+
this.columnInfoService?.changeVisibility(changed);
|
|
12301
|
+
}
|
|
12302
|
+
}
|
|
12303
|
+
focusActiveColumn(e) {
|
|
12304
|
+
const keyboardEvent = e;
|
|
12305
|
+
if (keyboardEvent.shiftKey) {
|
|
12306
|
+
this.listNavigationService.toggle(this.listNavigationService.activeIndex, true);
|
|
12307
|
+
e.preventDefault();
|
|
12308
|
+
}
|
|
12254
12309
|
}
|
|
12255
12310
|
onTab(e) {
|
|
12256
12311
|
if (this.isLast) {
|
|
@@ -12258,6 +12313,9 @@ class ColumnListComponent {
|
|
|
12258
12313
|
if (this.service) {
|
|
12259
12314
|
this.service.menuTabbingService.firstFocusable.focus();
|
|
12260
12315
|
}
|
|
12316
|
+
else if (this.filterable) {
|
|
12317
|
+
this.filterInput?.input.nativeElement.focus();
|
|
12318
|
+
}
|
|
12261
12319
|
else {
|
|
12262
12320
|
this.listNavigationService.toggle(this.listNavigationService.activeIndex, true);
|
|
12263
12321
|
}
|
|
@@ -12268,10 +12326,30 @@ class ColumnListComponent {
|
|
|
12268
12326
|
if (code !== Keys.Tab) {
|
|
12269
12327
|
e.preventDefault();
|
|
12270
12328
|
}
|
|
12329
|
+
if (code === 'Tab' && e.shiftKey) {
|
|
12330
|
+
this.resetButton?.nativeElement.focus();
|
|
12331
|
+
e.preventDefault();
|
|
12332
|
+
}
|
|
12271
12333
|
if (code === 'Tab' && !e.shiftKey && this.autoSync) {
|
|
12334
|
+
if (this.filterable) {
|
|
12335
|
+
this.filterInput?.input.nativeElement.focus();
|
|
12336
|
+
}
|
|
12337
|
+
e.preventDefault();
|
|
12338
|
+
}
|
|
12339
|
+
if (code === 'Tab' && e.shiftKey && this.autoSync && this.filterable) {
|
|
12340
|
+
this.filterInput?.input.nativeElement.focus();
|
|
12341
|
+
e.preventDefault();
|
|
12342
|
+
}
|
|
12343
|
+
if (code === 'Tab' && !e.shiftKey && !this.autoSync) {
|
|
12344
|
+
this.applyButton?.nativeElement.focus();
|
|
12272
12345
|
e.preventDefault();
|
|
12273
12346
|
}
|
|
12274
12347
|
if (code === 'Tab' && e.shiftKey) {
|
|
12348
|
+
if (!this.autoSync && this.filterable && e.target.matches('.k-column-list-item')) {
|
|
12349
|
+
this.filterInput?.input.nativeElement.focus();
|
|
12350
|
+
e.preventDefault();
|
|
12351
|
+
return;
|
|
12352
|
+
}
|
|
12275
12353
|
this.ngZone.run(() => {
|
|
12276
12354
|
if (e.target.matches('.k-column-list-item')) {
|
|
12277
12355
|
e.preventDefault();
|
|
@@ -12290,46 +12368,33 @@ class ColumnListComponent {
|
|
|
12290
12368
|
}
|
|
12291
12369
|
};
|
|
12292
12370
|
updateDisabled() {
|
|
12293
|
-
|
|
12371
|
+
const hasLockedColumns = this.columns.filter(c => c.locked).length > 0;
|
|
12372
|
+
if (this.allowHideAll && !hasLockedColumns) {
|
|
12294
12373
|
return;
|
|
12295
12374
|
}
|
|
12296
|
-
|
|
12297
|
-
const
|
|
12298
|
-
|
|
12299
|
-
|
|
12300
|
-
// Reset all disabled states first
|
|
12301
|
-
this.setDisabledState(checkbox, false);
|
|
12302
|
-
if (checkbox.checkedState) {
|
|
12303
|
-
visibleColumns.push({ checkbox, index });
|
|
12304
|
-
columnMap.set(index, this.columns[index]);
|
|
12305
|
-
}
|
|
12306
|
-
});
|
|
12307
|
-
// Only apply disabled states where needed
|
|
12308
|
-
if (!this.allowHideAll && visibleColumns.length === 1 && !this.hasFiltered) {
|
|
12309
|
-
this.setDisabledState(visibleColumns[0].checkbox, true);
|
|
12310
|
-
}
|
|
12311
|
-
else if (this.hasLocked && !this.hasUnlockedFiltered) {
|
|
12312
|
-
const checkedUnlocked = visibleColumns.filter(item => !columnMap.get(item.index).locked);
|
|
12313
|
-
if (checkedUnlocked.length === 1) {
|
|
12314
|
-
this.setDisabledState(checkedUnlocked[0].checkbox, true);
|
|
12315
|
-
}
|
|
12316
|
-
}
|
|
12317
|
-
}
|
|
12318
|
-
updateColumnState() {
|
|
12319
|
-
this.hasLocked = this.allColumns.filter(column => column.locked && (!column.hidden || column.includeInChooser !== false)).length > 0;
|
|
12320
|
-
this.hasVisibleLocked = this.allColumns.filter(column => column.locked && !column.hidden).length > 0;
|
|
12321
|
-
this.unlockedCount = this.columns.filter(column => !column.locked && !column.hidden).length;
|
|
12322
|
-
const filteredColumns = this.allColumns.filter(column => column.includeInChooser === false && !column.hidden);
|
|
12323
|
-
if (filteredColumns.length) {
|
|
12324
|
-
this.hasFiltered = filteredColumns.length > 0;
|
|
12325
|
-
this.hasUnlockedFiltered = filteredColumns.filter(column => !column.locked).length > 0;
|
|
12375
|
+
const currentlyCheckedUnlockedColumns = this.columns.filter(column => !column.locked && column.currentlyChecked).length;
|
|
12376
|
+
const shouldEnforceMinimumColumns = hasLockedColumns || !this.allowHideAll;
|
|
12377
|
+
if (shouldEnforceMinimumColumns && currentlyCheckedUnlockedColumns === 1) {
|
|
12378
|
+
this.disableFirstUnlockedCheckedCheckbox();
|
|
12326
12379
|
}
|
|
12327
12380
|
else {
|
|
12328
|
-
this.
|
|
12329
|
-
this.hasUnlockedFiltered = false;
|
|
12381
|
+
this.enableLastDisabledColumn();
|
|
12330
12382
|
}
|
|
12331
12383
|
}
|
|
12384
|
+
disableFirstUnlockedCheckedCheckbox() {
|
|
12385
|
+
const index = this.filteredColumns.filter(c => !c.locked).findIndex(column => column.currentlyChecked);
|
|
12386
|
+
const firstUnlockedCheckedCheckbox = this.unlockedColumnCheckboxes[index];
|
|
12387
|
+
this.setDisabledState(firstUnlockedCheckedCheckbox, true);
|
|
12388
|
+
this.lastDisabledCheckbox = firstUnlockedCheckedCheckbox;
|
|
12389
|
+
}
|
|
12390
|
+
enableLastDisabledColumn() {
|
|
12391
|
+
this.setDisabledState(this.lastDisabledCheckbox, false);
|
|
12392
|
+
this.lastDisabledCheckbox = null;
|
|
12393
|
+
}
|
|
12332
12394
|
setDisabledState(checkbox, disabled) {
|
|
12395
|
+
if (!checkbox) {
|
|
12396
|
+
return;
|
|
12397
|
+
}
|
|
12333
12398
|
if (checkbox.disabled !== disabled) {
|
|
12334
12399
|
this.ngZone.runOutsideAngular(() => {
|
|
12335
12400
|
checkbox.disabled = disabled;
|
|
@@ -12346,85 +12411,64 @@ class ColumnListComponent {
|
|
|
12346
12411
|
});
|
|
12347
12412
|
}
|
|
12348
12413
|
}
|
|
12349
|
-
|
|
12350
|
-
|
|
12351
|
-
if (
|
|
12352
|
-
|
|
12353
|
-
|
|
12354
|
-
|
|
12355
|
-
if (e.target === checkbox.input.nativeElement) {
|
|
12356
|
-
closestItem.focus();
|
|
12357
|
-
e.target.classList.remove('k-focus');
|
|
12358
|
-
}
|
|
12359
|
-
if (this.autoSync) {
|
|
12360
|
-
if (!this.columns[index]) {
|
|
12361
|
-
return;
|
|
12362
|
-
}
|
|
12363
|
-
const column = this.columns[index];
|
|
12364
|
-
const hidden = !checkbox.checkedState;
|
|
12365
|
-
if (Boolean(column.hidden) !== hidden) {
|
|
12366
|
-
this.ngZone.runOutsideAngular(() => {
|
|
12367
|
-
column.hidden = hidden;
|
|
12368
|
-
this.ngZone.run(() => {
|
|
12369
|
-
this.columnChange.emit([column]);
|
|
12370
|
-
});
|
|
12371
|
-
});
|
|
12372
|
-
}
|
|
12373
|
-
}
|
|
12374
|
-
else {
|
|
12375
|
-
this.ngZone.run(() => this.updateDisabled());
|
|
12376
|
-
}
|
|
12377
|
-
if (index !== this.listNavigationService.activeIndex) {
|
|
12378
|
-
this.listNavigationService.toggle(this.listNavigationService.activeIndex, false);
|
|
12379
|
-
this.listNavigationService.activeIndex = index;
|
|
12380
|
-
this.listNavigationService.toggle(index, true);
|
|
12381
|
-
}
|
|
12414
|
+
onCheckboxChange(checkedState, column, _index) {
|
|
12415
|
+
column.currentlyChecked = checkedState;
|
|
12416
|
+
if (this.autoSync) {
|
|
12417
|
+
column.hidden = !checkedState;
|
|
12418
|
+
column.initiallyChecked = checkedState;
|
|
12419
|
+
this.columnChange.emit([column]);
|
|
12382
12420
|
}
|
|
12383
|
-
|
|
12384
|
-
|
|
12385
|
-
|
|
12421
|
+
this.updateDisabled();
|
|
12422
|
+
}
|
|
12423
|
+
setTabindex(labelElement) {
|
|
12424
|
+
if (!labelElement) {
|
|
12425
|
+
return;
|
|
12426
|
+
}
|
|
12427
|
+
const allLabels = this.checkboxes.map(checkbox => checkbox.hostElement.nativeElement.parentElement);
|
|
12428
|
+
allLabels.forEach((label) => {
|
|
12429
|
+
const input = label.querySelector('input');
|
|
12430
|
+
input.classList.remove('k-focus');
|
|
12431
|
+
this.renderer.removeAttribute(label, 'tabindex');
|
|
12432
|
+
});
|
|
12433
|
+
this.renderer.setAttribute(labelElement, 'tabindex', '0');
|
|
12434
|
+
labelElement.focus();
|
|
12435
|
+
this.listNavigationService.activeIndex = allLabels.indexOf(labelElement);
|
|
12436
|
+
}
|
|
12437
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnListComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: ColumnListKeyboardNavigation }, { token: i0.ChangeDetectorRef }, { token: ColumnInfoService, optional: true }, { token: AdaptiveGridService, optional: true }, { token: ContextService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
12438
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnListComponent, isStandalone: true, selector: "kendo-grid-columnlist", inputs: { columns: "columns", filteredColumns: "filteredColumns", autoSync: "autoSync", showSelectAll: "showSelectAll", isFiltered: "isFiltered", ariaLabel: "ariaLabel", allowHideAll: "allowHideAll", applyText: "applyText", resetText: "resetText", isLast: "isLast", isExpanded: "isExpanded", service: "service", filterable: "filterable" }, outputs: { reset: "reset", apply: "apply", columnChange: "columnChange" }, host: { properties: { "class.k-column-list-wrapper": "this.className", "class.k-column-list-md": "this.listSizeMd", "class.k-column-list-lg": "this.listSizeLg" } }, providers: [ColumnListKeyboardNavigation], viewQueries: [{ propertyName: "checkboxes", predicate: CheckBoxComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
12386
12439
|
<div
|
|
12387
12440
|
class="k-column-list"
|
|
12388
12441
|
role="listbox"
|
|
12389
12442
|
aria-multiselectable="true"
|
|
12390
12443
|
[attr.aria-label]="ariaLabel">
|
|
12391
12444
|
<label
|
|
12392
|
-
*
|
|
12445
|
+
*ngIf="showSelectAll"
|
|
12446
|
+
class='k-column-list-item'
|
|
12447
|
+
role="option">
|
|
12448
|
+
<kendo-checkbox
|
|
12449
|
+
#checkbox
|
|
12450
|
+
[inputAttributes]="{'data-index': '0'}"
|
|
12451
|
+
[tabindex]="-1"
|
|
12452
|
+
[checkedState]="checkedCheckboxesLength === columns.length"
|
|
12453
|
+
(checkedStateChange)="onSelectAllCheckboxChange($event)"
|
|
12454
|
+
></kendo-checkbox>
|
|
12455
|
+
<span class="k-checkbox-label">{{ 'Select all' }}</span>
|
|
12456
|
+
</label>
|
|
12457
|
+
<label
|
|
12458
|
+
*ngFor="let column of filteredColumns; let index = index;"
|
|
12393
12459
|
class='k-column-list-item'
|
|
12394
|
-
[kendoColumnMenuChooserItemChecked]="!column.hidden"
|
|
12395
12460
|
role="option">
|
|
12396
12461
|
<kendo-checkbox
|
|
12462
|
+
#checkbox
|
|
12397
12463
|
[inputAttributes]="{'data-index': index.toString()}"
|
|
12398
12464
|
[tabindex]="-1"
|
|
12399
|
-
[checkedState]="
|
|
12400
|
-
|
|
12465
|
+
[checkedState]="column.currentlyChecked"
|
|
12466
|
+
(checkedStateChange)="onCheckboxChange($event, column, index)"
|
|
12401
12467
|
></kendo-checkbox>
|
|
12402
12468
|
<span class="k-checkbox-label">{{ column.displayTitle }}</span>
|
|
12403
12469
|
</label>
|
|
12404
12470
|
</div>
|
|
12405
|
-
|
|
12406
|
-
<button
|
|
12407
|
-
#applyButton
|
|
12408
|
-
kendoButton
|
|
12409
|
-
type="button"
|
|
12410
|
-
icon="check"
|
|
12411
|
-
[svgIcon]="checkIcon"
|
|
12412
|
-
themeColor="primary"
|
|
12413
|
-
(click)="applyChanges()"
|
|
12414
|
-
(keydown.enter)="$event.preventDefault(); $event.stopPropagation(); applyChanges();"
|
|
12415
|
-
(keydown.space)="$event.preventDefault(); $event.stopPropagation(); applyChanges();">{{ applyText }}</button>
|
|
12416
|
-
<button
|
|
12417
|
-
#resetButton
|
|
12418
|
-
kendoButton
|
|
12419
|
-
type="button"
|
|
12420
|
-
icon="reset"
|
|
12421
|
-
[svgIcon]="arrowRotateCcwIcon"
|
|
12422
|
-
(keydown.tab)="onTab($event)"
|
|
12423
|
-
(click)="cancelChanges()"
|
|
12424
|
-
(keydown.enter)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();"
|
|
12425
|
-
(keydown.space)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();">{{ resetText }}</button>
|
|
12426
|
-
</div>
|
|
12427
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ColumnMenuChooserItemCheckedDirective, selector: "[kendoColumnMenuChooserItemChecked]", inputs: ["kendoColumnMenuChooserItemChecked"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
|
12471
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }] });
|
|
12428
12472
|
}
|
|
12429
12473
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnListComponent, decorators: [{
|
|
12430
12474
|
type: Component,
|
|
@@ -12438,46 +12482,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12438
12482
|
aria-multiselectable="true"
|
|
12439
12483
|
[attr.aria-label]="ariaLabel">
|
|
12440
12484
|
<label
|
|
12441
|
-
*
|
|
12485
|
+
*ngIf="showSelectAll"
|
|
12442
12486
|
class='k-column-list-item'
|
|
12443
|
-
[kendoColumnMenuChooserItemChecked]="!column.hidden"
|
|
12444
12487
|
role="option">
|
|
12445
12488
|
<kendo-checkbox
|
|
12489
|
+
#checkbox
|
|
12490
|
+
[inputAttributes]="{'data-index': '0'}"
|
|
12491
|
+
[tabindex]="-1"
|
|
12492
|
+
[checkedState]="checkedCheckboxesLength === columns.length"
|
|
12493
|
+
(checkedStateChange)="onSelectAllCheckboxChange($event)"
|
|
12494
|
+
></kendo-checkbox>
|
|
12495
|
+
<span class="k-checkbox-label">{{ 'Select all' }}</span>
|
|
12496
|
+
</label>
|
|
12497
|
+
<label
|
|
12498
|
+
*ngFor="let column of filteredColumns; let index = index;"
|
|
12499
|
+
class='k-column-list-item'
|
|
12500
|
+
role="option">
|
|
12501
|
+
<kendo-checkbox
|
|
12502
|
+
#checkbox
|
|
12446
12503
|
[inputAttributes]="{'data-index': index.toString()}"
|
|
12447
12504
|
[tabindex]="-1"
|
|
12448
|
-
[checkedState]="
|
|
12449
|
-
|
|
12505
|
+
[checkedState]="column.currentlyChecked"
|
|
12506
|
+
(checkedStateChange)="onCheckboxChange($event, column, index)"
|
|
12450
12507
|
></kendo-checkbox>
|
|
12451
12508
|
<span class="k-checkbox-label">{{ column.displayTitle }}</span>
|
|
12452
12509
|
</label>
|
|
12453
12510
|
</div>
|
|
12454
|
-
<div [ngClass]="actionsClass" *ngIf="!autoSync && showActions">
|
|
12455
|
-
<button
|
|
12456
|
-
#applyButton
|
|
12457
|
-
kendoButton
|
|
12458
|
-
type="button"
|
|
12459
|
-
icon="check"
|
|
12460
|
-
[svgIcon]="checkIcon"
|
|
12461
|
-
themeColor="primary"
|
|
12462
|
-
(click)="applyChanges()"
|
|
12463
|
-
(keydown.enter)="$event.preventDefault(); $event.stopPropagation(); applyChanges();"
|
|
12464
|
-
(keydown.space)="$event.preventDefault(); $event.stopPropagation(); applyChanges();">{{ applyText }}</button>
|
|
12465
|
-
<button
|
|
12466
|
-
#resetButton
|
|
12467
|
-
kendoButton
|
|
12468
|
-
type="button"
|
|
12469
|
-
icon="reset"
|
|
12470
|
-
[svgIcon]="arrowRotateCcwIcon"
|
|
12471
|
-
(keydown.tab)="onTab($event)"
|
|
12472
|
-
(click)="cancelChanges()"
|
|
12473
|
-
(keydown.enter)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();"
|
|
12474
|
-
(keydown.space)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();">{{ resetText }}</button>
|
|
12475
|
-
</div>
|
|
12476
12511
|
`,
|
|
12477
12512
|
standalone: true,
|
|
12478
|
-
imports: [NgFor,
|
|
12513
|
+
imports: [NgFor, NgIf, CheckBoxComponent]
|
|
12479
12514
|
}]
|
|
12480
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: ColumnListKeyboardNavigation }, { type:
|
|
12515
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: ColumnListKeyboardNavigation }, { type: i0.ChangeDetectorRef }, { type: ColumnInfoService, decorators: [{
|
|
12516
|
+
type: Optional
|
|
12517
|
+
}] }, { type: AdaptiveGridService, decorators: [{
|
|
12481
12518
|
type: Optional
|
|
12482
12519
|
}] }, { type: ContextService, decorators: [{
|
|
12483
12520
|
type: Optional
|
|
@@ -12498,10 +12535,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12498
12535
|
type: Output
|
|
12499
12536
|
}], columns: [{
|
|
12500
12537
|
type: Input
|
|
12501
|
-
}],
|
|
12538
|
+
}], filteredColumns: [{
|
|
12502
12539
|
type: Input
|
|
12503
12540
|
}], autoSync: [{
|
|
12504
12541
|
type: Input
|
|
12542
|
+
}], showSelectAll: [{
|
|
12543
|
+
type: Input
|
|
12544
|
+
}], isFiltered: [{
|
|
12545
|
+
type: Input
|
|
12505
12546
|
}], ariaLabel: [{
|
|
12506
12547
|
type: Input
|
|
12507
12548
|
}], allowHideAll: [{
|
|
@@ -12510,28 +12551,307 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12510
12551
|
type: Input
|
|
12511
12552
|
}], resetText: [{
|
|
12512
12553
|
type: Input
|
|
12513
|
-
}], actionsClass: [{
|
|
12514
|
-
type: Input
|
|
12515
12554
|
}], isLast: [{
|
|
12516
12555
|
type: Input
|
|
12517
12556
|
}], isExpanded: [{
|
|
12518
12557
|
type: Input
|
|
12519
12558
|
}], service: [{
|
|
12520
12559
|
type: Input
|
|
12521
|
-
}],
|
|
12522
|
-
type:
|
|
12523
|
-
args: ['resetButton', { static: false }]
|
|
12524
|
-
}], applyButton: [{
|
|
12525
|
-
type: ViewChild,
|
|
12526
|
-
args: ['applyButton', { static: false }]
|
|
12527
|
-
}], options: [{
|
|
12528
|
-
type: ViewChildren,
|
|
12529
|
-
args: [ColumnMenuChooserItemCheckedDirective]
|
|
12560
|
+
}], filterable: [{
|
|
12561
|
+
type: Input
|
|
12530
12562
|
}], checkboxes: [{
|
|
12531
12563
|
type: ViewChildren,
|
|
12532
12564
|
args: [CheckBoxComponent]
|
|
12533
12565
|
}] } });
|
|
12534
12566
|
|
|
12567
|
+
/**
|
|
12568
|
+
* @hidden
|
|
12569
|
+
*/
|
|
12570
|
+
class ColumnChooserContentComponent {
|
|
12571
|
+
cdr;
|
|
12572
|
+
columnInfoService;
|
|
12573
|
+
ctx;
|
|
12574
|
+
resetButton;
|
|
12575
|
+
applyButton;
|
|
12576
|
+
columnList;
|
|
12577
|
+
filterInput;
|
|
12578
|
+
filterable = true;
|
|
12579
|
+
showSelectAll = true;
|
|
12580
|
+
showCheckedCount = true;
|
|
12581
|
+
allowHideAll = false;
|
|
12582
|
+
autoSync = false;
|
|
12583
|
+
actionsClass = 'k-actions k-actions-stretched k-actions-horizontal';
|
|
12584
|
+
closeOnReset = true;
|
|
12585
|
+
set columns(value) {
|
|
12586
|
+
this._columns = value;
|
|
12587
|
+
}
|
|
12588
|
+
get columns() {
|
|
12589
|
+
return this._columns;
|
|
12590
|
+
}
|
|
12591
|
+
isLast;
|
|
12592
|
+
isExpanded;
|
|
12593
|
+
service;
|
|
12594
|
+
close = new EventEmitter();
|
|
12595
|
+
get selectedItemsText() {
|
|
12596
|
+
const count = this.columnList?.checkedCheckboxesLength || 0;
|
|
12597
|
+
const localizedMessage = this.messageFor('columnChooserSelectedColumnsCount');
|
|
12598
|
+
return replaceMessagePlaceholder(localizedMessage, 'selectedColumnsCount', count.toString());
|
|
12599
|
+
}
|
|
12600
|
+
get actionSheetOpened() {
|
|
12601
|
+
return this.ctx?.grid?.isActionSheetExpanded;
|
|
12602
|
+
}
|
|
12603
|
+
searchIcon = searchIcon;
|
|
12604
|
+
checkIcon = checkIcon;
|
|
12605
|
+
arrowRotateCcwIcon = arrowRotateCcwIcon;
|
|
12606
|
+
applyText;
|
|
12607
|
+
resetText;
|
|
12608
|
+
filteredColumns = [];
|
|
12609
|
+
isFiltered = false;
|
|
12610
|
+
_columns = [];
|
|
12611
|
+
constructor(cdr, columnInfoService, ctx) {
|
|
12612
|
+
this.cdr = cdr;
|
|
12613
|
+
this.columnInfoService = columnInfoService;
|
|
12614
|
+
this.ctx = ctx;
|
|
12615
|
+
}
|
|
12616
|
+
ngOnInit() {
|
|
12617
|
+
this.applyText = this.ctx?.localization.get('columnsApply');
|
|
12618
|
+
this.resetText = this.ctx?.localization.get('columnsReset');
|
|
12619
|
+
}
|
|
12620
|
+
ngAfterViewInit() {
|
|
12621
|
+
this.filteredColumns = this.columnInfoService?.leafNamedColumns.filter(column => {
|
|
12622
|
+
if (column.includeInChooser !== false) {
|
|
12623
|
+
column.initiallyChecked = column.currentlyChecked = !column.hidden;
|
|
12624
|
+
return true;
|
|
12625
|
+
}
|
|
12626
|
+
return false;
|
|
12627
|
+
});
|
|
12628
|
+
this.cdr.detectChanges();
|
|
12629
|
+
}
|
|
12630
|
+
ngAfterViewChecked() {
|
|
12631
|
+
this.columnList.resetButton = this.resetButton;
|
|
12632
|
+
this.columnList.applyButton = this.applyButton;
|
|
12633
|
+
this.columnList.filterInput = this.filterInput;
|
|
12634
|
+
}
|
|
12635
|
+
onFilter(value) {
|
|
12636
|
+
this.isFiltered = value.length > 0;
|
|
12637
|
+
this.showSelectAll = !this.isFiltered;
|
|
12638
|
+
const filterDescriptor = {
|
|
12639
|
+
field: 'displayTitle',
|
|
12640
|
+
operator: 'contains',
|
|
12641
|
+
value: value
|
|
12642
|
+
};
|
|
12643
|
+
this.filteredColumns = filterBy(this.columnInfoService?.leafNamedColumns, filterDescriptor);
|
|
12644
|
+
this.cdr.detectChanges();
|
|
12645
|
+
this.columnList.listNavigationService.activeIndex = 0;
|
|
12646
|
+
this.columnList.listNavigationService.items = this.columnList.checkboxes?.toArray();
|
|
12647
|
+
}
|
|
12648
|
+
messageFor = token => this.ctx?.localization.get(token);
|
|
12649
|
+
onChange(changed) {
|
|
12650
|
+
this.cdr.markForCheck();
|
|
12651
|
+
this.columnInfoService?.changeVisibility(changed);
|
|
12652
|
+
}
|
|
12653
|
+
applyChanges() {
|
|
12654
|
+
this.columnList.applyChanges();
|
|
12655
|
+
this.close.emit();
|
|
12656
|
+
}
|
|
12657
|
+
cancelChanges() {
|
|
12658
|
+
this.columnList.cancelChanges();
|
|
12659
|
+
if (this.closeOnReset) {
|
|
12660
|
+
this.close.emit();
|
|
12661
|
+
}
|
|
12662
|
+
}
|
|
12663
|
+
onTab(e) {
|
|
12664
|
+
if (e.key === 'Tab' && !e.shiftKey) {
|
|
12665
|
+
this.columnList.listNavigationService.toggle(this.columnList.listNavigationService.activeIndex, true);
|
|
12666
|
+
e.preventDefault();
|
|
12667
|
+
}
|
|
12668
|
+
if (e.key === 'Tab' && e.shiftKey && !this.service) {
|
|
12669
|
+
this.columnList.resetButton?.nativeElement.focus();
|
|
12670
|
+
e.preventDefault();
|
|
12671
|
+
}
|
|
12672
|
+
}
|
|
12673
|
+
onApplyButtonKeydown(e) {
|
|
12674
|
+
if (e.key === 'Tab') {
|
|
12675
|
+
this.columnList.focusActiveColumn(e);
|
|
12676
|
+
}
|
|
12677
|
+
}
|
|
12678
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserContentComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: ColumnInfoService, optional: true }, { token: ContextService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
12679
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserContentComponent, isStandalone: true, selector: "kendo-grid-column-chooser-content", inputs: { filterable: "filterable", showSelectAll: "showSelectAll", showCheckedCount: "showCheckedCount", allowHideAll: "allowHideAll", autoSync: "autoSync", actionsClass: "actionsClass", closeOnReset: "closeOnReset", columns: "columns", isLast: "isLast", isExpanded: "isExpanded", service: "service" }, outputs: { close: "close" }, viewQueries: [{ propertyName: "resetButton", first: true, predicate: ["resetButton"], descendants: true }, { propertyName: "applyButton", first: true, predicate: ["applyButton"], descendants: true }, { propertyName: "columnList", first: true, predicate: ["columnList"], descendants: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }], ngImport: i0, template: `
|
|
12680
|
+
<form class="k-filter-menu">
|
|
12681
|
+
<div class="k-filter-menu-container">
|
|
12682
|
+
<kendo-textbox
|
|
12683
|
+
#filterInput
|
|
12684
|
+
*ngIf="filterable"
|
|
12685
|
+
class="k-searchbox"
|
|
12686
|
+
(valueChange)="onFilter($event)"
|
|
12687
|
+
[kendoEventsOutsideAngular]="{'keydown': onTab}"
|
|
12688
|
+
[scope]="this"
|
|
12689
|
+
>
|
|
12690
|
+
<ng-template kendoPrefixTemplate>
|
|
12691
|
+
<kendo-icon-wrapper
|
|
12692
|
+
[name]="'search'"
|
|
12693
|
+
[svgIcon]="searchIcon">
|
|
12694
|
+
</kendo-icon-wrapper>
|
|
12695
|
+
</ng-template>
|
|
12696
|
+
</kendo-textbox>
|
|
12697
|
+
<kendo-grid-columnlist
|
|
12698
|
+
#columnList
|
|
12699
|
+
[columns]="columns"
|
|
12700
|
+
[filteredColumns]="filteredColumns"
|
|
12701
|
+
[ariaLabel]="messageFor('columns')"
|
|
12702
|
+
[showSelectAll]="showSelectAll"
|
|
12703
|
+
[isLast]="isLast"
|
|
12704
|
+
[isFiltered]="isFiltered"
|
|
12705
|
+
[filterable]="filterable"
|
|
12706
|
+
[isExpanded]="isExpanded"
|
|
12707
|
+
[service]="service"
|
|
12708
|
+
[applyText]="messageFor('columnsApply')"
|
|
12709
|
+
[resetText]="messageFor('columnsReset')"
|
|
12710
|
+
[autoSync]="autoSync"
|
|
12711
|
+
[allowHideAll]="allowHideAll"
|
|
12712
|
+
(columnChange)="onChange($event)"
|
|
12713
|
+
>
|
|
12714
|
+
</kendo-grid-columnlist>
|
|
12715
|
+
<div *ngIf="showCheckedCount" class="k-filter-selected-items">
|
|
12716
|
+
{{selectedItemsText}}
|
|
12717
|
+
</div>
|
|
12718
|
+
<div [ngClass]="actionsClass" *ngIf="!autoSync && !actionSheetOpened">
|
|
12719
|
+
<button
|
|
12720
|
+
#applyButton
|
|
12721
|
+
kendoButton
|
|
12722
|
+
type="button"
|
|
12723
|
+
icon="check"
|
|
12724
|
+
[svgIcon]="checkIcon"
|
|
12725
|
+
themeColor="primary"
|
|
12726
|
+
(click)="applyChanges()"
|
|
12727
|
+
(keydown)="onApplyButtonKeydown($event)"
|
|
12728
|
+
>{{ applyText }}</button>
|
|
12729
|
+
<button
|
|
12730
|
+
#resetButton
|
|
12731
|
+
kendoButton
|
|
12732
|
+
type="button"
|
|
12733
|
+
icon="reset"
|
|
12734
|
+
(keydown.tab)="columnList.onTab($event)"
|
|
12735
|
+
[svgIcon]="arrowRotateCcwIcon"
|
|
12736
|
+
(click)="cancelChanges()"
|
|
12737
|
+
>{{ resetText }}</button>
|
|
12738
|
+
</div>
|
|
12739
|
+
</div>
|
|
12740
|
+
</form>
|
|
12741
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: ColumnListComponent, selector: "kendo-grid-columnlist", inputs: ["columns", "filteredColumns", "autoSync", "showSelectAll", "isFiltered", "ariaLabel", "allowHideAll", "applyText", "resetText", "isLast", "isExpanded", "service", "filterable"], outputs: ["reset", "apply", "columnChange"] }, { kind: "component", type: TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "type", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength", "inputAttributes"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }, { kind: "directive", type: PrefixTemplateDirective, selector: "[kendoPrefixTemplate]", inputs: ["showSeparator"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
12742
|
+
}
|
|
12743
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserContentComponent, decorators: [{
|
|
12744
|
+
type: Component,
|
|
12745
|
+
args: [{
|
|
12746
|
+
selector: 'kendo-grid-column-chooser-content',
|
|
12747
|
+
template: `
|
|
12748
|
+
<form class="k-filter-menu">
|
|
12749
|
+
<div class="k-filter-menu-container">
|
|
12750
|
+
<kendo-textbox
|
|
12751
|
+
#filterInput
|
|
12752
|
+
*ngIf="filterable"
|
|
12753
|
+
class="k-searchbox"
|
|
12754
|
+
(valueChange)="onFilter($event)"
|
|
12755
|
+
[kendoEventsOutsideAngular]="{'keydown': onTab}"
|
|
12756
|
+
[scope]="this"
|
|
12757
|
+
>
|
|
12758
|
+
<ng-template kendoPrefixTemplate>
|
|
12759
|
+
<kendo-icon-wrapper
|
|
12760
|
+
[name]="'search'"
|
|
12761
|
+
[svgIcon]="searchIcon">
|
|
12762
|
+
</kendo-icon-wrapper>
|
|
12763
|
+
</ng-template>
|
|
12764
|
+
</kendo-textbox>
|
|
12765
|
+
<kendo-grid-columnlist
|
|
12766
|
+
#columnList
|
|
12767
|
+
[columns]="columns"
|
|
12768
|
+
[filteredColumns]="filteredColumns"
|
|
12769
|
+
[ariaLabel]="messageFor('columns')"
|
|
12770
|
+
[showSelectAll]="showSelectAll"
|
|
12771
|
+
[isLast]="isLast"
|
|
12772
|
+
[isFiltered]="isFiltered"
|
|
12773
|
+
[filterable]="filterable"
|
|
12774
|
+
[isExpanded]="isExpanded"
|
|
12775
|
+
[service]="service"
|
|
12776
|
+
[applyText]="messageFor('columnsApply')"
|
|
12777
|
+
[resetText]="messageFor('columnsReset')"
|
|
12778
|
+
[autoSync]="autoSync"
|
|
12779
|
+
[allowHideAll]="allowHideAll"
|
|
12780
|
+
(columnChange)="onChange($event)"
|
|
12781
|
+
>
|
|
12782
|
+
</kendo-grid-columnlist>
|
|
12783
|
+
<div *ngIf="showCheckedCount" class="k-filter-selected-items">
|
|
12784
|
+
{{selectedItemsText}}
|
|
12785
|
+
</div>
|
|
12786
|
+
<div [ngClass]="actionsClass" *ngIf="!autoSync && !actionSheetOpened">
|
|
12787
|
+
<button
|
|
12788
|
+
#applyButton
|
|
12789
|
+
kendoButton
|
|
12790
|
+
type="button"
|
|
12791
|
+
icon="check"
|
|
12792
|
+
[svgIcon]="checkIcon"
|
|
12793
|
+
themeColor="primary"
|
|
12794
|
+
(click)="applyChanges()"
|
|
12795
|
+
(keydown)="onApplyButtonKeydown($event)"
|
|
12796
|
+
>{{ applyText }}</button>
|
|
12797
|
+
<button
|
|
12798
|
+
#resetButton
|
|
12799
|
+
kendoButton
|
|
12800
|
+
type="button"
|
|
12801
|
+
icon="reset"
|
|
12802
|
+
(keydown.tab)="columnList.onTab($event)"
|
|
12803
|
+
[svgIcon]="arrowRotateCcwIcon"
|
|
12804
|
+
(click)="cancelChanges()"
|
|
12805
|
+
>{{ resetText }}</button>
|
|
12806
|
+
</div>
|
|
12807
|
+
</div>
|
|
12808
|
+
</form>
|
|
12809
|
+
`,
|
|
12810
|
+
standalone: true,
|
|
12811
|
+
imports: [NgIf, NgClass, ButtonComponent, ColumnListComponent, TextBoxComponent, PrefixTemplateDirective, IconWrapperComponent, EventsOutsideAngularDirective]
|
|
12812
|
+
}]
|
|
12813
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: ColumnInfoService, decorators: [{
|
|
12814
|
+
type: Optional
|
|
12815
|
+
}] }, { type: ContextService, decorators: [{
|
|
12816
|
+
type: Optional
|
|
12817
|
+
}] }]; }, propDecorators: { resetButton: [{
|
|
12818
|
+
type: ViewChild,
|
|
12819
|
+
args: ['resetButton']
|
|
12820
|
+
}], applyButton: [{
|
|
12821
|
+
type: ViewChild,
|
|
12822
|
+
args: ['applyButton']
|
|
12823
|
+
}], columnList: [{
|
|
12824
|
+
type: ViewChild,
|
|
12825
|
+
args: ['columnList']
|
|
12826
|
+
}], filterInput: [{
|
|
12827
|
+
type: ViewChild,
|
|
12828
|
+
args: ['filterInput']
|
|
12829
|
+
}], filterable: [{
|
|
12830
|
+
type: Input
|
|
12831
|
+
}], showSelectAll: [{
|
|
12832
|
+
type: Input
|
|
12833
|
+
}], showCheckedCount: [{
|
|
12834
|
+
type: Input
|
|
12835
|
+
}], allowHideAll: [{
|
|
12836
|
+
type: Input
|
|
12837
|
+
}], autoSync: [{
|
|
12838
|
+
type: Input
|
|
12839
|
+
}], actionsClass: [{
|
|
12840
|
+
type: Input
|
|
12841
|
+
}], closeOnReset: [{
|
|
12842
|
+
type: Input
|
|
12843
|
+
}], columns: [{
|
|
12844
|
+
type: Input
|
|
12845
|
+
}], isLast: [{
|
|
12846
|
+
type: Input
|
|
12847
|
+
}], isExpanded: [{
|
|
12848
|
+
type: Input
|
|
12849
|
+
}], service: [{
|
|
12850
|
+
type: Input
|
|
12851
|
+
}], close: [{
|
|
12852
|
+
type: Output
|
|
12853
|
+
}] } });
|
|
12854
|
+
|
|
12535
12855
|
/**
|
|
12536
12856
|
* Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:columnmenu_grid#toc-using-standalone-column-chooser).
|
|
12537
12857
|
* To show and hide the columns without including the column chooser item in the [Column Menu](slug:columnmenu_grid),
|
|
@@ -12560,6 +12880,18 @@ class ColumnChooserComponent {
|
|
|
12560
12880
|
* @default false
|
|
12561
12881
|
*/
|
|
12562
12882
|
autoSync = false;
|
|
12883
|
+
/**
|
|
12884
|
+
* Specifies if the column chooser displays a search box.
|
|
12885
|
+
*
|
|
12886
|
+
* @default true
|
|
12887
|
+
*/
|
|
12888
|
+
filterable = true;
|
|
12889
|
+
/**
|
|
12890
|
+
* Specifies if the column chooser displays a select all checkbox.
|
|
12891
|
+
*
|
|
12892
|
+
* @default true
|
|
12893
|
+
*/
|
|
12894
|
+
showSelectAll = true;
|
|
12563
12895
|
/**
|
|
12564
12896
|
* Specifies if all columns can be hidden.
|
|
12565
12897
|
*
|
|
@@ -12635,16 +12967,6 @@ class ColumnChooserComponent {
|
|
|
12635
12967
|
this.close();
|
|
12636
12968
|
}
|
|
12637
12969
|
}
|
|
12638
|
-
/**
|
|
12639
|
-
* @hidden
|
|
12640
|
-
*/
|
|
12641
|
-
onApply(changed) {
|
|
12642
|
-
this.close(true);
|
|
12643
|
-
if (changed.length) {
|
|
12644
|
-
this.changeDetector.markForCheck();
|
|
12645
|
-
this.columnInfoService.changeVisibility(changed);
|
|
12646
|
-
}
|
|
12647
|
-
}
|
|
12648
12970
|
/**
|
|
12649
12971
|
* @hidden
|
|
12650
12972
|
*/
|
|
@@ -12652,6 +12974,9 @@ class ColumnChooserComponent {
|
|
|
12652
12974
|
this.changeDetector.markForCheck();
|
|
12653
12975
|
this.columnInfoService.changeVisibility(changed);
|
|
12654
12976
|
}
|
|
12977
|
+
/**
|
|
12978
|
+
* @hidden
|
|
12979
|
+
*/
|
|
12655
12980
|
close(focusAnchor = false) {
|
|
12656
12981
|
if (this.popupRef) {
|
|
12657
12982
|
this.popupRef.close();
|
|
@@ -12669,7 +12994,7 @@ class ColumnChooserComponent {
|
|
|
12669
12994
|
}
|
|
12670
12995
|
}
|
|
12671
12996
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i2.PopupService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
12672
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserComponent, isStandalone: true, selector: "kendo-grid-column-chooser", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true }, { propertyName: "columnList", first: true, predicate: ["columnList"], descendants: true }], ngImport: i0, template: `
|
|
12997
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserComponent, isStandalone: true, selector: "kendo-grid-column-chooser", inputs: { autoSync: "autoSync", filterable: "filterable", showSelectAll: "showSelectAll", allowHideAll: "allowHideAll" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true }, { propertyName: "columnList", first: true, predicate: ["columnList"], descendants: true }], ngImport: i0, template: `
|
|
12673
12998
|
<button #anchor
|
|
12674
12999
|
kendoButton
|
|
12675
13000
|
type="button"
|
|
@@ -12682,20 +13007,19 @@ class ColumnChooserComponent {
|
|
|
12682
13007
|
[attr.aria-expanded]="!!(popupRef)"
|
|
12683
13008
|
[attr.aria-controls]="!!(popupRef) ? popupId : undefined"></button>
|
|
12684
13009
|
<ng-template #template>
|
|
12685
|
-
<kendo-grid-
|
|
12686
|
-
#columnList
|
|
13010
|
+
<kendo-grid-column-chooser-content
|
|
12687
13011
|
[columns]="columns"
|
|
12688
|
-
[ariaLabel]="messageFor('columns')"
|
|
12689
|
-
[isLast]="true"
|
|
12690
|
-
[applyText]="messageFor('columnsApply')"
|
|
12691
|
-
[resetText]="messageFor('columnsReset')"
|
|
12692
13012
|
[autoSync]="autoSync"
|
|
13013
|
+
[filterable]="filterable"
|
|
13014
|
+
[showSelectAll]="showSelectAll"
|
|
13015
|
+
[closeOnReset]="false"
|
|
13016
|
+
[isLast]="true"
|
|
12693
13017
|
[allowHideAll]="allowHideAll"
|
|
12694
|
-
(
|
|
12695
|
-
|
|
12696
|
-
</kendo-grid-
|
|
13018
|
+
(close)="close(true)"
|
|
13019
|
+
>
|
|
13020
|
+
</kendo-grid-column-chooser-content>
|
|
12697
13021
|
</ng-template>
|
|
12698
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type:
|
|
13022
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: ColumnChooserContentComponent, selector: "kendo-grid-column-chooser-content", inputs: ["filterable", "showSelectAll", "showCheckedCount", "allowHideAll", "autoSync", "actionsClass", "closeOnReset", "columns", "isLast", "isExpanded", "service"], outputs: ["close"] }] });
|
|
12699
13023
|
}
|
|
12700
13024
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserComponent, decorators: [{
|
|
12701
13025
|
type: Component,
|
|
@@ -12714,25 +13038,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12714
13038
|
[attr.aria-expanded]="!!(popupRef)"
|
|
12715
13039
|
[attr.aria-controls]="!!(popupRef) ? popupId : undefined"></button>
|
|
12716
13040
|
<ng-template #template>
|
|
12717
|
-
<kendo-grid-
|
|
12718
|
-
#columnList
|
|
13041
|
+
<kendo-grid-column-chooser-content
|
|
12719
13042
|
[columns]="columns"
|
|
12720
|
-
[ariaLabel]="messageFor('columns')"
|
|
12721
|
-
[isLast]="true"
|
|
12722
|
-
[applyText]="messageFor('columnsApply')"
|
|
12723
|
-
[resetText]="messageFor('columnsReset')"
|
|
12724
13043
|
[autoSync]="autoSync"
|
|
13044
|
+
[filterable]="filterable"
|
|
13045
|
+
[showSelectAll]="showSelectAll"
|
|
13046
|
+
[closeOnReset]="false"
|
|
13047
|
+
[isLast]="true"
|
|
12725
13048
|
[allowHideAll]="allowHideAll"
|
|
12726
|
-
(
|
|
12727
|
-
|
|
12728
|
-
</kendo-grid-
|
|
13049
|
+
(close)="close(true)"
|
|
13050
|
+
>
|
|
13051
|
+
</kendo-grid-column-chooser-content>
|
|
12729
13052
|
</ng-template>
|
|
12730
13053
|
`,
|
|
12731
13054
|
standalone: true,
|
|
12732
|
-
imports: [ButtonComponent, ColumnListComponent]
|
|
13055
|
+
imports: [ButtonComponent, ColumnListComponent, ColumnChooserContentComponent]
|
|
12733
13056
|
}]
|
|
12734
13057
|
}], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i2.PopupService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autoSync: [{
|
|
12735
13058
|
type: Input
|
|
13059
|
+
}], filterable: [{
|
|
13060
|
+
type: Input
|
|
13061
|
+
}], showSelectAll: [{
|
|
13062
|
+
type: Input
|
|
12736
13063
|
}], allowHideAll: [{
|
|
12737
13064
|
type: Input
|
|
12738
13065
|
}], anchor: [{
|
|
@@ -12867,6 +13194,18 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
12867
13194
|
* @default true
|
|
12868
13195
|
*/
|
|
12869
13196
|
allowHideAll = true;
|
|
13197
|
+
/**
|
|
13198
|
+
* When `true`, enables the columns' filtering.
|
|
13199
|
+
*
|
|
13200
|
+
* @default true
|
|
13201
|
+
*/
|
|
13202
|
+
filterable = true;
|
|
13203
|
+
/**
|
|
13204
|
+
* When `true`, displays a select all checkbox.
|
|
13205
|
+
*
|
|
13206
|
+
* @default true
|
|
13207
|
+
*/
|
|
13208
|
+
showSelectAll = true;
|
|
12870
13209
|
/**
|
|
12871
13210
|
* @hidden
|
|
12872
13211
|
*/
|
|
@@ -12945,7 +13284,7 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
12945
13284
|
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
12946
13285
|
this.popupRef = this.popupSerivce.open({
|
|
12947
13286
|
anchor: this.buttonElement,
|
|
12948
|
-
content:
|
|
13287
|
+
content: ColumnChooserContentComponent,
|
|
12949
13288
|
positionMode: 'absolute',
|
|
12950
13289
|
anchorAlign: { vertical: 'bottom', horizontal: direction },
|
|
12951
13290
|
popupAlign: { vertical: 'top', horizontal: direction }
|
|
@@ -12967,18 +13306,28 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
12967
13306
|
this.buttonElement?.setAttribute('aria-expanded', 'true');
|
|
12968
13307
|
this.buttonElement?.setAttribute('aria-controls', popupId);
|
|
12969
13308
|
this.host.selected = true;
|
|
12970
|
-
const
|
|
12971
|
-
|
|
12972
|
-
|
|
12973
|
-
|
|
12974
|
-
|
|
12975
|
-
|
|
12976
|
-
|
|
12977
|
-
|
|
13309
|
+
const columnChooserContent = this.popupRef.content.instance;
|
|
13310
|
+
columnChooserContent.columnInfoService = this.columnInfoService;
|
|
13311
|
+
columnChooserContent.ctx = this.ctx;
|
|
13312
|
+
columnChooserContent.showSelectAll = this.showSelectAll;
|
|
13313
|
+
columnChooserContent.filterable = this.filterable;
|
|
13314
|
+
columnChooserContent.isLast = true;
|
|
13315
|
+
columnChooserContent.autoSync = this.autoSync;
|
|
13316
|
+
columnChooserContent.allowHideAll = this.allowHideAll;
|
|
13317
|
+
columnChooserContent.applyText = this.ctx.localization.get('columnsApply');
|
|
13318
|
+
columnChooserContent.resetText = this.ctx.localization.get('columnsReset');
|
|
13319
|
+
columnChooserContent.columns = this.ctx.grid.columns;
|
|
13320
|
+
columnChooserContent.filteredColumns = this.columnInfoService?.leafNamedColumns.filter(column => {
|
|
13321
|
+
if (column.includeInChooser !== false) {
|
|
13322
|
+
column.initiallyChecked = column.currentlyChecked = !column.hidden;
|
|
13323
|
+
return true;
|
|
13324
|
+
}
|
|
13325
|
+
return false;
|
|
13326
|
+
});
|
|
12978
13327
|
this.subs.add(this.popupRef.popup.instance.anchorViewportLeave.subscribe(() => {
|
|
12979
13328
|
this.closePopup(true);
|
|
12980
13329
|
}));
|
|
12981
|
-
this.subs.add(columnList.apply.subscribe((changed) => {
|
|
13330
|
+
this.subs.add(columnChooserContent.columnList.apply.subscribe((changed) => {
|
|
12982
13331
|
if (changed.length) {
|
|
12983
13332
|
this.cdr.markForCheck();
|
|
12984
13333
|
this.columnInfoService.changeVisibility(changed);
|
|
@@ -13003,10 +13352,10 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
13003
13352
|
this.buttonElement?.setAttribute('aria-expanded', 'false');
|
|
13004
13353
|
this.buttonElement?.removeAttribute('aria-controls');
|
|
13005
13354
|
this.host.selected = false;
|
|
13006
|
-
focusAnchor && this.buttonElement?.focus();
|
|
13355
|
+
focusAnchor && this.buttonElement?.focus({ preventScroll: true });
|
|
13007
13356
|
}
|
|
13008
13357
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i2.PopupService }, { token: i54.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i54.RefreshService }, { token: AdaptiveGridService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13009
|
-
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 });
|
|
13358
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll", filterable: "filterable", showSelectAll: "showSelectAll" }, usesInheritance: true, ngImport: i0 });
|
|
13010
13359
|
}
|
|
13011
13360
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, decorators: [{
|
|
13012
13361
|
type: Directive,
|
|
@@ -13018,6 +13367,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
13018
13367
|
type: Input
|
|
13019
13368
|
}], allowHideAll: [{
|
|
13020
13369
|
type: Input
|
|
13370
|
+
}], filterable: [{
|
|
13371
|
+
type: Input
|
|
13372
|
+
}], showSelectAll: [{
|
|
13373
|
+
type: Input
|
|
13021
13374
|
}] } });
|
|
13022
13375
|
|
|
13023
13376
|
/**
|
|
@@ -13703,7 +14056,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
13703
14056
|
class ColumnMenuChooserComponent extends ColumnMenuItemBase {
|
|
13704
14057
|
ctx;
|
|
13705
14058
|
columnInfoService;
|
|
13706
|
-
changeDetector;
|
|
13707
14059
|
hostElement;
|
|
13708
14060
|
/**
|
|
13709
14061
|
* Fires when the content expands.
|
|
@@ -13730,23 +14082,12 @@ class ColumnMenuChooserComponent extends ColumnMenuItemBase {
|
|
|
13730
14082
|
return this.columnInfoService.leafNamedColumns;
|
|
13731
14083
|
}
|
|
13732
14084
|
columnsIcon = columnsIcon;
|
|
13733
|
-
constructor(ctx, columnInfoService,
|
|
14085
|
+
constructor(ctx, columnInfoService, hostElement) {
|
|
13734
14086
|
super();
|
|
13735
14087
|
this.ctx = ctx;
|
|
13736
14088
|
this.columnInfoService = columnInfoService;
|
|
13737
|
-
this.changeDetector = changeDetector;
|
|
13738
14089
|
this.hostElement = hostElement;
|
|
13739
14090
|
}
|
|
13740
|
-
/**
|
|
13741
|
-
* @hidden
|
|
13742
|
-
*/
|
|
13743
|
-
onApply(changed) {
|
|
13744
|
-
this.close();
|
|
13745
|
-
if (changed.length) {
|
|
13746
|
-
this.changeDetector.markForCheck();
|
|
13747
|
-
this.columnInfoService.changeVisibility(changed);
|
|
13748
|
-
}
|
|
13749
|
-
}
|
|
13750
14091
|
/**
|
|
13751
14092
|
* @hidden
|
|
13752
14093
|
*/
|
|
@@ -13764,7 +14105,7 @@ class ColumnMenuChooserComponent extends ColumnMenuItemBase {
|
|
|
13764
14105
|
this.expanded = true;
|
|
13765
14106
|
this.expand.emit();
|
|
13766
14107
|
}
|
|
13767
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i0.
|
|
14108
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
13768
14109
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuChooserComponent, isStandalone: true, selector: "kendo-grid-columnmenu-chooser", inputs: { expanded: "expanded", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
|
|
13769
14110
|
<kendo-grid-columnmenu-item
|
|
13770
14111
|
[text]="ctx.localization.get('columns')"
|
|
@@ -13774,22 +14115,18 @@ class ColumnMenuChooserComponent extends ColumnMenuItemBase {
|
|
|
13774
14115
|
(collapse)="onCollapse()"
|
|
13775
14116
|
(expand)="onExpand()">
|
|
13776
14117
|
<ng-template kendoGridColumnMenuItemContentTemplate>
|
|
13777
|
-
<kendo-grid-
|
|
13778
|
-
[applyText]="ctx.localization.get('columnsApply')"
|
|
13779
|
-
[resetText]="ctx.localization.get('columnsReset')"
|
|
13780
|
-
[ariaLabel]="ctx.localization.get('columns')"
|
|
14118
|
+
<kendo-grid-column-chooser-content
|
|
13781
14119
|
[columns]="columns"
|
|
13782
|
-
[autoSync]="false"
|
|
13783
|
-
[allowHideAll]="false"
|
|
13784
|
-
[actionsClass]="actionsClass"
|
|
13785
14120
|
[isLast]="isLast"
|
|
13786
14121
|
[isExpanded]="expanded"
|
|
14122
|
+
[closeOnReset]="false"
|
|
13787
14123
|
[service]="service"
|
|
13788
|
-
(
|
|
13789
|
-
|
|
14124
|
+
(close)="close()"
|
|
14125
|
+
>
|
|
14126
|
+
</kendo-grid-column-chooser-content>
|
|
13790
14127
|
</ng-template>
|
|
13791
14128
|
</kendo-grid-columnmenu-item>
|
|
13792
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "component", type:
|
|
14129
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "component", type: ColumnChooserContentComponent, selector: "kendo-grid-column-chooser-content", inputs: ["filterable", "showSelectAll", "showCheckedCount", "allowHideAll", "autoSync", "actionsClass", "closeOnReset", "columns", "isLast", "isExpanded", "service"], outputs: ["close"] }] });
|
|
13793
14130
|
}
|
|
13794
14131
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserComponent, decorators: [{
|
|
13795
14132
|
type: Component,
|
|
@@ -13804,26 +14141,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
13804
14141
|
(collapse)="onCollapse()"
|
|
13805
14142
|
(expand)="onExpand()">
|
|
13806
14143
|
<ng-template kendoGridColumnMenuItemContentTemplate>
|
|
13807
|
-
<kendo-grid-
|
|
13808
|
-
[applyText]="ctx.localization.get('columnsApply')"
|
|
13809
|
-
[resetText]="ctx.localization.get('columnsReset')"
|
|
13810
|
-
[ariaLabel]="ctx.localization.get('columns')"
|
|
14144
|
+
<kendo-grid-column-chooser-content
|
|
13811
14145
|
[columns]="columns"
|
|
13812
|
-
[autoSync]="false"
|
|
13813
|
-
[allowHideAll]="false"
|
|
13814
|
-
[actionsClass]="actionsClass"
|
|
13815
14146
|
[isLast]="isLast"
|
|
13816
14147
|
[isExpanded]="expanded"
|
|
14148
|
+
[closeOnReset]="false"
|
|
13817
14149
|
[service]="service"
|
|
13818
|
-
(
|
|
13819
|
-
|
|
14150
|
+
(close)="close()"
|
|
14151
|
+
>
|
|
14152
|
+
</kendo-grid-column-chooser-content>
|
|
13820
14153
|
</ng-template>
|
|
13821
14154
|
</kendo-grid-columnmenu-item>
|
|
13822
14155
|
`,
|
|
13823
14156
|
standalone: true,
|
|
13824
|
-
imports: [ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnListComponent]
|
|
14157
|
+
imports: [ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnListComponent, ColumnChooserContentComponent]
|
|
13825
14158
|
}]
|
|
13826
|
-
}], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i0.
|
|
14159
|
+
}], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
|
|
13827
14160
|
type: Output
|
|
13828
14161
|
}], collapse: [{
|
|
13829
14162
|
type: Output
|
|
@@ -14543,7 +14876,15 @@ class ColumnMenuContainerComponent {
|
|
|
14543
14876
|
else {
|
|
14544
14877
|
return;
|
|
14545
14878
|
}
|
|
14546
|
-
this.ngZone.onStable.pipe(take(1)).subscribe(() =>
|
|
14879
|
+
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
14880
|
+
const firstFocusable = this.service.menuTabbingService.firstFocusable;
|
|
14881
|
+
if (firstFocusable instanceof DropDownListComponent) {
|
|
14882
|
+
firstFocusable.wrapper.nativeElement.focus({ preventScroll: true });
|
|
14883
|
+
}
|
|
14884
|
+
else {
|
|
14885
|
+
firstFocusable?.focus({ preventScroll: true });
|
|
14886
|
+
}
|
|
14887
|
+
});
|
|
14547
14888
|
}
|
|
14548
14889
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuContainerComponent, deps: [{ token: ColumnMenuService }, { token: NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
14549
14890
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuContainerComponent, isStandalone: true, selector: "kendo-grid-columnmenu-container", queries: [{ propertyName: "columnMenuItems", predicate: ColumnMenuItemDirective, descendants: true }], ngImport: i0, template: `
|
|
@@ -14845,16 +15186,6 @@ class ColumnMenuComponent {
|
|
|
14845
15186
|
get hasColumnChooser() {
|
|
14846
15187
|
return hasColumnChooser(this.settings);
|
|
14847
15188
|
}
|
|
14848
|
-
/**
|
|
14849
|
-
* @hidden
|
|
14850
|
-
*/
|
|
14851
|
-
onApply(changed) {
|
|
14852
|
-
this.close(true);
|
|
14853
|
-
if (changed.length) {
|
|
14854
|
-
this.cdr.markForCheck();
|
|
14855
|
-
this.columnInfoService.changeVisibility(changed);
|
|
14856
|
-
}
|
|
14857
|
-
}
|
|
14858
15189
|
/**
|
|
14859
15190
|
* @hidden
|
|
14860
15191
|
*/
|
|
@@ -15008,7 +15339,13 @@ class ColumnMenuComponent {
|
|
|
15008
15339
|
ariaRoot && this.renderer.setAttribute(ariaRoot, 'aria-expanded', 'false');
|
|
15009
15340
|
}
|
|
15010
15341
|
focusRoot() {
|
|
15011
|
-
|
|
15342
|
+
if (this.isNavigable) {
|
|
15343
|
+
this.navigationService.preventScroll = true;
|
|
15344
|
+
this.navigationService.focusCell(0, this.column.leafIndex);
|
|
15345
|
+
}
|
|
15346
|
+
else {
|
|
15347
|
+
this.anchor.nativeElement.focus({ preventScroll: true });
|
|
15348
|
+
}
|
|
15012
15349
|
}
|
|
15013
15350
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuComponent, deps: [{ token: NavigationService }, { token: SinglePopupService }, { token: ColumnMenuService }, { token: ContextService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: ColumnInfoService }, { token: IdService, optional: true }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15014
15351
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuComponent, isStandalone: true, selector: "kendo-grid-column-menu", inputs: { standalone: "standalone", column: "column", settings: "settings", sort: "sort", filter: "filter", sortable: "sortable", columnMenuTemplate: "columnMenuTemplate", tabIndex: "tabIndex" }, host: { properties: { "class.k-grid-column-menu-standalone": "this.standalone" } }, providers: [
|
|
@@ -15168,22 +15505,18 @@ class ColumnMenuComponent {
|
|
|
15168
15505
|
</kendo-icon-wrapper>
|
|
15169
15506
|
</ng-template>
|
|
15170
15507
|
<ng-template kendoTabContent>
|
|
15171
|
-
<kendo-grid-
|
|
15172
|
-
[applyText]="ctx.localization.get('columnsApply')"
|
|
15173
|
-
[resetText]="ctx.localization.get('columnsReset')"
|
|
15508
|
+
<kendo-grid-column-chooser-content
|
|
15174
15509
|
[columns]="columns"
|
|
15175
|
-
[autoSync]="false"
|
|
15176
|
-
[allowHideAll]="false"
|
|
15177
|
-
[actionsClass]="actionsClass"
|
|
15178
15510
|
[service]="service"
|
|
15179
|
-
(
|
|
15180
|
-
|
|
15511
|
+
(close)="close()"
|
|
15512
|
+
>
|
|
15513
|
+
</kendo-grid-column-chooser-content>
|
|
15181
15514
|
</ng-template>
|
|
15182
15515
|
</kendo-tabstrip-tab>
|
|
15183
15516
|
</kendo-tabstrip>
|
|
15184
15517
|
</ng-template>
|
|
15185
15518
|
|
|
15186
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "directive", type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "size", "closeIcon", "closeIconClass", "closeSVGIcon", "showContentArea"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { kind: "component", type: TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { kind: "directive", type: TabTitleDirective, selector: "[kendoTabTitle]" }, { kind: "directive", type: TabContentDirective, selector: "[kendoTabContent]" }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "component", type:
|
|
15519
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "directive", type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "size", "closeIcon", "closeIconClass", "closeSVGIcon", "showContentArea"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { kind: "component", type: TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { kind: "directive", type: TabTitleDirective, selector: "[kendoTabTitle]" }, { kind: "directive", type: TabContentDirective, selector: "[kendoTabContent]" }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "component", type: ColumnChooserContentComponent, selector: "kendo-grid-column-chooser-content", inputs: ["filterable", "showSelectAll", "showCheckedCount", "allowHideAll", "autoSync", "actionsClass", "closeOnReset", "columns", "isLast", "isExpanded", "service"], outputs: ["close"] }] });
|
|
15187
15520
|
}
|
|
15188
15521
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuComponent, decorators: [{
|
|
15189
15522
|
type: Component,
|
|
@@ -15347,16 +15680,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
15347
15680
|
</kendo-icon-wrapper>
|
|
15348
15681
|
</ng-template>
|
|
15349
15682
|
<ng-template kendoTabContent>
|
|
15350
|
-
<kendo-grid-
|
|
15351
|
-
[applyText]="ctx.localization.get('columnsApply')"
|
|
15352
|
-
[resetText]="ctx.localization.get('columnsReset')"
|
|
15683
|
+
<kendo-grid-column-chooser-content
|
|
15353
15684
|
[columns]="columns"
|
|
15354
|
-
[autoSync]="false"
|
|
15355
|
-
[allowHideAll]="false"
|
|
15356
|
-
[actionsClass]="actionsClass"
|
|
15357
15685
|
[service]="service"
|
|
15358
|
-
(
|
|
15359
|
-
|
|
15686
|
+
(close)="close()"
|
|
15687
|
+
>
|
|
15688
|
+
</kendo-grid-column-chooser-content>
|
|
15360
15689
|
</ng-template>
|
|
15361
15690
|
</kendo-tabstrip-tab>
|
|
15362
15691
|
</kendo-tabstrip>
|
|
@@ -15369,7 +15698,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
15369
15698
|
ColumnMenuSortComponent, ColumnMenuItemDirective, ColumnMenuLockComponent, ColumnMenuStickComponent,
|
|
15370
15699
|
ColumnMenuPositionComponent, ColumnMenuChooserComponent, ColumnMenuAutoSizeColumnComponent,
|
|
15371
15700
|
ColumnMenuAutoSizeAllColumnsComponent, ColumnMenuFilterComponent, TabStripComponent,
|
|
15372
|
-
TabStripTabComponent, TabTitleDirective, TabContentDirective, FilterMenuContainerComponent, ColumnListComponent
|
|
15701
|
+
TabStripTabComponent, TabTitleDirective, TabContentDirective, FilterMenuContainerComponent, ColumnListComponent,
|
|
15702
|
+
ColumnChooserContentComponent
|
|
15373
15703
|
]
|
|
15374
15704
|
}]
|
|
15375
15705
|
}], ctorParameters: function () { return [{ type: NavigationService }, { type: SinglePopupService }, { type: ColumnMenuService }, { type: ContextService }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: ColumnInfoService }, { type: IdService, decorators: [{
|
|
@@ -19210,7 +19540,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19210
19540
|
|
|
19211
19541
|
/**
|
|
19212
19542
|
* Represents the command columns of the Grid. Define the content of the column inside an `<ng-template>` tag.
|
|
19213
|
-
* For more information and examples, see the [
|
|
19543
|
+
* For more information and examples, see the [Editing Action Buttons](slug:basics_editing_grid#editing-action-buttons) article.
|
|
19214
19544
|
*
|
|
19215
19545
|
* @example
|
|
19216
19546
|
* ```html
|
|
@@ -21457,7 +21787,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
21457
21787
|
/**
|
|
21458
21788
|
* Represents the `cancel` command of the Grid. Apply this directive to any `button`
|
|
21459
21789
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
21460
|
-
* ([see example](slug:
|
|
21790
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
21461
21791
|
*
|
|
21462
21792
|
* When a button with this directive is clicked, the
|
|
21463
21793
|
* [`cancel`]({% slug api_grid_gridcomponent %}#toc-cancel) event
|
|
@@ -21561,7 +21891,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
21561
21891
|
/**
|
|
21562
21892
|
* Represents the `save` command of the Grid. Apply this directive to any `button`
|
|
21563
21893
|
* element inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
21564
|
-
* ([see example](slug:
|
|
21894
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
21565
21895
|
* When you click the button with this directive, the
|
|
21566
21896
|
* [`save`]({% slug api_grid_gridcomponent %}#toc-save) event fires.
|
|
21567
21897
|
* The button with `kendoGridSaveCommand` is automatically hidden when the row is not in edit mode.
|
|
@@ -21664,7 +21994,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
21664
21994
|
/**
|
|
21665
21995
|
* Represents the `remove` command of the Grid. Apply this directive to any `button` element
|
|
21666
21996
|
* inside a [CommandColumnComponent]({% slug api_grid_commandcolumncomponent %})
|
|
21667
|
-
* ([see example](slug:
|
|
21997
|
+
* ([see example](slug:basics_editing_grid#editing-action-buttons)).
|
|
21668
21998
|
* When you click the button with this directive, the
|
|
21669
21999
|
* [`remove`]({% slug api_grid_gridcomponent %}#toc-remove) event fires.
|
|
21670
22000
|
* The button with `kendoGridRemoveCommand` is automatically hidden when the row is in edit mode.
|
|
@@ -22088,8 +22418,8 @@ const packageMetadata = {
|
|
|
22088
22418
|
productName: 'Kendo UI for Angular',
|
|
22089
22419
|
productCode: 'KENDOUIANGULAR',
|
|
22090
22420
|
productCodes: ['KENDOUIANGULAR'],
|
|
22091
|
-
publishDate:
|
|
22092
|
-
version: '20.0
|
|
22421
|
+
publishDate: 1759496623,
|
|
22422
|
+
version: '20.1.0-develop.10',
|
|
22093
22423
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
22094
22424
|
};
|
|
22095
22425
|
|
|
@@ -24654,6 +24984,9 @@ class ListComponent {
|
|
|
24654
24984
|
this.handleSkipOnData = true;
|
|
24655
24985
|
}
|
|
24656
24986
|
if (isChanged$1('isVirtual', changes)) {
|
|
24987
|
+
if (this.isVirtual && !(this.minRowHeight || this.rowHeight)) {
|
|
24988
|
+
this.minRowHeight = calcRowHeight(this.table.nativeElement);
|
|
24989
|
+
}
|
|
24657
24990
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
24658
24991
|
this.scroller.reset();
|
|
24659
24992
|
this.rowHeightService = this.scroller.rowHeightService = new RowHeightService(this.total, this.rowHeight || this.minRowHeight);
|
|
@@ -24674,6 +25007,7 @@ class ListComponent {
|
|
|
24674
25007
|
get totalIsAllItems() {
|
|
24675
25008
|
return this.isVirtual && (Boolean(this.ctx.grid?.pageable || this.ctx.grid?.group?.length));
|
|
24676
25009
|
}
|
|
25010
|
+
rebindGroupedDataFlag = false;
|
|
24677
25011
|
ngDoCheck() {
|
|
24678
25012
|
if (this.virtualColumns && (!this.viewportColumns || this.viewportWidthChange())) {
|
|
24679
25013
|
this.updateViewportColumns();
|
|
@@ -24692,6 +25026,14 @@ class ListComponent {
|
|
|
24692
25026
|
this.scroller.reset(this.skipScroll);
|
|
24693
25027
|
this.scroller.total = this.allItems.length;
|
|
24694
25028
|
}
|
|
25029
|
+
else if (totalChanged && !this.ctx.grid?.group?.length) {
|
|
25030
|
+
this.scroller.reset(this.skipScroll);
|
|
25031
|
+
this.scroller.total = this.total;
|
|
25032
|
+
}
|
|
25033
|
+
const rebindGroupedData = this.isVirtual && !totalChanged && this.ctx.grid?.group?.length && !this.rebindGroupedDataFlag;
|
|
25034
|
+
if (rebindGroupedData) {
|
|
25035
|
+
this.rebindGroupedDataFlag = true;
|
|
25036
|
+
}
|
|
24695
25037
|
if (shouldCalculatePageSize || !isPresent(this.scroller.rowHeightService)) {
|
|
24696
25038
|
const calculatedPageSize = this.virtualPageSize ?? this.calcVirtualPageSize();
|
|
24697
25039
|
if (calculatedPageSize > 0) {
|
|
@@ -24712,6 +25054,10 @@ class ListComponent {
|
|
|
24712
25054
|
});
|
|
24713
25055
|
}
|
|
24714
25056
|
}
|
|
25057
|
+
else if (this.rebindGroupedDataFlag) {
|
|
25058
|
+
this.ngZone.run(() => this.itemsToRender = this.allItems.slice(this.scroller.virtualSkip, this.scroller.virtualSkip + this.virtualPageSize));
|
|
25059
|
+
this.rebindGroupedDataFlag = false;
|
|
25060
|
+
}
|
|
24715
25061
|
if (!this.zoneSub) {
|
|
24716
25062
|
this.zoneSub = this.ngZone.onStable.subscribe(() => {
|
|
24717
25063
|
if (!this.scroller.rowHeightService) {
|
|
@@ -24741,7 +25087,13 @@ class ListComponent {
|
|
|
24741
25087
|
}
|
|
24742
25088
|
if (this.isVirtual) {
|
|
24743
25089
|
this.ctx.grid?.updateNavigationMetadata();
|
|
24744
|
-
|
|
25090
|
+
// when navigating down from the header to content, skip navigation to the content
|
|
25091
|
+
// that would be triggered by the resetNavigationViewport method to ensure that the
|
|
25092
|
+
// focus is correctly set on the first data row in the content area.
|
|
25093
|
+
const shouldResetViewport = !this.navigationService.activeRow || this.navigationService.activeRow?.dataRowIndex > -1 || isPresent(this.navigationService.activeRow?.groupItem);
|
|
25094
|
+
if (shouldResetViewport) {
|
|
25095
|
+
this.resetNavigationViewport();
|
|
25096
|
+
}
|
|
24745
25097
|
}
|
|
24746
25098
|
this.zoneSub.unsubscribe();
|
|
24747
25099
|
this.zoneSub = null;
|
|
@@ -25956,6 +26308,15 @@ class GridMessages extends ComponentMessages {
|
|
|
25956
26308
|
* Sets the text for the Grid Column Chooser and Column Chooser toolbar tool.
|
|
25957
26309
|
*/
|
|
25958
26310
|
columns;
|
|
26311
|
+
/**
|
|
26312
|
+
* The message for the selected columns count in the Column Chooser.
|
|
26313
|
+
* Follows the pattern **{selectedColumnsCount} Selected items ** by default.
|
|
26314
|
+
*
|
|
26315
|
+
* The message consists of two parts - selected columns count and a localizable string.
|
|
26316
|
+
* To allow for reordering its parts, the `columnChooserSelectedColumnsCount` input accepts a string with a placeholder for the selected columns count.
|
|
26317
|
+
* The `{selectedColumnsCount}` placeholder will be replaced internally with the respective actual value.
|
|
26318
|
+
*/
|
|
26319
|
+
columnChooserSelectedColumnsCount;
|
|
25959
26320
|
/**
|
|
25960
26321
|
* Sets the subtitle for the adaptive Grid Column Chooser and Column Chooser toolbar tool.
|
|
25961
26322
|
*/
|
|
@@ -26208,7 +26569,7 @@ class GridMessages extends ComponentMessages {
|
|
|
26208
26569
|
*/
|
|
26209
26570
|
externalEditingCancelText;
|
|
26210
26571
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
26211
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.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", pagerInputLabel: "pagerInputLabel", pagerSelectPage: "pagerSelectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterCellOperatorLabel: "filterCellOperatorLabel", booleanFilterCellLabel: "booleanFilterCellLabel", aiAssistantApplyButtonText: "aiAssistantApplyButtonText", aiAssistantToolbarToolText: "aiAssistantToolbarToolText", aiAssistantWindowTitle: "aiAssistantWindowTitle", aiAssistantWindowCloseTitle: "aiAssistantWindowCloseTitle", aiAssistantOutputCardTitle: "aiAssistantOutputCardTitle", aiAssistantOutputCardBodyContent: "aiAssistantOutputCardBodyContent", aiAssistantWindowMaximizeTitle: "aiAssistantWindowMaximizeTitle", aiAssistantWindowMinimizeTitle: "aiAssistantWindowMinimizeTitle", aiAssistantWindowRestoreTitle: "aiAssistantWindowRestoreTitle", 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", adaptiveFilterOperatorsTitle: "adaptiveFilterOperatorsTitle", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", adaptiveBackButtonTitle: "adaptiveBackButtonTitle", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", filterToolbarToolText: "filterToolbarToolText", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", columnsSubtitle: "columnsSubtitle", adaptiveFilterTitle: "adaptiveFilterTitle", adaptiveSortTitle: "adaptiveSortTitle", adaptiveGroupTitle: "adaptiveGroupTitle", filterClearAllButton: "filterClearAllButton", groupClearButton: "groupClearButton", sortClearButton: "sortClearButton", sortDoneButton: "sortDoneButton", groupDoneButton: "groupDoneButton", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", sortToolbarToolText: "sortToolbarToolText", 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", editToolbarToolText: "editToolbarToolText", saveToolbarToolText: "saveToolbarToolText", addToolbarToolText: "addToolbarToolText", cancelToolbarToolText: "cancelToolbarToolText", removeToolbarToolText: "removeToolbarToolText", excelExportToolbarToolText: "excelExportToolbarToolText", pdfExportToolbarToolText: "pdfExportToolbarToolText", groupPanelLabel: "groupPanelLabel", dragRowHandleLabel: "dragRowHandleLabel", columnMenuFilterTabTitle: "columnMenuFilterTabTitle", columnMenuGeneralTabTitle: "columnMenuGeneralTabTitle", columnMenuColumnsTabTitle: "columnMenuColumnsTabTitle", groupChipMenuPrevious: "groupChipMenuPrevious", groupChipMenuNext: "groupChipMenuNext", groupToolbarToolText: "groupToolbarToolText", formValidationErrorText: "formValidationErrorText", removeConfirmationDialogTitle: "removeConfirmationDialogTitle", removeConfirmationDialogContent: "removeConfirmationDialogContent", removeConfirmationDialogConfirmText: "removeConfirmationDialogConfirmText", removeConfirmationDialogRejectText: "removeConfirmationDialogRejectText", externalEditingTitle: "externalEditingTitle", externalEditingAddTitle: "externalEditingAddTitle", externalEditingSaveText: "externalEditingSaveText", externalEditingCancelText: "externalEditingCancelText" }, usesInheritance: true, ngImport: i0 });
|
|
26572
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.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", pagerInputLabel: "pagerInputLabel", pagerSelectPage: "pagerSelectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterCellOperatorLabel: "filterCellOperatorLabel", booleanFilterCellLabel: "booleanFilterCellLabel", aiAssistantApplyButtonText: "aiAssistantApplyButtonText", aiAssistantToolbarToolText: "aiAssistantToolbarToolText", aiAssistantWindowTitle: "aiAssistantWindowTitle", aiAssistantWindowCloseTitle: "aiAssistantWindowCloseTitle", aiAssistantOutputCardTitle: "aiAssistantOutputCardTitle", aiAssistantOutputCardBodyContent: "aiAssistantOutputCardBodyContent", aiAssistantWindowMaximizeTitle: "aiAssistantWindowMaximizeTitle", aiAssistantWindowMinimizeTitle: "aiAssistantWindowMinimizeTitle", aiAssistantWindowRestoreTitle: "aiAssistantWindowRestoreTitle", 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", adaptiveFilterOperatorsTitle: "adaptiveFilterOperatorsTitle", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", adaptiveBackButtonTitle: "adaptiveBackButtonTitle", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", filterToolbarToolText: "filterToolbarToolText", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", columnChooserSelectedColumnsCount: "columnChooserSelectedColumnsCount", columnsSubtitle: "columnsSubtitle", adaptiveFilterTitle: "adaptiveFilterTitle", adaptiveSortTitle: "adaptiveSortTitle", adaptiveGroupTitle: "adaptiveGroupTitle", filterClearAllButton: "filterClearAllButton", groupClearButton: "groupClearButton", sortClearButton: "sortClearButton", sortDoneButton: "sortDoneButton", groupDoneButton: "groupDoneButton", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", sortToolbarToolText: "sortToolbarToolText", 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", editToolbarToolText: "editToolbarToolText", saveToolbarToolText: "saveToolbarToolText", addToolbarToolText: "addToolbarToolText", cancelToolbarToolText: "cancelToolbarToolText", removeToolbarToolText: "removeToolbarToolText", excelExportToolbarToolText: "excelExportToolbarToolText", pdfExportToolbarToolText: "pdfExportToolbarToolText", groupPanelLabel: "groupPanelLabel", dragRowHandleLabel: "dragRowHandleLabel", columnMenuFilterTabTitle: "columnMenuFilterTabTitle", columnMenuGeneralTabTitle: "columnMenuGeneralTabTitle", columnMenuColumnsTabTitle: "columnMenuColumnsTabTitle", groupChipMenuPrevious: "groupChipMenuPrevious", groupChipMenuNext: "groupChipMenuNext", groupToolbarToolText: "groupToolbarToolText", formValidationErrorText: "formValidationErrorText", removeConfirmationDialogTitle: "removeConfirmationDialogTitle", removeConfirmationDialogContent: "removeConfirmationDialogContent", removeConfirmationDialogConfirmText: "removeConfirmationDialogConfirmText", removeConfirmationDialogRejectText: "removeConfirmationDialogRejectText", externalEditingTitle: "externalEditingTitle", externalEditingAddTitle: "externalEditingAddTitle", externalEditingSaveText: "externalEditingSaveText", externalEditingCancelText: "externalEditingCancelText" }, usesInheritance: true, ngImport: i0 });
|
|
26212
26573
|
}
|
|
26213
26574
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridMessages, decorators: [{
|
|
26214
26575
|
type: Directive,
|
|
@@ -26344,6 +26705,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
26344
26705
|
type: Input
|
|
26345
26706
|
}], columns: [{
|
|
26346
26707
|
type: Input
|
|
26708
|
+
}], columnChooserSelectedColumnsCount: [{
|
|
26709
|
+
type: Input
|
|
26347
26710
|
}], columnsSubtitle: [{
|
|
26348
26711
|
type: Input
|
|
26349
26712
|
}], adaptiveFilterTitle: [{
|
|
@@ -26569,7 +26932,7 @@ class FilterToolbarToolComponent {
|
|
|
26569
26932
|
}
|
|
26570
26933
|
ngAfterViewInit() {
|
|
26571
26934
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
26572
|
-
this.filterItems?.get(0)?.nativeElement.focus();
|
|
26935
|
+
this.filterItems?.get(0)?.nativeElement.focus({ preventScroll: true });
|
|
26573
26936
|
});
|
|
26574
26937
|
}
|
|
26575
26938
|
ngOnDestroy() {
|
|
@@ -26755,7 +27118,7 @@ class SortToolbarToolComponent {
|
|
|
26755
27118
|
}
|
|
26756
27119
|
ngAfterViewInit() {
|
|
26757
27120
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
26758
|
-
this.sortItems?.get(0)?.nativeElement.focus();
|
|
27121
|
+
this.sortItems?.get(0)?.nativeElement.focus({ preventScroll: true });
|
|
26759
27122
|
});
|
|
26760
27123
|
}
|
|
26761
27124
|
ngOnDestroy() {
|
|
@@ -27317,12 +27680,12 @@ class GroupToolbarToolComponent {
|
|
|
27317
27680
|
if (items?.first && (!isPresent$1(this.currentFocusedItemIndex) || this.currentFocusedItemIndex >= items.length || this.currentFocusedItemIndex < 0)) {
|
|
27318
27681
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
27319
27682
|
this.currentFocusedItemIndex = 0;
|
|
27320
|
-
this.groupItems.first.nativeElement.focus();
|
|
27683
|
+
this.groupItems.first.nativeElement.focus({ preventScroll: true });
|
|
27321
27684
|
});
|
|
27322
27685
|
return;
|
|
27323
27686
|
}
|
|
27324
27687
|
if (items?.first) {
|
|
27325
|
-
items.get(this.currentFocusedItemIndex).nativeElement.focus();
|
|
27688
|
+
items.get(this.currentFocusedItemIndex).nativeElement.focus({ preventScroll: true });
|
|
27326
27689
|
}
|
|
27327
27690
|
}
|
|
27328
27691
|
get groupItems() {
|
|
@@ -27729,7 +28092,6 @@ class AdaptiveRendererComponent {
|
|
|
27729
28092
|
cancelIcon = cancelIcon;
|
|
27730
28093
|
saveIcon = saveIcon;
|
|
27731
28094
|
columns;
|
|
27732
|
-
actionsClass = 'k-actions';
|
|
27733
28095
|
externalEditingSettings;
|
|
27734
28096
|
get hasSort() {
|
|
27735
28097
|
return hasSort(this.ctx.grid.columnMenu, this.adaptiveGridService.column);
|
|
@@ -27827,7 +28189,7 @@ class AdaptiveRendererComponent {
|
|
|
27827
28189
|
get hasCheckCloseIcon() {
|
|
27828
28190
|
return this.adaptiveGridService.viewType === 'sortToolbarTool' || this.adaptiveGridService.viewType === 'groupToolbarTool';
|
|
27829
28191
|
}
|
|
27830
|
-
|
|
28192
|
+
columnChooserContent;
|
|
27831
28193
|
filterToolbarToolTemplate;
|
|
27832
28194
|
filterMenuContainer;
|
|
27833
28195
|
actionSheet;
|
|
@@ -27891,7 +28253,7 @@ class AdaptiveRendererComponent {
|
|
|
27891
28253
|
this.actionSheet.nextView();
|
|
27892
28254
|
}
|
|
27893
28255
|
applyChanges() {
|
|
27894
|
-
this.
|
|
28256
|
+
this.columnChooserContent.applyChanges();
|
|
27895
28257
|
this.actionSheet.toggle(false);
|
|
27896
28258
|
}
|
|
27897
28259
|
sortBy(column) {
|
|
@@ -27943,10 +28305,11 @@ class AdaptiveRendererComponent {
|
|
|
27943
28305
|
this.adaptiveGridService.notifyAnimationEnd();
|
|
27944
28306
|
}
|
|
27945
28307
|
cancelChanges() {
|
|
27946
|
-
this.
|
|
28308
|
+
this.columnChooserContent.cancelChanges();
|
|
28309
|
+
this.columnChooserContent.cdr.detectChanges();
|
|
27947
28310
|
}
|
|
27948
28311
|
onTab(event) {
|
|
27949
|
-
this.
|
|
28312
|
+
this.columnChooserContent.onTab(event);
|
|
27950
28313
|
}
|
|
27951
28314
|
saveEditing() {
|
|
27952
28315
|
const { event, formGroup, externalEditingDirective } = this.externalEditingSettings;
|
|
@@ -27954,7 +28317,7 @@ class AdaptiveRendererComponent {
|
|
|
27954
28317
|
this.actionSheet.toggle(false);
|
|
27955
28318
|
}
|
|
27956
28319
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdaptiveRendererComponent, deps: [{ token: ColumnMenuService }, { token: AdaptiveGridService }, { token: FilterService }, { token: ContextService }, { token: i2$1.AdaptiveService }, { token: SortService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
27957
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdaptiveRendererComponent, isStandalone: true, selector: "kendo-grid-adaptive-renderer", viewQueries: [{ propertyName: "
|
|
28320
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdaptiveRendererComponent, isStandalone: true, selector: "kendo-grid-adaptive-renderer", viewQueries: [{ propertyName: "columnChooserContent", first: true, predicate: ["columnChooserContent"], descendants: true }, { propertyName: "filterToolbarToolTemplate", first: true, predicate: ["filterToolbarToolTemplate"], descendants: true, read: ViewContainerRef }, { propertyName: "filterMenuContainer", first: true, predicate: ["filterMenuContainer"], descendants: true }, { propertyName: "actionSheet", first: true, predicate: ActionSheetComponent, descendants: true }, { propertyName: "groupToolbarTool", first: true, predicate: GroupToolbarToolComponent, descendants: true }], ngImport: i0, template: `
|
|
27958
28321
|
<kendo-actionsheet
|
|
27959
28322
|
[cssClass]="{
|
|
27960
28323
|
'k-adaptive-actionsheet': true,
|
|
@@ -28014,19 +28377,14 @@ class AdaptiveRendererComponent {
|
|
|
28014
28377
|
</ng-container>
|
|
28015
28378
|
</ng-template>
|
|
28016
28379
|
<ng-template kendoActionSheetContentTemplate>
|
|
28017
|
-
<kendo-grid-
|
|
28018
|
-
#
|
|
28019
|
-
[columns]="
|
|
28020
|
-
[ariaLabel]="messageFor('columns')"
|
|
28380
|
+
<kendo-grid-column-chooser-content
|
|
28381
|
+
#columnChooserContent
|
|
28382
|
+
[columns]="columns"
|
|
28021
28383
|
[isLast]="true"
|
|
28022
|
-
[showActions]="false"
|
|
28023
|
-
[applyText]="messageFor('columnsApply')"
|
|
28024
|
-
[resetText]="messageFor('columnsReset')"
|
|
28025
28384
|
[autoSync]="false"
|
|
28026
|
-
[actionsClass]="actionsClass"
|
|
28027
28385
|
[allowHideAll]="false"
|
|
28028
28386
|
>
|
|
28029
|
-
</kendo-grid-
|
|
28387
|
+
</kendo-grid-column-chooser-content>
|
|
28030
28388
|
</ng-template>
|
|
28031
28389
|
<ng-template kendoActionSheetFooterTemplate>
|
|
28032
28390
|
<ng-container [ngTemplateOutlet]="actionSheetFooterTemplate">
|
|
@@ -28168,20 +28526,15 @@ class AdaptiveRendererComponent {
|
|
|
28168
28526
|
</ng-template>
|
|
28169
28527
|
|
|
28170
28528
|
<ng-template kendoActionSheetContentTemplate>
|
|
28171
|
-
<kendo-grid-
|
|
28529
|
+
<kendo-grid-column-chooser-content
|
|
28172
28530
|
*ngIf="adaptiveGridService.secondaryView === 'columnChooser'"
|
|
28173
|
-
#
|
|
28531
|
+
#columnChooserContent
|
|
28174
28532
|
[columns]="adaptiveGridService.columns"
|
|
28175
|
-
[ariaLabel]="messageFor('columns')"
|
|
28176
28533
|
[isLast]="true"
|
|
28177
|
-
[showActions]="false"
|
|
28178
|
-
[applyText]="messageFor('columnsApply')"
|
|
28179
|
-
[resetText]="messageFor('columnsReset')"
|
|
28180
28534
|
[autoSync]="false"
|
|
28181
|
-
[actionsClass]="actionsClass"
|
|
28182
28535
|
[allowHideAll]="false"
|
|
28183
28536
|
>
|
|
28184
|
-
</kendo-grid-
|
|
28537
|
+
</kendo-grid-column-chooser-content>
|
|
28185
28538
|
<kendo-grid-filter-menu-container
|
|
28186
28539
|
*ngIf="adaptiveGridService.secondaryView === 'columnFilter'"
|
|
28187
28540
|
[column]="adaptiveGridService.column"
|
|
@@ -28380,7 +28733,7 @@ class AdaptiveRendererComponent {
|
|
|
28380
28733
|
{{messageFor('filterFilterButton')}}
|
|
28381
28734
|
</button>
|
|
28382
28735
|
</ng-template>
|
|
28383
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "component", type: ActionSheetViewComponent, selector: "kendo-actionsheet-view", inputs: ["title", "subtitle", "titleId"] }, { kind: "component", type: FilterToolbarToolComponent, selector: "kendo-filter-toolbar-tool", outputs: ["close"] }, { kind: "component", type: GroupToolbarToolComponent, selector: "kendo-group-toolbar-tool", inputs: ["adaptive"], outputs: ["close", "groupClear"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: ActionSheetHeaderTemplateDirective, selector: "[kendoActionSheetHeaderTemplate]" }, { kind: "directive", type: ActionSheetContentTemplateDirective, selector: "[kendoActionSheetContentTemplate]" }, { kind: "directive", type: ActionSheetFooterTemplateDirective, selector: "[kendoActionSheetFooterTemplate]" }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { kind: "component", type:
|
|
28736
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "component", type: ActionSheetViewComponent, selector: "kendo-actionsheet-view", inputs: ["title", "subtitle", "titleId"] }, { kind: "component", type: FilterToolbarToolComponent, selector: "kendo-filter-toolbar-tool", outputs: ["close"] }, { kind: "component", type: GroupToolbarToolComponent, selector: "kendo-group-toolbar-tool", inputs: ["adaptive"], outputs: ["close", "groupClear"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: ActionSheetHeaderTemplateDirective, selector: "[kendoActionSheetHeaderTemplate]" }, { kind: "directive", type: ActionSheetContentTemplateDirective, selector: "[kendoActionSheetContentTemplate]" }, { kind: "directive", type: ActionSheetFooterTemplateDirective, selector: "[kendoActionSheetFooterTemplate]" }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: FormComponent, selector: "kendo-grid-external-form", inputs: ["controls", "formSettings", "formGroup", "actionButtons"], outputs: ["formSubmit"] }, { kind: "component", type: ColumnChooserContentComponent, selector: "kendo-grid-column-chooser-content", inputs: ["filterable", "showSelectAll", "showCheckedCount", "allowHideAll", "autoSync", "actionsClass", "closeOnReset", "columns", "isLast", "isExpanded", "service"], outputs: ["close"] }] });
|
|
28384
28737
|
}
|
|
28385
28738
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdaptiveRendererComponent, decorators: [{
|
|
28386
28739
|
type: Component,
|
|
@@ -28446,19 +28799,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28446
28799
|
</ng-container>
|
|
28447
28800
|
</ng-template>
|
|
28448
28801
|
<ng-template kendoActionSheetContentTemplate>
|
|
28449
|
-
<kendo-grid-
|
|
28450
|
-
#
|
|
28451
|
-
[columns]="
|
|
28452
|
-
[ariaLabel]="messageFor('columns')"
|
|
28802
|
+
<kendo-grid-column-chooser-content
|
|
28803
|
+
#columnChooserContent
|
|
28804
|
+
[columns]="columns"
|
|
28453
28805
|
[isLast]="true"
|
|
28454
|
-
[showActions]="false"
|
|
28455
|
-
[applyText]="messageFor('columnsApply')"
|
|
28456
|
-
[resetText]="messageFor('columnsReset')"
|
|
28457
28806
|
[autoSync]="false"
|
|
28458
|
-
[actionsClass]="actionsClass"
|
|
28459
28807
|
[allowHideAll]="false"
|
|
28460
28808
|
>
|
|
28461
|
-
</kendo-grid-
|
|
28809
|
+
</kendo-grid-column-chooser-content>
|
|
28462
28810
|
</ng-template>
|
|
28463
28811
|
<ng-template kendoActionSheetFooterTemplate>
|
|
28464
28812
|
<ng-container [ngTemplateOutlet]="actionSheetFooterTemplate">
|
|
@@ -28600,20 +28948,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28600
28948
|
</ng-template>
|
|
28601
28949
|
|
|
28602
28950
|
<ng-template kendoActionSheetContentTemplate>
|
|
28603
|
-
<kendo-grid-
|
|
28951
|
+
<kendo-grid-column-chooser-content
|
|
28604
28952
|
*ngIf="adaptiveGridService.secondaryView === 'columnChooser'"
|
|
28605
|
-
#
|
|
28953
|
+
#columnChooserContent
|
|
28606
28954
|
[columns]="adaptiveGridService.columns"
|
|
28607
|
-
[ariaLabel]="messageFor('columns')"
|
|
28608
28955
|
[isLast]="true"
|
|
28609
|
-
[showActions]="false"
|
|
28610
|
-
[applyText]="messageFor('columnsApply')"
|
|
28611
|
-
[resetText]="messageFor('columnsReset')"
|
|
28612
28956
|
[autoSync]="false"
|
|
28613
|
-
[actionsClass]="actionsClass"
|
|
28614
28957
|
[allowHideAll]="false"
|
|
28615
28958
|
>
|
|
28616
|
-
</kendo-grid-
|
|
28959
|
+
</kendo-grid-column-chooser-content>
|
|
28617
28960
|
<kendo-grid-filter-menu-container
|
|
28618
28961
|
*ngIf="adaptiveGridService.secondaryView === 'columnFilter'"
|
|
28619
28962
|
[column]="adaptiveGridService.column"
|
|
@@ -28838,16 +29181,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28838
29181
|
ColumnMenuAutoSizeAllColumnsComponent,
|
|
28839
29182
|
ColumnMenuItemComponent,
|
|
28840
29183
|
ColumnMenuItemDirective,
|
|
28841
|
-
ColumnListComponent,
|
|
28842
29184
|
FilterMenuContainerComponent,
|
|
28843
29185
|
ColumnMenuLockComponent,
|
|
28844
29186
|
EventsOutsideAngularDirective,
|
|
28845
|
-
FormComponent
|
|
29187
|
+
FormComponent,
|
|
29188
|
+
ColumnChooserContentComponent
|
|
28846
29189
|
]
|
|
28847
29190
|
}]
|
|
28848
|
-
}], ctorParameters: function () { return [{ type: ColumnMenuService }, { type: AdaptiveGridService }, { type: FilterService }, { type: ContextService }, { type: i2$1.AdaptiveService }, { type: SortService }, { type: ColumnInfoService }]; }, propDecorators: {
|
|
29191
|
+
}], ctorParameters: function () { return [{ type: ColumnMenuService }, { type: AdaptiveGridService }, { type: FilterService }, { type: ContextService }, { type: i2$1.AdaptiveService }, { type: SortService }, { type: ColumnInfoService }]; }, propDecorators: { columnChooserContent: [{
|
|
28849
29192
|
type: ViewChild,
|
|
28850
|
-
args: ['
|
|
29193
|
+
args: ['columnChooserContent', { static: false }]
|
|
28851
29194
|
}], filterToolbarToolTemplate: [{
|
|
28852
29195
|
type: ViewChild,
|
|
28853
29196
|
args: ['filterToolbarToolTemplate', { read: ViewContainerRef, static: false }]
|
|
@@ -32277,6 +32620,9 @@ class GridComponent {
|
|
|
32277
32620
|
|
|
32278
32621
|
i18n-aiAssistantOutputCardBodyContent="kendo.grid.aiAssistantOutputCardBodyContent|The success message dispayed in the AI Assistant Prompt Output Card's body"
|
|
32279
32622
|
aiAssistantOutputCardBodyContent="Operation is successful. Data is:"
|
|
32623
|
+
|
|
32624
|
+
i18n-columnChooserSelectedColumnsCount="kendo.grid.columnChooserSelectedColumnsCount|The text displayed in the Column Chooser for the number of selected columns"
|
|
32625
|
+
columnChooserSelectedColumnsCount="{{ '{selectedColumnsCount} Selected items' }}"
|
|
32280
32626
|
>
|
|
32281
32627
|
</ng-container>
|
|
32282
32628
|
<kendo-grid-toolbar
|
|
@@ -33134,6 +33480,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
33134
33480
|
|
|
33135
33481
|
i18n-aiAssistantOutputCardBodyContent="kendo.grid.aiAssistantOutputCardBodyContent|The success message dispayed in the AI Assistant Prompt Output Card's body"
|
|
33136
33482
|
aiAssistantOutputCardBodyContent="Operation is successful. Data is:"
|
|
33483
|
+
|
|
33484
|
+
i18n-columnChooserSelectedColumnsCount="kendo.grid.columnChooserSelectedColumnsCount|The text displayed in the Column Chooser for the number of selected columns"
|
|
33485
|
+
columnChooserSelectedColumnsCount="{{ '{selectedColumnsCount} Selected items' }}"
|
|
33137
33486
|
>
|
|
33138
33487
|
</ng-container>
|
|
33139
33488
|
<kendo-grid-toolbar
|
|
@@ -34364,7 +34713,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34364
34713
|
}] });
|
|
34365
34714
|
|
|
34366
34715
|
/**
|
|
34367
|
-
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](
|
|
34716
|
+
* Represents the directive that manages editing operations in the Grid when using Template-Driven Angular Forms ([see example](slug:inline_editing_grid#using-template-driven-forms)).
|
|
34368
34717
|
*
|
|
34369
34718
|
* @example
|
|
34370
34719
|
* ```html
|
|
@@ -34441,7 +34790,7 @@ const markAllAsTouched = (control) => {
|
|
|
34441
34790
|
};
|
|
34442
34791
|
|
|
34443
34792
|
/**
|
|
34444
|
-
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:
|
|
34793
|
+
* Represents the directive that manages editing operations in the Grid when using Reactive Forms ([see example](slug:inline_editing_grid#using-reactive-forms)).
|
|
34445
34794
|
*
|
|
34446
34795
|
* @example
|
|
34447
34796
|
* ```html
|
|
@@ -34490,7 +34839,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34490
34839
|
}] } });
|
|
34491
34840
|
|
|
34492
34841
|
/**
|
|
34493
|
-
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](
|
|
34842
|
+
* Represent the directive that manages in-cell editing operations in the Grid when using Reactive Forms ([see example](slug:editing_incell_grid#quick-setup)).
|
|
34494
34843
|
*
|
|
34495
34844
|
* @example
|
|
34496
34845
|
* ```html
|
|
@@ -34576,7 +34925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34576
34925
|
|
|
34577
34926
|
/**
|
|
34578
34927
|
* Represents the Kendo UI Grid external editing directive. The directive manages editing operations in the Grid when using the
|
|
34579
|
-
* External Form ([see example](slug:
|
|
34928
|
+
* External Form ([see example](slug:external_editing_grid#quick-setup)).
|
|
34580
34929
|
*
|
|
34581
34930
|
* @example
|
|
34582
34931
|
* ```typescript
|
|
@@ -37382,7 +37731,6 @@ const KENDO_GRID_FILTER_ROW = [
|
|
|
37382
37731
|
* Utility array that contains the former ColumnMenu module declarations
|
|
37383
37732
|
*/
|
|
37384
37733
|
const KENDO_GRID_COLUMN_MENU_DECLARATIONS = [
|
|
37385
|
-
ColumnMenuChooserItemCheckedDirective,
|
|
37386
37734
|
ColumnListComponent,
|
|
37387
37735
|
ColumnChooserComponent,
|
|
37388
37736
|
ColumnChooserToolbarDirective,
|
|
@@ -37612,7 +37960,7 @@ const KENDO_GRID = [
|
|
|
37612
37960
|
*/
|
|
37613
37961
|
class GridModule {
|
|
37614
37962
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
37615
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: GridModule, imports: [GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FooterComponent, i53.CustomMessagesComponent, i53.PagerFocusableDirective, i53.PagerInfoComponent, i53.PagerInputComponent, i53.PagerNextButtonsComponent, i53.PagerNumericButtonsComponent, i53.PagerPageSizesComponent, i53.PagerPrevButtonsComponent, i53.PagerTemplateDirective, i53.PagerComponent, i53.PagerSpacerComponent, i54.ToolBarComponent, i54.ToolbarCustomMessagesComponent, i54.ToolBarButtonComponent, i54.ToolBarButtonGroupComponent, i54.ToolBarDropDownButtonComponent, i54.ToolBarSeparatorComponent, i54.ToolBarSpacerComponent, i54.ToolBarSplitButtonComponent, i54.ToolBarToolComponent, FilterRowComponent, FilterCellComponent, FilterCellTemplateDirective, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellHostDirective, FilterCellWrapperComponent, DateFilterCellComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterInputDirective, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, FilterMenuTemplateDirective, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, FilterMenuHostDirective, BooleanFilterMenuComponent, FilterMenuDropDownListDirective, BooleanFilterRadioButtonDirective,
|
|
37963
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: GridModule, imports: [GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FooterComponent, i53.CustomMessagesComponent, i53.PagerFocusableDirective, i53.PagerInfoComponent, i53.PagerInputComponent, i53.PagerNextButtonsComponent, i53.PagerNumericButtonsComponent, i53.PagerPageSizesComponent, i53.PagerPrevButtonsComponent, i53.PagerTemplateDirective, i53.PagerComponent, i53.PagerSpacerComponent, i54.ToolBarComponent, i54.ToolbarCustomMessagesComponent, i54.ToolBarButtonComponent, i54.ToolBarButtonGroupComponent, i54.ToolBarDropDownButtonComponent, i54.ToolBarSeparatorComponent, i54.ToolBarSpacerComponent, i54.ToolBarSplitButtonComponent, i54.ToolBarToolComponent, FilterRowComponent, FilterCellComponent, FilterCellTemplateDirective, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellHostDirective, FilterCellWrapperComponent, DateFilterCellComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterInputDirective, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, FilterMenuTemplateDirective, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, FilterMenuHostDirective, BooleanFilterMenuComponent, FilterMenuDropDownListDirective, BooleanFilterRadioButtonDirective, ColumnListComponent, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnMenuChooserComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuSortComponent, ColumnMenuComponent, ColumnMenuLockComponent, ColumnMenuTemplateDirective, ColumnMenuContainerComponent, ColumnMenuItemDirective, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridComponent, ListComponent, ToolbarComponent, LocalizedMessagesDirective, CustomMessagesComponent, DataBindingDirective, ToolbarTemplateDirective, SelectionDirective, HighlightDirective, TemplateEditingDirective, ReactiveEditingDirective, InCellEditingDirective, ExternalEditingDirective, ExpandDetailsDirective, ExpandGroupDirective, GridMarqueeDirective, GridSpacerComponent, GridToolbarFocusableDirective, StatusBarComponent, StatusBarTemplateDirective, GridClipboardDirective, FormComponent, DialogFormComponent, FormFormFieldComponent, UndoRedoDirective, i54.ToolBarComponent, i54.ToolbarCustomMessagesComponent, i54.ToolBarButtonComponent, i54.ToolBarButtonGroupComponent, i54.ToolBarDropDownButtonComponent, i54.ToolBarSeparatorComponent, i54.ToolBarSpacerComponent, i54.ToolBarSplitButtonComponent, i54.ToolBarToolComponent, TableDirective,
|
|
37616
37964
|
UndoCommandToolbarDirective,
|
|
37617
37965
|
RedoCommandToolbarDirective], exports: [GridComponent, ToolbarTemplateDirective, ToolbarComponent, GridSpacerComponent, StatusBarTemplateDirective, DataBindingDirective, SelectionDirective, HighlightDirective, CustomMessagesComponent, TemplateEditingDirective, ReactiveEditingDirective, InCellEditingDirective, ExternalEditingDirective, ExpandDetailsDirective, ExpandGroupDirective, GridToolbarFocusableDirective, GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FilterRowComponent, FilterCellComponent, FilterCellTemplateDirective, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellHostDirective, FilterCellWrapperComponent, DateFilterCellComponent, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, FilterMenuTemplateDirective, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, FilterMenuHostDirective, BooleanFilterMenuComponent, FilterMenuDropDownListDirective, BooleanFilterRadioButtonDirective, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuSortComponent, ColumnMenuLockComponent, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuChooserComponent, ColumnMenuTemplateDirective, ColumnMenuContainerComponent, ColumnMenuItemDirective, ColumnMenuComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridClipboardDirective, UndoRedoDirective, UndoCommandToolbarDirective, RedoCommandToolbarDirective, i54.ToolBarComponent, i54.ToolbarCustomMessagesComponent, i54.ToolBarButtonComponent, i54.ToolBarButtonGroupComponent, i54.ToolBarDropDownButtonComponent, i54.ToolBarSeparatorComponent, i54.ToolBarSpacerComponent, i54.ToolBarSplitButtonComponent, i54.ToolBarToolComponent, i53.CustomMessagesComponent, i53.PagerFocusableDirective, i53.PagerInfoComponent, i53.PagerInputComponent, i53.PagerNextButtonsComponent, i53.PagerNumericButtonsComponent, i53.PagerPageSizesComponent, i53.PagerPrevButtonsComponent, i53.PagerTemplateDirective, i53.PagerComponent, i53.PagerSpacerComponent] });
|
|
37618
37966
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridModule, providers: [
|