@progress/kendo-angular-grid 19.3.0-develop.23 → 19.3.0-develop.24
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/columns/columns-container.d.ts +2 -0
- package/common/data-layout-mode.d.ts +19 -0
- package/common/stacked-layout-settings.d.ts +24 -0
- package/directives.d.ts +4 -3
- package/editing-directives/editing-directive-base.d.ts +3 -0
- package/esm2022/columns/column-base.mjs +4 -4
- package/esm2022/columns/column.component.mjs +1 -1
- package/esm2022/columns/columns-container.mjs +3 -0
- package/esm2022/common/column-info.service.mjs +1 -1
- package/esm2022/common/data-layout-mode.mjs +5 -0
- package/esm2022/common/stacked-layout-settings.mjs +5 -0
- package/esm2022/directives.mjs +3 -1
- package/esm2022/editing-directives/editing-directive-base.mjs +17 -2
- package/esm2022/editing-directives/in-cell-editing.directive.mjs +2 -1
- package/esm2022/filtering/filter-row.component.mjs +5 -2
- package/esm2022/grid.component.mjs +111 -33
- package/esm2022/grid.module.mjs +101 -100
- package/esm2022/grouping/group-header.component.mjs +39 -4
- package/esm2022/index.mjs +1 -0
- package/esm2022/localization/messages.mjs +2 -2
- package/esm2022/navigation/default-focusable-element.mjs +14 -2
- package/esm2022/navigation/focusable.directive.mjs +1 -1
- package/esm2022/navigation/navigation-cursor.mjs +7 -1
- package/esm2022/navigation/navigation-metadata.mjs +3 -1
- package/esm2022/navigation/navigation.service.mjs +136 -5
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/pdf/export-element.mjs +14 -5
- package/esm2022/pdf/pdf.component.mjs +3 -1
- package/esm2022/rendering/cell.component.mjs +466 -188
- package/esm2022/rendering/common/col-group.component.mjs +20 -7
- package/esm2022/rendering/footer/footer.component.mjs +117 -54
- package/esm2022/rendering/header/header.component.mjs +5 -2
- package/esm2022/rendering/list.component.mjs +13 -8
- package/esm2022/rendering/table-body.component.mjs +384 -171
- package/esm2022/rendering/toolbar/tools/ai-assistant/ai-assistant.component.mjs +7 -3
- package/esm2022/rendering/toolbar/tools/select-all-command-tool.directive.mjs +93 -0
- package/esm2022/row-reordering/row-reorder.service.mjs +2 -2
- package/esm2022/row-reordering/utils.mjs +6 -4
- package/esm2022/selection/cell-selection.service.mjs +6 -3
- package/fesm2022/progress-kendo-angular-grid.mjs +1514 -566
- package/filtering/filter-row.component.d.ts +1 -0
- package/grid.component.d.ts +22 -1
- package/grid.module.d.ts +100 -99
- package/grouping/group-header.component.d.ts +1 -0
- package/index.d.ts +3 -0
- package/localization/messages.d.ts +2 -2
- package/navigation/default-focusable-element.d.ts +3 -1
- package/navigation/focus-group.d.ts +1 -1
- package/navigation/navigation-metadata.d.ts +2 -1
- package/navigation/navigation.service.d.ts +6 -0
- package/package.json +21 -21
- package/rendering/cell.component.d.ts +32 -17
- package/rendering/common/col-group.component.d.ts +5 -0
- package/rendering/footer/footer.component.d.ts +4 -1
- package/rendering/header/header.component.d.ts +1 -0
- package/rendering/list.component.d.ts +4 -1
- package/rendering/table-body.component.d.ts +2 -1
- package/rendering/toolbar/tools/ai-assistant/ai-assistant.component.d.ts +1 -0
- package/rendering/toolbar/tools/select-all-command-tool.directive.d.ts +36 -0
- package/row-reordering/row-reorder.service.d.ts +1 -1
- package/row-reordering/utils.d.ts +1 -1
- package/schematics/ngAdd/index.js +4 -4
- package/selection/cell-selection.service.d.ts +1 -0
|
@@ -6,7 +6,7 @@ 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, isPresent as isPresent$1, anyChanged, TemplateContextDirective, DraggableDirective, EventsOutsideAngularDirective, replaceMessagePlaceholder, isChanged as isChanged$1, KendoInput, guid, closest as closest$1, hasObservers, ResizeSensorComponent, closestInScope as closestInScope$1, isFocusable as isFocusable$1, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, PreventableEvent as PreventableEvent$1, ResizeBatchService } from '@progress/kendo-angular-common';
|
|
9
|
+
import { isDocumentAvailable, Keys, hasClasses as hasClasses$1, isPresent as isPresent$1, anyChanged, TemplateContextDirective, DraggableDirective, EventsOutsideAngularDirective, replaceMessagePlaceholder, isChanged as isChanged$1, KendoInput, guid, closest as closest$1, hasObservers, ResizeSensorComponent, closestInScope as closestInScope$1, isFocusable as isFocusable$1, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, PreventableEvent as PreventableEvent$1, 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';
|
|
@@ -14,7 +14,7 @@ import { plusIcon, cancelIcon, lockIcon, unlockIcon, caretAltDownIcon, caretAltR
|
|
|
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
|
-
import * as
|
|
17
|
+
import * as i53 from '@progress/kendo-angular-pager';
|
|
18
18
|
import { PagerContextService, PagerNavigationService, PagerTemplateDirective, KENDO_PAGER } from '@progress/kendo-angular-pager';
|
|
19
19
|
import { orderBy, isCompositeFilterDescriptor, groupBy, process, filterBy } from '@progress/kendo-data-query';
|
|
20
20
|
import { NgFor, NgIf, NgTemplateOutlet, NgSwitch, NgSwitchCase, NgClass, NgStyle, NgSwitchDefault, KeyValuePipe } from '@angular/common';
|
|
@@ -26,16 +26,16 @@ import * as i1$6 from '@progress/kendo-angular-buttons';
|
|
|
26
26
|
import { ChipListComponent, ChipComponent, ButtonComponent, Button, KENDO_BUTTON, ButtonDirective } from '@progress/kendo-angular-buttons';
|
|
27
27
|
import * as i1$5 from '@progress/kendo-angular-dropdowns';
|
|
28
28
|
import { DropDownListComponent, AutoCompleteComponent } from '@progress/kendo-angular-dropdowns';
|
|
29
|
-
import * as
|
|
29
|
+
import * as i2$2 from '@angular/forms';
|
|
30
30
|
import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule, FormControl, FormGroup } from '@angular/forms';
|
|
31
31
|
import * as i2$1 from '@progress/kendo-angular-utils';
|
|
32
32
|
import { DragTargetContainerDirective, DropTargetContainerDirective } from '@progress/kendo-angular-utils';
|
|
33
|
-
import * as i4
|
|
33
|
+
import * as i4 from '@progress/kendo-angular-inputs';
|
|
34
34
|
import { TextBoxComponent, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, RadioButtonComponent, CheckBoxComponent, KENDO_FORMFIELD, KENDO_TEXTBOX, KENDO_NUMERICTEXTBOX, KENDO_CHECKBOX } from '@progress/kendo-angular-inputs';
|
|
35
35
|
import * as i5 from '@progress/kendo-angular-dateinputs';
|
|
36
36
|
import { DatePickerComponent, DatePickerCustomMessagesComponent, KENDO_DATEPICKER, CalendarDOMService, CenturyViewService, DecadeViewService, MonthViewService, YearViewService, NavigationService as NavigationService$1 } from '@progress/kendo-angular-dateinputs';
|
|
37
|
-
import * as
|
|
38
|
-
import { KENDO_TOOLBAR } from '@progress/kendo-angular-toolbar';
|
|
37
|
+
import * as i54 from '@progress/kendo-angular-toolbar';
|
|
38
|
+
import { ToolBarToolComponent, KENDO_TOOLBAR } from '@progress/kendo-angular-toolbar';
|
|
39
39
|
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
40
40
|
import { TabStripComponent, TabStripTabComponent, TabTitleDirective, TabContentDirective } from '@progress/kendo-angular-layout';
|
|
41
41
|
import { saveAs } from '@progress/kendo-file-saver';
|
|
@@ -45,7 +45,7 @@ import { PDFExportMarginComponent, PDFExportTemplateDirective, PDFExportComponen
|
|
|
45
45
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
46
46
|
import { ActionSheetComponent, ActionSheetViewComponent, ActionSheetHeaderTemplateDirective, ActionSheetContentTemplateDirective, ActionSheetFooterTemplateDirective } from '@progress/kendo-angular-navigation';
|
|
47
47
|
import * as i3 from '@progress/kendo-angular-label';
|
|
48
|
-
import { KENDO_LABELS } from '@progress/kendo-angular-label';
|
|
48
|
+
import { KENDO_LABELS, LabelDirective } from '@progress/kendo-angular-label';
|
|
49
49
|
import * as i1$7 from '@progress/kendo-angular-dialog';
|
|
50
50
|
import { DialogContentBase, DialogActionsComponent, WindowContainerDirective, DialogService, DialogContainerService, WindowService, WindowContainerService } from '@progress/kendo-angular-dialog';
|
|
51
51
|
import { AIPromptComponent, AIPromptCustomMessagesComponent, PromptViewComponent, OutputViewComponent, AIPromptOutputTemplateDirective, AIPromptOutputBodyTemplateDirective } from '@progress/kendo-angular-conversational-ui';
|
|
@@ -758,6 +758,7 @@ const isNavigable = element => !element.disabled && (isButton(element) || isNavi
|
|
|
758
758
|
*/
|
|
759
759
|
class DefaultFocusableElement {
|
|
760
760
|
renderer;
|
|
761
|
+
ctx;
|
|
761
762
|
get enabled() {
|
|
762
763
|
return this.focusable && !this.focusable.disabled;
|
|
763
764
|
}
|
|
@@ -766,8 +767,9 @@ class DefaultFocusableElement {
|
|
|
766
767
|
}
|
|
767
768
|
element;
|
|
768
769
|
focusable;
|
|
769
|
-
constructor(host, renderer) {
|
|
770
|
+
constructor(host, renderer, ctx) {
|
|
770
771
|
this.renderer = renderer;
|
|
772
|
+
this.ctx = ctx;
|
|
771
773
|
this.element = host.nativeElement;
|
|
772
774
|
this.focusable = findFocusable(this.element, false) || this.element;
|
|
773
775
|
}
|
|
@@ -775,7 +777,17 @@ class DefaultFocusableElement {
|
|
|
775
777
|
return this.canFocus() && isNavigable(this.element);
|
|
776
778
|
}
|
|
777
779
|
toggle(active) {
|
|
778
|
-
this.
|
|
780
|
+
if (this.ctx.grid?.isStacked) {
|
|
781
|
+
if (active) {
|
|
782
|
+
this.renderer.setAttribute(this.focusable, 'tabindex', '0');
|
|
783
|
+
}
|
|
784
|
+
else {
|
|
785
|
+
this.renderer.removeAttribute(this.focusable, 'tabindex');
|
|
786
|
+
}
|
|
787
|
+
}
|
|
788
|
+
else {
|
|
789
|
+
this.renderer.setAttribute(this.focusable, 'tabindex', active ? '0' : '-1');
|
|
790
|
+
}
|
|
779
791
|
}
|
|
780
792
|
focus() {
|
|
781
793
|
if (this.focusable) {
|
|
@@ -944,7 +956,7 @@ class FocusableDirective {
|
|
|
944
956
|
}
|
|
945
957
|
ngAfterViewInit() {
|
|
946
958
|
if (!this.element && this.ctx.navigable) {
|
|
947
|
-
this.element = new DefaultFocusableElement(this.hostElement, this.renderer);
|
|
959
|
+
this.element = new DefaultFocusableElement(this.hostElement, this.renderer, this.ctx);
|
|
948
960
|
}
|
|
949
961
|
if (this.group && this.element) {
|
|
950
962
|
this.toggle(this.group.isActive);
|
|
@@ -1057,7 +1069,7 @@ class NavigationCursor {
|
|
|
1057
1069
|
set metadata(value) {
|
|
1058
1070
|
this._metadata = value;
|
|
1059
1071
|
if (isPresent(value)) {
|
|
1060
|
-
const newActiveCol = value.hasDetailTemplate ? 1 : 0;
|
|
1072
|
+
const newActiveCol = value.hasDetailTemplate && !this.metadata.isStacked ? 1 : 0;
|
|
1061
1073
|
const shouldChange = this.activeRow < value.headerRows && this.activeCol === 0;
|
|
1062
1074
|
if (shouldChange && newActiveCol !== this.activeCol) {
|
|
1063
1075
|
this.activeCol = newActiveCol;
|
|
@@ -1177,6 +1189,9 @@ class NavigationCursor {
|
|
|
1177
1189
|
(this.metadata.hasDetailTemplate && (!row || !row.groupItem) ? 1 : 0);
|
|
1178
1190
|
}
|
|
1179
1191
|
offsetCol(offset) {
|
|
1192
|
+
if (this.metadata.isStacked) {
|
|
1193
|
+
return false;
|
|
1194
|
+
}
|
|
1180
1195
|
const prevRow = this.model.findRow(this.virtualRow);
|
|
1181
1196
|
const lastIndex = this.lastCellIndex(prevRow);
|
|
1182
1197
|
const virtualCol = this.virtualCol;
|
|
@@ -1256,6 +1271,9 @@ class NavigationCursor {
|
|
|
1256
1271
|
if (!cell && (this.metadata.virtualColumns || this.metadata.hasDetailTemplate)) {
|
|
1257
1272
|
return this.activate(this.virtualRow + offset, this.virtualCol);
|
|
1258
1273
|
}
|
|
1274
|
+
if (!cell) {
|
|
1275
|
+
return false;
|
|
1276
|
+
}
|
|
1259
1277
|
this.virtualRow = cell.rowIndex;
|
|
1260
1278
|
return this.activate(this.virtualRow, cell.colIndex);
|
|
1261
1279
|
}
|
|
@@ -2186,16 +2204,16 @@ const GridConfigurationErrorMessages = {
|
|
|
2186
2204
|
/**
|
|
2187
2205
|
* @hidden
|
|
2188
2206
|
*/
|
|
2189
|
-
const isSpanColumn = column => column
|
|
2207
|
+
const isSpanColumn = column => column?.isSpanColumn;
|
|
2190
2208
|
/**
|
|
2191
2209
|
* @hidden
|
|
2192
2210
|
*/
|
|
2193
|
-
const isCheckboxColumn = column => column
|
|
2211
|
+
const isCheckboxColumn = column => column?.isCheckboxColumn;
|
|
2194
2212
|
/**
|
|
2195
2213
|
* @hidden
|
|
2196
2214
|
*/
|
|
2197
|
-
const isRowReorderColumn = column => column
|
|
2198
|
-
const isColumnContainer = column => column
|
|
2215
|
+
const isRowReorderColumn = column => column?.isRowReorderColumn;
|
|
2216
|
+
const isColumnContainer = column => column?.isColumnGroup || isSpanColumn(column);
|
|
2199
2217
|
let columnId = 0;
|
|
2200
2218
|
/**
|
|
2201
2219
|
* The base class for the column components of the Grid.
|
|
@@ -2804,7 +2822,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2804
2822
|
* @hidden
|
|
2805
2823
|
*/
|
|
2806
2824
|
function isColumnComponent(column) {
|
|
2807
|
-
return isPresent(column
|
|
2825
|
+
return isPresent(column?.field);
|
|
2808
2826
|
}
|
|
2809
2827
|
/**
|
|
2810
2828
|
* Represents a column in the Grid.
|
|
@@ -3554,7 +3572,12 @@ class NavigationService {
|
|
|
3554
3572
|
// Closing the editor will not always trigger focusout in Firefox.
|
|
3555
3573
|
// To get around this, we ensure that the cell is closed after editing.
|
|
3556
3574
|
this.editService.changes.pipe(filter(e => e.action !== 'edit' && this.mode === 2 /* NavigationMode.Content */), filter((e) => e.action === 'cellClose' && !e.prevented), switchMap(onStable))
|
|
3557
|
-
.subscribe(() =>
|
|
3575
|
+
.subscribe((e) => {
|
|
3576
|
+
const isInStackedCell = closest(e.originalEvent?.target, (el) => hasClasses$1(el, 'k-grid-stack-content'));
|
|
3577
|
+
if (!isInStackedCell) {
|
|
3578
|
+
this.leaveCell();
|
|
3579
|
+
}
|
|
3580
|
+
}));
|
|
3558
3581
|
this.subs.add(this.pagerContextService.pageChange
|
|
3559
3582
|
.subscribe(() => this.cursor.reset(0, 0)));
|
|
3560
3583
|
this.subs.add(this.domEvents.keydown
|
|
@@ -3736,7 +3759,7 @@ class NavigationService {
|
|
|
3736
3759
|
success = fwd ? this.cursor.moveDown(1) : this.cursor.moveUp(1);
|
|
3737
3760
|
if (success) {
|
|
3738
3761
|
const row = this.cursor.row;
|
|
3739
|
-
const colIdx = fwd ? 0 : this.cursor.lastCellIndex(row);
|
|
3762
|
+
const colIdx = fwd || this.isStackedMode ? 0 : this.cursor.lastCellIndex(row);
|
|
3740
3763
|
this.cursor.reset(row.index, colIdx);
|
|
3741
3764
|
}
|
|
3742
3765
|
}
|
|
@@ -3754,6 +3777,12 @@ class NavigationService {
|
|
|
3754
3777
|
if (!cell) {
|
|
3755
3778
|
return;
|
|
3756
3779
|
}
|
|
3780
|
+
if (this.tableCellEntered && this.isStackedMode) {
|
|
3781
|
+
this.stackedCellEntered = true;
|
|
3782
|
+
}
|
|
3783
|
+
else {
|
|
3784
|
+
this.tableCellEntered = true;
|
|
3785
|
+
}
|
|
3757
3786
|
const group = cell.focusGroup;
|
|
3758
3787
|
const focusable = group && group.canFocus();
|
|
3759
3788
|
this.mode = focusable ? 2 /* NavigationMode.Content */ : 1 /* NavigationMode.Cursor */;
|
|
@@ -3761,6 +3790,9 @@ class NavigationService {
|
|
|
3761
3790
|
if (focusable) {
|
|
3762
3791
|
this.activateRow();
|
|
3763
3792
|
group.focus();
|
|
3793
|
+
if (this.isStackedMode && this.stackedFocusedCellIndex === -1) {
|
|
3794
|
+
this.stackedFocusedCellIndex = 0;
|
|
3795
|
+
}
|
|
3764
3796
|
}
|
|
3765
3797
|
}
|
|
3766
3798
|
leaveCell() {
|
|
@@ -3768,11 +3800,22 @@ class NavigationService {
|
|
|
3768
3800
|
if (!cell) {
|
|
3769
3801
|
return;
|
|
3770
3802
|
}
|
|
3803
|
+
if (this.tableCellEntered) {
|
|
3804
|
+
if (this.stackedCellEntered) {
|
|
3805
|
+
this.stackedCellEntered = false;
|
|
3806
|
+
}
|
|
3807
|
+
else {
|
|
3808
|
+
this.tableCellEntered = false;
|
|
3809
|
+
}
|
|
3810
|
+
}
|
|
3771
3811
|
const group = cell.focusGroup;
|
|
3772
3812
|
const focusable = group && group.canFocus();
|
|
3773
3813
|
if (!focusable) {
|
|
3774
3814
|
this.deactivateElements();
|
|
3775
3815
|
}
|
|
3816
|
+
if (this.isStackedMode && this.stackedFocusedCellIndex > -1) {
|
|
3817
|
+
this.stackedFocusedCellIndex = -1;
|
|
3818
|
+
}
|
|
3776
3819
|
this.mode = 1 /* NavigationMode.Cursor */;
|
|
3777
3820
|
this.cursor.announce();
|
|
3778
3821
|
}
|
|
@@ -3787,11 +3830,11 @@ class NavigationService {
|
|
|
3787
3830
|
.forEach(cell => cell.focusGroup && cell.focusGroup.activate());
|
|
3788
3831
|
}
|
|
3789
3832
|
moveCursorFwd() {
|
|
3790
|
-
this.lastCellRowIndex = this.activeCell
|
|
3833
|
+
this.lastCellRowIndex = this.activeCell?.rowIndex;
|
|
3791
3834
|
return this.ctx.localization.rtl ? this.cursor.moveLeft() : this.cursor.moveRight();
|
|
3792
3835
|
}
|
|
3793
3836
|
moveCursorBwd() {
|
|
3794
|
-
this.lastCellRowIndex = this.activeCell
|
|
3837
|
+
this.lastCellRowIndex = this.activeCell?.rowIndex;
|
|
3795
3838
|
return this.ctx.localization.rtl ? this.cursor.moveRight() : this.cursor.moveLeft();
|
|
3796
3839
|
}
|
|
3797
3840
|
onCursorKeydown(args) {
|
|
@@ -3931,6 +3974,15 @@ class NavigationService {
|
|
|
3931
3974
|
break;
|
|
3932
3975
|
case Keys.Enter:
|
|
3933
3976
|
case Keys.F2: {
|
|
3977
|
+
if (this.stackedCellEntered) {
|
|
3978
|
+
if (args.keyCode === Keys.F2 && row.dataRowIndex > -1) {
|
|
3979
|
+
this.zone.run(() => {
|
|
3980
|
+
this.editService.beginEdit(row.dataRowIndex);
|
|
3981
|
+
});
|
|
3982
|
+
this.enterCell();
|
|
3983
|
+
}
|
|
3984
|
+
break;
|
|
3985
|
+
}
|
|
3934
3986
|
const groupItem = row.groupItem;
|
|
3935
3987
|
if (groupItem) {
|
|
3936
3988
|
this.zone.run(() => this.groupsService.toggleRow(groupItem));
|
|
@@ -3939,6 +3991,11 @@ class NavigationService {
|
|
|
3939
3991
|
this.zone.run(() => this.detailsService.toggleRow(row.dataRowIndex, row.dataItem));
|
|
3940
3992
|
}
|
|
3941
3993
|
else {
|
|
3994
|
+
if (args.keyCode === Keys.F2 && row.dataRowIndex > -1) {
|
|
3995
|
+
this.zone.run(() => {
|
|
3996
|
+
this.editService.beginEdit(row.dataRowIndex);
|
|
3997
|
+
});
|
|
3998
|
+
}
|
|
3942
3999
|
this.enterCell();
|
|
3943
4000
|
if (!this.cursor.cell.focusGroup.isNavigable()) {
|
|
3944
4001
|
preventDefault = true;
|
|
@@ -3946,6 +4003,17 @@ class NavigationService {
|
|
|
3946
4003
|
}
|
|
3947
4004
|
break;
|
|
3948
4005
|
}
|
|
4006
|
+
case Keys.Backspace:
|
|
4007
|
+
case Keys.Delete:
|
|
4008
|
+
if (this.activeRow && this.activeRow.dataRowIndex >= 0 && this.activeRow.dataItem) {
|
|
4009
|
+
if (!row.groupItem && !this.cursor.cell.detailExpandCell) {
|
|
4010
|
+
this.zone.run(() => {
|
|
4011
|
+
this.editService.remove(this.activeRow.dataRowIndex);
|
|
4012
|
+
});
|
|
4013
|
+
preventDefault = true;
|
|
4014
|
+
}
|
|
4015
|
+
}
|
|
4016
|
+
break;
|
|
3949
4017
|
default:
|
|
3950
4018
|
if (!args.ctrlKey && !args.altKey && isPrintableCharacter(args.key)) {
|
|
3951
4019
|
this.enterCell();
|
|
@@ -3969,6 +4037,13 @@ class NavigationService {
|
|
|
3969
4037
|
}
|
|
3970
4038
|
const confirm = !args.defaultPrevented && args.keyCode === Keys.Enter && isTextInput(args.target);
|
|
3971
4039
|
if (args.keyCode === Keys.Escape || args.keyCode === Keys.F2 || confirm) {
|
|
4040
|
+
if (this.tableCellEntered && args.keyCode === Keys.F2 && this.activeRow.dataRowIndex > -1) {
|
|
4041
|
+
this.zone.run(() => {
|
|
4042
|
+
this.editService.beginEdit(this.activeRow.dataRowIndex);
|
|
4043
|
+
});
|
|
4044
|
+
this.enterCell();
|
|
4045
|
+
return;
|
|
4046
|
+
}
|
|
3972
4047
|
this.leaveCell();
|
|
3973
4048
|
this.cursor.reset();
|
|
3974
4049
|
args.stopPropagation();
|
|
@@ -4037,6 +4112,12 @@ class NavigationService {
|
|
|
4037
4112
|
this.cursor.announce();
|
|
4038
4113
|
}
|
|
4039
4114
|
onKeydown(args) {
|
|
4115
|
+
if (this.isStackedMode) {
|
|
4116
|
+
this.handleStackedKeydown(args);
|
|
4117
|
+
if (args.defaultPrevented) {
|
|
4118
|
+
return;
|
|
4119
|
+
}
|
|
4120
|
+
}
|
|
4040
4121
|
if (this.mode === 1 /* NavigationMode.Cursor */) {
|
|
4041
4122
|
this.onCursorKeydown(args);
|
|
4042
4123
|
}
|
|
@@ -4125,12 +4206,80 @@ class NavigationService {
|
|
|
4125
4206
|
const offset = direction === 'Up' ? Math.abs(this.lastCellRowIndex - this.activeRowIndex) : (this.activeRowIndex + cellRowspan - this.lastCellRowIndex - 1);
|
|
4126
4207
|
return offset;
|
|
4127
4208
|
}
|
|
4128
|
-
|
|
4209
|
+
get isStackedMode() {
|
|
4210
|
+
return this.ctx?.grid?.isStacked;
|
|
4211
|
+
}
|
|
4212
|
+
handleStackedKeydown(args) {
|
|
4213
|
+
const target = args.target;
|
|
4214
|
+
const stackedCell = closest(target, (el) => hasClasses$1(el, 'k-grid-stack-cell'));
|
|
4215
|
+
const tableCell = closest(target, (el) => hasClasses$1(el, 'k-table-td'));
|
|
4216
|
+
const isInStackedCell = closest(target, (el) => hasClasses$1(el, 'k-grid-stack-content'));
|
|
4217
|
+
if (!stackedCell || !tableCell) {
|
|
4218
|
+
return;
|
|
4219
|
+
}
|
|
4220
|
+
if (args.keyCode === Keys.Tab) {
|
|
4221
|
+
this.handleStackedTabNavigation(args);
|
|
4222
|
+
}
|
|
4223
|
+
else if (args.keyCode === Keys.Backspace || args.keyCode === Keys.Delete) {
|
|
4224
|
+
if (this.activeRow && this.activeRow.dataRowIndex >= 0 && this.activeRow.dataItem) {
|
|
4225
|
+
const row = this.cursor.row;
|
|
4226
|
+
if (!row.groupItem && !this.cursor.cell.detailExpandCell) {
|
|
4227
|
+
this.zone.run(() => {
|
|
4228
|
+
this.editService.remove(this.activeRow.dataRowIndex);
|
|
4229
|
+
});
|
|
4230
|
+
args.preventDefault();
|
|
4231
|
+
}
|
|
4232
|
+
}
|
|
4233
|
+
}
|
|
4234
|
+
else if (isInStackedCell && (args.keyCode === Keys.Enter || args.keyCode === Keys.Escape)) {
|
|
4235
|
+
this.editService.closeCell(args);
|
|
4236
|
+
this.activeCell.focusGroup.activate();
|
|
4237
|
+
this.activeCell.focusGroup.focusableChildren[this.stackedFocusedCellIndex]?.focus();
|
|
4238
|
+
args.preventDefault();
|
|
4239
|
+
}
|
|
4240
|
+
}
|
|
4241
|
+
stackedFocusedCellIndex = -1;
|
|
4242
|
+
tableCellEntered = false;
|
|
4243
|
+
stackedCellEntered = false;
|
|
4244
|
+
handleStackedTabNavigation(args) {
|
|
4245
|
+
if (!isPresent$1(this.activeCell.focusGroup)) {
|
|
4246
|
+
return;
|
|
4247
|
+
}
|
|
4248
|
+
if (this.stackedFocusedCellIndex === -1) {
|
|
4249
|
+
return;
|
|
4250
|
+
}
|
|
4251
|
+
const stackedCells = this.activeCell.focusGroup.focusableChildren;
|
|
4252
|
+
let nextIndex;
|
|
4253
|
+
if (args.shiftKey) {
|
|
4254
|
+
nextIndex = this.stackedFocusedCellIndex - 1;
|
|
4255
|
+
if (nextIndex < 0) {
|
|
4256
|
+
nextIndex = stackedCells.length - 1;
|
|
4257
|
+
}
|
|
4258
|
+
}
|
|
4259
|
+
else {
|
|
4260
|
+
nextIndex = this.stackedFocusedCellIndex + 1;
|
|
4261
|
+
if (nextIndex >= stackedCells.length) {
|
|
4262
|
+
nextIndex = 0;
|
|
4263
|
+
}
|
|
4264
|
+
}
|
|
4265
|
+
let nextStackedCell = stackedCells[nextIndex];
|
|
4266
|
+
if (nextStackedCell) {
|
|
4267
|
+
if (nextStackedCell.hasFocus() || (isDocumentAvailable() && document.activeElement === nextStackedCell.hostElement.nativeElement)) {
|
|
4268
|
+
// next cell is already focused (as a focusable child of the previous one), skip to the next one
|
|
4269
|
+
nextIndex = args.shiftKey ? this.stackedFocusedCellIndex - 2 : this.stackedFocusedCellIndex + 2;
|
|
4270
|
+
nextStackedCell = stackedCells[nextIndex];
|
|
4271
|
+
}
|
|
4272
|
+
nextStackedCell.focus();
|
|
4273
|
+
this.stackedFocusedCellIndex = nextIndex;
|
|
4274
|
+
args.preventDefault();
|
|
4275
|
+
}
|
|
4276
|
+
}
|
|
4277
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }, { token: DomEventsService }, { token: i53.PagerContextService }, { token: ScrollRequestService }, { token: GroupsService }, { token: DetailsService }, { token: FocusRoot }, { token: EditService }, { token: i0.ChangeDetectorRef }, { token: ContextService }, { token: ColumnResizingService }, { token: FocusableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4129
4278
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService });
|
|
4130
4279
|
}
|
|
4131
4280
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavigationService, decorators: [{
|
|
4132
4281
|
type: Injectable
|
|
4133
|
-
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: DomEventsService }, { type:
|
|
4282
|
+
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: DomEventsService }, { type: i53.PagerContextService }, { type: ScrollRequestService }, { type: GroupsService }, { type: DetailsService }, { type: FocusRoot }, { type: EditService }, { type: i0.ChangeDetectorRef }, { type: ContextService }, { type: ColumnResizingService }, { type: FocusableDirective, decorators: [{
|
|
4134
4283
|
type: Optional
|
|
4135
4284
|
}] }]; } });
|
|
4136
4285
|
|
|
@@ -4495,12 +4644,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
4495
4644
|
* @hidden
|
|
4496
4645
|
*/
|
|
4497
4646
|
class ColGroupComponent {
|
|
4647
|
+
ctx;
|
|
4498
4648
|
columns = [];
|
|
4499
4649
|
groups = [];
|
|
4500
4650
|
detailTemplate;
|
|
4501
4651
|
sort = new Array();
|
|
4652
|
+
constructor(ctx) {
|
|
4653
|
+
this.ctx = ctx;
|
|
4654
|
+
}
|
|
4655
|
+
getColumnWidth(column) {
|
|
4656
|
+
return this.isStacked ? '100%' : `${column.width}px`;
|
|
4657
|
+
}
|
|
4502
4658
|
get columnsToRender() {
|
|
4503
|
-
return columnsToRender(this.columns);
|
|
4659
|
+
return this.isStacked ? [new ColumnBase()] : columnsToRender(this.columns);
|
|
4660
|
+
}
|
|
4661
|
+
get isStacked() {
|
|
4662
|
+
return this.ctx.grid?.isStacked;
|
|
4504
4663
|
}
|
|
4505
4664
|
trackBy(index) {
|
|
4506
4665
|
return index;
|
|
@@ -4518,13 +4677,13 @@ class ColGroupComponent {
|
|
|
4518
4677
|
sortDescriptor(field) {
|
|
4519
4678
|
return this.sort.find(item => item.field === field) || { field };
|
|
4520
4679
|
}
|
|
4521
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4680
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColGroupComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4522
4681
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColGroupComponent, isStandalone: true, selector: "[kendoGridColGroup]", inputs: { columns: "columns", groups: "groups", detailTemplate: "detailTemplate", sort: "sort" }, ngImport: i0, template: `
|
|
4523
4682
|
<ng-container>
|
|
4524
4683
|
<col [class.k-group-col]="true" *ngFor="let g of groups" />
|
|
4525
|
-
<col [class.k-hierarchy-col]="true" *ngIf="detailTemplate?.templateRef"/>
|
|
4684
|
+
<col [class.k-hierarchy-col]="true" *ngIf="detailTemplate?.templateRef && !isStacked"/>
|
|
4526
4685
|
<col *ngFor="let column of columnsToRender; trackBy: trackBy;"
|
|
4527
|
-
[style.width
|
|
4686
|
+
[style.width]="getColumnWidth(column)"
|
|
4528
4687
|
[class.k-sorted]="isSorted(getColumnComponent(column))"/>
|
|
4529
4688
|
</ng-container>
|
|
4530
4689
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
@@ -4536,16 +4695,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
4536
4695
|
template: `
|
|
4537
4696
|
<ng-container>
|
|
4538
4697
|
<col [class.k-group-col]="true" *ngFor="let g of groups" />
|
|
4539
|
-
<col [class.k-hierarchy-col]="true" *ngIf="detailTemplate?.templateRef"/>
|
|
4698
|
+
<col [class.k-hierarchy-col]="true" *ngIf="detailTemplate?.templateRef && !isStacked"/>
|
|
4540
4699
|
<col *ngFor="let column of columnsToRender; trackBy: trackBy;"
|
|
4541
|
-
[style.width
|
|
4700
|
+
[style.width]="getColumnWidth(column)"
|
|
4542
4701
|
[class.k-sorted]="isSorted(getColumnComponent(column))"/>
|
|
4543
4702
|
</ng-container>
|
|
4544
4703
|
`,
|
|
4545
4704
|
standalone: true,
|
|
4546
4705
|
imports: [NgFor, NgIf]
|
|
4547
4706
|
}]
|
|
4548
|
-
}], propDecorators: { columns: [{
|
|
4707
|
+
}], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { columns: [{
|
|
4549
4708
|
type: Input
|
|
4550
4709
|
}], groups: [{
|
|
4551
4710
|
type: Input
|
|
@@ -4817,6 +4976,7 @@ class ColumnsContainer {
|
|
|
4817
4976
|
lockedLeafColumns = new QueryList();
|
|
4818
4977
|
nonLockedLeafColumns = new QueryList();
|
|
4819
4978
|
totalLevels = 0;
|
|
4979
|
+
isStacked = false;
|
|
4820
4980
|
changes = new EventEmitter();
|
|
4821
4981
|
leafColumnsToRender = [];
|
|
4822
4982
|
lockedColumnsToRender = [];
|
|
@@ -4825,6 +4985,7 @@ class ColumnsContainer {
|
|
|
4825
4985
|
hasGroupFooter = false;
|
|
4826
4986
|
hasFooter = false;
|
|
4827
4987
|
unlockedWidth = 0;
|
|
4988
|
+
totalColumnsWidth = 0;
|
|
4828
4989
|
constructor(columns) {
|
|
4829
4990
|
this.columns = columns;
|
|
4830
4991
|
}
|
|
@@ -4868,6 +5029,7 @@ class ColumnsContainer {
|
|
|
4868
5029
|
else {
|
|
4869
5030
|
column.leafIndex = leafIndex++;
|
|
4870
5031
|
}
|
|
5032
|
+
this.totalColumnsWidth += column.width || 0;
|
|
4871
5033
|
}
|
|
4872
5034
|
containerColumns.push(column);
|
|
4873
5035
|
allColumns.push(column);
|
|
@@ -4907,7 +5069,7 @@ class ColumnInfoService {
|
|
|
4907
5069
|
return this.columnsContainer.nonLockedLeafColumns;
|
|
4908
5070
|
}
|
|
4909
5071
|
get isLocked() {
|
|
4910
|
-
return this.lockedLeafColumns.length > 0;
|
|
5072
|
+
return this.lockedLeafColumns.length > 0 && !this.columnsContainer.isStacked;
|
|
4911
5073
|
}
|
|
4912
5074
|
get totalLevels() {
|
|
4913
5075
|
return this.columnsContainer.totalLevels;
|
|
@@ -5597,6 +5759,9 @@ class GroupHeaderComponent {
|
|
|
5597
5759
|
this.caretAltDownIcon;
|
|
5598
5760
|
return icon;
|
|
5599
5761
|
}
|
|
5762
|
+
get isStacked() {
|
|
5763
|
+
return this.ctx.grid?.isStacked;
|
|
5764
|
+
}
|
|
5600
5765
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupHeaderComponent, deps: [{ token: GroupsService }, { token: GroupInfoService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5601
5766
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GroupHeaderComponent, isStandalone: true, selector: "[kendoGridGroupHeader]", inputs: { rowIndex: "rowIndex", logicalRowIndex: "logicalRowIndex", item: "item", skipGroupDecoration: "skipGroupDecoration", hasDetails: "hasDetails", totalColumnsCount: "totalColumnsCount", hasGroupHeaderColumn: "hasGroupHeaderColumn", groupHeaderColumns: "groupHeaderColumns", columns: "columns", groups: "groups" }, host: { properties: { "class.k-grouping-row": "this.groupItemClass", "class.k-table-group-row": "this.tableGroupRowClass" } }, ngImport: i0, template: `
|
|
5602
5767
|
<ng-container *ngIf="!skipGroupDecoration">
|
|
@@ -5626,7 +5791,7 @@ class GroupHeaderComponent {
|
|
|
5626
5791
|
[svgIcon]="arrowSVGIcon"></kendo-icon-wrapper>
|
|
5627
5792
|
</a>
|
|
5628
5793
|
<ng-container *ngIf="!groupHeaderTemplate(item)">
|
|
5629
|
-
|
|
5794
|
+
{{groupTitle(item)}}: {{item.data | valueOf:"value": formatForGroup(item)}}
|
|
5630
5795
|
</ng-container>
|
|
5631
5796
|
<ng-template
|
|
5632
5797
|
[templateContext]="{
|
|
@@ -5642,8 +5807,24 @@ class GroupHeaderComponent {
|
|
|
5642
5807
|
</ng-template>
|
|
5643
5808
|
</ng-container>
|
|
5644
5809
|
</p>
|
|
5810
|
+
<div class="k-grid-column-template" *ngIf="isStacked">
|
|
5811
|
+
<ng-container *ngFor="let column of groupHeaderColumns; let index = index">
|
|
5812
|
+
<div class="k-column-template-item" *ngIf="column.groupHeaderColumnTemplateRef">
|
|
5813
|
+
<ng-template [ngTemplateOutlet]="column.groupHeaderColumnTemplateRef"
|
|
5814
|
+
[ngTemplateOutletContext]="{
|
|
5815
|
+
group: item.data,
|
|
5816
|
+
aggregates: item.data?.aggregates,
|
|
5817
|
+
value: item.data?.value,
|
|
5818
|
+
field: item.data?.field,
|
|
5819
|
+
index: item.index,
|
|
5820
|
+
$implicit: item.data
|
|
5821
|
+
}">
|
|
5822
|
+
</ng-template>
|
|
5823
|
+
</div>
|
|
5824
|
+
</ng-container>
|
|
5825
|
+
</div>
|
|
5645
5826
|
</td>
|
|
5646
|
-
<ng-container *ngIf="hasGroupHeaderColumn">
|
|
5827
|
+
<ng-container *ngIf="hasGroupHeaderColumn && !isStacked">
|
|
5647
5828
|
<td *ngFor="let column of groupHeaderColumns; let index = index"
|
|
5648
5829
|
role="gridcell"
|
|
5649
5830
|
class="k-table-td"
|
|
@@ -5701,7 +5882,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5701
5882
|
[svgIcon]="arrowSVGIcon"></kendo-icon-wrapper>
|
|
5702
5883
|
</a>
|
|
5703
5884
|
<ng-container *ngIf="!groupHeaderTemplate(item)">
|
|
5704
|
-
|
|
5885
|
+
{{groupTitle(item)}}: {{item.data | valueOf:"value": formatForGroup(item)}}
|
|
5705
5886
|
</ng-container>
|
|
5706
5887
|
<ng-template
|
|
5707
5888
|
[templateContext]="{
|
|
@@ -5717,8 +5898,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5717
5898
|
</ng-template>
|
|
5718
5899
|
</ng-container>
|
|
5719
5900
|
</p>
|
|
5901
|
+
<div class="k-grid-column-template" *ngIf="isStacked">
|
|
5902
|
+
<ng-container *ngFor="let column of groupHeaderColumns; let index = index">
|
|
5903
|
+
<div class="k-column-template-item" *ngIf="column.groupHeaderColumnTemplateRef">
|
|
5904
|
+
<ng-template [ngTemplateOutlet]="column.groupHeaderColumnTemplateRef"
|
|
5905
|
+
[ngTemplateOutletContext]="{
|
|
5906
|
+
group: item.data,
|
|
5907
|
+
aggregates: item.data?.aggregates,
|
|
5908
|
+
value: item.data?.value,
|
|
5909
|
+
field: item.data?.field,
|
|
5910
|
+
index: item.index,
|
|
5911
|
+
$implicit: item.data
|
|
5912
|
+
}">
|
|
5913
|
+
</ng-template>
|
|
5914
|
+
</div>
|
|
5915
|
+
</ng-container>
|
|
5916
|
+
</div>
|
|
5720
5917
|
</td>
|
|
5721
|
-
<ng-container *ngIf="hasGroupHeaderColumn">
|
|
5918
|
+
<ng-container *ngIf="hasGroupHeaderColumn && !isStacked">
|
|
5722
5919
|
<td *ngFor="let column of groupHeaderColumns; let index = index"
|
|
5723
5920
|
role="gridcell"
|
|
5724
5921
|
class="k-table-td"
|
|
@@ -8893,7 +9090,7 @@ class StringFilterMenuInputComponent {
|
|
|
8893
9090
|
[ngModel]="currentFilter?.value ?? null">
|
|
8894
9091
|
</kendo-textbox>
|
|
8895
9092
|
</kendo-grid-filter-menu-input-wrapper>
|
|
8896
|
-
`, isInline: true, dependencies: [{ kind: "component", type: FilterMenuInputWrapperComponent, selector: "kendo-grid-filter-menu-input-wrapper", inputs: ["filterService", "isFirstDropDown", "menuTabbingService", "currentFilter"] }, { 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: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type:
|
|
9093
|
+
`, isInline: true, dependencies: [{ kind: "component", type: FilterMenuInputWrapperComponent, selector: "kendo-grid-filter-menu-input-wrapper", inputs: ["filterService", "isFirstDropDown", "menuTabbingService", "currentFilter"] }, { 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: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
8897
9094
|
}
|
|
8898
9095
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: StringFilterMenuInputComponent, decorators: [{
|
|
8899
9096
|
type: Component,
|
|
@@ -10655,7 +10852,7 @@ class FilterMenuContainerComponent {
|
|
|
10655
10852
|
</div>
|
|
10656
10853
|
</div>
|
|
10657
10854
|
</form>
|
|
10658
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type:
|
|
10855
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: FilterMenuHostDirective, selector: "[kendoFilterMenuHost]", inputs: ["filterService", "menuTabbingService"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
10659
10856
|
}
|
|
10660
10857
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuContainerComponent, decorators: [{
|
|
10661
10858
|
type: Component,
|
|
@@ -11378,7 +11575,7 @@ class StringFilterCellComponent extends StringFilterComponent {
|
|
|
11378
11575
|
[ngModel]="currentFilter?.value ?? null"
|
|
11379
11576
|
></kendo-textbox>
|
|
11380
11577
|
</kendo-grid-filter-wrapper-cell>
|
|
11381
|
-
`, isInline: true, dependencies: [{ kind: "component", type: FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { 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: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { kind: "directive", type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type:
|
|
11578
|
+
`, isInline: true, dependencies: [{ kind: "component", type: FilterCellWrapperComponent, selector: "kendo-grid-filter-wrapper-cell", inputs: ["showOperators"] }, { 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: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { kind: "directive", type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
11382
11579
|
}
|
|
11383
11580
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: StringFilterCellComponent, decorators: [{
|
|
11384
11581
|
type: Component,
|
|
@@ -11696,6 +11893,9 @@ class FilterRowComponent {
|
|
|
11696
11893
|
const colIndex = this.lockedColumnsCount + columnIndex;
|
|
11697
11894
|
return this.detailTemplate?.templateRef ? colIndex + 1 : colIndex;
|
|
11698
11895
|
}
|
|
11896
|
+
get isStacked() {
|
|
11897
|
+
return this.ctx.grid?.isStacked;
|
|
11898
|
+
}
|
|
11699
11899
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterRowComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
11700
11900
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterRowComponent, isStandalone: true, selector: "[kendoGridFilterRow]", inputs: { columns: "columns", filter: "filter", groups: "groups", detailTemplate: "detailTemplate", logicalRowIndex: "logicalRowIndex", lockedColumnsCount: "lockedColumnsCount" }, host: { properties: { "class.k-filter-row": "this.filterRowClass" } }, ngImport: i0, template: `
|
|
11701
11901
|
<td
|
|
@@ -11705,7 +11905,7 @@ class FilterRowComponent {
|
|
|
11705
11905
|
</td>
|
|
11706
11906
|
<td
|
|
11707
11907
|
class="k-table-td k-hierarchy-cell"
|
|
11708
|
-
*ngIf="detailTemplate?.templateRef"
|
|
11908
|
+
*ngIf="detailTemplate?.templateRef && !isStacked"
|
|
11709
11909
|
role="presentation">
|
|
11710
11910
|
</td>
|
|
11711
11911
|
<td *ngFor="let column of columns; let columnIndex = index"
|
|
@@ -11735,7 +11935,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
11735
11935
|
</td>
|
|
11736
11936
|
<td
|
|
11737
11937
|
class="k-table-td k-hierarchy-cell"
|
|
11738
|
-
*ngIf="detailTemplate?.templateRef"
|
|
11938
|
+
*ngIf="detailTemplate?.templateRef && !isStacked"
|
|
11739
11939
|
role="presentation">
|
|
11740
11940
|
</td>
|
|
11741
11941
|
<td *ngFor="let column of columns; let columnIndex = index"
|
|
@@ -12598,13 +12798,13 @@ class ToolbarToolBase {
|
|
|
12598
12798
|
this.clickSub.unsubscribe();
|
|
12599
12799
|
}
|
|
12600
12800
|
onClick(_e) { }
|
|
12601
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolBase, deps: [{ token:
|
|
12801
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolBase, deps: [{ token: i54.ToolBarButtonComponent }, { token: 'command' }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
12602
12802
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarToolBase, ngImport: i0 });
|
|
12603
12803
|
}
|
|
12604
12804
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolBase, decorators: [{
|
|
12605
12805
|
type: Directive,
|
|
12606
12806
|
args: [{}]
|
|
12607
|
-
}], ctorParameters: function () { return [{ type:
|
|
12807
|
+
}], ctorParameters: function () { return [{ type: i54.ToolBarButtonComponent }, { type: undefined, decorators: [{
|
|
12608
12808
|
type: Inject,
|
|
12609
12809
|
args: ['command']
|
|
12610
12810
|
}] }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
@@ -12783,7 +12983,7 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
12783
12983
|
get buttonElement() {
|
|
12784
12984
|
return this.host.getButton();
|
|
12785
12985
|
}
|
|
12786
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i2.PopupService }, { token:
|
|
12986
|
+
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 });
|
|
12787
12987
|
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 });
|
|
12788
12988
|
}
|
|
12789
12989
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, decorators: [{
|
|
@@ -12792,7 +12992,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12792
12992
|
selector: '[kendoGridColumnChooserTool]',
|
|
12793
12993
|
standalone: true
|
|
12794
12994
|
}]
|
|
12795
|
-
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i2.PopupService }, { type:
|
|
12995
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i2.PopupService }, { type: i54.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i54.RefreshService }, { type: AdaptiveGridService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autoSync: [{
|
|
12796
12996
|
type: Input
|
|
12797
12997
|
}], allowHideAll: [{
|
|
12798
12998
|
type: Input
|
|
@@ -15730,11 +15930,14 @@ const createTable = (colGroups, headers, bodies, footers, size) => {
|
|
|
15730
15930
|
for (let idx = 1; idx < colGroups.length; idx++) {
|
|
15731
15931
|
appendNodes(colGroup, colGroups[idx].querySelectorAll('col'));
|
|
15732
15932
|
}
|
|
15733
|
-
const header = createTableElement(headers);
|
|
15734
15933
|
const body = createTableElement(bodies);
|
|
15735
|
-
|
|
15934
|
+
let header;
|
|
15935
|
+
if (headers.length > 0) {
|
|
15936
|
+
header = createTableElement(headers);
|
|
15937
|
+
setFirstCellClass(header, headers);
|
|
15938
|
+
}
|
|
15736
15939
|
table.appendChild(colGroup);
|
|
15737
|
-
table.appendChild(header);
|
|
15940
|
+
header && table.appendChild(header);
|
|
15738
15941
|
table.appendChild(body);
|
|
15739
15942
|
if (footers.length) {
|
|
15740
15943
|
const footer = createTableElement(footers);
|
|
@@ -15751,17 +15954,23 @@ const exportElement = (wrapper, size) => {
|
|
|
15751
15954
|
let result;
|
|
15752
15955
|
if (content) {
|
|
15753
15956
|
const colGroups = [content.querySelector('colgroup')];
|
|
15754
|
-
const headers = [query.header().querySelector('thead')];
|
|
15755
15957
|
const bodies = [content.querySelector('tbody')];
|
|
15958
|
+
const header = query.header();
|
|
15756
15959
|
const footer = query.footer();
|
|
15960
|
+
const headers = [];
|
|
15757
15961
|
const footers = [];
|
|
15962
|
+
if (header) {
|
|
15963
|
+
headers.push(header.querySelector('thead'));
|
|
15964
|
+
}
|
|
15758
15965
|
if (footer) {
|
|
15759
15966
|
footers.push(footer.querySelector('tfoot'));
|
|
15760
15967
|
}
|
|
15761
15968
|
const lockedContent = query.content(true);
|
|
15762
15969
|
if (lockedContent) {
|
|
15970
|
+
if (headers.length > 0) {
|
|
15971
|
+
headers.unshift(query.header(true).querySelector('thead'));
|
|
15972
|
+
}
|
|
15763
15973
|
colGroups.unshift(lockedContent.querySelector('colgroup'));
|
|
15764
|
-
headers.unshift(query.header(true).querySelector('thead'));
|
|
15765
15974
|
bodies.unshift(lockedContent.querySelector('tbody'));
|
|
15766
15975
|
if (footer) {
|
|
15767
15976
|
footers.unshift(query.footer(true).querySelector('tfoot'));
|
|
@@ -15920,7 +16129,9 @@ class PDFComponent extends PDFExportComponent {
|
|
|
15920
16129
|
const overlayContent = overlayQuery.content();
|
|
15921
16130
|
overlayContent.scrollTop = content.scrollTop;
|
|
15922
16131
|
overlayContent.scrollLeft = content.scrollLeft;
|
|
15923
|
-
|
|
16132
|
+
if (!this.ctx?.grid?.isStacked) {
|
|
16133
|
+
overlayQuery.header().scrollLeft = query.header().scrollLeft;
|
|
16134
|
+
}
|
|
15924
16135
|
const footer = query.footer();
|
|
15925
16136
|
if (footer) {
|
|
15926
16137
|
overlayQuery.footer().scrollLeft = footer.scrollLeft;
|
|
@@ -17331,7 +17542,7 @@ class CellSelectionService {
|
|
|
17331
17542
|
nonSelectableRows = new Map();
|
|
17332
17543
|
get enableMarquee() {
|
|
17333
17544
|
const checkboxOnly = this.settings && typeof this.settings === 'object' && this.settings.checkboxOnly;
|
|
17334
|
-
if (!this.settings || checkboxOnly) {
|
|
17545
|
+
if (!this.settings || checkboxOnly || this.settings.isStacked) {
|
|
17335
17546
|
return false;
|
|
17336
17547
|
}
|
|
17337
17548
|
const selectableSettings = this.settings.selectable;
|
|
@@ -17367,7 +17578,7 @@ class CellSelectionService {
|
|
|
17367
17578
|
this.settings = settings;
|
|
17368
17579
|
this.currentSelection = [];
|
|
17369
17580
|
this.nonSelectableRows = new Map();
|
|
17370
|
-
if (settings.selectable && settings.selectable.enabled !== false) {
|
|
17581
|
+
if (settings.selectable && settings.selectable.enabled !== false && !settings.isStacked) {
|
|
17371
17582
|
const iterator = this.getIterator();
|
|
17372
17583
|
let item = iterator.next();
|
|
17373
17584
|
while (!item.done) {
|
|
@@ -17391,7 +17602,7 @@ class CellSelectionService {
|
|
|
17391
17602
|
}
|
|
17392
17603
|
}
|
|
17393
17604
|
isCellSelected(item, col) {
|
|
17394
|
-
if (this.settings && this.active) {
|
|
17605
|
+
if (this.settings && this.active && !this.settings.isStacked) {
|
|
17395
17606
|
const selectedCellArgs = this.settings.cellSelected({ dataItem: item.data, index: item.index }, col, col.leafIndex);
|
|
17396
17607
|
return this.options.enabled && selectedCellArgs.selected && !this.nonSelectableRows.has(item.index);
|
|
17397
17608
|
}
|
|
@@ -17402,6 +17613,9 @@ class CellSelectionService {
|
|
|
17402
17613
|
this.dragging = false;
|
|
17403
17614
|
return;
|
|
17404
17615
|
}
|
|
17616
|
+
if (this.settings.isStacked) {
|
|
17617
|
+
return;
|
|
17618
|
+
}
|
|
17405
17619
|
let ev;
|
|
17406
17620
|
const ctrlKey = event.ctrlKey || event.metaKey;
|
|
17407
17621
|
if (this.options.mode === "single" && ctrlKey && this.isCellSelected(item, item.column)) {
|
|
@@ -17757,7 +17971,7 @@ class SelectAllCheckboxDirective {
|
|
|
17757
17971
|
return undefined;
|
|
17758
17972
|
}
|
|
17759
17973
|
}
|
|
17760
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectAllCheckboxDirective, deps: [{ token: SelectionService }, { token: CellSelectionService }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i4
|
|
17974
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectAllCheckboxDirective, deps: [{ token: SelectionService }, { token: CellSelectionService }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i4.CheckBoxComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
17761
17975
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SelectAllCheckboxDirective, isStandalone: true, selector: "[kendoGridSelectAllCheckbox]", inputs: { state: "state" }, outputs: { selectAllChange: "selectAllChange" }, usesOnChanges: true, ngImport: i0 });
|
|
17762
17976
|
}
|
|
17763
17977
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectAllCheckboxDirective, decorators: [{
|
|
@@ -17766,7 +17980,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
17766
17980
|
selector: '[kendoGridSelectAllCheckbox]',
|
|
17767
17981
|
standalone: true
|
|
17768
17982
|
}]
|
|
17769
|
-
}], ctorParameters: function () { return [{ type: SelectionService }, { type: CellSelectionService }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i4
|
|
17983
|
+
}], ctorParameters: function () { return [{ type: SelectionService }, { type: CellSelectionService }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i4.CheckBoxComponent, decorators: [{
|
|
17770
17984
|
type: Host
|
|
17771
17985
|
}, {
|
|
17772
17986
|
type: Optional
|
|
@@ -18124,6 +18338,9 @@ class HeaderComponent {
|
|
|
18124
18338
|
get leafColumns() {
|
|
18125
18339
|
return this._leafColumns;
|
|
18126
18340
|
}
|
|
18341
|
+
get isStacked() {
|
|
18342
|
+
return this.contextService.grid?.isStacked;
|
|
18343
|
+
}
|
|
18127
18344
|
isReorderable(column) {
|
|
18128
18345
|
return this.reorderable && column.reorderable;
|
|
18129
18346
|
}
|
|
@@ -18226,7 +18443,7 @@ class HeaderComponent {
|
|
|
18226
18443
|
</th>
|
|
18227
18444
|
<th class="k-hierarchy-cell k-header k-table-th"
|
|
18228
18445
|
role="presentation"
|
|
18229
|
-
*ngIf="detailTemplate?.templateRef"
|
|
18446
|
+
*ngIf="detailTemplate?.templateRef && !isStacked"
|
|
18230
18447
|
>
|
|
18231
18448
|
</th>
|
|
18232
18449
|
<ng-container *ngFor="let column of columnsForLevel(levelIndex); let columnIndex = index; let last = last;">
|
|
@@ -18450,7 +18667,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
18450
18667
|
</th>
|
|
18451
18668
|
<th class="k-hierarchy-cell k-header k-table-th"
|
|
18452
18669
|
role="presentation"
|
|
18453
|
-
*ngIf="detailTemplate?.templateRef"
|
|
18670
|
+
*ngIf="detailTemplate?.templateRef && !isStacked"
|
|
18454
18671
|
>
|
|
18455
18672
|
</th>
|
|
18456
18673
|
<ng-container *ngFor="let column of columnsForLevel(levelIndex); let columnIndex = index; let last = last;">
|
|
@@ -18718,6 +18935,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
18718
18935
|
*/
|
|
18719
18936
|
class FooterComponent {
|
|
18720
18937
|
columnInfoService;
|
|
18938
|
+
ctx;
|
|
18721
18939
|
columns = [];
|
|
18722
18940
|
groups = [];
|
|
18723
18941
|
detailTemplate;
|
|
@@ -18731,15 +18949,16 @@ class FooterComponent {
|
|
|
18731
18949
|
}
|
|
18732
18950
|
hostClass = true;
|
|
18733
18951
|
hostRole = 'rowgroup';
|
|
18734
|
-
constructor(columnInfoService) {
|
|
18952
|
+
constructor(columnInfoService, ctx) {
|
|
18735
18953
|
this.columnInfoService = columnInfoService;
|
|
18954
|
+
this.ctx = ctx;
|
|
18736
18955
|
}
|
|
18737
18956
|
get columnsToRender() {
|
|
18738
18957
|
return columnsToRender(this.columns || []);
|
|
18739
18958
|
}
|
|
18740
18959
|
// Number of unlocked columns in the next table, if any
|
|
18741
18960
|
get unlockedColumnsCount() {
|
|
18742
|
-
return this.totalColumnsCount - this.lockedColumnsCount - this.columns.length;
|
|
18961
|
+
return this.totalColumnsCount - (this.isStacked ? 0 : this.lockedColumnsCount) - this.columns.length;
|
|
18743
18962
|
}
|
|
18744
18963
|
trackByIndex(index) {
|
|
18745
18964
|
return index;
|
|
@@ -18758,47 +18977,78 @@ class FooterComponent {
|
|
|
18758
18977
|
isColumnGroupComponent(column) {
|
|
18759
18978
|
return isColumnGroupComponent(column);
|
|
18760
18979
|
}
|
|
18761
|
-
|
|
18980
|
+
get isStacked() {
|
|
18981
|
+
return this.ctx.grid?.isStacked;
|
|
18982
|
+
}
|
|
18983
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FooterComponent, deps: [{ token: ColumnInfoService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
18762
18984
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FooterComponent, isStandalone: true, selector: "[kendoGridFooter]", inputs: { columns: "columns", groups: "groups", detailTemplate: "detailTemplate", scrollable: "scrollable", lockedColumnsCount: "lockedColumnsCount", logicalRowIndex: "logicalRowIndex", totalColumns: "totalColumns", totalColumnsCount: "totalColumnsCount" }, host: { properties: { "class.k-grid-footer": "this.footerClass", "class.k-table-tfoot": "this.hostClass", "attr.role": "this.hostRole" } }, ngImport: i0, template: `
|
|
18763
18985
|
<ng-container>
|
|
18764
18986
|
<tr
|
|
18765
18987
|
class="k-footer-template"
|
|
18766
18988
|
kendoGridLogicalRow
|
|
18767
18989
|
[logicalRowIndex]="logicalRowIndex"
|
|
18768
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
18990
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStacked"
|
|
18769
18991
|
[logicalCellsCount]="columns.length"
|
|
18770
18992
|
[logicalSlaveCellsCount]="unlockedColumnsCount"
|
|
18771
18993
|
[totalColumns]="totalColumns"
|
|
18772
18994
|
>
|
|
18773
|
-
<
|
|
18774
|
-
|
|
18775
|
-
|
|
18776
|
-
|
|
18777
|
-
|
|
18995
|
+
<ng-container *ngIf="!isStacked">
|
|
18996
|
+
<td
|
|
18997
|
+
class="k-table-td k-group-cell k-table-group-td"
|
|
18998
|
+
role="presentation"
|
|
18999
|
+
*ngFor="let g of groups">
|
|
19000
|
+
</td>
|
|
19001
|
+
</ng-container>
|
|
18778
19002
|
<td
|
|
18779
19003
|
role="presentation"
|
|
18780
19004
|
class="k-table-td k-hierarchy-cell"
|
|
18781
|
-
*ngIf="detailTemplate?.templateRef">
|
|
19005
|
+
*ngIf="detailTemplate?.templateRef && !isStacked">
|
|
18782
19006
|
</td>
|
|
18783
|
-
<ng-container *
|
|
18784
|
-
<
|
|
18785
|
-
|
|
19007
|
+
<ng-container *ngIf="!isStacked">
|
|
19008
|
+
<ng-container *ngFor="let column of columnsToRender; let columnIndex = index; trackBy: trackByIndex;">
|
|
19009
|
+
<td *ngIf="!isColumnGroupComponent(column)"
|
|
19010
|
+
kendoGridLogicalCell
|
|
19011
|
+
class="k-table-td"
|
|
19012
|
+
[logicalRowIndex]="logicalRowIndex"
|
|
19013
|
+
[logicalColIndex]="logicalColumnIndex(column)"
|
|
19014
|
+
role="gridcell"
|
|
19015
|
+
aria-selected="false"
|
|
19016
|
+
[class.k-grid-footer-sticky]="column.sticky"
|
|
19017
|
+
[ngClass]="column.footerClass"
|
|
19018
|
+
[ngStyle]="column.sticky ? addStickyStyles(column) : column.footerStyle">
|
|
19019
|
+
<ng-template
|
|
19020
|
+
[templateContext]="{
|
|
19021
|
+
templateRef: column.footerTemplateRef,
|
|
19022
|
+
columnIndex: column.leafIndex,
|
|
19023
|
+
column: column,
|
|
19024
|
+
$implicit: column
|
|
19025
|
+
}">
|
|
19026
|
+
</ng-template>
|
|
19027
|
+
</td>
|
|
19028
|
+
</ng-container>
|
|
19029
|
+
</ng-container>
|
|
19030
|
+
|
|
19031
|
+
<ng-container *ngIf="isStacked">
|
|
19032
|
+
<td kendoGridLogicalCell
|
|
18786
19033
|
class="k-table-td"
|
|
18787
|
-
|
|
18788
|
-
|
|
18789
|
-
|
|
18790
|
-
|
|
18791
|
-
|
|
18792
|
-
|
|
18793
|
-
|
|
18794
|
-
|
|
18795
|
-
|
|
18796
|
-
|
|
18797
|
-
|
|
18798
|
-
|
|
18799
|
-
|
|
18800
|
-
|
|
18801
|
-
|
|
19034
|
+
[logicalRowIndex]="logicalRowIndex"
|
|
19035
|
+
[logicalColIndex]="detailTemplate ? 1 : 0"
|
|
19036
|
+
role="gridcell"
|
|
19037
|
+
aria-selected="false">
|
|
19038
|
+
<div class="k-grid-column-template">
|
|
19039
|
+
<ng-container *ngFor="let column of columnsToRender; trackBy: trackByIndex;">
|
|
19040
|
+
<div class="k-column-template-item" *ngIf="column.footerTemplateRef">
|
|
19041
|
+
<ng-template
|
|
19042
|
+
[templateContext]="{
|
|
19043
|
+
templateRef: column.footerTemplateRef,
|
|
19044
|
+
columnIndex: column.leafIndex,
|
|
19045
|
+
column: column,
|
|
19046
|
+
$implicit: column
|
|
19047
|
+
}">
|
|
19048
|
+
</ng-template>
|
|
19049
|
+
</div>
|
|
19050
|
+
</ng-container>
|
|
19051
|
+
</div>
|
|
18802
19052
|
</td>
|
|
18803
19053
|
</ng-container>
|
|
18804
19054
|
</tr>
|
|
@@ -18815,40 +19065,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
18815
19065
|
class="k-footer-template"
|
|
18816
19066
|
kendoGridLogicalRow
|
|
18817
19067
|
[logicalRowIndex]="logicalRowIndex"
|
|
18818
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
19068
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStacked"
|
|
18819
19069
|
[logicalCellsCount]="columns.length"
|
|
18820
19070
|
[logicalSlaveCellsCount]="unlockedColumnsCount"
|
|
18821
19071
|
[totalColumns]="totalColumns"
|
|
18822
19072
|
>
|
|
18823
|
-
<
|
|
18824
|
-
|
|
18825
|
-
|
|
18826
|
-
|
|
18827
|
-
|
|
19073
|
+
<ng-container *ngIf="!isStacked">
|
|
19074
|
+
<td
|
|
19075
|
+
class="k-table-td k-group-cell k-table-group-td"
|
|
19076
|
+
role="presentation"
|
|
19077
|
+
*ngFor="let g of groups">
|
|
19078
|
+
</td>
|
|
19079
|
+
</ng-container>
|
|
18828
19080
|
<td
|
|
18829
19081
|
role="presentation"
|
|
18830
19082
|
class="k-table-td k-hierarchy-cell"
|
|
18831
|
-
*ngIf="detailTemplate?.templateRef">
|
|
19083
|
+
*ngIf="detailTemplate?.templateRef && !isStacked">
|
|
18832
19084
|
</td>
|
|
18833
|
-
<ng-container *
|
|
18834
|
-
<
|
|
18835
|
-
|
|
19085
|
+
<ng-container *ngIf="!isStacked">
|
|
19086
|
+
<ng-container *ngFor="let column of columnsToRender; let columnIndex = index; trackBy: trackByIndex;">
|
|
19087
|
+
<td *ngIf="!isColumnGroupComponent(column)"
|
|
19088
|
+
kendoGridLogicalCell
|
|
19089
|
+
class="k-table-td"
|
|
19090
|
+
[logicalRowIndex]="logicalRowIndex"
|
|
19091
|
+
[logicalColIndex]="logicalColumnIndex(column)"
|
|
19092
|
+
role="gridcell"
|
|
19093
|
+
aria-selected="false"
|
|
19094
|
+
[class.k-grid-footer-sticky]="column.sticky"
|
|
19095
|
+
[ngClass]="column.footerClass"
|
|
19096
|
+
[ngStyle]="column.sticky ? addStickyStyles(column) : column.footerStyle">
|
|
19097
|
+
<ng-template
|
|
19098
|
+
[templateContext]="{
|
|
19099
|
+
templateRef: column.footerTemplateRef,
|
|
19100
|
+
columnIndex: column.leafIndex,
|
|
19101
|
+
column: column,
|
|
19102
|
+
$implicit: column
|
|
19103
|
+
}">
|
|
19104
|
+
</ng-template>
|
|
19105
|
+
</td>
|
|
19106
|
+
</ng-container>
|
|
19107
|
+
</ng-container>
|
|
19108
|
+
|
|
19109
|
+
<ng-container *ngIf="isStacked">
|
|
19110
|
+
<td kendoGridLogicalCell
|
|
18836
19111
|
class="k-table-td"
|
|
18837
|
-
|
|
18838
|
-
|
|
18839
|
-
|
|
18840
|
-
|
|
18841
|
-
|
|
18842
|
-
|
|
18843
|
-
|
|
18844
|
-
|
|
18845
|
-
|
|
18846
|
-
|
|
18847
|
-
|
|
18848
|
-
|
|
18849
|
-
|
|
18850
|
-
|
|
18851
|
-
|
|
19112
|
+
[logicalRowIndex]="logicalRowIndex"
|
|
19113
|
+
[logicalColIndex]="detailTemplate ? 1 : 0"
|
|
19114
|
+
role="gridcell"
|
|
19115
|
+
aria-selected="false">
|
|
19116
|
+
<div class="k-grid-column-template">
|
|
19117
|
+
<ng-container *ngFor="let column of columnsToRender; trackBy: trackByIndex;">
|
|
19118
|
+
<div class="k-column-template-item" *ngIf="column.footerTemplateRef">
|
|
19119
|
+
<ng-template
|
|
19120
|
+
[templateContext]="{
|
|
19121
|
+
templateRef: column.footerTemplateRef,
|
|
19122
|
+
columnIndex: column.leafIndex,
|
|
19123
|
+
column: column,
|
|
19124
|
+
$implicit: column
|
|
19125
|
+
}">
|
|
19126
|
+
</ng-template>
|
|
19127
|
+
</div>
|
|
19128
|
+
</ng-container>
|
|
19129
|
+
</div>
|
|
18852
19130
|
</td>
|
|
18853
19131
|
</ng-container>
|
|
18854
19132
|
</tr>
|
|
@@ -18857,7 +19135,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
18857
19135
|
standalone: true,
|
|
18858
19136
|
imports: [LogicalRowDirective, NgFor, NgIf, LogicalCellDirective, NgClass, NgStyle, TemplateContextDirective]
|
|
18859
19137
|
}]
|
|
18860
|
-
}], ctorParameters: function () { return [{ type: ColumnInfoService }]; }, propDecorators: { columns: [{
|
|
19138
|
+
}], ctorParameters: function () { return [{ type: ColumnInfoService }, { type: ContextService }]; }, propDecorators: { columns: [{
|
|
18861
19139
|
type: Input
|
|
18862
19140
|
}], groups: [{
|
|
18863
19141
|
type: Input
|
|
@@ -19146,7 +19424,7 @@ class SelectionCheckboxDirective {
|
|
|
19146
19424
|
this.renderer.setProperty(this.el.nativeElement, 'checked', isSelected);
|
|
19147
19425
|
}
|
|
19148
19426
|
}
|
|
19149
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectionCheckboxDirective, deps: [{ token: SelectionService }, { token: CellSelectionService }, { token: CellSelectionAggregateService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i4
|
|
19427
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectionCheckboxDirective, deps: [{ token: SelectionService }, { token: CellSelectionService }, { token: CellSelectionAggregateService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i4.CheckBoxComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
19150
19428
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SelectionCheckboxDirective, isStandalone: true, selector: "[kendoGridSelectionCheckbox]", inputs: { itemIndex: ["kendoGridSelectionCheckbox", "itemIndex"] }, ngImport: i0 });
|
|
19151
19429
|
}
|
|
19152
19430
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectionCheckboxDirective, decorators: [{
|
|
@@ -19155,7 +19433,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19155
19433
|
selector: '[kendoGridSelectionCheckbox]',
|
|
19156
19434
|
standalone: true
|
|
19157
19435
|
}]
|
|
19158
|
-
}], ctorParameters: function () { return [{ type: SelectionService }, { type: CellSelectionService }, { type: CellSelectionAggregateService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i4
|
|
19436
|
+
}], ctorParameters: function () { return [{ type: SelectionService }, { type: CellSelectionService }, { type: CellSelectionAggregateService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i4.CheckBoxComponent, decorators: [{
|
|
19159
19437
|
type: Host
|
|
19160
19438
|
}, {
|
|
19161
19439
|
type: Optional
|
|
@@ -19255,6 +19533,8 @@ class CellComponent {
|
|
|
19255
19533
|
editService;
|
|
19256
19534
|
idService;
|
|
19257
19535
|
ctx;
|
|
19536
|
+
detailsService;
|
|
19537
|
+
localization;
|
|
19258
19538
|
cellContext;
|
|
19259
19539
|
get commandCellClass() {
|
|
19260
19540
|
return this.isCommand(this.column);
|
|
@@ -19266,11 +19546,14 @@ class CellComponent {
|
|
|
19266
19546
|
return isRowReorderColumn(this.column) ? this.ctx.localization.get('dragRowHandleLabel') : undefined;
|
|
19267
19547
|
}
|
|
19268
19548
|
column;
|
|
19549
|
+
columns;
|
|
19269
19550
|
columnIndex;
|
|
19270
19551
|
isNew = false;
|
|
19271
19552
|
isLoading = false;
|
|
19272
19553
|
isVirtual = false;
|
|
19273
19554
|
loadingTemplate;
|
|
19555
|
+
detailTemplate;
|
|
19556
|
+
item;
|
|
19274
19557
|
set rowIndex(index) {
|
|
19275
19558
|
this._rowIndex = index;
|
|
19276
19559
|
this.updateCellContext();
|
|
@@ -19280,12 +19563,42 @@ class CellComponent {
|
|
|
19280
19563
|
}
|
|
19281
19564
|
dataItem;
|
|
19282
19565
|
reorderIcon = reorderIcon;
|
|
19283
|
-
|
|
19284
|
-
|
|
19566
|
+
minusIcon = minusIcon;
|
|
19567
|
+
plusIcon = plusIcon;
|
|
19568
|
+
detailButtonIconName(viewItem) {
|
|
19569
|
+
return viewItem.isExpanded ? 'minus' : 'plus';
|
|
19570
|
+
}
|
|
19571
|
+
detailButtonSvgIcon(viewItem) {
|
|
19572
|
+
return viewItem.isExpanded ? this.minusIcon : this.plusIcon;
|
|
19573
|
+
}
|
|
19574
|
+
detailButtonText(viewItem) {
|
|
19575
|
+
return viewItem.isExpanded ? this.localization.get('detailCollapse') : this.localization.get('detailExpand');
|
|
19576
|
+
}
|
|
19577
|
+
toggleRow(index, dataItem) {
|
|
19578
|
+
this.detailsService.toggleRow(index, dataItem);
|
|
19579
|
+
return false;
|
|
19580
|
+
}
|
|
19581
|
+
get stackedRowClass() {
|
|
19582
|
+
const columnsLength = this.ctx.grid.stackedColumns?.columns.length;
|
|
19583
|
+
if (this.ctx.grid.stackedColumns.areDefault && columnsLength > 1) {
|
|
19584
|
+
return `k-grid-cols-${columnsLength}`;
|
|
19585
|
+
}
|
|
19586
|
+
}
|
|
19587
|
+
get stackedRowStyle() {
|
|
19588
|
+
const columnsWidths = this.ctx.grid.stackedColumns.columns.map(c => c.width).join(' ');
|
|
19589
|
+
if (!this.ctx.grid.stackedColumns.areDefault && columnsWidths) {
|
|
19590
|
+
return {
|
|
19591
|
+
'grid-template-columns': `${columnsWidths}`
|
|
19592
|
+
};
|
|
19593
|
+
}
|
|
19594
|
+
}
|
|
19595
|
+
isEdited(column) {
|
|
19596
|
+
const currentColumn = column || this.column;
|
|
19597
|
+
if (!(this.editService.isEditing() || this.isNew) || !this.isColumnEditable(column)) {
|
|
19285
19598
|
return false;
|
|
19286
19599
|
}
|
|
19287
|
-
const editContext = this.editService.columnContext(this.rowIndex,
|
|
19288
|
-
return this.isFieldEditable(editContext,
|
|
19600
|
+
const editContext = this.editService.columnContext(this.rowIndex, currentColumn);
|
|
19601
|
+
return this.isFieldEditable(editContext, currentColumn);
|
|
19289
19602
|
}
|
|
19290
19603
|
get showLoading() {
|
|
19291
19604
|
return this.isVirtual && this.isLoading;
|
|
@@ -19293,13 +19606,22 @@ class CellComponent {
|
|
|
19293
19606
|
get formGroup() {
|
|
19294
19607
|
return this.editService.context(this.rowIndex).group;
|
|
19295
19608
|
}
|
|
19296
|
-
|
|
19609
|
+
getTemplateContext(column) {
|
|
19610
|
+
this._templateContext.isNew = this.isNew;
|
|
19611
|
+
this._templateContext.column = column || this.column;
|
|
19612
|
+
this._templateContext.dataItem = this.dataItem;
|
|
19613
|
+
this._templateContext.rowIndex = this.rowIndex;
|
|
19614
|
+
this._templateContext.columnIndex = this.columnIndex;
|
|
19615
|
+
this._templateContext.$implicit = this.dataItem;
|
|
19297
19616
|
return this._templateContext;
|
|
19298
19617
|
}
|
|
19299
|
-
get
|
|
19618
|
+
get isStackedLayoutMode() {
|
|
19619
|
+
return this.ctx.grid?.isStacked;
|
|
19620
|
+
}
|
|
19621
|
+
getEditTemplateContext(column) {
|
|
19300
19622
|
this._editTemplateContext.$implicit = this.formGroup;
|
|
19301
19623
|
this._editTemplateContext.isNew = this.isNew;
|
|
19302
|
-
this._editTemplateContext.column = this.column;
|
|
19624
|
+
this._editTemplateContext.column = column || this.column;
|
|
19303
19625
|
this._editTemplateContext.dataItem = this.dataItem;
|
|
19304
19626
|
this._editTemplateContext.formGroup = this.formGroup;
|
|
19305
19627
|
this._editTemplateContext.rowIndex = this.rowIndex;
|
|
@@ -19317,11 +19639,13 @@ class CellComponent {
|
|
|
19317
19639
|
}
|
|
19318
19640
|
return undefined;
|
|
19319
19641
|
}
|
|
19320
|
-
|
|
19321
|
-
|
|
19642
|
+
isBoundColumn(column) {
|
|
19643
|
+
const currentColumn = column || this.column;
|
|
19644
|
+
return currentColumn.field && !currentColumn.templateRef;
|
|
19322
19645
|
}
|
|
19323
|
-
|
|
19324
|
-
|
|
19646
|
+
isCheckboxColumn(column) {
|
|
19647
|
+
const currentColumn = column || this.column;
|
|
19648
|
+
return isCheckboxColumn(currentColumn) && !currentColumn.templateRef;
|
|
19325
19649
|
}
|
|
19326
19650
|
get selectionCheckboxId() {
|
|
19327
19651
|
return this.idService.selectionCheckboxId(this.rowIndex);
|
|
@@ -19335,37 +19659,36 @@ class CellComponent {
|
|
|
19335
19659
|
get children() {
|
|
19336
19660
|
return columnsToRender([this.column]);
|
|
19337
19661
|
}
|
|
19338
|
-
|
|
19339
|
-
|
|
19662
|
+
isRowReorderColumn(column) {
|
|
19663
|
+
const currentColumn = column || this.column;
|
|
19664
|
+
return isRowReorderColumn(currentColumn) && !currentColumn.templateRef;
|
|
19340
19665
|
}
|
|
19341
|
-
|
|
19342
|
-
|
|
19666
|
+
isRowSelectable(column) {
|
|
19667
|
+
const currentColumn = column || this.column;
|
|
19668
|
+
return currentColumn.rowSelectable(this._rowIndex);
|
|
19343
19669
|
}
|
|
19344
19670
|
_rowIndex;
|
|
19345
|
-
|
|
19346
|
-
|
|
19671
|
+
isColumnEditable(column) {
|
|
19672
|
+
const currentColumn = column || this.column;
|
|
19673
|
+
if (!currentColumn || this.isCommand(currentColumn)) {
|
|
19347
19674
|
return false;
|
|
19348
19675
|
}
|
|
19349
|
-
return
|
|
19676
|
+
return currentColumn.editable !== false;
|
|
19350
19677
|
}
|
|
19351
19678
|
_templateContext = {};
|
|
19352
19679
|
_editTemplateContext = {};
|
|
19353
19680
|
_rowReorderTemplateContext = {};
|
|
19354
|
-
constructor(editService, idService, ctx, cellContext) {
|
|
19681
|
+
constructor(editService, idService, ctx, detailsService, localization, cellContext) {
|
|
19355
19682
|
this.editService = editService;
|
|
19356
19683
|
this.idService = idService;
|
|
19357
19684
|
this.ctx = ctx;
|
|
19685
|
+
this.detailsService = detailsService;
|
|
19686
|
+
this.localization = localization;
|
|
19358
19687
|
this.cellContext = cellContext;
|
|
19359
19688
|
}
|
|
19360
19689
|
ngDoCheck() {
|
|
19361
19690
|
this.updateCellContext();
|
|
19362
19691
|
}
|
|
19363
|
-
ngOnChanges() {
|
|
19364
|
-
this.updateTemplateContext();
|
|
19365
|
-
}
|
|
19366
|
-
ngAfterContentChecked() {
|
|
19367
|
-
this.updateTemplateContext();
|
|
19368
|
-
}
|
|
19369
19692
|
isCommand(column) {
|
|
19370
19693
|
return column instanceof CommandColumnComponent;
|
|
19371
19694
|
}
|
|
@@ -19383,203 +19706,423 @@ class CellComponent {
|
|
|
19383
19706
|
this.cellContext.rowIndex = this._rowIndex;
|
|
19384
19707
|
}
|
|
19385
19708
|
}
|
|
19386
|
-
|
|
19387
|
-
|
|
19388
|
-
|
|
19389
|
-
|
|
19390
|
-
|
|
19391
|
-
|
|
19392
|
-
|
|
19393
|
-
|
|
19394
|
-
|
|
19395
|
-
|
|
19396
|
-
|
|
19397
|
-
|
|
19398
|
-
|
|
19399
|
-
|
|
19400
|
-
<ng-container [ngSwitch]="isEdited">
|
|
19401
|
-
<ng-container *ngSwitchCase="false">
|
|
19402
|
-
<ng-container *ngIf="!showLoading; else loading">
|
|
19403
|
-
<ng-template *ngIf="column.templateRef"
|
|
19404
|
-
[ngTemplateOutlet]="column.templateRef"
|
|
19405
|
-
[ngTemplateOutletContext]="templateContext">
|
|
19406
|
-
</ng-template>
|
|
19407
|
-
<ng-container *ngIf="isSpanColumn">
|
|
19408
|
-
<ng-container *ngFor="let childColumn of children">
|
|
19409
|
-
{{ dataItem | valueOf: childColumn.field: childColumn.format}}
|
|
19709
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CellComponent, deps: [{ token: EditService }, { token: IdService }, { token: ContextService }, { token: DetailsService }, { token: i1$2.LocalizationService }, { token: CELL_CONTEXT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
19710
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CellComponent, isStandalone: true, selector: "[kendoGridCell]", inputs: { column: "column", columns: "columns", columnIndex: "columnIndex", isNew: "isNew", isLoading: "isLoading", isVirtual: "isVirtual", loadingTemplate: "loadingTemplate", detailTemplate: "detailTemplate", item: "item", rowIndex: "rowIndex", dataItem: "dataItem" }, host: { properties: { "class.k-command-cell": "this.commandCellClass", "class.k-drag-cell": "this.dragHandleCellClass", "class.k-touch-action-none": "this.dragHandleCellClass", "attr.aria-label": "this.dragRowHandleLabel" } }, ngImport: i0, template: `
|
|
19711
|
+
<ng-container *ngIf="isStackedLayoutMode">
|
|
19712
|
+
<div class="k-grid-stack-row"
|
|
19713
|
+
[ngClass]="stackedRowClass"
|
|
19714
|
+
[ngStyle]="stackedRowStyle">
|
|
19715
|
+
<div class="k-grid-stack-cell" *ngFor="let col of columns"
|
|
19716
|
+
[class.k-grid-stack-edit-cell]="isEdited(col)"
|
|
19717
|
+
[class.k-drag-cell]="isRowReorderColumn(col) && !isNew"
|
|
19718
|
+
[class.k-command-cell]="isCommand(col)"
|
|
19719
|
+
kendoGridFocusable>
|
|
19720
|
+
<div class="k-grid-stack-header">
|
|
19721
|
+
<ng-container *ngIf="!col.headerTemplateRef; else headerTemplate">
|
|
19722
|
+
{{col.displayTitle}}
|
|
19410
19723
|
</ng-container>
|
|
19411
|
-
|
|
19412
|
-
|
|
19413
|
-
|
|
19414
|
-
|
|
19415
|
-
|
|
19416
|
-
|
|
19417
|
-
|
|
19418
|
-
|
|
19419
|
-
|
|
19724
|
+
|
|
19725
|
+
<ng-template #headerTemplate
|
|
19726
|
+
[templateContext]="{
|
|
19727
|
+
templateRef: col.headerTemplateRef,
|
|
19728
|
+
columnIndex: col.leafIndex,
|
|
19729
|
+
column: col,
|
|
19730
|
+
$implicit: col
|
|
19731
|
+
}">
|
|
19732
|
+
</ng-template>
|
|
19733
|
+
</div>
|
|
19734
|
+
<div class="k-grid-stack-content">
|
|
19735
|
+
<ng-container *ngIf="!isEdited(col)">
|
|
19736
|
+
<ng-container *ngIf="!col.templateRef; else template">
|
|
19737
|
+
<ng-container *ngIf="isBoundColumn(col)">{{ dataItem | valueOf: col.field: col.format}}</ng-container>
|
|
19738
|
+
<ng-container *ngIf="isCheckboxColumn(col) && !isNew">
|
|
19739
|
+
<ng-container *ngIf="isRowSelectable(col); else nonSelectableRow">
|
|
19740
|
+
<kendo-checkbox
|
|
19741
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
19742
|
+
[attr.id]="selectionCheckboxId"
|
|
19743
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
19744
|
+
[title]="selectionCheckboxLabel">
|
|
19745
|
+
</kendo-checkbox>
|
|
19746
|
+
</ng-container>
|
|
19747
|
+
<ng-template #nonSelectableRow>
|
|
19748
|
+
<kendo-checkbox *ngIf="col.showDisabledCheckbox"
|
|
19749
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
19750
|
+
[attr.id]="selectionCheckboxId"
|
|
19751
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
19752
|
+
[title]="selectionCheckboxLabel"
|
|
19753
|
+
[disabled]="true"
|
|
19754
|
+
></kendo-checkbox>
|
|
19755
|
+
</ng-template>
|
|
19756
|
+
</ng-container>
|
|
19757
|
+
<ng-container *ngIf="isRowReorderColumn(col) && !isNew">
|
|
19758
|
+
<kendo-icon-wrapper *ngIf="!col.dragHandleTemplate?.first"
|
|
19759
|
+
name="reorder"
|
|
19760
|
+
[svgIcon]="reorderIcon">
|
|
19761
|
+
</kendo-icon-wrapper>
|
|
19762
|
+
<ng-template *ngIf="col.dragHandleTemplate?.first"
|
|
19763
|
+
[ngTemplateOutlet]="col.rowDragHandleTemplateRef"
|
|
19764
|
+
[ngTemplateOutletContext]="rowReorderTemplateContext">
|
|
19765
|
+
</ng-template>
|
|
19766
|
+
</ng-container>
|
|
19767
|
+
</ng-container>
|
|
19768
|
+
<ng-template #template
|
|
19769
|
+
[ngTemplateOutlet]="col.templateRef"
|
|
19770
|
+
[ngTemplateOutletContext]="getTemplateContext(col)">
|
|
19771
|
+
</ng-template>
|
|
19772
|
+
</ng-container>
|
|
19773
|
+
<ng-container *ngIf="isEdited(col)">
|
|
19774
|
+
<ng-container [ngSwitch]="col.editor" *ngIf="!col.editTemplateRef">
|
|
19775
|
+
<kendo-numerictextbox
|
|
19776
|
+
*ngSwitchCase="'numeric'"
|
|
19777
|
+
[format]="format"
|
|
19778
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
19779
|
+
kendoGridFocusable
|
|
19780
|
+
></kendo-numerictextbox>
|
|
19781
|
+
|
|
19782
|
+
<kendo-datepicker
|
|
19783
|
+
*ngSwitchCase="'date'"
|
|
19784
|
+
[format]="format"
|
|
19785
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
19786
|
+
kendoGridFocusable
|
|
19787
|
+
></kendo-datepicker>
|
|
19788
|
+
|
|
19789
|
+
<kendo-checkbox
|
|
19790
|
+
*ngSwitchCase="'boolean'"
|
|
19791
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
19792
|
+
kendoGridFocusable
|
|
19793
|
+
></kendo-checkbox>
|
|
19794
|
+
|
|
19795
|
+
<kendo-textbox
|
|
19796
|
+
*ngSwitchDefault
|
|
19797
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
19798
|
+
kendoGridFocusable
|
|
19799
|
+
></kendo-textbox>
|
|
19800
|
+
</ng-container>
|
|
19801
|
+
<ng-template *ngIf="col.editTemplateRef"
|
|
19802
|
+
[ngTemplateOutlet]="col.editTemplateRef"
|
|
19803
|
+
[ngTemplateOutletContext]="getEditTemplateContext(col)">
|
|
19804
|
+
</ng-template>
|
|
19420
19805
|
</ng-container>
|
|
19421
|
-
|
|
19422
|
-
|
|
19423
|
-
|
|
19424
|
-
|
|
19425
|
-
|
|
19426
|
-
|
|
19427
|
-
|
|
19806
|
+
</div>
|
|
19807
|
+
</div>
|
|
19808
|
+
<div class="k-grid-stack-cell" *ngIf="detailTemplate?.showIf(item.data, $any(item).index)">
|
|
19809
|
+
<div class="k-grid-stack-content">
|
|
19810
|
+
<button kendoButton
|
|
19811
|
+
fillMode="flat"
|
|
19812
|
+
themeColor="primary"
|
|
19813
|
+
[icon]="detailButtonIconName(item)"
|
|
19814
|
+
[svgIcon]="detailButtonSvgIcon(item)"
|
|
19815
|
+
(click)="toggleRow($any(item).index, item.data)">
|
|
19816
|
+
{{ detailButtonText(item) }}
|
|
19817
|
+
</button>
|
|
19818
|
+
</div>
|
|
19819
|
+
</div>
|
|
19820
|
+
</div>
|
|
19821
|
+
</ng-container>
|
|
19822
|
+
|
|
19823
|
+
<ng-container *ngIf="!isStackedLayoutMode">
|
|
19824
|
+
<ng-container [ngSwitch]="isEdited()">
|
|
19825
|
+
<ng-container *ngSwitchCase="false">
|
|
19826
|
+
<ng-container *ngIf="!showLoading; else loading">
|
|
19827
|
+
<ng-template *ngIf="column.templateRef"
|
|
19828
|
+
[ngTemplateOutlet]="column.templateRef"
|
|
19829
|
+
[ngTemplateOutletContext]="getTemplateContext()">
|
|
19428
19830
|
</ng-template>
|
|
19831
|
+
<ng-container *ngIf="isSpanColumn">
|
|
19832
|
+
<ng-container *ngFor="let childColumn of children">
|
|
19833
|
+
{{ dataItem | valueOf: childColumn.field: childColumn.format}}
|
|
19834
|
+
</ng-container>
|
|
19835
|
+
</ng-container>
|
|
19836
|
+
<ng-container *ngIf="isBoundColumn()">{{ dataItem | valueOf: column.field: column.format}}</ng-container>
|
|
19837
|
+
<ng-container *ngIf="isCheckboxColumn() && !isNew">
|
|
19838
|
+
<ng-container *ngIf="isRowSelectable(); else nonSelectableRow">
|
|
19839
|
+
<kendo-checkbox
|
|
19840
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
19841
|
+
[attr.id]="selectionCheckboxId"
|
|
19842
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
19843
|
+
[title]="selectionCheckboxLabel">
|
|
19844
|
+
</kendo-checkbox>
|
|
19845
|
+
</ng-container>
|
|
19846
|
+
<ng-template #nonSelectableRow>
|
|
19847
|
+
<kendo-checkbox *ngIf="column.showDisabledCheckbox"
|
|
19848
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
19849
|
+
[attr.id]="selectionCheckboxId"
|
|
19850
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
19851
|
+
[title]="selectionCheckboxLabel"
|
|
19852
|
+
[disabled]="true"
|
|
19853
|
+
></kendo-checkbox>
|
|
19854
|
+
</ng-template>
|
|
19855
|
+
</ng-container>
|
|
19856
|
+
<ng-container *ngIf="isRowReorderColumn() && !isNew">
|
|
19857
|
+
<kendo-icon-wrapper *ngIf="!column.dragHandleTemplate?.first"
|
|
19858
|
+
name="reorder"
|
|
19859
|
+
[svgIcon]="reorderIcon">
|
|
19860
|
+
</kendo-icon-wrapper>
|
|
19861
|
+
<ng-template *ngIf="column.dragHandleTemplate?.first"
|
|
19862
|
+
[ngTemplateOutlet]="column.rowDragHandleTemplateRef"
|
|
19863
|
+
[ngTemplateOutletContext]="rowReorderTemplateContext">
|
|
19864
|
+
</ng-template>
|
|
19865
|
+
</ng-container>
|
|
19429
19866
|
</ng-container>
|
|
19430
|
-
<ng-
|
|
19431
|
-
<
|
|
19432
|
-
|
|
19433
|
-
[
|
|
19434
|
-
|
|
19435
|
-
<ng-template *ngIf="column.dragHandleTemplate?.first"
|
|
19436
|
-
[ngTemplateOutlet]="column.rowDragHandleTemplateRef"
|
|
19437
|
-
[ngTemplateOutletContext]="rowReorderTemplateContext">
|
|
19867
|
+
<ng-template #loading>
|
|
19868
|
+
<ng-template
|
|
19869
|
+
*ngIf="loadingTemplate"
|
|
19870
|
+
[ngTemplateOutlet]="loadingTemplate"
|
|
19871
|
+
[ngTemplateOutletContext]="{$implicit: column}">
|
|
19438
19872
|
</ng-template>
|
|
19439
|
-
|
|
19873
|
+
<div *ngIf="!loadingTemplate" class="k-skeleton-text k-skeleton"></div>
|
|
19874
|
+
</ng-template>
|
|
19440
19875
|
</ng-container>
|
|
19441
|
-
<ng-
|
|
19876
|
+
<ng-container *ngSwitchCase="true">
|
|
19442
19877
|
<ng-template
|
|
19443
|
-
*ngIf="
|
|
19444
|
-
[ngTemplateOutlet]="
|
|
19445
|
-
[ngTemplateOutletContext]="
|
|
19878
|
+
*ngIf="column.editTemplateRef"
|
|
19879
|
+
[ngTemplateOutlet]="column.editTemplateRef"
|
|
19880
|
+
[ngTemplateOutletContext]="getEditTemplateContext()">
|
|
19446
19881
|
</ng-template>
|
|
19447
|
-
<
|
|
19448
|
-
|
|
19449
|
-
|
|
19450
|
-
|
|
19451
|
-
|
|
19452
|
-
|
|
19453
|
-
|
|
19454
|
-
|
|
19455
|
-
|
|
19456
|
-
|
|
19457
|
-
|
|
19458
|
-
|
|
19459
|
-
|
|
19460
|
-
|
|
19461
|
-
|
|
19462
|
-
|
|
19463
|
-
|
|
19464
|
-
|
|
19465
|
-
|
|
19466
|
-
|
|
19467
|
-
|
|
19468
|
-
|
|
19469
|
-
|
|
19470
|
-
|
|
19471
|
-
|
|
19472
|
-
|
|
19473
|
-
|
|
19474
|
-
kendoGridFocusable
|
|
19475
|
-
></kendo-checkbox>
|
|
19476
|
-
|
|
19477
|
-
<kendo-textbox
|
|
19478
|
-
*ngSwitchDefault
|
|
19479
|
-
[formControl]="$any(formGroup.get(column.field))"
|
|
19480
|
-
kendoGridFocusable
|
|
19481
|
-
></kendo-textbox>
|
|
19882
|
+
<ng-container [ngSwitch]="column.editor" *ngIf="!column.editTemplateRef">
|
|
19883
|
+
<kendo-numerictextbox
|
|
19884
|
+
*ngSwitchCase="'numeric'"
|
|
19885
|
+
[format]="format"
|
|
19886
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
19887
|
+
kendoGridFocusable
|
|
19888
|
+
></kendo-numerictextbox>
|
|
19889
|
+
|
|
19890
|
+
<kendo-datepicker
|
|
19891
|
+
*ngSwitchCase="'date'"
|
|
19892
|
+
[format]="format"
|
|
19893
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
19894
|
+
kendoGridFocusable
|
|
19895
|
+
></kendo-datepicker>
|
|
19896
|
+
|
|
19897
|
+
<kendo-checkbox
|
|
19898
|
+
*ngSwitchCase="'boolean'"
|
|
19899
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
19900
|
+
kendoGridFocusable
|
|
19901
|
+
></kendo-checkbox>
|
|
19902
|
+
|
|
19903
|
+
<kendo-textbox
|
|
19904
|
+
*ngSwitchDefault
|
|
19905
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
19906
|
+
kendoGridFocusable
|
|
19907
|
+
></kendo-textbox>
|
|
19908
|
+
</ng-container>
|
|
19482
19909
|
</ng-container>
|
|
19483
19910
|
</ng-container>
|
|
19484
19911
|
</ng-container>
|
|
19485
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { kind: "directive", type: SelectionCheckboxDirective, selector: "[kendoGridSelectionCheckbox]", inputs: ["kendoGridSelectionCheckbox"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "focus", "blur", "inputFocus", "inputBlur"], exportAs: ["kendoNumericTextBox"] }, { kind: "component", type: DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "clearButton", "inputAttributes", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "footer", "navigationItemTemplate", "weekDaysFormat", "showOtherMonthDays", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "enableMouseWheel", "allowCaretMode", "autoFill", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "adaptiveTitle", "adaptiveSubtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close", "escape"], exportAs: ["kendo-datepicker"] }, { kind: "directive", type: NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "pipe", type: FieldAccessorPipe, name: "valueOf" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type:
|
|
19912
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { kind: "directive", type: SelectionCheckboxDirective, selector: "[kendoGridSelectionCheckbox]", inputs: ["kendoGridSelectionCheckbox"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "focus", "blur", "inputFocus", "inputBlur"], exportAs: ["kendoNumericTextBox"] }, { kind: "component", type: DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "clearButton", "inputAttributes", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "footer", "navigationItemTemplate", "weekDaysFormat", "showOtherMonthDays", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "enableMouseWheel", "allowCaretMode", "autoFill", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "adaptiveTitle", "adaptiveSubtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close", "escape"], exportAs: ["kendo-datepicker"] }, { kind: "directive", type: NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "pipe", type: FieldAccessorPipe, name: "valueOf" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }, { 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: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { 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"] }] });
|
|
19486
19913
|
}
|
|
19487
19914
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CellComponent, decorators: [{
|
|
19488
19915
|
type: Component,
|
|
19489
19916
|
args: [{
|
|
19490
19917
|
selector: '[kendoGridCell]',
|
|
19491
19918
|
template: `
|
|
19492
|
-
<ng-container
|
|
19493
|
-
<
|
|
19494
|
-
|
|
19495
|
-
|
|
19496
|
-
|
|
19497
|
-
|
|
19498
|
-
|
|
19499
|
-
|
|
19500
|
-
|
|
19501
|
-
|
|
19919
|
+
<ng-container *ngIf="isStackedLayoutMode">
|
|
19920
|
+
<div class="k-grid-stack-row"
|
|
19921
|
+
[ngClass]="stackedRowClass"
|
|
19922
|
+
[ngStyle]="stackedRowStyle">
|
|
19923
|
+
<div class="k-grid-stack-cell" *ngFor="let col of columns"
|
|
19924
|
+
[class.k-grid-stack-edit-cell]="isEdited(col)"
|
|
19925
|
+
[class.k-drag-cell]="isRowReorderColumn(col) && !isNew"
|
|
19926
|
+
[class.k-command-cell]="isCommand(col)"
|
|
19927
|
+
kendoGridFocusable>
|
|
19928
|
+
<div class="k-grid-stack-header">
|
|
19929
|
+
<ng-container *ngIf="!col.headerTemplateRef; else headerTemplate">
|
|
19930
|
+
{{col.displayTitle}}
|
|
19502
19931
|
</ng-container>
|
|
19503
|
-
|
|
19504
|
-
|
|
19505
|
-
|
|
19506
|
-
|
|
19507
|
-
|
|
19508
|
-
|
|
19509
|
-
|
|
19510
|
-
|
|
19511
|
-
|
|
19932
|
+
|
|
19933
|
+
<ng-template #headerTemplate
|
|
19934
|
+
[templateContext]="{
|
|
19935
|
+
templateRef: col.headerTemplateRef,
|
|
19936
|
+
columnIndex: col.leafIndex,
|
|
19937
|
+
column: col,
|
|
19938
|
+
$implicit: col
|
|
19939
|
+
}">
|
|
19940
|
+
</ng-template>
|
|
19941
|
+
</div>
|
|
19942
|
+
<div class="k-grid-stack-content">
|
|
19943
|
+
<ng-container *ngIf="!isEdited(col)">
|
|
19944
|
+
<ng-container *ngIf="!col.templateRef; else template">
|
|
19945
|
+
<ng-container *ngIf="isBoundColumn(col)">{{ dataItem | valueOf: col.field: col.format}}</ng-container>
|
|
19946
|
+
<ng-container *ngIf="isCheckboxColumn(col) && !isNew">
|
|
19947
|
+
<ng-container *ngIf="isRowSelectable(col); else nonSelectableRow">
|
|
19948
|
+
<kendo-checkbox
|
|
19949
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
19950
|
+
[attr.id]="selectionCheckboxId"
|
|
19951
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
19952
|
+
[title]="selectionCheckboxLabel">
|
|
19953
|
+
</kendo-checkbox>
|
|
19954
|
+
</ng-container>
|
|
19955
|
+
<ng-template #nonSelectableRow>
|
|
19956
|
+
<kendo-checkbox *ngIf="col.showDisabledCheckbox"
|
|
19957
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
19958
|
+
[attr.id]="selectionCheckboxId"
|
|
19959
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
19960
|
+
[title]="selectionCheckboxLabel"
|
|
19961
|
+
[disabled]="true"
|
|
19962
|
+
></kendo-checkbox>
|
|
19963
|
+
</ng-template>
|
|
19964
|
+
</ng-container>
|
|
19965
|
+
<ng-container *ngIf="isRowReorderColumn(col) && !isNew">
|
|
19966
|
+
<kendo-icon-wrapper *ngIf="!col.dragHandleTemplate?.first"
|
|
19967
|
+
name="reorder"
|
|
19968
|
+
[svgIcon]="reorderIcon">
|
|
19969
|
+
</kendo-icon-wrapper>
|
|
19970
|
+
<ng-template *ngIf="col.dragHandleTemplate?.first"
|
|
19971
|
+
[ngTemplateOutlet]="col.rowDragHandleTemplateRef"
|
|
19972
|
+
[ngTemplateOutletContext]="rowReorderTemplateContext">
|
|
19973
|
+
</ng-template>
|
|
19974
|
+
</ng-container>
|
|
19975
|
+
</ng-container>
|
|
19976
|
+
<ng-template #template
|
|
19977
|
+
[ngTemplateOutlet]="col.templateRef"
|
|
19978
|
+
[ngTemplateOutletContext]="getTemplateContext(col)">
|
|
19979
|
+
</ng-template>
|
|
19512
19980
|
</ng-container>
|
|
19513
|
-
<ng-
|
|
19514
|
-
<
|
|
19515
|
-
|
|
19516
|
-
|
|
19517
|
-
|
|
19518
|
-
|
|
19519
|
-
|
|
19981
|
+
<ng-container *ngIf="isEdited(col)">
|
|
19982
|
+
<ng-container [ngSwitch]="col.editor" *ngIf="!col.editTemplateRef">
|
|
19983
|
+
<kendo-numerictextbox
|
|
19984
|
+
*ngSwitchCase="'numeric'"
|
|
19985
|
+
[format]="format"
|
|
19986
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
19987
|
+
kendoGridFocusable
|
|
19988
|
+
></kendo-numerictextbox>
|
|
19989
|
+
|
|
19990
|
+
<kendo-datepicker
|
|
19991
|
+
*ngSwitchCase="'date'"
|
|
19992
|
+
[format]="format"
|
|
19993
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
19994
|
+
kendoGridFocusable
|
|
19995
|
+
></kendo-datepicker>
|
|
19996
|
+
|
|
19997
|
+
<kendo-checkbox
|
|
19998
|
+
*ngSwitchCase="'boolean'"
|
|
19999
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
20000
|
+
kendoGridFocusable
|
|
20001
|
+
></kendo-checkbox>
|
|
20002
|
+
|
|
20003
|
+
<kendo-textbox
|
|
20004
|
+
*ngSwitchDefault
|
|
20005
|
+
[formControl]="$any(formGroup.get(col.field))"
|
|
20006
|
+
kendoGridFocusable
|
|
20007
|
+
></kendo-textbox>
|
|
20008
|
+
</ng-container>
|
|
20009
|
+
<ng-template *ngIf="col.editTemplateRef"
|
|
20010
|
+
[ngTemplateOutlet]="col.editTemplateRef"
|
|
20011
|
+
[ngTemplateOutletContext]="getEditTemplateContext(col)">
|
|
20012
|
+
</ng-template>
|
|
20013
|
+
</ng-container>
|
|
20014
|
+
</div>
|
|
20015
|
+
</div>
|
|
20016
|
+
<div class="k-grid-stack-cell" *ngIf="detailTemplate?.showIf(item.data, $any(item).index)">
|
|
20017
|
+
<div class="k-grid-stack-content">
|
|
20018
|
+
<button kendoButton
|
|
20019
|
+
fillMode="flat"
|
|
20020
|
+
themeColor="primary"
|
|
20021
|
+
[icon]="detailButtonIconName(item)"
|
|
20022
|
+
[svgIcon]="detailButtonSvgIcon(item)"
|
|
20023
|
+
(click)="toggleRow($any(item).index, item.data)">
|
|
20024
|
+
{{ detailButtonText(item) }}
|
|
20025
|
+
</button>
|
|
20026
|
+
</div>
|
|
20027
|
+
</div>
|
|
20028
|
+
</div>
|
|
20029
|
+
</ng-container>
|
|
20030
|
+
|
|
20031
|
+
<ng-container *ngIf="!isStackedLayoutMode">
|
|
20032
|
+
<ng-container [ngSwitch]="isEdited()">
|
|
20033
|
+
<ng-container *ngSwitchCase="false">
|
|
20034
|
+
<ng-container *ngIf="!showLoading; else loading">
|
|
20035
|
+
<ng-template *ngIf="column.templateRef"
|
|
20036
|
+
[ngTemplateOutlet]="column.templateRef"
|
|
20037
|
+
[ngTemplateOutletContext]="getTemplateContext()">
|
|
19520
20038
|
</ng-template>
|
|
20039
|
+
<ng-container *ngIf="isSpanColumn">
|
|
20040
|
+
<ng-container *ngFor="let childColumn of children">
|
|
20041
|
+
{{ dataItem | valueOf: childColumn.field: childColumn.format}}
|
|
20042
|
+
</ng-container>
|
|
20043
|
+
</ng-container>
|
|
20044
|
+
<ng-container *ngIf="isBoundColumn()">{{ dataItem | valueOf: column.field: column.format}}</ng-container>
|
|
20045
|
+
<ng-container *ngIf="isCheckboxColumn() && !isNew">
|
|
20046
|
+
<ng-container *ngIf="isRowSelectable(); else nonSelectableRow">
|
|
20047
|
+
<kendo-checkbox
|
|
20048
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
20049
|
+
[attr.id]="selectionCheckboxId"
|
|
20050
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
20051
|
+
[title]="selectionCheckboxLabel">
|
|
20052
|
+
</kendo-checkbox>
|
|
20053
|
+
</ng-container>
|
|
20054
|
+
<ng-template #nonSelectableRow>
|
|
20055
|
+
<kendo-checkbox *ngIf="column.showDisabledCheckbox"
|
|
20056
|
+
[kendoGridSelectionCheckbox]="rowIndex"
|
|
20057
|
+
[attr.id]="selectionCheckboxId"
|
|
20058
|
+
[inputAttributes]="{'aria-label': selectionCheckboxLabel}"
|
|
20059
|
+
[title]="selectionCheckboxLabel"
|
|
20060
|
+
[disabled]="true"
|
|
20061
|
+
></kendo-checkbox>
|
|
20062
|
+
</ng-template>
|
|
20063
|
+
</ng-container>
|
|
20064
|
+
<ng-container *ngIf="isRowReorderColumn() && !isNew">
|
|
20065
|
+
<kendo-icon-wrapper *ngIf="!column.dragHandleTemplate?.first"
|
|
20066
|
+
name="reorder"
|
|
20067
|
+
[svgIcon]="reorderIcon">
|
|
20068
|
+
</kendo-icon-wrapper>
|
|
20069
|
+
<ng-template *ngIf="column.dragHandleTemplate?.first"
|
|
20070
|
+
[ngTemplateOutlet]="column.rowDragHandleTemplateRef"
|
|
20071
|
+
[ngTemplateOutletContext]="rowReorderTemplateContext">
|
|
20072
|
+
</ng-template>
|
|
20073
|
+
</ng-container>
|
|
19521
20074
|
</ng-container>
|
|
19522
|
-
<ng-
|
|
19523
|
-
<
|
|
19524
|
-
|
|
19525
|
-
[
|
|
19526
|
-
|
|
19527
|
-
<ng-template *ngIf="column.dragHandleTemplate?.first"
|
|
19528
|
-
[ngTemplateOutlet]="column.rowDragHandleTemplateRef"
|
|
19529
|
-
[ngTemplateOutletContext]="rowReorderTemplateContext">
|
|
20075
|
+
<ng-template #loading>
|
|
20076
|
+
<ng-template
|
|
20077
|
+
*ngIf="loadingTemplate"
|
|
20078
|
+
[ngTemplateOutlet]="loadingTemplate"
|
|
20079
|
+
[ngTemplateOutletContext]="{$implicit: column}">
|
|
19530
20080
|
</ng-template>
|
|
19531
|
-
|
|
20081
|
+
<div *ngIf="!loadingTemplate" class="k-skeleton-text k-skeleton"></div>
|
|
20082
|
+
</ng-template>
|
|
19532
20083
|
</ng-container>
|
|
19533
|
-
<ng-
|
|
20084
|
+
<ng-container *ngSwitchCase="true">
|
|
19534
20085
|
<ng-template
|
|
19535
|
-
*ngIf="
|
|
19536
|
-
[ngTemplateOutlet]="
|
|
19537
|
-
[ngTemplateOutletContext]="
|
|
20086
|
+
*ngIf="column.editTemplateRef"
|
|
20087
|
+
[ngTemplateOutlet]="column.editTemplateRef"
|
|
20088
|
+
[ngTemplateOutletContext]="getEditTemplateContext()">
|
|
19538
20089
|
</ng-template>
|
|
19539
|
-
<
|
|
19540
|
-
|
|
19541
|
-
|
|
19542
|
-
|
|
19543
|
-
|
|
19544
|
-
|
|
19545
|
-
|
|
19546
|
-
|
|
19547
|
-
|
|
19548
|
-
|
|
19549
|
-
|
|
19550
|
-
|
|
19551
|
-
|
|
19552
|
-
|
|
19553
|
-
|
|
19554
|
-
|
|
19555
|
-
|
|
19556
|
-
|
|
19557
|
-
|
|
19558
|
-
|
|
19559
|
-
|
|
19560
|
-
|
|
19561
|
-
|
|
19562
|
-
|
|
19563
|
-
|
|
19564
|
-
|
|
19565
|
-
|
|
19566
|
-
kendoGridFocusable
|
|
19567
|
-
></kendo-checkbox>
|
|
19568
|
-
|
|
19569
|
-
<kendo-textbox
|
|
19570
|
-
*ngSwitchDefault
|
|
19571
|
-
[formControl]="$any(formGroup.get(column.field))"
|
|
19572
|
-
kendoGridFocusable
|
|
19573
|
-
></kendo-textbox>
|
|
20090
|
+
<ng-container [ngSwitch]="column.editor" *ngIf="!column.editTemplateRef">
|
|
20091
|
+
<kendo-numerictextbox
|
|
20092
|
+
*ngSwitchCase="'numeric'"
|
|
20093
|
+
[format]="format"
|
|
20094
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
20095
|
+
kendoGridFocusable
|
|
20096
|
+
></kendo-numerictextbox>
|
|
20097
|
+
|
|
20098
|
+
<kendo-datepicker
|
|
20099
|
+
*ngSwitchCase="'date'"
|
|
20100
|
+
[format]="format"
|
|
20101
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
20102
|
+
kendoGridFocusable
|
|
20103
|
+
></kendo-datepicker>
|
|
20104
|
+
|
|
20105
|
+
<kendo-checkbox
|
|
20106
|
+
*ngSwitchCase="'boolean'"
|
|
20107
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
20108
|
+
kendoGridFocusable
|
|
20109
|
+
></kendo-checkbox>
|
|
20110
|
+
|
|
20111
|
+
<kendo-textbox
|
|
20112
|
+
*ngSwitchDefault
|
|
20113
|
+
[formControl]="$any(formGroup.get(column.field))"
|
|
20114
|
+
kendoGridFocusable
|
|
20115
|
+
></kendo-textbox>
|
|
20116
|
+
</ng-container>
|
|
19574
20117
|
</ng-container>
|
|
19575
20118
|
</ng-container>
|
|
19576
20119
|
</ng-container>
|
|
19577
20120
|
`,
|
|
19578
20121
|
standalone: true,
|
|
19579
|
-
imports: [NgSwitch, NgSwitchCase, NgIf, NgTemplateOutlet, NgFor, FocusableDirective, SelectionCheckboxDirective,
|
|
19580
|
-
IconWrapperComponent, NumericTextBoxComponent, DatePickerComponent, NgSwitchDefault, FieldAccessorPipe, ReactiveFormsModule, CheckBoxComponent, TextBoxComponent]
|
|
20122
|
+
imports: [NgSwitch, NgSwitchCase, NgIf, NgTemplateOutlet, NgFor, FocusableDirective, SelectionCheckboxDirective, TemplateContextDirective,
|
|
20123
|
+
IconWrapperComponent, NumericTextBoxComponent, DatePickerComponent, NgSwitchDefault, FieldAccessorPipe, ReactiveFormsModule, CheckBoxComponent, TextBoxComponent, NgClass, NgStyle, ButtonComponent]
|
|
19581
20124
|
}]
|
|
19582
|
-
}], ctorParameters: function () { return [{ type: EditService }, { type: IdService }, { type: ContextService }, { type: undefined, decorators: [{
|
|
20125
|
+
}], ctorParameters: function () { return [{ type: EditService }, { type: IdService }, { type: ContextService }, { type: DetailsService }, { type: i1$2.LocalizationService }, { type: undefined, decorators: [{
|
|
19583
20126
|
type: Optional
|
|
19584
20127
|
}, {
|
|
19585
20128
|
type: Inject,
|
|
@@ -19598,6 +20141,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19598
20141
|
args: ['attr.aria-label']
|
|
19599
20142
|
}], column: [{
|
|
19600
20143
|
type: Input
|
|
20144
|
+
}], columns: [{
|
|
20145
|
+
type: Input
|
|
19601
20146
|
}], columnIndex: [{
|
|
19602
20147
|
type: Input
|
|
19603
20148
|
}], isNew: [{
|
|
@@ -19608,6 +20153,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
19608
20153
|
type: Input
|
|
19609
20154
|
}], loadingTemplate: [{
|
|
19610
20155
|
type: Input
|
|
20156
|
+
}], detailTemplate: [{
|
|
20157
|
+
type: Input
|
|
20158
|
+
}], item: [{
|
|
20159
|
+
type: Input
|
|
19611
20160
|
}], rowIndex: [{
|
|
19612
20161
|
type: Input
|
|
19613
20162
|
}], dataItem: [{
|
|
@@ -19705,8 +20254,8 @@ class TableBodyComponent {
|
|
|
19705
20254
|
allColumnsCount += column.colspan - 1;
|
|
19706
20255
|
}
|
|
19707
20256
|
});
|
|
19708
|
-
const contentColumnsCount = this.totalColumnsCount - this.lockedColumnsCount - allColumnsCount;
|
|
19709
|
-
const headerFooterColumnsCount = this.totalColumnsCount - this.lockedColumnsCount - allColumns.length;
|
|
20257
|
+
const contentColumnsCount = this.totalColumnsCount - (this.isStackedMode ? 0 : this.lockedColumnsCount) - allColumnsCount;
|
|
20258
|
+
const headerFooterColumnsCount = this.totalColumnsCount - (this.isStackedMode ? 0 : this.lockedColumnsCount) - allColumns.length;
|
|
19710
20259
|
return item && item.type === 'data' ? contentColumnsCount : headerFooterColumnsCount;
|
|
19711
20260
|
}
|
|
19712
20261
|
isAriaSelected(item, column) {
|
|
@@ -19777,10 +20326,10 @@ class TableBodyComponent {
|
|
|
19777
20326
|
}
|
|
19778
20327
|
logicalRowIndex(rowIndex) {
|
|
19779
20328
|
let pos = this.skip + rowIndex;
|
|
19780
|
-
if (this.hasDetailTemplate) {
|
|
20329
|
+
if (this.hasDetailTemplate && !this.isStackedMode) {
|
|
19781
20330
|
pos *= 2;
|
|
19782
20331
|
}
|
|
19783
|
-
const absoluteRowIndex = 1 + pos;
|
|
20332
|
+
const absoluteRowIndex = this.isStackedMode ? pos : 1 + pos;
|
|
19784
20333
|
const addRowOffset = this.editService.hasNewItem ? 1 : 0;
|
|
19785
20334
|
const filterRowOffset = hasFilterRow(this.filterable) ? 1 : 0;
|
|
19786
20335
|
const headerRowCount = this.columnInfoService.totalLevels + filterRowOffset + addRowOffset;
|
|
@@ -19843,6 +20392,9 @@ class TableBodyComponent {
|
|
|
19843
20392
|
isEditingRow(index) {
|
|
19844
20393
|
return this.editService.isEditing() && this.editService.hasEdited(index);
|
|
19845
20394
|
}
|
|
20395
|
+
get isStackedMode() {
|
|
20396
|
+
return this.ctx.grid?.isStacked;
|
|
20397
|
+
}
|
|
19846
20398
|
get hasGroupHeaderColumn() {
|
|
19847
20399
|
return this.columnsContainer.hasGroupHeaderColumn;
|
|
19848
20400
|
}
|
|
@@ -19886,7 +20438,8 @@ class TableBodyComponent {
|
|
|
19886
20438
|
if (!selectionEnabled) {
|
|
19887
20439
|
return;
|
|
19888
20440
|
}
|
|
19889
|
-
const
|
|
20441
|
+
const cellComparer = this.isStackedMode ? closest(target, matchesNodeName('td')) : closest(target, (el) => { matchesNodeName('td') && hasClasses(el, 'k-grid-stack-content'); });
|
|
20442
|
+
const isCellFocused = cellComparer?.classList.contains('k-focus');
|
|
19890
20443
|
const isShiftOrCtrlPressed = eventArg.shiftKey || eventArg.ctrlKey || eventArg.metaKey;
|
|
19891
20444
|
if (isCellFocused && !isShiftOrCtrlPressed) {
|
|
19892
20445
|
eventArg.preventDefault();
|
|
@@ -19898,7 +20451,7 @@ class TableBodyComponent {
|
|
|
19898
20451
|
if (!gridTbody) {
|
|
19899
20452
|
return;
|
|
19900
20453
|
}
|
|
19901
|
-
|
|
20454
|
+
let cell = closest(currentTarget, (el) => {
|
|
19902
20455
|
if (!matchesNodeName('td')(el)) {
|
|
19903
20456
|
return false;
|
|
19904
20457
|
}
|
|
@@ -19916,11 +20469,30 @@ class TableBodyComponent {
|
|
|
19916
20469
|
if (cell && !hasClasses(cell, NON_DATA_CELL_CLASSES) &&
|
|
19917
20470
|
!hasClasses(row, NON_DATA_ROW_CLASSES) &&
|
|
19918
20471
|
body === element && !gridElement) {
|
|
20472
|
+
const isCellTarget = hasClasses(currentTarget, 'k-grid-stack-cell');
|
|
20473
|
+
if (this.isStackedMode) {
|
|
20474
|
+
cell = closest(currentTarget, (el) => {
|
|
20475
|
+
if (!closestInScope(target, matchesClasses('k-grid-stack-row'), cell)) {
|
|
20476
|
+
return false;
|
|
20477
|
+
}
|
|
20478
|
+
const parentRow = isCellTarget ? currentTarget : el.parentElement;
|
|
20479
|
+
return (parentRow && hasClasses(parentRow, 'k-grid-stack-cell'));
|
|
20480
|
+
});
|
|
20481
|
+
if (isCellTarget) {
|
|
20482
|
+
cell = findElement(currentTarget, (el) => hasClasses(el, 'k-grid-stack-content'));
|
|
20483
|
+
}
|
|
20484
|
+
if (cell) {
|
|
20485
|
+
row = cell.parentElement.parentElement;
|
|
20486
|
+
}
|
|
20487
|
+
}
|
|
19919
20488
|
this.editService.preventCellClose();
|
|
19920
|
-
const focusable = target !== cell && isFocusableWithTabKey(target, false);
|
|
19921
|
-
|
|
19922
|
-
|
|
20489
|
+
const focusable = (!isCellTarget && target !== cell) && isFocusableWithTabKey(target, false);
|
|
20490
|
+
const ignoreContainer = isCellTarget ? true : !closestInScope(target, matchesClasses(IGNORE_CONTAINER_CLASSES), cell);
|
|
20491
|
+
if (!focusable && !matchesNodeName('label')(target) && !hasClasses(target, IGNORE_TARGET_CLASSSES) && ignoreContainer) {
|
|
19923
20492
|
const args = this.cellClickArgs(cell, row, eventArg);
|
|
20493
|
+
if (!args) {
|
|
20494
|
+
return;
|
|
20495
|
+
}
|
|
19924
20496
|
if (selectionEnabled && !this.isRowSelectable({ index: args.rowIndex, dataItem: args.dataItem })) {
|
|
19925
20497
|
return;
|
|
19926
20498
|
}
|
|
@@ -19951,15 +20523,19 @@ class TableBodyComponent {
|
|
|
19951
20523
|
}));
|
|
19952
20524
|
}
|
|
19953
20525
|
cellKeydownHandler(args) {
|
|
19954
|
-
if (args.keyCode === Keys.Enter || args.keyCode === Keys.Space) {
|
|
20526
|
+
if (args.keyCode === Keys.Enter || args.keyCode === Keys.Space || (this.navigationService.tableCellEntered && args.keyCode === Keys.F2)) {
|
|
19955
20527
|
this.clickHandler(args);
|
|
19956
20528
|
}
|
|
19957
20529
|
}
|
|
19958
20530
|
cellClickArgs(cell, row, eventArg) {
|
|
19959
|
-
const
|
|
20531
|
+
const cells = this.isStackedMode ? row.querySelectorAll('.k-grid-stack-cell > .k-grid-stack-content') : row.cells;
|
|
20532
|
+
const index = columnCellIndex(cell, cells);
|
|
20533
|
+
if (!isPresent(index)) {
|
|
20534
|
+
return;
|
|
20535
|
+
}
|
|
19960
20536
|
const column = this.columns.toArray()[index];
|
|
19961
|
-
const columnIndex = this.lockedColumnsCount + index;
|
|
19962
|
-
let rowIndex = row.getAttribute('data-kendo-grid-item-index');
|
|
20537
|
+
const columnIndex = (this.isStackedMode ? 0 : this.lockedColumnsCount) + index;
|
|
20538
|
+
let rowIndex = (this.isStackedMode ? row.parentElement.parentElement : row).getAttribute('data-kendo-grid-item-index');
|
|
19963
20539
|
rowIndex = rowIndex ? parseInt(rowIndex, 10) : -1;
|
|
19964
20540
|
const dataItem = rowIndex === -1 ? this.editService.newDataItem : this.rowsToRender.find(item => +item.index === rowIndex && item.type === 'data')?.data;
|
|
19965
20541
|
const isEditedColumn = this.editService.isEditedColumn(rowIndex, column);
|
|
@@ -20012,7 +20588,7 @@ class TableBodyComponent {
|
|
|
20012
20588
|
<tr class="k-grid-add-row k-grid-edit-row k-master-row"
|
|
20013
20589
|
kendoGridLogicalRow
|
|
20014
20590
|
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20015
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20591
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20016
20592
|
[logicalCellsCount]="columns.length"
|
|
20017
20593
|
[logicalSlaveCellsCount]="unlockedColumnsCount()"
|
|
20018
20594
|
[totalColumns]="totalColumns">
|
|
@@ -20020,32 +20596,48 @@ class TableBodyComponent {
|
|
|
20020
20596
|
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups" role="presentation"></td>
|
|
20021
20597
|
</ng-container>
|
|
20022
20598
|
<td class="k-hierarchy-cell k-table-td"
|
|
20023
|
-
*ngIf="detailTemplate?.templateRef"
|
|
20599
|
+
*ngIf="detailTemplate?.templateRef && !isStackedMode"
|
|
20024
20600
|
kendoGridLogicalCell
|
|
20025
20601
|
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20026
20602
|
[logicalColIndex]="0"
|
|
20027
20603
|
aria-selected="false"
|
|
20028
20604
|
>
|
|
20029
20605
|
</td>
|
|
20030
|
-
<
|
|
20031
|
-
|
|
20032
|
-
|
|
20033
|
-
|
|
20034
|
-
|
|
20035
|
-
|
|
20036
|
-
|
|
20037
|
-
|
|
20038
|
-
|
|
20039
|
-
|
|
20040
|
-
|
|
20041
|
-
|
|
20042
|
-
|
|
20043
|
-
|
|
20044
|
-
|
|
20045
|
-
|
|
20046
|
-
|
|
20047
|
-
|
|
20048
|
-
|
|
20606
|
+
<ng-container *ngIf="isStackedMode; else columnsTemplate">
|
|
20607
|
+
<td *ngFor="let item of rowsToRender; trackBy: trackByWrapper; let rowIndex = index;"
|
|
20608
|
+
class="k-table-td"
|
|
20609
|
+
kendoGridCell
|
|
20610
|
+
[rowIndex]="-1"
|
|
20611
|
+
[columnIndex]="0"
|
|
20612
|
+
[isNew]="true"
|
|
20613
|
+
[columns]="allColumns"
|
|
20614
|
+
[dataItem]="newDataItem"
|
|
20615
|
+
kendoGridLogicalCell
|
|
20616
|
+
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20617
|
+
[logicalColIndex]="0">
|
|
20618
|
+
</td>
|
|
20619
|
+
</ng-container>
|
|
20620
|
+
<ng-template #columnsTemplate>
|
|
20621
|
+
<td *ngFor="let column of columns; let columnIndex = index; trackBy: trackByColumns;"
|
|
20622
|
+
class="k-table-td"
|
|
20623
|
+
kendoGridCell
|
|
20624
|
+
[rowIndex]="-1"
|
|
20625
|
+
[columnIndex]="lockedColumnsCount + columnIndex"
|
|
20626
|
+
[isNew]="true"
|
|
20627
|
+
[column]="column"
|
|
20628
|
+
[dataItem]="newDataItem"
|
|
20629
|
+
[class.k-grid-content-sticky]="column.sticky"
|
|
20630
|
+
[ngClass]="column.cssClass"
|
|
20631
|
+
[style.left]="column.sticky ? '0' : undefined"
|
|
20632
|
+
[ngStyle]="column.sticky ? addStickyColumnStyles(column) : column.style"
|
|
20633
|
+
[attr.colspan]="column.colspan"
|
|
20634
|
+
[attr.role]="column.tableCellsRole"
|
|
20635
|
+
kendoGridLogicalCell
|
|
20636
|
+
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20637
|
+
[logicalColIndex]="logicalColIndex(column)"
|
|
20638
|
+
[colSpan]="column.colspan">
|
|
20639
|
+
</td>
|
|
20640
|
+
</ng-template>
|
|
20049
20641
|
</tr>
|
|
20050
20642
|
</ng-container>
|
|
20051
20643
|
<tr *ngIf="!rowsToRender?.length" class="k-grid-norecords" role="row">
|
|
@@ -20075,7 +20667,7 @@ class TableBodyComponent {
|
|
|
20075
20667
|
[totalColumnsCount]="totalColumnsCount"
|
|
20076
20668
|
kendoGridLogicalRow
|
|
20077
20669
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20078
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20670
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20079
20671
|
[totalColumns]="totalColumns"
|
|
20080
20672
|
[logicalCellsCount]="columns.length"
|
|
20081
20673
|
[logicalSlaveCellsCount]="groupHeaderSlaveCellsCount">
|
|
@@ -20085,7 +20677,7 @@ class TableBodyComponent {
|
|
|
20085
20677
|
[dataRowIndex]="$any(item).index"
|
|
20086
20678
|
[dataItem]="item.data"
|
|
20087
20679
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20088
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20680
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20089
20681
|
[totalColumns]="totalColumns"
|
|
20090
20682
|
[logicalCellsCount]="columns.length"
|
|
20091
20683
|
[logicalSlaveCellsCount]="unlockedColumnsCount(item)"
|
|
@@ -20093,9 +20685,9 @@ class TableBodyComponent {
|
|
|
20093
20685
|
[class.k-grid-row-sticky]="rowSticky ? rowSticky({ dataItem: item.data, index: $any(item).index }) : false"
|
|
20094
20686
|
[ngClass]="rowClass({ dataItem: item.data, index: $any(item).index })"
|
|
20095
20687
|
[class.k-master-row]="true"
|
|
20096
|
-
[class.k-expanded]="item.isExpanded"
|
|
20688
|
+
[class.k-expanded]="item.isExpanded && !isStackedMode"
|
|
20097
20689
|
[class.k-grid-edit-row]="isEditingRow($any(item).index)"
|
|
20098
|
-
[attr.aria-selected]="lockedColumnsCount < 1 ? isSelectable({ dataItem: item.data, index: $any(item).index }) && isRowSelected(item) : undefined"
|
|
20690
|
+
[attr.aria-selected]="(lockedColumnsCount < 1 || isStackedMode) ? isSelectable({ dataItem: item.data, index: $any(item).index }) && isRowSelected(item) : undefined"
|
|
20099
20691
|
[attr.data-kendo-grid-item-index]="$any(item).index"
|
|
20100
20692
|
[class.k-selected]="isSelectable({ dataItem: item.data, index: $any(item).index }) && isRowSelected(item)"
|
|
20101
20693
|
[class.k-highlighted]="item.isHighlighted">
|
|
@@ -20103,7 +20695,7 @@ class TableBodyComponent {
|
|
|
20103
20695
|
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups" role="presentation"></td>
|
|
20104
20696
|
</ng-container>
|
|
20105
20697
|
<td class="k-hierarchy-cell k-table-td"
|
|
20106
|
-
*ngIf="detailTemplate?.templateRef"
|
|
20698
|
+
*ngIf="detailTemplate?.templateRef && !isStackedMode"
|
|
20107
20699
|
kendoGridLogicalCell
|
|
20108
20700
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20109
20701
|
[logicalColIndex]="0"
|
|
@@ -20122,18 +20714,42 @@ class TableBodyComponent {
|
|
|
20122
20714
|
[svgIcon]="detailButtonSvgIcon(item)"></kendo-icon-wrapper>
|
|
20123
20715
|
</a>
|
|
20124
20716
|
</td>
|
|
20125
|
-
<ng-container *
|
|
20126
|
-
<td
|
|
20127
|
-
|
|
20717
|
+
<ng-container *ngIf="isStackedMode; else columnsTemplate">
|
|
20718
|
+
<td kendoGridCell
|
|
20719
|
+
[rowIndex]="$any(item).index"
|
|
20720
|
+
[detailTemplate]="detailTemplate"
|
|
20721
|
+
[item]="item"
|
|
20722
|
+
[columnIndex]="0"
|
|
20723
|
+
[attr.data-kendo-grid-column-index]="0"
|
|
20724
|
+
[columns]="columns"
|
|
20725
|
+
[dataItem]="item.data"
|
|
20726
|
+
[isLoading]="isLoading"
|
|
20727
|
+
[isVirtual]="isVirtual"
|
|
20728
|
+
[loadingTemplate]="cellLoadingTemplate"
|
|
20729
|
+
kendoGridLogicalCell
|
|
20730
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20731
|
+
[logicalColIndex]="0"
|
|
20732
|
+
[dataRowIndex]="$any(item).index"
|
|
20733
|
+
[dataItem]="item.data"
|
|
20734
|
+
[colIndex]="0"
|
|
20735
|
+
class="k-table-td"
|
|
20736
|
+
[class.k-touch-action-none]="isSelectable({ dataItem: item.data, index: $any(item).index }) && $any(selectable).drag">
|
|
20737
|
+
</td>
|
|
20738
|
+
</ng-container>
|
|
20739
|
+
<ng-template #columnsTemplate>
|
|
20740
|
+
<ng-container *ngFor="let column of columns; let columnIndex = index; trackBy: trackByColumns;">
|
|
20741
|
+
<td *ngIf="!item.cells?.[lockedColumnsCount + columnIndex]?.skip"
|
|
20742
|
+
kendoGridCell
|
|
20128
20743
|
[rowIndex]="$any(item).index"
|
|
20129
20744
|
[columnIndex]="lockedColumnsCount + columnIndex"
|
|
20130
20745
|
[attr.data-kendo-grid-column-index]="lockedColumnsCount + columnIndex"
|
|
20131
20746
|
[column]="column"
|
|
20747
|
+
[columns]="allColumns"
|
|
20132
20748
|
[dataItem]="item.data"
|
|
20133
20749
|
[isLoading]="isLoading"
|
|
20134
20750
|
[isVirtual]="isVirtual"
|
|
20135
20751
|
[loadingTemplate]="cellLoadingTemplate"
|
|
20136
|
-
|
|
20752
|
+
kendoGridLogicalCell
|
|
20137
20753
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20138
20754
|
[logicalColIndex]="logicalColIndex(column)"
|
|
20139
20755
|
[dataRowIndex]="$any(item).index"
|
|
@@ -20146,50 +20762,75 @@ class TableBodyComponent {
|
|
|
20146
20762
|
[attr.aria-selected]="lockedColumnsCount < 1 && isSelectable({ dataItem: item.data, index: $any(item).index }) ? isAriaSelected(item, column) : undefined"
|
|
20147
20763
|
[class.k-grid-content-sticky]="column.sticky"
|
|
20148
20764
|
[class.k-touch-action-none]="isSelectable({ dataItem: item.data, index: $any(item).index }) && $any(selectable).drag"
|
|
20149
|
-
|
|
20150
|
-
|
|
20151
|
-
|
|
20152
|
-
|
|
20153
|
-
|
|
20154
|
-
|
|
20155
|
-
|
|
20156
|
-
|
|
20765
|
+
[ngClass]="column.cssClass"
|
|
20766
|
+
[class.k-grid-edit-cell]="isEditingCell($any(item).index, column)"
|
|
20767
|
+
[ngStyle]="column.sticky ? addStickyColumnStyles(column) : column.style"
|
|
20768
|
+
[attr.colspan]="column.colspan"
|
|
20769
|
+
[class.k-selected]="isSelectable && cellSelectionService.isCellSelected(item, column)"
|
|
20770
|
+
[class.k-highlighted]="item.cells[lockedColumnsCount + columnIndex]?.isHighlighted">
|
|
20771
|
+
</td>
|
|
20772
|
+
</ng-container>
|
|
20773
|
+
</ng-template>
|
|
20157
20774
|
</tr>
|
|
20158
20775
|
<tr *ngIf="item.showDetailRow"
|
|
20159
20776
|
class="k-detail-row"
|
|
20160
20777
|
kendoGridLogicalRow
|
|
20161
20778
|
[dataRowIndex]="$any(item).index"
|
|
20162
20779
|
[dataItem]="item.data"
|
|
20163
|
-
[logicalRowIndex]="logicalRowIndex(rowIndex) + 1"
|
|
20780
|
+
[logicalRowIndex]="isStackedMode ? logicalRowIndex(rowIndex) : logicalRowIndex(rowIndex) + 1"
|
|
20164
20781
|
[logicalSlaveRow]="false"
|
|
20165
20782
|
[logicalCellsCount]="1">
|
|
20166
|
-
|
|
20167
|
-
|
|
20168
|
-
|
|
20169
|
-
|
|
20170
|
-
|
|
20171
|
-
|
|
20172
|
-
|
|
20173
|
-
|
|
20174
|
-
|
|
20175
|
-
|
|
20176
|
-
|
|
20177
|
-
|
|
20178
|
-
|
|
20179
|
-
|
|
20180
|
-
|
|
20181
|
-
|
|
20182
|
-
|
|
20183
|
-
|
|
20184
|
-
|
|
20185
|
-
|
|
20186
|
-
|
|
20783
|
+
<ng-container *ngIf="!isStackedMode">
|
|
20784
|
+
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups"></td>
|
|
20785
|
+
<td class="k-hierarchy-cell k-table-td"></td>
|
|
20786
|
+
<td class="k-detail-cell k-table-td"
|
|
20787
|
+
[attr.colspan]="columnsSpan"
|
|
20788
|
+
kendoGridLogicalCell
|
|
20789
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex) + 1"
|
|
20790
|
+
[logicalColIndex]="0"
|
|
20791
|
+
[dataRowIndex]="$any(item).index"
|
|
20792
|
+
[dataItem]="item.data"
|
|
20793
|
+
[colIndex]="0"
|
|
20794
|
+
[colSpan]="allColumnsSpan + 1"
|
|
20795
|
+
role="gridcell" aria-selected="false">
|
|
20796
|
+
<ng-template
|
|
20797
|
+
[ngTemplateOutlet]="detailTemplate.templateRef"
|
|
20798
|
+
[ngTemplateOutletContext]="{
|
|
20799
|
+
dataItem: item.data,
|
|
20800
|
+
rowIndex: $any(item).index,
|
|
20801
|
+
$implicit: item.data
|
|
20802
|
+
}">
|
|
20803
|
+
</ng-template>
|
|
20804
|
+
</td>
|
|
20805
|
+
</ng-container>
|
|
20806
|
+
<ng-container *ngIf="isStackedMode">
|
|
20807
|
+
<td class="k-detail-cell k-table-td"
|
|
20808
|
+
[attr.colspan]="columnsSpan"
|
|
20809
|
+
kendoGridLogicalCell
|
|
20810
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20811
|
+
[logicalColIndex]="0"
|
|
20812
|
+
[dataRowIndex]="$any(item).index"
|
|
20813
|
+
[dataItem]="item.data"
|
|
20814
|
+
[colIndex]="0"
|
|
20815
|
+
[colSpan]="allColumnsSpan + 1"
|
|
20816
|
+
role="gridcell"
|
|
20817
|
+
aria-selected="false">
|
|
20818
|
+
<ng-template
|
|
20819
|
+
[ngTemplateOutlet]="detailTemplate.templateRef"
|
|
20820
|
+
[ngTemplateOutletContext]="{
|
|
20821
|
+
dataItem: item.data,
|
|
20822
|
+
rowIndex: $any(item).index,
|
|
20823
|
+
$implicit: item.data
|
|
20824
|
+
}">
|
|
20825
|
+
</ng-template>
|
|
20826
|
+
</td>
|
|
20827
|
+
</ng-container>
|
|
20187
20828
|
</tr>
|
|
20188
20829
|
<tr *ngIf="item.type === 'footer'"
|
|
20189
20830
|
class="k-group-footer"
|
|
20190
20831
|
kendoGridLogicalRow
|
|
20191
20832
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20192
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20833
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20193
20834
|
[totalColumns]="totalColumns"
|
|
20194
20835
|
[logicalCellsCount]="columns.length"
|
|
20195
20836
|
[logicalSlaveCellsCount]="unlockedColumnsCount(item)">
|
|
@@ -20197,33 +20838,61 @@ class TableBodyComponent {
|
|
|
20197
20838
|
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups"></td>
|
|
20198
20839
|
</ng-container>
|
|
20199
20840
|
<td class="k-hierarchy-cell k-table-td"
|
|
20200
|
-
*ngIf="detailTemplate?.templateRef"
|
|
20841
|
+
*ngIf="detailTemplate?.templateRef && !isStackedMode"
|
|
20201
20842
|
kendoGridLogicalCell
|
|
20202
20843
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20203
20844
|
[logicalColIndex]="0"
|
|
20204
20845
|
aria-selected="false">
|
|
20205
20846
|
</td>
|
|
20206
|
-
|
|
20847
|
+
|
|
20848
|
+
<ng-container *ngIf="!isStackedMode">
|
|
20849
|
+
<td kendoGridLogicalCell
|
|
20850
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20851
|
+
[logicalColIndex]="logicalColIndex(column)"
|
|
20852
|
+
[attr.data-skip]="skipGroupDecoration"
|
|
20853
|
+
class="k-table-td"
|
|
20854
|
+
*ngFor="let column of footerColumns; let columnIndex = index; trackBy: trackByColumns;">
|
|
20855
|
+
<ng-template
|
|
20856
|
+
[templateContext]="{
|
|
20857
|
+
templateRef: $any(column).groupFooterTemplateRef,
|
|
20858
|
+
group: $any(item.data),
|
|
20859
|
+
field: $any(column).field,
|
|
20860
|
+
column: column,
|
|
20861
|
+
aggregates: $any(item.data)?.aggregates,
|
|
20862
|
+
$implicit: $any(item.data)?.aggregates
|
|
20863
|
+
}">
|
|
20864
|
+
</ng-template>
|
|
20865
|
+
</td>
|
|
20866
|
+
</ng-container>
|
|
20867
|
+
|
|
20868
|
+
<ng-container *ngIf="isStackedMode">
|
|
20869
|
+
<td kendoGridLogicalCell
|
|
20207
20870
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20208
|
-
[logicalColIndex]="
|
|
20209
|
-
|
|
20210
|
-
|
|
20211
|
-
|
|
20212
|
-
|
|
20213
|
-
|
|
20214
|
-
|
|
20215
|
-
|
|
20216
|
-
|
|
20217
|
-
|
|
20218
|
-
|
|
20219
|
-
|
|
20220
|
-
|
|
20221
|
-
|
|
20222
|
-
|
|
20871
|
+
[logicalColIndex]="hasDetailTemplate ? 1 : 0"
|
|
20872
|
+
[attr.data-skip]="skipGroupDecoration"
|
|
20873
|
+
class="k-table-td">
|
|
20874
|
+
<div class="k-grid-column-template">
|
|
20875
|
+
<ng-container *ngFor="let col of footerColumns">
|
|
20876
|
+
<div class="k-column-template-item" *ngIf="$any(col).groupFooterTemplateRef">
|
|
20877
|
+
<ng-template
|
|
20878
|
+
[templateContext]="{
|
|
20879
|
+
templateRef: $any(col).groupFooterTemplateRef,
|
|
20880
|
+
group: $any(item.data),
|
|
20881
|
+
field: $any(col).field,
|
|
20882
|
+
column: col,
|
|
20883
|
+
aggregates: $any(item.data)?.aggregates,
|
|
20884
|
+
$implicit: $any(item.data)?.aggregates
|
|
20885
|
+
}">
|
|
20886
|
+
</ng-template>
|
|
20887
|
+
</div>
|
|
20888
|
+
</ng-container>
|
|
20889
|
+
</div>
|
|
20890
|
+
</td>
|
|
20891
|
+
</ng-container>
|
|
20223
20892
|
</tr>
|
|
20224
20893
|
</ng-container>
|
|
20225
20894
|
<kendo-resize-sensor *ngIf="rowSticky" (resize)="resizeHandler()"></kendo-resize-sensor>
|
|
20226
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem", "totalColumns"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { kind: "component", type: CellComponent, selector: "[kendoGridCell]", inputs: ["column", "columnIndex", "isNew", "isLoading", "isVirtual", "loadingTemplate", "rowIndex", "dataItem"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: GroupHeaderComponent, selector: "[kendoGridGroupHeader]", inputs: ["rowIndex", "logicalRowIndex", "item", "skipGroupDecoration", "hasDetails", "totalColumnsCount", "hasGroupHeaderColumn", "groupHeaderColumns", "columns", "groups"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
|
|
20895
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem", "totalColumns"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { kind: "component", type: CellComponent, selector: "[kendoGridCell]", inputs: ["column", "columns", "columnIndex", "isNew", "isLoading", "isVirtual", "loadingTemplate", "detailTemplate", "item", "rowIndex", "dataItem"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: GroupHeaderComponent, selector: "[kendoGridGroupHeader]", inputs: ["rowIndex", "logicalRowIndex", "item", "skipGroupDecoration", "hasDetails", "totalColumnsCount", "hasGroupHeaderColumn", "groupHeaderColumns", "columns", "groups"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
|
|
20227
20896
|
}
|
|
20228
20897
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableBodyComponent, decorators: [{
|
|
20229
20898
|
type: Component,
|
|
@@ -20234,7 +20903,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20234
20903
|
<tr class="k-grid-add-row k-grid-edit-row k-master-row"
|
|
20235
20904
|
kendoGridLogicalRow
|
|
20236
20905
|
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20237
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20906
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20238
20907
|
[logicalCellsCount]="columns.length"
|
|
20239
20908
|
[logicalSlaveCellsCount]="unlockedColumnsCount()"
|
|
20240
20909
|
[totalColumns]="totalColumns">
|
|
@@ -20242,32 +20911,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20242
20911
|
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups" role="presentation"></td>
|
|
20243
20912
|
</ng-container>
|
|
20244
20913
|
<td class="k-hierarchy-cell k-table-td"
|
|
20245
|
-
*ngIf="detailTemplate?.templateRef"
|
|
20914
|
+
*ngIf="detailTemplate?.templateRef && !isStackedMode"
|
|
20246
20915
|
kendoGridLogicalCell
|
|
20247
20916
|
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20248
20917
|
[logicalColIndex]="0"
|
|
20249
20918
|
aria-selected="false"
|
|
20250
20919
|
>
|
|
20251
20920
|
</td>
|
|
20252
|
-
<
|
|
20253
|
-
|
|
20254
|
-
|
|
20255
|
-
|
|
20256
|
-
|
|
20257
|
-
|
|
20258
|
-
|
|
20259
|
-
|
|
20260
|
-
|
|
20261
|
-
|
|
20262
|
-
|
|
20263
|
-
|
|
20264
|
-
|
|
20265
|
-
|
|
20266
|
-
|
|
20267
|
-
|
|
20268
|
-
|
|
20269
|
-
|
|
20270
|
-
|
|
20921
|
+
<ng-container *ngIf="isStackedMode; else columnsTemplate">
|
|
20922
|
+
<td *ngFor="let item of rowsToRender; trackBy: trackByWrapper; let rowIndex = index;"
|
|
20923
|
+
class="k-table-td"
|
|
20924
|
+
kendoGridCell
|
|
20925
|
+
[rowIndex]="-1"
|
|
20926
|
+
[columnIndex]="0"
|
|
20927
|
+
[isNew]="true"
|
|
20928
|
+
[columns]="allColumns"
|
|
20929
|
+
[dataItem]="newDataItem"
|
|
20930
|
+
kendoGridLogicalCell
|
|
20931
|
+
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20932
|
+
[logicalColIndex]="0">
|
|
20933
|
+
</td>
|
|
20934
|
+
</ng-container>
|
|
20935
|
+
<ng-template #columnsTemplate>
|
|
20936
|
+
<td *ngFor="let column of columns; let columnIndex = index; trackBy: trackByColumns;"
|
|
20937
|
+
class="k-table-td"
|
|
20938
|
+
kendoGridCell
|
|
20939
|
+
[rowIndex]="-1"
|
|
20940
|
+
[columnIndex]="lockedColumnsCount + columnIndex"
|
|
20941
|
+
[isNew]="true"
|
|
20942
|
+
[column]="column"
|
|
20943
|
+
[dataItem]="newDataItem"
|
|
20944
|
+
[class.k-grid-content-sticky]="column.sticky"
|
|
20945
|
+
[ngClass]="column.cssClass"
|
|
20946
|
+
[style.left]="column.sticky ? '0' : undefined"
|
|
20947
|
+
[ngStyle]="column.sticky ? addStickyColumnStyles(column) : column.style"
|
|
20948
|
+
[attr.colspan]="column.colspan"
|
|
20949
|
+
[attr.role]="column.tableCellsRole"
|
|
20950
|
+
kendoGridLogicalCell
|
|
20951
|
+
[logicalRowIndex]="addRowLogicalIndex()"
|
|
20952
|
+
[logicalColIndex]="logicalColIndex(column)"
|
|
20953
|
+
[colSpan]="column.colspan">
|
|
20954
|
+
</td>
|
|
20955
|
+
</ng-template>
|
|
20271
20956
|
</tr>
|
|
20272
20957
|
</ng-container>
|
|
20273
20958
|
<tr *ngIf="!rowsToRender?.length" class="k-grid-norecords" role="row">
|
|
@@ -20297,7 +20982,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20297
20982
|
[totalColumnsCount]="totalColumnsCount"
|
|
20298
20983
|
kendoGridLogicalRow
|
|
20299
20984
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20300
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20985
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20301
20986
|
[totalColumns]="totalColumns"
|
|
20302
20987
|
[logicalCellsCount]="columns.length"
|
|
20303
20988
|
[logicalSlaveCellsCount]="groupHeaderSlaveCellsCount">
|
|
@@ -20307,7 +20992,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20307
20992
|
[dataRowIndex]="$any(item).index"
|
|
20308
20993
|
[dataItem]="item.data"
|
|
20309
20994
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20310
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
20995
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20311
20996
|
[totalColumns]="totalColumns"
|
|
20312
20997
|
[logicalCellsCount]="columns.length"
|
|
20313
20998
|
[logicalSlaveCellsCount]="unlockedColumnsCount(item)"
|
|
@@ -20315,9 +21000,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20315
21000
|
[class.k-grid-row-sticky]="rowSticky ? rowSticky({ dataItem: item.data, index: $any(item).index }) : false"
|
|
20316
21001
|
[ngClass]="rowClass({ dataItem: item.data, index: $any(item).index })"
|
|
20317
21002
|
[class.k-master-row]="true"
|
|
20318
|
-
[class.k-expanded]="item.isExpanded"
|
|
21003
|
+
[class.k-expanded]="item.isExpanded && !isStackedMode"
|
|
20319
21004
|
[class.k-grid-edit-row]="isEditingRow($any(item).index)"
|
|
20320
|
-
[attr.aria-selected]="lockedColumnsCount < 1 ? isSelectable({ dataItem: item.data, index: $any(item).index }) && isRowSelected(item) : undefined"
|
|
21005
|
+
[attr.aria-selected]="(lockedColumnsCount < 1 || isStackedMode) ? isSelectable({ dataItem: item.data, index: $any(item).index }) && isRowSelected(item) : undefined"
|
|
20321
21006
|
[attr.data-kendo-grid-item-index]="$any(item).index"
|
|
20322
21007
|
[class.k-selected]="isSelectable({ dataItem: item.data, index: $any(item).index }) && isRowSelected(item)"
|
|
20323
21008
|
[class.k-highlighted]="item.isHighlighted">
|
|
@@ -20325,7 +21010,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20325
21010
|
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups" role="presentation"></td>
|
|
20326
21011
|
</ng-container>
|
|
20327
21012
|
<td class="k-hierarchy-cell k-table-td"
|
|
20328
|
-
*ngIf="detailTemplate?.templateRef"
|
|
21013
|
+
*ngIf="detailTemplate?.templateRef && !isStackedMode"
|
|
20329
21014
|
kendoGridLogicalCell
|
|
20330
21015
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20331
21016
|
[logicalColIndex]="0"
|
|
@@ -20344,18 +21029,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20344
21029
|
[svgIcon]="detailButtonSvgIcon(item)"></kendo-icon-wrapper>
|
|
20345
21030
|
</a>
|
|
20346
21031
|
</td>
|
|
20347
|
-
<ng-container *
|
|
20348
|
-
<td
|
|
20349
|
-
|
|
21032
|
+
<ng-container *ngIf="isStackedMode; else columnsTemplate">
|
|
21033
|
+
<td kendoGridCell
|
|
21034
|
+
[rowIndex]="$any(item).index"
|
|
21035
|
+
[detailTemplate]="detailTemplate"
|
|
21036
|
+
[item]="item"
|
|
21037
|
+
[columnIndex]="0"
|
|
21038
|
+
[attr.data-kendo-grid-column-index]="0"
|
|
21039
|
+
[columns]="columns"
|
|
21040
|
+
[dataItem]="item.data"
|
|
21041
|
+
[isLoading]="isLoading"
|
|
21042
|
+
[isVirtual]="isVirtual"
|
|
21043
|
+
[loadingTemplate]="cellLoadingTemplate"
|
|
21044
|
+
kendoGridLogicalCell
|
|
21045
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
21046
|
+
[logicalColIndex]="0"
|
|
21047
|
+
[dataRowIndex]="$any(item).index"
|
|
21048
|
+
[dataItem]="item.data"
|
|
21049
|
+
[colIndex]="0"
|
|
21050
|
+
class="k-table-td"
|
|
21051
|
+
[class.k-touch-action-none]="isSelectable({ dataItem: item.data, index: $any(item).index }) && $any(selectable).drag">
|
|
21052
|
+
</td>
|
|
21053
|
+
</ng-container>
|
|
21054
|
+
<ng-template #columnsTemplate>
|
|
21055
|
+
<ng-container *ngFor="let column of columns; let columnIndex = index; trackBy: trackByColumns;">
|
|
21056
|
+
<td *ngIf="!item.cells?.[lockedColumnsCount + columnIndex]?.skip"
|
|
21057
|
+
kendoGridCell
|
|
20350
21058
|
[rowIndex]="$any(item).index"
|
|
20351
21059
|
[columnIndex]="lockedColumnsCount + columnIndex"
|
|
20352
21060
|
[attr.data-kendo-grid-column-index]="lockedColumnsCount + columnIndex"
|
|
20353
21061
|
[column]="column"
|
|
21062
|
+
[columns]="allColumns"
|
|
20354
21063
|
[dataItem]="item.data"
|
|
20355
21064
|
[isLoading]="isLoading"
|
|
20356
21065
|
[isVirtual]="isVirtual"
|
|
20357
21066
|
[loadingTemplate]="cellLoadingTemplate"
|
|
20358
|
-
|
|
21067
|
+
kendoGridLogicalCell
|
|
20359
21068
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20360
21069
|
[logicalColIndex]="logicalColIndex(column)"
|
|
20361
21070
|
[dataRowIndex]="$any(item).index"
|
|
@@ -20368,50 +21077,75 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20368
21077
|
[attr.aria-selected]="lockedColumnsCount < 1 && isSelectable({ dataItem: item.data, index: $any(item).index }) ? isAriaSelected(item, column) : undefined"
|
|
20369
21078
|
[class.k-grid-content-sticky]="column.sticky"
|
|
20370
21079
|
[class.k-touch-action-none]="isSelectable({ dataItem: item.data, index: $any(item).index }) && $any(selectable).drag"
|
|
20371
|
-
|
|
20372
|
-
|
|
20373
|
-
|
|
20374
|
-
|
|
20375
|
-
|
|
20376
|
-
|
|
20377
|
-
|
|
20378
|
-
|
|
21080
|
+
[ngClass]="column.cssClass"
|
|
21081
|
+
[class.k-grid-edit-cell]="isEditingCell($any(item).index, column)"
|
|
21082
|
+
[ngStyle]="column.sticky ? addStickyColumnStyles(column) : column.style"
|
|
21083
|
+
[attr.colspan]="column.colspan"
|
|
21084
|
+
[class.k-selected]="isSelectable && cellSelectionService.isCellSelected(item, column)"
|
|
21085
|
+
[class.k-highlighted]="item.cells[lockedColumnsCount + columnIndex]?.isHighlighted">
|
|
21086
|
+
</td>
|
|
21087
|
+
</ng-container>
|
|
21088
|
+
</ng-template>
|
|
20379
21089
|
</tr>
|
|
20380
21090
|
<tr *ngIf="item.showDetailRow"
|
|
20381
21091
|
class="k-detail-row"
|
|
20382
21092
|
kendoGridLogicalRow
|
|
20383
21093
|
[dataRowIndex]="$any(item).index"
|
|
20384
21094
|
[dataItem]="item.data"
|
|
20385
|
-
[logicalRowIndex]="logicalRowIndex(rowIndex) + 1"
|
|
21095
|
+
[logicalRowIndex]="isStackedMode ? logicalRowIndex(rowIndex) : logicalRowIndex(rowIndex) + 1"
|
|
20386
21096
|
[logicalSlaveRow]="false"
|
|
20387
21097
|
[logicalCellsCount]="1">
|
|
20388
|
-
|
|
20389
|
-
|
|
20390
|
-
|
|
20391
|
-
|
|
20392
|
-
|
|
20393
|
-
|
|
20394
|
-
|
|
20395
|
-
|
|
20396
|
-
|
|
20397
|
-
|
|
20398
|
-
|
|
20399
|
-
|
|
20400
|
-
|
|
20401
|
-
|
|
20402
|
-
|
|
20403
|
-
|
|
20404
|
-
|
|
20405
|
-
|
|
20406
|
-
|
|
20407
|
-
|
|
20408
|
-
|
|
21098
|
+
<ng-container *ngIf="!isStackedMode">
|
|
21099
|
+
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups"></td>
|
|
21100
|
+
<td class="k-hierarchy-cell k-table-td"></td>
|
|
21101
|
+
<td class="k-detail-cell k-table-td"
|
|
21102
|
+
[attr.colspan]="columnsSpan"
|
|
21103
|
+
kendoGridLogicalCell
|
|
21104
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex) + 1"
|
|
21105
|
+
[logicalColIndex]="0"
|
|
21106
|
+
[dataRowIndex]="$any(item).index"
|
|
21107
|
+
[dataItem]="item.data"
|
|
21108
|
+
[colIndex]="0"
|
|
21109
|
+
[colSpan]="allColumnsSpan + 1"
|
|
21110
|
+
role="gridcell" aria-selected="false">
|
|
21111
|
+
<ng-template
|
|
21112
|
+
[ngTemplateOutlet]="detailTemplate.templateRef"
|
|
21113
|
+
[ngTemplateOutletContext]="{
|
|
21114
|
+
dataItem: item.data,
|
|
21115
|
+
rowIndex: $any(item).index,
|
|
21116
|
+
$implicit: item.data
|
|
21117
|
+
}">
|
|
21118
|
+
</ng-template>
|
|
21119
|
+
</td>
|
|
21120
|
+
</ng-container>
|
|
21121
|
+
<ng-container *ngIf="isStackedMode">
|
|
21122
|
+
<td class="k-detail-cell k-table-td"
|
|
21123
|
+
[attr.colspan]="columnsSpan"
|
|
21124
|
+
kendoGridLogicalCell
|
|
21125
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
21126
|
+
[logicalColIndex]="0"
|
|
21127
|
+
[dataRowIndex]="$any(item).index"
|
|
21128
|
+
[dataItem]="item.data"
|
|
21129
|
+
[colIndex]="0"
|
|
21130
|
+
[colSpan]="allColumnsSpan + 1"
|
|
21131
|
+
role="gridcell"
|
|
21132
|
+
aria-selected="false">
|
|
21133
|
+
<ng-template
|
|
21134
|
+
[ngTemplateOutlet]="detailTemplate.templateRef"
|
|
21135
|
+
[ngTemplateOutletContext]="{
|
|
21136
|
+
dataItem: item.data,
|
|
21137
|
+
rowIndex: $any(item).index,
|
|
21138
|
+
$implicit: item.data
|
|
21139
|
+
}">
|
|
21140
|
+
</ng-template>
|
|
21141
|
+
</td>
|
|
21142
|
+
</ng-container>
|
|
20409
21143
|
</tr>
|
|
20410
21144
|
<tr *ngIf="item.type === 'footer'"
|
|
20411
21145
|
class="k-group-footer"
|
|
20412
21146
|
kendoGridLogicalRow
|
|
20413
21147
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20414
|
-
[logicalSlaveRow]="lockedColumnsCount > 0"
|
|
21148
|
+
[logicalSlaveRow]="lockedColumnsCount > 0 && !isStackedMode"
|
|
20415
21149
|
[totalColumns]="totalColumns"
|
|
20416
21150
|
[logicalCellsCount]="columns.length"
|
|
20417
21151
|
[logicalSlaveCellsCount]="unlockedColumnsCount(item)">
|
|
@@ -20419,29 +21153,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20419
21153
|
<td class="k-group-cell k-table-td k-table-group-td" *ngFor="let g of groups"></td>
|
|
20420
21154
|
</ng-container>
|
|
20421
21155
|
<td class="k-hierarchy-cell k-table-td"
|
|
20422
|
-
*ngIf="detailTemplate?.templateRef"
|
|
21156
|
+
*ngIf="detailTemplate?.templateRef && !isStackedMode"
|
|
20423
21157
|
kendoGridLogicalCell
|
|
20424
21158
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20425
21159
|
[logicalColIndex]="0"
|
|
20426
21160
|
aria-selected="false">
|
|
20427
21161
|
</td>
|
|
20428
|
-
|
|
21162
|
+
|
|
21163
|
+
<ng-container *ngIf="!isStackedMode">
|
|
21164
|
+
<td kendoGridLogicalCell
|
|
21165
|
+
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
21166
|
+
[logicalColIndex]="logicalColIndex(column)"
|
|
21167
|
+
[attr.data-skip]="skipGroupDecoration"
|
|
21168
|
+
class="k-table-td"
|
|
21169
|
+
*ngFor="let column of footerColumns; let columnIndex = index; trackBy: trackByColumns;">
|
|
21170
|
+
<ng-template
|
|
21171
|
+
[templateContext]="{
|
|
21172
|
+
templateRef: $any(column).groupFooterTemplateRef,
|
|
21173
|
+
group: $any(item.data),
|
|
21174
|
+
field: $any(column).field,
|
|
21175
|
+
column: column,
|
|
21176
|
+
aggregates: $any(item.data)?.aggregates,
|
|
21177
|
+
$implicit: $any(item.data)?.aggregates
|
|
21178
|
+
}">
|
|
21179
|
+
</ng-template>
|
|
21180
|
+
</td>
|
|
21181
|
+
</ng-container>
|
|
21182
|
+
|
|
21183
|
+
<ng-container *ngIf="isStackedMode">
|
|
21184
|
+
<td kendoGridLogicalCell
|
|
20429
21185
|
[logicalRowIndex]="logicalRowIndex(rowIndex)"
|
|
20430
|
-
[logicalColIndex]="
|
|
20431
|
-
|
|
20432
|
-
|
|
20433
|
-
|
|
20434
|
-
|
|
20435
|
-
|
|
20436
|
-
|
|
20437
|
-
|
|
20438
|
-
|
|
20439
|
-
|
|
20440
|
-
|
|
20441
|
-
|
|
20442
|
-
|
|
20443
|
-
|
|
20444
|
-
|
|
21186
|
+
[logicalColIndex]="hasDetailTemplate ? 1 : 0"
|
|
21187
|
+
[attr.data-skip]="skipGroupDecoration"
|
|
21188
|
+
class="k-table-td">
|
|
21189
|
+
<div class="k-grid-column-template">
|
|
21190
|
+
<ng-container *ngFor="let col of footerColumns">
|
|
21191
|
+
<div class="k-column-template-item" *ngIf="$any(col).groupFooterTemplateRef">
|
|
21192
|
+
<ng-template
|
|
21193
|
+
[templateContext]="{
|
|
21194
|
+
templateRef: $any(col).groupFooterTemplateRef,
|
|
21195
|
+
group: $any(item.data),
|
|
21196
|
+
field: $any(col).field,
|
|
21197
|
+
column: col,
|
|
21198
|
+
aggregates: $any(item.data)?.aggregates,
|
|
21199
|
+
$implicit: $any(item.data)?.aggregates
|
|
21200
|
+
}">
|
|
21201
|
+
</ng-template>
|
|
21202
|
+
</div>
|
|
21203
|
+
</ng-container>
|
|
21204
|
+
</div>
|
|
21205
|
+
</td>
|
|
21206
|
+
</ng-container>
|
|
20445
21207
|
</tr>
|
|
20446
21208
|
</ng-container>
|
|
20447
21209
|
<kendo-resize-sensor *ngIf="rowSticky" (resize)="resizeHandler()"></kendo-resize-sensor>
|
|
@@ -21236,8 +21998,8 @@ const packageMetadata = {
|
|
|
21236
21998
|
productName: 'Kendo UI for Angular',
|
|
21237
21999
|
productCode: 'KENDOUIANGULAR',
|
|
21238
22000
|
productCodes: ['KENDOUIANGULAR'],
|
|
21239
|
-
publishDate:
|
|
21240
|
-
version: '19.3.0-develop.
|
|
22001
|
+
publishDate: 1754485381,
|
|
22002
|
+
version: '19.3.0-develop.24',
|
|
21241
22003
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
21242
22004
|
};
|
|
21243
22005
|
|
|
@@ -22149,11 +22911,12 @@ class NavigationMetadata {
|
|
|
22149
22911
|
gridElement;
|
|
22150
22912
|
virtualColumns;
|
|
22151
22913
|
columns;
|
|
22914
|
+
isStacked;
|
|
22152
22915
|
get maxLogicalRowIndex() {
|
|
22153
22916
|
const dataRows = this.hasDetailTemplate ? this.dataRows * 2 : this.dataRows;
|
|
22154
22917
|
return this.headerRows + dataRows - 1;
|
|
22155
22918
|
}
|
|
22156
|
-
constructor(dataRows, headerRows, isVirtual, hasPager, hasDetailTemplate, gridElement, virtualColumns, columns) {
|
|
22919
|
+
constructor(dataRows, headerRows, isVirtual, hasPager, hasDetailTemplate, gridElement, virtualColumns, columns, isStacked) {
|
|
22157
22920
|
this.dataRows = dataRows;
|
|
22158
22921
|
this.headerRows = headerRows;
|
|
22159
22922
|
this.isVirtual = isVirtual;
|
|
@@ -22162,6 +22925,7 @@ class NavigationMetadata {
|
|
|
22162
22925
|
this.gridElement = gridElement;
|
|
22163
22926
|
this.virtualColumns = virtualColumns;
|
|
22164
22927
|
this.columns = columns;
|
|
22928
|
+
this.isStacked = isStacked;
|
|
22165
22929
|
}
|
|
22166
22930
|
}
|
|
22167
22931
|
|
|
@@ -22300,10 +23064,12 @@ const dropIndicatorClasses = ['k-drop-hint', 'k-drop-hint-h'];
|
|
|
22300
23064
|
/**
|
|
22301
23065
|
* @hidden
|
|
22302
23066
|
*/
|
|
22303
|
-
const
|
|
22304
|
-
|
|
22305
|
-
|
|
22306
|
-
|
|
23067
|
+
const getDefaultSelectors = (isStacked) => {
|
|
23068
|
+
return {
|
|
23069
|
+
handle: isStacked ? '.k-grid-stack-cell.k-drag-cell' : '.k-table-td.k-drag-cell',
|
|
23070
|
+
dragTarget: '.k-master-row',
|
|
23071
|
+
dropTarget: '.k-master-row'
|
|
23072
|
+
};
|
|
22307
23073
|
};
|
|
22308
23074
|
const getDocument = element => element?.ownerDocument.documentElement;
|
|
22309
23075
|
const getWindow = element => element?.ownerDocument.defaultView;
|
|
@@ -22314,7 +23080,7 @@ const getWindow = element => element?.ownerDocument.defaultView;
|
|
|
22314
23080
|
class RowReorderService {
|
|
22315
23081
|
renderer;
|
|
22316
23082
|
hintElement = null;
|
|
22317
|
-
defaultSelectors =
|
|
23083
|
+
defaultSelectors = getDefaultSelectors;
|
|
22318
23084
|
hintText = '';
|
|
22319
23085
|
skip;
|
|
22320
23086
|
dropIndicator;
|
|
@@ -23613,7 +24379,6 @@ class ListComponent {
|
|
|
23613
24379
|
columnsEndIdx;
|
|
23614
24380
|
viewportColumnsWidth;
|
|
23615
24381
|
scrollLeft = 0;
|
|
23616
|
-
recalculateRowspan = true;
|
|
23617
24382
|
observer;
|
|
23618
24383
|
get lockedLeafColumns() {
|
|
23619
24384
|
return this.columns.lockedLeafColumns;
|
|
@@ -23622,7 +24387,7 @@ class ListComponent {
|
|
|
23622
24387
|
return this.columns.nonLockedLeafColumns;
|
|
23623
24388
|
}
|
|
23624
24389
|
get nonLockedColumnsToRender() {
|
|
23625
|
-
if (this.virtualColumns && !this.pdfService.exporting) {
|
|
24390
|
+
if (this.virtualColumns && !this.pdfService.exporting && !this.isStacked) {
|
|
23626
24391
|
return this.viewportColumns;
|
|
23627
24392
|
}
|
|
23628
24393
|
return this.nonLockedLeafColumns;
|
|
@@ -23635,13 +24400,13 @@ class ListComponent {
|
|
|
23635
24400
|
return expandColumns(this.lockedLeafColumns.toArray()).reduce((prev, curr) => prev + (curr.width || 0), groupCellsWidth);
|
|
23636
24401
|
}
|
|
23637
24402
|
get nonLockedWidth() {
|
|
23638
|
-
if ((!this.rtl && this.lockedLeafColumns.length) || this.virtualColumns) {
|
|
24403
|
+
if (((!this.rtl && this.lockedLeafColumns.length) || this.virtualColumns) && !this.isStacked) {
|
|
23639
24404
|
return sumColumnWidths(expandColumns(this.nonLockedColumnsToRender.toArray()));
|
|
23640
24405
|
}
|
|
23641
24406
|
return undefined;
|
|
23642
24407
|
}
|
|
23643
24408
|
get isLocked() {
|
|
23644
|
-
return this.lockedLeafColumns.length > 0;
|
|
24409
|
+
return this.lockedLeafColumns.length > 0 && !this.isStacked;
|
|
23645
24410
|
}
|
|
23646
24411
|
rtl = false;
|
|
23647
24412
|
columnUpdateFrame;
|
|
@@ -23818,6 +24583,12 @@ class ListComponent {
|
|
|
23818
24583
|
this.updateColumnViewport(startIdx, endIdx);
|
|
23819
24584
|
}
|
|
23820
24585
|
}
|
|
24586
|
+
/**
|
|
24587
|
+
* @hidden
|
|
24588
|
+
*/
|
|
24589
|
+
get isStacked() {
|
|
24590
|
+
return this.ctx.grid?.isStacked;
|
|
24591
|
+
}
|
|
23821
24592
|
detailExpand({ index, expand }) {
|
|
23822
24593
|
if (expand) {
|
|
23823
24594
|
this.rowHeightService.expandDetail(index);
|
|
@@ -24129,7 +24900,7 @@ class ListComponent {
|
|
|
24129
24900
|
}
|
|
24130
24901
|
], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, static: true }, { propertyName: "lockedContainer", first: true, predicate: ["lockedContainer"], descendants: true }, { propertyName: "lockedTable", first: true, predicate: ["lockedTable"], descendants: true }, { propertyName: "table", first: true, predicate: ["table"], descendants: true, static: true }, { propertyName: "resizeSensors", predicate: ResizeSensorComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
24131
24902
|
<div #lockedContainer class="k-grid-content-locked" role="presentation"
|
|
24132
|
-
*ngIf="isLocked" [style.width.px]="lockedWidth" tabindex="-1"
|
|
24903
|
+
*ngIf="isLocked && !isStacked" [style.width.px]="lockedWidth" tabindex="-1"
|
|
24133
24904
|
[kendoEventsOutsideAngular]="{
|
|
24134
24905
|
keydown: lockedKeydown,
|
|
24135
24906
|
scroll: lockedScroll,
|
|
@@ -24232,7 +25003,7 @@ class ListComponent {
|
|
|
24232
25003
|
<div *ngIf="isVirtual" class="k-height-container" role="presentation">
|
|
24233
25004
|
<div [style.height.px]="totalHeight"></div>
|
|
24234
25005
|
</div>
|
|
24235
|
-
<div *ngIf="virtualColumns" class="k-width-container" role="presentation">
|
|
25006
|
+
<div *ngIf="virtualColumns && !isStacked" class="k-width-container" role="presentation">
|
|
24236
25007
|
<div [style.width.px]="totalWidth"></div>
|
|
24237
25008
|
</div>
|
|
24238
25009
|
</div>
|
|
@@ -24250,7 +25021,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
24250
25021
|
selector: 'kendo-grid-list',
|
|
24251
25022
|
template: `
|
|
24252
25023
|
<div #lockedContainer class="k-grid-content-locked" role="presentation"
|
|
24253
|
-
*ngIf="isLocked" [style.width.px]="lockedWidth" tabindex="-1"
|
|
25024
|
+
*ngIf="isLocked && !isStacked" [style.width.px]="lockedWidth" tabindex="-1"
|
|
24254
25025
|
[kendoEventsOutsideAngular]="{
|
|
24255
25026
|
keydown: lockedKeydown,
|
|
24256
25027
|
scroll: lockedScroll,
|
|
@@ -24353,7 +25124,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
24353
25124
|
<div *ngIf="isVirtual" class="k-height-container" role="presentation">
|
|
24354
25125
|
<div [style.height.px]="totalHeight"></div>
|
|
24355
25126
|
</div>
|
|
24356
|
-
<div *ngIf="virtualColumns" class="k-width-container" role="presentation">
|
|
25127
|
+
<div *ngIf="virtualColumns && !isStacked" class="k-width-container" role="presentation">
|
|
24357
25128
|
<div [style.width.px]="totalWidth"></div>
|
|
24358
25129
|
</div>
|
|
24359
25130
|
</div>
|
|
@@ -25001,11 +25772,11 @@ class GridMessages extends ComponentMessages {
|
|
|
25001
25772
|
*/
|
|
25002
25773
|
columnsReset;
|
|
25003
25774
|
/**
|
|
25004
|
-
* Sets the title for the expand icon of detail rows.
|
|
25775
|
+
* Sets the title for the expand icon of detail rows. Applies also to the expand button text in stacked mode.
|
|
25005
25776
|
*/
|
|
25006
25777
|
detailExpand;
|
|
25007
25778
|
/**
|
|
25008
|
-
* Sets the title for the collapse icon of detail rows.
|
|
25779
|
+
* Sets the title for the collapse icon of detail rows. Applies also to the collapse button text in stacked mode.
|
|
25009
25780
|
*/
|
|
25010
25781
|
detailCollapse;
|
|
25011
25782
|
/**
|
|
@@ -25942,7 +26713,7 @@ class FormFormFieldComponent {
|
|
|
25942
26713
|
<kendo-formerror *ngFor="let err of control?.formControl?.errors | keyvalue">{{control.errors ? control.errors[err.key] : messageFor('formValidationError', err.key, control.name)}}</kendo-formerror>
|
|
25943
26714
|
</ng-container>
|
|
25944
26715
|
</kendo-formfield>
|
|
25945
|
-
`, isInline: true, dependencies: [{ kind: "pipe", type: KeyValuePipe, name: "keyvalue" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type:
|
|
26716
|
+
`, isInline: true, dependencies: [{ kind: "pipe", type: KeyValuePipe, name: "keyvalue" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { kind: "component", type: i3.FloatingLabelComponent, selector: "kendo-floatinglabel", inputs: ["labelCssStyle", "labelCssClass", "id", "text", "optional"], outputs: ["positionChange"], exportAs: ["kendoFloatingLabel"] }, { kind: "component", type: i4.FormFieldComponent, selector: "kendo-formfield", inputs: ["showHints", "orientation", "showErrors", "colSpan"] }, { kind: "component", type: i4.HintComponent, selector: "kendo-formhint", inputs: ["align"] }, { kind: "component", type: i4.ErrorComponent, selector: "kendo-formerror", inputs: ["align"] }, { kind: "component", type: i4.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: "component", type: i4.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "focus", "blur", "inputFocus", "inputBlur"], exportAs: ["kendoNumericTextBox"] }, { kind: "component", type: i4.CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }, { kind: "component", type: i5.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "clearButton", "inputAttributes", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "footer", "navigationItemTemplate", "weekDaysFormat", "showOtherMonthDays", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "enableMouseWheel", "allowCaretMode", "autoFill", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "adaptiveTitle", "adaptiveSubtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close", "escape"], exportAs: ["kendo-datepicker"] }] });
|
|
25946
26717
|
}
|
|
25947
26718
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFormFieldComponent, decorators: [{
|
|
25948
26719
|
type: Component,
|
|
@@ -26099,7 +26870,7 @@ class FormComponent {
|
|
|
26099
26870
|
</button>
|
|
26100
26871
|
</div>
|
|
26101
26872
|
</div>
|
|
26102
|
-
`, 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: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type:
|
|
26873
|
+
`, 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: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: FormFormFieldComponent, selector: "kendo-form-formfield", inputs: ["control", "floatingLabel", "showError"] }, { kind: "component", type: i1$6.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"] }] });
|
|
26103
26874
|
}
|
|
26104
26875
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormComponent, decorators: [{
|
|
26105
26876
|
type: Component,
|
|
@@ -27970,9 +28741,7 @@ class AiAssistantComponent {
|
|
|
27970
28741
|
prompt: this.lastMessage,
|
|
27971
28742
|
output: responseContentStart.concat(responseContentBody).join(''),
|
|
27972
28743
|
};
|
|
27973
|
-
|
|
27974
|
-
this.promptOutputs.splice(0, 1);
|
|
27975
|
-
}
|
|
28744
|
+
this.deleteDummyLoadingOutput();
|
|
27976
28745
|
this.promptOutputs.unshift(output);
|
|
27977
28746
|
this.aiToolDirective.responseSuccess.emit(response);
|
|
27978
28747
|
}
|
|
@@ -27982,9 +28751,15 @@ class AiAssistantComponent {
|
|
|
27982
28751
|
prompt: this.lastMessage,
|
|
27983
28752
|
output: error.message
|
|
27984
28753
|
};
|
|
28754
|
+
this.deleteDummyLoadingOutput();
|
|
27985
28755
|
this.promptOutputs.unshift(output);
|
|
27986
28756
|
this.aiToolDirective.responseError.emit(error);
|
|
27987
28757
|
}
|
|
28758
|
+
deleteDummyLoadingOutput() {
|
|
28759
|
+
if (this.promptOutputs[0].id === this.loadingOutput.id) {
|
|
28760
|
+
this.promptOutputs.splice(0, 1);
|
|
28761
|
+
}
|
|
28762
|
+
}
|
|
27988
28763
|
unsubscribeCurrentRequest() {
|
|
27989
28764
|
if (this.currentRequestSubscription) {
|
|
27990
28765
|
this.currentRequestSubscription.unsubscribe();
|
|
@@ -28342,7 +29117,7 @@ class AIAssistantToolbarDirective extends ToolbarToolBase {
|
|
|
28342
29117
|
get buttonElement() {
|
|
28343
29118
|
return this.host.getButton();
|
|
28344
29119
|
}
|
|
28345
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AIAssistantToolbarDirective, deps: [{ token: i1$7.WindowService }, { token:
|
|
29120
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AIAssistantToolbarDirective, deps: [{ token: i1$7.WindowService }, { token: i54.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i54.RefreshService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
28346
29121
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: AIAssistantToolbarDirective, isStandalone: true, selector: "[kendoGridAIAssistantTool]", inputs: { requestUrl: "requestUrl", requestOptions: "requestOptions", aiWindowSettings: "aiWindowSettings", aiPromptSettings: "aiPromptSettings" }, outputs: { promptRequest: "promptRequest", cancelRequest: "cancelRequest", responseSuccess: "responseSuccess", responseError: "responseError", close: "close", open: "open" }, usesInheritance: true, ngImport: i0 });
|
|
28347
29122
|
}
|
|
28348
29123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AIAssistantToolbarDirective, decorators: [{
|
|
@@ -28351,7 +29126,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28351
29126
|
selector: '[kendoGridAIAssistantTool]',
|
|
28352
29127
|
standalone: true
|
|
28353
29128
|
}]
|
|
28354
|
-
}], ctorParameters: function () { return [{ type: i1$7.WindowService }, { type:
|
|
29129
|
+
}], ctorParameters: function () { return [{ type: i1$7.WindowService }, { type: i54.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i54.RefreshService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { requestUrl: [{
|
|
28355
29130
|
type: Input
|
|
28356
29131
|
}], requestOptions: [{
|
|
28357
29132
|
type: Input
|
|
@@ -28385,7 +29160,7 @@ const handleExpandCollapseGroupsService = (service, expandEmitter, collapseEmitt
|
|
|
28385
29160
|
.subscribe((x) => x.expand ? expandEmitter.emit(map(x)) : collapseEmitter.emit(map(x))));
|
|
28386
29161
|
const handleExpandCollapseDetailsService = (service, expandEmitter, collapseEmitter, map) => (service.changes.pipe(filter(({ dataItem }) => isPresent(dataItem)))
|
|
28387
29162
|
.subscribe((x) => x.expand ? expandEmitter.emit(map(x)) : collapseEmitter.emit(map(x))));
|
|
28388
|
-
const isInEditedCell = (element, gridElement) => closest(element, matchesClasses('k-grid-edit-cell')) &&
|
|
29163
|
+
const isInEditedCell = (element, gridElement, isStacked = false) => (closest(element, matchesClasses('k-grid-edit-cell')) || (isStacked && closest(element, matchesClasses('k-grid-stack-edit-cell')))) &&
|
|
28389
29164
|
closest(element, matchesNodeName('kendo-grid')) === gridElement;
|
|
28390
29165
|
const NOTIFY_DELAY = 500;
|
|
28391
29166
|
/**
|
|
@@ -28632,7 +29407,7 @@ class GridComponent {
|
|
|
28632
29407
|
* @hidden
|
|
28633
29408
|
*/
|
|
28634
29409
|
get isLocked() {
|
|
28635
|
-
return this.lockedLeafColumns.length > 0;
|
|
29410
|
+
return (this.lockedLeafColumns.length > 0 && !this.isStacked);
|
|
28636
29411
|
}
|
|
28637
29412
|
/**
|
|
28638
29413
|
* @hidden
|
|
@@ -28658,7 +29433,9 @@ class GridComponent {
|
|
|
28658
29433
|
* @hidden
|
|
28659
29434
|
*/
|
|
28660
29435
|
get showGroupPanel() {
|
|
28661
|
-
|
|
29436
|
+
const isGroupable = this.groupable && this.groupable.enabled !== false;
|
|
29437
|
+
const isGrouped = this.group?.length > 0;
|
|
29438
|
+
return this.isStacked ? isGroupable && isGrouped : isGroupable;
|
|
28662
29439
|
}
|
|
28663
29440
|
/**
|
|
28664
29441
|
* @hidden
|
|
@@ -28936,6 +29713,12 @@ class GridComponent {
|
|
|
28936
29713
|
get isGroupExpanded() {
|
|
28937
29714
|
return this.groupsService.userCallback;
|
|
28938
29715
|
}
|
|
29716
|
+
/**
|
|
29717
|
+
* Sets the Grid data layout display mode.
|
|
29718
|
+
*
|
|
29719
|
+
* @default 'columns'
|
|
29720
|
+
*/
|
|
29721
|
+
dataLayoutMode = 'columns';
|
|
28939
29722
|
/**
|
|
28940
29723
|
* Fires when the Grid data is filtered through the UI and the filter descriptor changes.
|
|
28941
29724
|
*/
|
|
@@ -29063,8 +29846,11 @@ class GridComponent {
|
|
|
29063
29846
|
get sizeMediumClass() {
|
|
29064
29847
|
return this.size === 'medium' || !this.size;
|
|
29065
29848
|
}
|
|
29849
|
+
get stackedClass() {
|
|
29850
|
+
return this.dataLayoutMode === 'stacked';
|
|
29851
|
+
}
|
|
29066
29852
|
get lockedClasses() {
|
|
29067
|
-
return this.lockedLeafColumns.length > 0;
|
|
29853
|
+
return this.lockedLeafColumns.length > 0 && !this.isStacked;
|
|
29068
29854
|
}
|
|
29069
29855
|
get virtualClasses() {
|
|
29070
29856
|
return this.isVirtual;
|
|
@@ -29288,6 +30074,12 @@ class GridComponent {
|
|
|
29288
30074
|
get isScrollable() {
|
|
29289
30075
|
return this.scrollable !== 'none';
|
|
29290
30076
|
}
|
|
30077
|
+
/**
|
|
30078
|
+
* @hidden
|
|
30079
|
+
*/
|
|
30080
|
+
get isStacked() {
|
|
30081
|
+
return typeof this.dataLayoutMode === 'string' ? this.dataLayoutMode !== 'columns' : this.dataLayoutMode.mode !== 'columns';
|
|
30082
|
+
}
|
|
29291
30083
|
get visibleColumns() {
|
|
29292
30084
|
return this.columnsContainer.allColumns;
|
|
29293
30085
|
}
|
|
@@ -29325,11 +30117,14 @@ class GridComponent {
|
|
|
29325
30117
|
return this.nonLockedLeafColumns;
|
|
29326
30118
|
}
|
|
29327
30119
|
get lockedWidth() {
|
|
30120
|
+
if (this.isStacked) {
|
|
30121
|
+
return 0;
|
|
30122
|
+
}
|
|
29328
30123
|
const groupCellsWidth = this.group.length * GROUP_CELL_WIDTH;
|
|
29329
30124
|
return expandColumns(this.lockedLeafColumns.toArray()).reduce((prev, curr) => prev + (curr.width || 0), groupCellsWidth);
|
|
29330
30125
|
}
|
|
29331
30126
|
get nonLockedWidth() {
|
|
29332
|
-
if ((!this.rtl && this.lockedLeafColumns.length) || this.virtualColumns) {
|
|
30127
|
+
if (((!this.rtl && this.lockedLeafColumns.length) || this.virtualColumns) && !this.isStacked) {
|
|
29333
30128
|
return !this.virtualColumns ? this.columnsContainer.unlockedWidth :
|
|
29334
30129
|
this.leafViewportColumns.reduce((acc, column) => acc + (column.width || 0), 0);
|
|
29335
30130
|
}
|
|
@@ -29355,7 +30150,7 @@ class GridComponent {
|
|
|
29355
30150
|
* @hidden
|
|
29356
30151
|
*/
|
|
29357
30152
|
getDefaultSelectors(type) {
|
|
29358
|
-
return this.rowReorderService.defaultSelectors[type];
|
|
30153
|
+
return this.rowReorderService.defaultSelectors(this.isStacked)[type];
|
|
29359
30154
|
}
|
|
29360
30155
|
/**
|
|
29361
30156
|
* @hidden
|
|
@@ -29466,6 +30261,7 @@ class GridComponent {
|
|
|
29466
30261
|
this.columnReorderSubscription = this.columnReorderService
|
|
29467
30262
|
.changes.subscribe(this.reorder.bind(this));
|
|
29468
30263
|
this.columnRangeChangeSubscription = this.columnInfoService.columnRangeChange.subscribe(this.onColumnRangeChange.bind(this));
|
|
30264
|
+
this.columnsContainer.isStacked = this.isStacked;
|
|
29469
30265
|
}
|
|
29470
30266
|
/**
|
|
29471
30267
|
* Expands the master row at the specified data row index ([see example]({% slug hierarchy_grid %})).
|
|
@@ -29586,6 +30382,15 @@ class GridComponent {
|
|
|
29586
30382
|
}
|
|
29587
30383
|
}
|
|
29588
30384
|
}
|
|
30385
|
+
if (isChanged$1('dataLayoutMode', changes)) {
|
|
30386
|
+
if (this.isStacked) {
|
|
30387
|
+
this.generateStackedColumns();
|
|
30388
|
+
}
|
|
30389
|
+
else {
|
|
30390
|
+
this.stackedColumns = { columns: [], areDefault: false };
|
|
30391
|
+
}
|
|
30392
|
+
this.columnsContainer.isStacked = this.isStacked;
|
|
30393
|
+
}
|
|
29589
30394
|
}
|
|
29590
30395
|
ngAfterContentInit() {
|
|
29591
30396
|
this.shouldGenerateColumns = !this.columns.length;
|
|
@@ -29612,6 +30417,7 @@ class GridComponent {
|
|
|
29612
30417
|
if (this.navigable.length) {
|
|
29613
30418
|
this.navigationService.init(this.navigationMetadata(), this.navigable);
|
|
29614
30419
|
}
|
|
30420
|
+
this.isStacked && this.generateStackedColumns();
|
|
29615
30421
|
}
|
|
29616
30422
|
ngOnDestroy() {
|
|
29617
30423
|
if (this.selectionSubscription) {
|
|
@@ -29782,7 +30588,7 @@ class GridComponent {
|
|
|
29782
30588
|
editCell(rowIndex, column, group) {
|
|
29783
30589
|
const instance = this.columnInstance(column);
|
|
29784
30590
|
this.editService.editCell(rowIndex, instance, group);
|
|
29785
|
-
this.focusEditElement('.k-grid-edit-cell');
|
|
30591
|
+
this.focusEditElement(this.isStacked ? '.k-grid-stack-edit-cell' : '.k-grid-edit-cell');
|
|
29786
30592
|
}
|
|
29787
30593
|
/**
|
|
29788
30594
|
* Closes the current cell in edit mode and fires the [`cellClose`]({% slug api_grid_gridcomponent %}#toc-cellclose) event.
|
|
@@ -30163,7 +30969,8 @@ class GridComponent {
|
|
|
30163
30969
|
isRowSelectable: this.isRowSelectable,
|
|
30164
30970
|
selectable: this.selectable,
|
|
30165
30971
|
view: this.view,
|
|
30166
|
-
columns: cellSelectionMode ? this.columnList.toArray() : undefined
|
|
30972
|
+
columns: cellSelectionMode ? this.columnList.toArray() : undefined,
|
|
30973
|
+
isStacked: this.isStacked
|
|
30167
30974
|
});
|
|
30168
30975
|
if (!this.selectionDirective && !this.selectableSettings.enabled) {
|
|
30169
30976
|
this.defaultSelection.reset();
|
|
@@ -30217,7 +31024,7 @@ class GridComponent {
|
|
|
30217
31024
|
if (this.lockedLeafColumns.length && !this.nonLockedLeafColumns.length) {
|
|
30218
31025
|
console.warn(GridConfigurationErrorMessages.nonLockedColumnPresent);
|
|
30219
31026
|
}
|
|
30220
|
-
if ((locked || this.virtualColumns) && expandColumns(this.columnList.toArray()).filter(column => !column.width && !isColumnGroupComponent(column)).length) {
|
|
31027
|
+
if (!this.isStacked && (locked || this.virtualColumns) && expandColumns(this.columnList.toArray()).filter(column => !column.width && !isColumnGroupComponent(column)).length) {
|
|
30221
31028
|
console.warn(ColumnConfigurationErrorMessages.requiredWidth(locked ? 'Locked' : 'Virtual'));
|
|
30222
31029
|
}
|
|
30223
31030
|
if (locked && !this.isScrollable) {
|
|
@@ -30241,7 +31048,7 @@ class GridComponent {
|
|
|
30241
31048
|
if (!this.detailRowHeight && this.isVirtual && this.detailTemplate) {
|
|
30242
31049
|
console.warn(GridConfigurationErrorMessages.rowHeightVirtual);
|
|
30243
31050
|
}
|
|
30244
|
-
if (stickyColumns && expandColumns(this.columnList.toArray()).filter(column => !column.width && !isColumnGroupComponent(column)).length) {
|
|
31051
|
+
if (!this.isStacked && stickyColumns && expandColumns(this.columnList.toArray()).filter(column => !column.width && !isColumnGroupComponent(column)).length) {
|
|
30245
31052
|
console.warn(ColumnConfigurationErrorMessages.requiredWidth('Sticky'));
|
|
30246
31053
|
}
|
|
30247
31054
|
if (this.rowSticky && this.scrollable === 'virtual') {
|
|
@@ -30265,6 +31072,47 @@ class GridComponent {
|
|
|
30265
31072
|
}));
|
|
30266
31073
|
}
|
|
30267
31074
|
}
|
|
31075
|
+
/**
|
|
31076
|
+
* @hidden
|
|
31077
|
+
*/
|
|
31078
|
+
stackedColumns = { columns: [], areDefault: false };
|
|
31079
|
+
generateStackedColumns() {
|
|
31080
|
+
if (!this.isStacked || !isPresent(this.dataLayoutMode)) {
|
|
31081
|
+
return;
|
|
31082
|
+
}
|
|
31083
|
+
this.stackedColumns.columns = [];
|
|
31084
|
+
if (typeof this.dataLayoutMode === 'object') {
|
|
31085
|
+
if (this.dataLayoutMode.mode === 'stacked' && this.dataLayoutMode.stackedLayoutSettings?.cols) {
|
|
31086
|
+
const columns = this.dataLayoutMode.stackedLayoutSettings.cols;
|
|
31087
|
+
if (typeof columns === 'number') {
|
|
31088
|
+
for (let i = 0; i < columns; i++) {
|
|
31089
|
+
const currCol = { width: `${this.wrapper.nativeElement.clientWidth / columns}px` };
|
|
31090
|
+
this.stackedColumns.columns.push(currCol);
|
|
31091
|
+
}
|
|
31092
|
+
this.stackedColumns.areDefault = true;
|
|
31093
|
+
}
|
|
31094
|
+
else if (Array.isArray(columns)) {
|
|
31095
|
+
this.stackedColumns.columns = columns.map((colSize) => {
|
|
31096
|
+
const stackedColumn = {};
|
|
31097
|
+
if (typeof colSize === 'number') {
|
|
31098
|
+
stackedColumn.width = `${colSize}px`;
|
|
31099
|
+
}
|
|
31100
|
+
else if (typeof colSize === 'object' && colSize?.width) {
|
|
31101
|
+
stackedColumn.width = typeof colSize.width === 'number' ? `${colSize.width}px` : colSize.width;
|
|
31102
|
+
}
|
|
31103
|
+
else if (typeof colSize === 'string') {
|
|
31104
|
+
stackedColumn.width = colSize;
|
|
31105
|
+
}
|
|
31106
|
+
return stackedColumn;
|
|
31107
|
+
});
|
|
31108
|
+
this.stackedColumns.areDefault = false;
|
|
31109
|
+
}
|
|
31110
|
+
}
|
|
31111
|
+
}
|
|
31112
|
+
else {
|
|
31113
|
+
this.stackedColumns = { columns: [{ width: this.wrapper.nativeElement.clientWidth }], areDefault: true };
|
|
31114
|
+
}
|
|
31115
|
+
}
|
|
30268
31116
|
attachStateChangesEmitter() {
|
|
30269
31117
|
this.stateChangeSubscription =
|
|
30270
31118
|
merge(this.pageChange.pipe(map(x => ({
|
|
@@ -30347,14 +31195,14 @@ class GridComponent {
|
|
|
30347
31195
|
!closest(args.target, matchesClasses('k-animation-container k-grid-ignore-click')) &&
|
|
30348
31196
|
!(activeElement &&
|
|
30349
31197
|
(closest(activeElement, matchesClasses('k-animation-container')) ||
|
|
30350
|
-
isInEditedCell(activeElement, this.wrapper.nativeElement)))) {
|
|
31198
|
+
isInEditedCell(activeElement, this.wrapper.nativeElement, this.isStacked)))) {
|
|
30351
31199
|
this.editService.closeCell(args);
|
|
30352
31200
|
}
|
|
30353
31201
|
});
|
|
30354
31202
|
const windowBlurSubscription = this.renderer.listen('window', 'blur', (args) => {
|
|
30355
31203
|
const activeElement = document.activeElement;
|
|
30356
31204
|
if (activeElement && !(matchesNodeName('input')(activeElement) && activeElement.type === 'file' &&
|
|
30357
|
-
isInEditedCell(activeElement, this.wrapper.nativeElement))) {
|
|
31205
|
+
isInEditedCell(activeElement, this.wrapper.nativeElement, this.isStacked))) {
|
|
30358
31206
|
this.editService.closeCell(args);
|
|
30359
31207
|
}
|
|
30360
31208
|
this.domEvents.windowBlur.emit(args);
|
|
@@ -30473,8 +31321,8 @@ class GridComponent {
|
|
|
30473
31321
|
const dataRows = isVirtual ? this.view.total : pageSize;
|
|
30474
31322
|
const addRowOffset = this.editService.hasNewItem ? 1 : 0;
|
|
30475
31323
|
const filterRowOffset = hasFilterRow(this.filterable) ? 1 : 0;
|
|
30476
|
-
const headerRows = this.totalColumnLevels + 1 + filterRowOffset + addRowOffset;
|
|
30477
|
-
return new NavigationMetadata(dataRows, headerRows, isVirtual, this.hasPager, isPresent(this.detailTemplate), this.wrapper, this.virtualColumns, this.columnsContainer);
|
|
31324
|
+
const headerRows = this.isStacked ? 0 : this.totalColumnLevels + 1 + filterRowOffset + addRowOffset;
|
|
31325
|
+
return new NavigationMetadata(dataRows, headerRows, isVirtual, this.hasPager, isPresent(this.detailTemplate), this.wrapper, this.virtualColumns, this.columnsContainer, this.isStacked);
|
|
30478
31326
|
}
|
|
30479
31327
|
applyAutoSize() {
|
|
30480
31328
|
const cols = this.columns.filter((c) => this.autoSize ? c.autoSize !== false : c.autoSize);
|
|
@@ -30579,7 +31427,7 @@ class GridComponent {
|
|
|
30579
31427
|
this.dropTargetContainer?.notify();
|
|
30580
31428
|
}
|
|
30581
31429
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridComponent, deps: [{ token: BrowserSupportService }, { token: SelectionService }, { token: CellSelectionService }, { token: i0.ElementRef }, { token: GroupInfoService }, { token: GroupsService }, { token: ChangeNotificationService }, { token: DetailsService }, { token: EditService }, { token: FilterService }, { token: PDFService }, { token: ResponsiveService }, { token: i0.Renderer2 }, { token: ExcelService }, { token: i0.NgZone }, { token: ScrollSyncService }, { token: DomEventsService }, { token: ColumnResizingService }, { token: i0.ChangeDetectorRef }, { token: ColumnReorderService }, { token: ColumnInfoService }, { token: NavigationService }, { token: SortService }, { token: ScrollRequestService }, { token: i1$2.LocalizationService }, { token: ContextService }, { token: SizingOptionsService }, { token: AdaptiveGridService }, { token: RowReorderService }, { token: DataMappingService }], target: i0.ɵɵFactoryTarget.Component });
|
|
30582
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GridComponent, isStandalone: true, selector: "kendo-grid", inputs: { data: "data", pageSize: "pageSize", height: "height", rowHeight: "rowHeight", adaptiveMode: "adaptiveMode", detailRowHeight: "detailRowHeight", skip: "skip", scrollable: "scrollable", selectable: "selectable", sort: "sort", size: "size", trackBy: "trackBy", filter: "filter", group: "group", virtualColumns: "virtualColumns", filterable: "filterable", sortable: "sortable", pageable: "pageable", groupable: "groupable", gridResizable: "gridResizable", rowReorderable: "rowReorderable", navigable: "navigable", autoSize: "autoSize", rowClass: "rowClass", rowSticky: "rowSticky", rowSelected: "rowSelected", isRowSelectable: "isRowSelectable", cellSelected: "cellSelected", resizable: "resizable", reorderable: "reorderable", loading: "loading", columnMenu: "columnMenu", hideHeader: "hideHeader", showInactiveTools: "showInactiveTools", isDetailExpanded: "isDetailExpanded", isGroupExpanded: "isGroupExpanded" }, outputs: { filterChange: "filterChange", pageChange: "pageChange", groupChange: "groupChange", sortChange: "sortChange", selectionChange: "selectionChange", rowReorder: "rowReorder", dataStateChange: "dataStateChange", gridStateChange: "gridStateChange", groupExpand: "groupExpand", groupCollapse: "groupCollapse", detailExpand: "detailExpand", detailCollapse: "detailCollapse", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add", cellClose: "cellClose", cellClick: "cellClick", pdfExport: "pdfExport", excelExport: "excelExport", columnResize: "columnResize", columnReorder: "columnReorder", columnVisibilityChange: "columnVisibilityChange", columnLockedChange: "columnLockedChange", columnStickyChange: "columnStickyChange", scrollBottom: "scrollBottom", contentScroll: "contentScroll" }, host: { properties: { "attr.dir": "this.dir", "class.k-grid": "this.hostClass", "class.k-grid-sm": "this.sizeSmallClass", "class.k-grid-md": "this.sizeMediumClass", "class.k-grid-lockedcolumns": "this.lockedClasses", "class.k-grid-virtual": "this.virtualClasses", "class.k-grid-no-scrollbar": "this.noScrollbarClass", "class.k-grid-resizable": "this.isResizable", "style.minWidth": "this.minWidth", "style.maxWidth": "this.maxWidth", "style.minHeight": "this.minHeight", "style.maxHeight": "this.maxHeight" } }, providers: [
|
|
31430
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GridComponent, isStandalone: true, selector: "kendo-grid", inputs: { data: "data", pageSize: "pageSize", height: "height", rowHeight: "rowHeight", adaptiveMode: "adaptiveMode", detailRowHeight: "detailRowHeight", skip: "skip", scrollable: "scrollable", selectable: "selectable", sort: "sort", size: "size", trackBy: "trackBy", filter: "filter", group: "group", virtualColumns: "virtualColumns", filterable: "filterable", sortable: "sortable", pageable: "pageable", groupable: "groupable", gridResizable: "gridResizable", rowReorderable: "rowReorderable", navigable: "navigable", autoSize: "autoSize", rowClass: "rowClass", rowSticky: "rowSticky", rowSelected: "rowSelected", isRowSelectable: "isRowSelectable", cellSelected: "cellSelected", resizable: "resizable", reorderable: "reorderable", loading: "loading", columnMenu: "columnMenu", hideHeader: "hideHeader", showInactiveTools: "showInactiveTools", isDetailExpanded: "isDetailExpanded", isGroupExpanded: "isGroupExpanded", dataLayoutMode: "dataLayoutMode" }, outputs: { filterChange: "filterChange", pageChange: "pageChange", groupChange: "groupChange", sortChange: "sortChange", selectionChange: "selectionChange", rowReorder: "rowReorder", dataStateChange: "dataStateChange", gridStateChange: "gridStateChange", groupExpand: "groupExpand", groupCollapse: "groupCollapse", detailExpand: "detailExpand", detailCollapse: "detailCollapse", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add", cellClose: "cellClose", cellClick: "cellClick", pdfExport: "pdfExport", excelExport: "excelExport", columnResize: "columnResize", columnReorder: "columnReorder", columnVisibilityChange: "columnVisibilityChange", columnLockedChange: "columnLockedChange", columnStickyChange: "columnStickyChange", scrollBottom: "scrollBottom", contentScroll: "contentScroll" }, host: { properties: { "attr.dir": "this.dir", "class.k-grid": "this.hostClass", "class.k-grid-sm": "this.sizeSmallClass", "class.k-grid-md": "this.sizeMediumClass", "class.k-grid-stack": "this.stackedClass", "class.k-grid-lockedcolumns": "this.lockedClasses", "class.k-grid-virtual": "this.virtualClasses", "class.k-grid-no-scrollbar": "this.noScrollbarClass", "class.k-grid-resizable": "this.isResizable", "style.minWidth": "this.minWidth", "style.maxWidth": "this.maxWidth", "style.minHeight": "this.minHeight", "style.maxHeight": "this.maxHeight" } }, providers: [
|
|
30583
31431
|
BrowserSupportService,
|
|
30584
31432
|
LocalizationService,
|
|
30585
31433
|
ColumnInfoService,
|
|
@@ -30863,10 +31711,10 @@ class GridComponent {
|
|
|
30863
31711
|
i18n-columnsReset="kendo.grid.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
|
|
30864
31712
|
columnsReset="Reset"
|
|
30865
31713
|
|
|
30866
|
-
i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows."
|
|
31714
|
+
i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows. Applies also to the expand button text in stacked mode."
|
|
30867
31715
|
detailExpand="Expand Details"
|
|
30868
31716
|
|
|
30869
|
-
i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows."
|
|
31717
|
+
i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows. Applies also to the collapse button text in stacked mode."
|
|
30870
31718
|
detailCollapse="Collapse Details"
|
|
30871
31719
|
|
|
30872
31720
|
i18n-filterDateToday="kendo.grid.filterDateToday|The text of the Today button of the Date filter."
|
|
@@ -31088,7 +31936,7 @@ class GridComponent {
|
|
|
31088
31936
|
[attr.aria-rowcount]="ariaRowCount"
|
|
31089
31937
|
[attr.aria-colcount]="ariaColCount">
|
|
31090
31938
|
<ng-container *ngIf="isScrollable">
|
|
31091
|
-
<div *ngIf="!hideHeader"
|
|
31939
|
+
<div *ngIf="!hideHeader && !isStacked"
|
|
31092
31940
|
class="k-grid-header"
|
|
31093
31941
|
[class.k-grid-draggable-header]="groupable || reorderable"
|
|
31094
31942
|
role="presentation"
|
|
@@ -31212,7 +32060,7 @@ class GridComponent {
|
|
|
31212
32060
|
class="k-grid-footer"
|
|
31213
32061
|
[style.padding]="headerPadding">
|
|
31214
32062
|
<div
|
|
31215
|
-
*ngIf="lockedLeafColumns.length"
|
|
32063
|
+
*ngIf="lockedLeafColumns.length && !isStacked"
|
|
31216
32064
|
class="k-grid-footer-locked"
|
|
31217
32065
|
[style.width.px]="lockedWidth">
|
|
31218
32066
|
<table
|
|
@@ -31223,7 +32071,7 @@ class GridComponent {
|
|
|
31223
32071
|
[style.width.px]="lockedWidth"
|
|
31224
32072
|
kendoGridTable
|
|
31225
32073
|
[size]="size">
|
|
31226
|
-
<colgroup kendoGridColGroup
|
|
32074
|
+
<colgroup kendoGridColGroup *ngIf="!isStacked"
|
|
31227
32075
|
[columns]="$any(lockedLeafColumns)"
|
|
31228
32076
|
[groups]="group"
|
|
31229
32077
|
[detailTemplate]="detailTemplate">
|
|
@@ -31241,7 +32089,7 @@ class GridComponent {
|
|
|
31241
32089
|
</div>
|
|
31242
32090
|
<div #footer
|
|
31243
32091
|
class="k-grid-footer-wrap" data-scrollable
|
|
31244
|
-
[kendoGridResizableContainer]="lockedLeafColumns.length > 0"
|
|
32092
|
+
[kendoGridResizableContainer]="lockedLeafColumns.length > 0 && !isStacked"
|
|
31245
32093
|
[lockedWidth]="lockedWidth + scrollbarWidth + 3">
|
|
31246
32094
|
<table
|
|
31247
32095
|
role="presentation"
|
|
@@ -31250,7 +32098,7 @@ class GridComponent {
|
|
|
31250
32098
|
kendoGridTable
|
|
31251
32099
|
kendoGridResizableTable
|
|
31252
32100
|
[size]="size">
|
|
31253
|
-
<colgroup kendoGridColGroup
|
|
32101
|
+
<colgroup kendoGridColGroup *ngIf="!isStacked"
|
|
31254
32102
|
[columns]="$any(headerLeafColumns)"
|
|
31255
32103
|
[groups]="isLocked ? [] : group"
|
|
31256
32104
|
[detailTemplate]="detailTemplate">
|
|
@@ -31260,7 +32108,7 @@ class GridComponent {
|
|
|
31260
32108
|
[scrollable]="true"
|
|
31261
32109
|
[groups]="isLocked ? [] : group"
|
|
31262
32110
|
[columns]="$any(headerColumns)"
|
|
31263
|
-
[lockedColumnsCount]="lockedLeafColumns.length"
|
|
32111
|
+
[lockedColumnsCount]="isStacked ? 0 : lockedLeafColumns.length"
|
|
31264
32112
|
[detailTemplate]="detailTemplate"
|
|
31265
32113
|
[totalColumns]="columnsContainer"
|
|
31266
32114
|
[totalColumnsCount]="leafColumns.length">
|
|
@@ -31284,7 +32132,7 @@ class GridComponent {
|
|
|
31284
32132
|
[detailTemplate]="detailTemplate">
|
|
31285
32133
|
</colgroup>
|
|
31286
32134
|
<thead kendoGridHeader
|
|
31287
|
-
*ngIf="!hideHeader"
|
|
32135
|
+
*ngIf="!hideHeader && !isStacked"
|
|
31288
32136
|
class="k-grid-header"
|
|
31289
32137
|
[class.k-grid-draggable-header]="groupable || reorderable"
|
|
31290
32138
|
role="rowgroup"
|
|
@@ -31425,7 +32273,7 @@ class GridComponent {
|
|
|
31425
32273
|
<div *ngIf="aiAssistantToolbarTool" #windowContainer></div>
|
|
31426
32274
|
|
|
31427
32275
|
<div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
|
|
31428
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { kind: "component", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { kind: "directive", type: TableDirective, selector: "[kendoGridResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "directive", type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { kind: "component", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "totalColumns", "tabIndex", "size"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { kind: "component", type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { kind: "directive", type: DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }, { kind: "component", type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex", "totalColumns", "totalColumnsCount"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "rowsToRender", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "totalColumns", "rowClass"] }, { kind: "component", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { kind: "component", type: StatusBarComponent, selector: "kendo-grid-status-bar", inputs: ["statusBarTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }, { kind: "component", type:
|
|
32276
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { kind: "component", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { kind: "directive", type: TableDirective, selector: "[kendoGridResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "directive", type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { kind: "component", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "totalColumns", "tabIndex", "size"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { kind: "component", type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { kind: "directive", type: DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }, { kind: "component", type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex", "totalColumns", "totalColumnsCount"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "rowsToRender", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "totalColumns", "rowClass"] }, { kind: "component", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { kind: "component", type: StatusBarComponent, selector: "kendo-grid-status-bar", inputs: ["statusBarTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }, { kind: "component", type: i53.CustomMessagesComponent, selector: "kendo-datapager-messages, kendo-pager-messages" }, { kind: "component", type: i53.PagerInfoComponent, selector: "kendo-datapager-info, kendo-pager-info" }, { kind: "component", type: i53.PagerInputComponent, selector: "kendo-datapager-input, kendo-pager-input", inputs: ["showPageText", "size"] }, { kind: "component", type: i53.PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: ["size"] }, { kind: "component", type: i53.PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: ["buttonCount", "size"] }, { kind: "component", type: i53.PagerPageSizesComponent, selector: "kendo-datapager-page-sizes, kendo-pager-page-sizes", inputs: ["showItemsText", "pageSizes", "size", "adaptiveMode"] }, { kind: "component", type: i53.PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: ["size"] }, { kind: "directive", type: i53.PagerTemplateDirective, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]" }, { kind: "component", type: i53.PagerComponent, selector: "kendo-datapager, kendo-pager", inputs: ["externalTemplate", "total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable", "size", "responsive", "adaptiveMode"], outputs: ["pageChange", "pageSizeChange", "pagerInputVisibilityChange", "pageTextVisibilityChange", "itemsTextVisibilityChange"], exportAs: ["kendoDataPager", "kendoPager"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AdaptiveRendererComponent, selector: "kendo-grid-adaptive-renderer" }], encapsulation: i0.ViewEncapsulation.None });
|
|
31429
32277
|
}
|
|
31430
32278
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridComponent, decorators: [{
|
|
31431
32279
|
type: Component,
|
|
@@ -31718,10 +32566,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
31718
32566
|
i18n-columnsReset="kendo.grid.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
|
|
31719
32567
|
columnsReset="Reset"
|
|
31720
32568
|
|
|
31721
|
-
i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows."
|
|
32569
|
+
i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows. Applies also to the expand button text in stacked mode."
|
|
31722
32570
|
detailExpand="Expand Details"
|
|
31723
32571
|
|
|
31724
|
-
i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows."
|
|
32572
|
+
i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows. Applies also to the collapse button text in stacked mode."
|
|
31725
32573
|
detailCollapse="Collapse Details"
|
|
31726
32574
|
|
|
31727
32575
|
i18n-filterDateToday="kendo.grid.filterDateToday|The text of the Today button of the Date filter."
|
|
@@ -31943,7 +32791,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
31943
32791
|
[attr.aria-rowcount]="ariaRowCount"
|
|
31944
32792
|
[attr.aria-colcount]="ariaColCount">
|
|
31945
32793
|
<ng-container *ngIf="isScrollable">
|
|
31946
|
-
<div *ngIf="!hideHeader"
|
|
32794
|
+
<div *ngIf="!hideHeader && !isStacked"
|
|
31947
32795
|
class="k-grid-header"
|
|
31948
32796
|
[class.k-grid-draggable-header]="groupable || reorderable"
|
|
31949
32797
|
role="presentation"
|
|
@@ -32067,7 +32915,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32067
32915
|
class="k-grid-footer"
|
|
32068
32916
|
[style.padding]="headerPadding">
|
|
32069
32917
|
<div
|
|
32070
|
-
*ngIf="lockedLeafColumns.length"
|
|
32918
|
+
*ngIf="lockedLeafColumns.length && !isStacked"
|
|
32071
32919
|
class="k-grid-footer-locked"
|
|
32072
32920
|
[style.width.px]="lockedWidth">
|
|
32073
32921
|
<table
|
|
@@ -32078,7 +32926,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32078
32926
|
[style.width.px]="lockedWidth"
|
|
32079
32927
|
kendoGridTable
|
|
32080
32928
|
[size]="size">
|
|
32081
|
-
<colgroup kendoGridColGroup
|
|
32929
|
+
<colgroup kendoGridColGroup *ngIf="!isStacked"
|
|
32082
32930
|
[columns]="$any(lockedLeafColumns)"
|
|
32083
32931
|
[groups]="group"
|
|
32084
32932
|
[detailTemplate]="detailTemplate">
|
|
@@ -32096,7 +32944,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32096
32944
|
</div>
|
|
32097
32945
|
<div #footer
|
|
32098
32946
|
class="k-grid-footer-wrap" data-scrollable
|
|
32099
|
-
[kendoGridResizableContainer]="lockedLeafColumns.length > 0"
|
|
32947
|
+
[kendoGridResizableContainer]="lockedLeafColumns.length > 0 && !isStacked"
|
|
32100
32948
|
[lockedWidth]="lockedWidth + scrollbarWidth + 3">
|
|
32101
32949
|
<table
|
|
32102
32950
|
role="presentation"
|
|
@@ -32105,7 +32953,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32105
32953
|
kendoGridTable
|
|
32106
32954
|
kendoGridResizableTable
|
|
32107
32955
|
[size]="size">
|
|
32108
|
-
<colgroup kendoGridColGroup
|
|
32956
|
+
<colgroup kendoGridColGroup *ngIf="!isStacked"
|
|
32109
32957
|
[columns]="$any(headerLeafColumns)"
|
|
32110
32958
|
[groups]="isLocked ? [] : group"
|
|
32111
32959
|
[detailTemplate]="detailTemplate">
|
|
@@ -32115,7 +32963,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32115
32963
|
[scrollable]="true"
|
|
32116
32964
|
[groups]="isLocked ? [] : group"
|
|
32117
32965
|
[columns]="$any(headerColumns)"
|
|
32118
|
-
[lockedColumnsCount]="lockedLeafColumns.length"
|
|
32966
|
+
[lockedColumnsCount]="isStacked ? 0 : lockedLeafColumns.length"
|
|
32119
32967
|
[detailTemplate]="detailTemplate"
|
|
32120
32968
|
[totalColumns]="columnsContainer"
|
|
32121
32969
|
[totalColumnsCount]="leafColumns.length">
|
|
@@ -32139,7 +32987,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32139
32987
|
[detailTemplate]="detailTemplate">
|
|
32140
32988
|
</colgroup>
|
|
32141
32989
|
<thead kendoGridHeader
|
|
32142
|
-
*ngIf="!hideHeader"
|
|
32990
|
+
*ngIf="!hideHeader && !isStacked"
|
|
32143
32991
|
class="k-grid-header"
|
|
32144
32992
|
[class.k-grid-draggable-header]="groupable || reorderable"
|
|
32145
32993
|
role="rowgroup"
|
|
@@ -32363,6 +33211,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32363
33211
|
type: Input
|
|
32364
33212
|
}], isGroupExpanded: [{
|
|
32365
33213
|
type: Input
|
|
33214
|
+
}], dataLayoutMode: [{
|
|
33215
|
+
type: Input
|
|
32366
33216
|
}], filterChange: [{
|
|
32367
33217
|
type: Output
|
|
32368
33218
|
}], pageChange: [{
|
|
@@ -32434,6 +33284,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
32434
33284
|
}], sizeMediumClass: [{
|
|
32435
33285
|
type: HostBinding,
|
|
32436
33286
|
args: ['class.k-grid-md']
|
|
33287
|
+
}], stackedClass: [{
|
|
33288
|
+
type: HostBinding,
|
|
33289
|
+
args: ['class.k-grid-stack']
|
|
32437
33290
|
}], lockedClasses: [{
|
|
32438
33291
|
type: HostBinding,
|
|
32439
33292
|
args: ['class.k-grid-lockedcolumns']
|
|
@@ -32925,12 +33778,14 @@ class EditingDirectiveBase {
|
|
|
32925
33778
|
subscriptions = new Subscription();
|
|
32926
33779
|
defaultEditService;
|
|
32927
33780
|
userEditService;
|
|
33781
|
+
navigationService;
|
|
32928
33782
|
constructor(grid, localDataChangesService) {
|
|
32929
33783
|
this.grid = grid;
|
|
32930
33784
|
this.localDataChangesService = localDataChangesService;
|
|
32931
33785
|
this.defaultEditService = this.createDefaultService();
|
|
32932
33786
|
this.dialogService = inject(DialogService);
|
|
32933
33787
|
this.localization = inject(LocalizationService);
|
|
33788
|
+
this.navigationService = inject(NavigationService);
|
|
32934
33789
|
}
|
|
32935
33790
|
/**
|
|
32936
33791
|
* @hidden
|
|
@@ -32979,13 +33834,20 @@ class EditingDirectiveBase {
|
|
|
32979
33834
|
const confirmationCallback = typeof this.removeConfirmation === 'boolean' ? this.defaultRemoveConfirmation : this.removeConfirmation;
|
|
32980
33835
|
const result = confirmationCallback(dataItem);
|
|
32981
33836
|
if (result instanceof Promise) {
|
|
32982
|
-
result.then(
|
|
33837
|
+
result.then((res) => {
|
|
33838
|
+
removeItem(res);
|
|
33839
|
+
this.returnFocusToGrid();
|
|
33840
|
+
});
|
|
32983
33841
|
}
|
|
32984
33842
|
else if (result instanceof Observable) {
|
|
32985
|
-
result.pipe(take(1)).subscribe(
|
|
33843
|
+
result.pipe(take(1)).subscribe((res) => {
|
|
33844
|
+
removeItem(res);
|
|
33845
|
+
this.returnFocusToGrid();
|
|
33846
|
+
});
|
|
32986
33847
|
}
|
|
32987
33848
|
else {
|
|
32988
33849
|
removeItem(result);
|
|
33850
|
+
this.returnFocusToGrid();
|
|
32989
33851
|
}
|
|
32990
33852
|
}
|
|
32991
33853
|
else {
|
|
@@ -32998,6 +33860,11 @@ class EditingDirectiveBase {
|
|
|
32998
33860
|
closeEditor(rowIndex) {
|
|
32999
33861
|
this.grid.closeRow(rowIndex);
|
|
33000
33862
|
}
|
|
33863
|
+
returnFocusToGrid() {
|
|
33864
|
+
if (!this.navigationService.focusCell()) {
|
|
33865
|
+
this.navigationService.focusPrevCell() || this.navigationService.focusNextCell();
|
|
33866
|
+
}
|
|
33867
|
+
}
|
|
33001
33868
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditingDirectiveBase, deps: [{ token: GridComponent }, { token: LocalDataChangesService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
33002
33869
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EditingDirectiveBase, selector: "[kendoGridEditingDirectiveBase]", inputs: { editService: "editService", removeConfirmation: "removeConfirmation" }, ngImport: i0 });
|
|
33003
33870
|
}
|
|
@@ -33245,7 +34112,8 @@ class InCellEditingDirective extends EditingDirectiveBase {
|
|
|
33245
34112
|
}
|
|
33246
34113
|
cellClickHandler(args) {
|
|
33247
34114
|
if (!args.isEdited && args.type !== 'contextmenu') {
|
|
33248
|
-
this.grid.
|
|
34115
|
+
const colIndex = this.grid.isStacked ? args.column.leafIndex : args.columnIndex;
|
|
34116
|
+
this.grid.editCell(args.rowIndex, colIndex, this.createFormGroup(args));
|
|
33249
34117
|
this.cdr.markForCheck();
|
|
33250
34118
|
}
|
|
33251
34119
|
}
|
|
@@ -34350,7 +35218,7 @@ class PDFCommandToolbarDirective extends ToolbarToolBase {
|
|
|
34350
35218
|
e.preventDefault();
|
|
34351
35219
|
this.pdfService.exportClick.emit();
|
|
34352
35220
|
}
|
|
34353
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PDFCommandToolbarDirective, deps: [{ token: PDFService }, { token:
|
|
35221
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PDFCommandToolbarDirective, deps: [{ token: PDFService }, { token: i54.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
34354
35222
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PDFCommandToolbarDirective, isStandalone: true, selector: "[kendoGridPDFTool]", usesInheritance: true, ngImport: i0 });
|
|
34355
35223
|
}
|
|
34356
35224
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PDFCommandToolbarDirective, decorators: [{
|
|
@@ -34359,7 +35227,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34359
35227
|
selector: '[kendoGridPDFTool]',
|
|
34360
35228
|
standalone: true
|
|
34361
35229
|
}]
|
|
34362
|
-
}], ctorParameters: function () { return [{ type: PDFService }, { type:
|
|
35230
|
+
}], ctorParameters: function () { return [{ type: PDFService }, { type: i54.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
34363
35231
|
|
|
34364
35232
|
/**
|
|
34365
35233
|
* Represents the **Export to Excel** toolbar tool of the Grid.
|
|
@@ -34395,7 +35263,7 @@ class ExcelCommandToolbarDirective extends ToolbarToolBase {
|
|
|
34395
35263
|
e.preventDefault();
|
|
34396
35264
|
this.excelService.exportClick.emit();
|
|
34397
35265
|
}
|
|
34398
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExcelCommandToolbarDirective, deps: [{ token: ExcelService }, { token:
|
|
35266
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExcelCommandToolbarDirective, deps: [{ token: ExcelService }, { token: i54.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
34399
35267
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ExcelCommandToolbarDirective, isStandalone: true, selector: "[kendoGridExcelTool]", usesInheritance: true, ngImport: i0 });
|
|
34400
35268
|
}
|
|
34401
35269
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExcelCommandToolbarDirective, decorators: [{
|
|
@@ -34404,7 +35272,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34404
35272
|
selector: '[kendoGridExcelTool]',
|
|
34405
35273
|
standalone: true
|
|
34406
35274
|
}]
|
|
34407
|
-
}], ctorParameters: function () { return [{ type: ExcelService }, { type:
|
|
35275
|
+
}], ctorParameters: function () { return [{ type: ExcelService }, { type: i54.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
34408
35276
|
|
|
34409
35277
|
/**
|
|
34410
35278
|
* @hidden
|
|
@@ -34472,13 +35340,13 @@ class ToolbarEditingToolBase extends ToolbarToolBase {
|
|
|
34472
35340
|
get isSelectionPresent() {
|
|
34473
35341
|
return isPresent$1(this.lastSelectionIndex) && this.lastSelectionIndex > -1;
|
|
34474
35342
|
}
|
|
34475
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarEditingToolBase, deps: [{ token:
|
|
35343
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarEditingToolBase, deps: [{ token: i54.ToolBarButtonComponent }, { token: 'command' }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: EditService }, { token: SelectionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
34476
35344
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarEditingToolBase, usesInheritance: true, ngImport: i0 });
|
|
34477
35345
|
}
|
|
34478
35346
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarEditingToolBase, decorators: [{
|
|
34479
35347
|
type: Directive,
|
|
34480
35348
|
args: [{}]
|
|
34481
|
-
}], ctorParameters: function () { return [{ type:
|
|
35349
|
+
}], ctorParameters: function () { return [{ type: i54.ToolBarButtonComponent }, { type: undefined, decorators: [{
|
|
34482
35350
|
type: Inject,
|
|
34483
35351
|
args: ['command']
|
|
34484
35352
|
}] }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: EditService }, { type: SelectionService }]; } });
|
|
@@ -34518,7 +35386,7 @@ class AddCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
34518
35386
|
e.preventDefault();
|
|
34519
35387
|
this.editService.beginAdd();
|
|
34520
35388
|
}
|
|
34521
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
35389
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddCommandToolbarDirective, deps: [{ token: EditService }, { token: i54.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
34522
35390
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: AddCommandToolbarDirective, isStandalone: true, selector: "[kendoGridAddTool]", usesInheritance: true, ngImport: i0 });
|
|
34523
35391
|
}
|
|
34524
35392
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddCommandToolbarDirective, decorators: [{
|
|
@@ -34527,7 +35395,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
34527
35395
|
selector: '[kendoGridAddTool]',
|
|
34528
35396
|
standalone: true
|
|
34529
35397
|
}]
|
|
34530
|
-
}], ctorParameters: function () { return [{ type: EditService }, { type:
|
|
35398
|
+
}], ctorParameters: function () { return [{ type: EditService }, { type: i54.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
34531
35399
|
|
|
34532
35400
|
/**
|
|
34533
35401
|
* @hidden
|
|
@@ -35078,7 +35946,7 @@ class UndoCommandToolbarDirective {
|
|
|
35078
35946
|
e.preventDefault();
|
|
35079
35947
|
this.undoRedoService.onUndo.next();
|
|
35080
35948
|
}
|
|
35081
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UndoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token:
|
|
35949
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UndoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token: i54.ToolBarButtonComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35082
35950
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: UndoCommandToolbarDirective, isStandalone: true, selector: "[kendoGridUndoTool]", ngImport: i0 });
|
|
35083
35951
|
}
|
|
35084
35952
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UndoCommandToolbarDirective, decorators: [{
|
|
@@ -35087,7 +35955,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35087
35955
|
selector: '[kendoGridUndoTool]',
|
|
35088
35956
|
standalone: true,
|
|
35089
35957
|
}]
|
|
35090
|
-
}], ctorParameters: function () { return [{ type: UndoRedoService }, { type:
|
|
35958
|
+
}], ctorParameters: function () { return [{ type: UndoRedoService }, { type: i54.ToolBarButtonComponent }]; } });
|
|
35091
35959
|
|
|
35092
35960
|
/**
|
|
35093
35961
|
* Represents the command that triggers the redo action in the Grid.
|
|
@@ -35141,7 +36009,7 @@ class RedoCommandToolbarDirective {
|
|
|
35141
36009
|
e.preventDefault();
|
|
35142
36010
|
this.undoRedoService.onRedo.next();
|
|
35143
36011
|
}
|
|
35144
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RedoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token:
|
|
36012
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RedoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token: i54.ToolBarButtonComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35145
36013
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: RedoCommandToolbarDirective, isStandalone: true, selector: "[kendoGridRedoTool]", ngImport: i0 });
|
|
35146
36014
|
}
|
|
35147
36015
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RedoCommandToolbarDirective, decorators: [{
|
|
@@ -35150,7 +36018,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35150
36018
|
selector: '[kendoGridRedoTool]',
|
|
35151
36019
|
standalone: true,
|
|
35152
36020
|
}]
|
|
35153
|
-
}], ctorParameters: function () { return [{ type: UndoRedoService }, { type:
|
|
36021
|
+
}], ctorParameters: function () { return [{ type: UndoRedoService }, { type: i54.ToolBarButtonComponent }]; } });
|
|
35154
36022
|
|
|
35155
36023
|
let incrementingId$2 = 0;
|
|
35156
36024
|
/**
|
|
@@ -35341,7 +36209,7 @@ class SortCommandToolbarDirective {
|
|
|
35341
36209
|
get buttonElement() {
|
|
35342
36210
|
return this.host.getButton();
|
|
35343
36211
|
}
|
|
35344
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token:
|
|
36212
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token: i54.ToolBarButtonComponent }, { token: i2.PopupService }, { token: ContextService }, { token: SortService }, { token: ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35345
36213
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SortCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSortTool]", ngImport: i0 });
|
|
35346
36214
|
}
|
|
35347
36215
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SortCommandToolbarDirective, decorators: [{
|
|
@@ -35350,7 +36218,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35350
36218
|
selector: '[kendoGridSortTool]',
|
|
35351
36219
|
standalone: true
|
|
35352
36220
|
}]
|
|
35353
|
-
}], ctorParameters: function () { return [{ type:
|
|
36221
|
+
}], ctorParameters: function () { return [{ type: i54.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: SortService }, { type: ColumnInfoService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }]; } });
|
|
35354
36222
|
|
|
35355
36223
|
/**
|
|
35356
36224
|
* @hidden
|
|
@@ -35673,7 +36541,7 @@ class FilterCommandToolbarDirective {
|
|
|
35673
36541
|
get buttonElement() {
|
|
35674
36542
|
return this.host.getButton();
|
|
35675
36543
|
}
|
|
35676
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token:
|
|
36544
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token: i54.ToolBarButtonComponent }, { token: i2.PopupService }, { token: ContextService }, { token: FilterService }, { token: ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35677
36545
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FilterCommandToolbarDirective, isStandalone: true, selector: "[kendoGridFilterTool]", ngImport: i0 });
|
|
35678
36546
|
}
|
|
35679
36547
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterCommandToolbarDirective, decorators: [{
|
|
@@ -35682,7 +36550,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35682
36550
|
selector: '[kendoGridFilterTool]',
|
|
35683
36551
|
standalone: true
|
|
35684
36552
|
}]
|
|
35685
|
-
}], ctorParameters: function () { return [{ type:
|
|
36553
|
+
}], ctorParameters: function () { return [{ type: i54.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: FilterService }, { type: ColumnInfoService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }]; } });
|
|
35686
36554
|
|
|
35687
36555
|
/**
|
|
35688
36556
|
* Represents the `edit` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -35718,7 +36586,7 @@ class EditCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
35718
36586
|
}
|
|
35719
36587
|
this.editService.beginEdit(this.lastSelectionIndex);
|
|
35720
36588
|
}
|
|
35721
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
36589
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditCommandToolbarDirective, deps: [{ token: EditService }, { token: i54.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35722
36590
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EditCommandToolbarDirective, isStandalone: true, selector: "[kendoGridEditTool]", usesInheritance: true, ngImport: i0 });
|
|
35723
36591
|
}
|
|
35724
36592
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditCommandToolbarDirective, decorators: [{
|
|
@@ -35727,7 +36595,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35727
36595
|
selector: '[kendoGridEditTool]',
|
|
35728
36596
|
standalone: true
|
|
35729
36597
|
}]
|
|
35730
|
-
}], ctorParameters: function () { return [{ type: EditService }, { type:
|
|
36598
|
+
}], ctorParameters: function () { return [{ type: EditService }, { type: i54.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
35731
36599
|
|
|
35732
36600
|
/**
|
|
35733
36601
|
* Represents the `save` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -35768,7 +36636,7 @@ class SaveCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
35768
36636
|
this.editService.editedIndices.forEach(i => this.editService.save(i.index));
|
|
35769
36637
|
}
|
|
35770
36638
|
}
|
|
35771
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SaveCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
36639
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SaveCommandToolbarDirective, deps: [{ token: EditService }, { token: i54.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35772
36640
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SaveCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSaveTool]", usesInheritance: true, ngImport: i0 });
|
|
35773
36641
|
}
|
|
35774
36642
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SaveCommandToolbarDirective, decorators: [{
|
|
@@ -35777,7 +36645,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35777
36645
|
selector: '[kendoGridSaveTool]',
|
|
35778
36646
|
standalone: true
|
|
35779
36647
|
}]
|
|
35780
|
-
}], ctorParameters: function () { return [{ type: EditService }, { type:
|
|
36648
|
+
}], ctorParameters: function () { return [{ type: EditService }, { type: i54.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
35781
36649
|
|
|
35782
36650
|
/**
|
|
35783
36651
|
* Represents the `remove` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -35814,7 +36682,7 @@ class RemoveCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
35814
36682
|
this.editService.remove(this.lastSelectionIndex);
|
|
35815
36683
|
}
|
|
35816
36684
|
}
|
|
35817
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RemoveCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
36685
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RemoveCommandToolbarDirective, deps: [{ token: EditService }, { token: i54.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35818
36686
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: RemoveCommandToolbarDirective, isStandalone: true, selector: "[kendoGridRemoveTool]", usesInheritance: true, ngImport: i0 });
|
|
35819
36687
|
}
|
|
35820
36688
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RemoveCommandToolbarDirective, decorators: [{
|
|
@@ -35823,7 +36691,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35823
36691
|
selector: '[kendoGridRemoveTool]',
|
|
35824
36692
|
standalone: true
|
|
35825
36693
|
}]
|
|
35826
|
-
}], ctorParameters: function () { return [{ type: EditService }, { type:
|
|
36694
|
+
}], ctorParameters: function () { return [{ type: EditService }, { type: i54.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
35827
36695
|
|
|
35828
36696
|
/**
|
|
35829
36697
|
* Represents the `cancel` command in the Grid.
|
|
@@ -35863,7 +36731,7 @@ class CancelCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
35863
36731
|
this.editService.editedIndices.forEach(i => this.editService.endEdit(i.index));
|
|
35864
36732
|
}
|
|
35865
36733
|
}
|
|
35866
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CancelCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
36734
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CancelCommandToolbarDirective, deps: [{ token: EditService }, { token: i54.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35867
36735
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: CancelCommandToolbarDirective, isStandalone: true, selector: "[kendoGridCancelTool]", usesInheritance: true, ngImport: i0 });
|
|
35868
36736
|
}
|
|
35869
36737
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CancelCommandToolbarDirective, decorators: [{
|
|
@@ -35872,7 +36740,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35872
36740
|
selector: '[kendoGridCancelTool]',
|
|
35873
36741
|
standalone: true
|
|
35874
36742
|
}]
|
|
35875
|
-
}], ctorParameters: function () { return [{ type: EditService }, { type:
|
|
36743
|
+
}], ctorParameters: function () { return [{ type: EditService }, { type: i54.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
|
|
35876
36744
|
|
|
35877
36745
|
let incrementingId = 0;
|
|
35878
36746
|
/**
|
|
@@ -36053,7 +36921,7 @@ class GroupCommandToolbarDirective {
|
|
|
36053
36921
|
isGroupingApplied(group) {
|
|
36054
36922
|
return isPresent$1(group) && group.length > 0;
|
|
36055
36923
|
}
|
|
36056
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupCommandToolbarDirective, deps: [{ token:
|
|
36924
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupCommandToolbarDirective, deps: [{ token: i54.ToolBarButtonComponent }, { token: i2.PopupService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
36057
36925
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GroupCommandToolbarDirective, isStandalone: true, selector: "[kendoGridGroupTool]", ngImport: i0 });
|
|
36058
36926
|
}
|
|
36059
36927
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupCommandToolbarDirective, decorators: [{
|
|
@@ -36062,7 +36930,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
36062
36930
|
selector: '[kendoGridGroupTool]',
|
|
36063
36931
|
standalone: true
|
|
36064
36932
|
}]
|
|
36065
|
-
}], ctorParameters: function () { return [{ type:
|
|
36933
|
+
}], ctorParameters: function () { return [{ type: i54.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }]; } });
|
|
36066
36934
|
|
|
36067
36935
|
/**
|
|
36068
36936
|
* Stores the row and cell highlight state of the Grid.
|
|
@@ -36187,6 +37055,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
36187
37055
|
type: Input
|
|
36188
37056
|
}] } });
|
|
36189
37057
|
|
|
37058
|
+
/**
|
|
37059
|
+
* Represents the toolbar tool for showing a select-all `kendoGridSelectAllCheckbox` checkbox.
|
|
37060
|
+
* Use this component inside a ToolbarComponent in the Grid.
|
|
37061
|
+
*
|
|
37062
|
+
* @example
|
|
37063
|
+
* ```html
|
|
37064
|
+
* <kendo-grid>
|
|
37065
|
+
* <kendo-toolbar>
|
|
37066
|
+
* <kendo-grid-select-all-tool text="Select All"></kendo-grid-select-all-tool>
|
|
37067
|
+
* </kendo-toolbar>
|
|
37068
|
+
* </kendo-grid>
|
|
37069
|
+
* ```
|
|
37070
|
+
*/
|
|
37071
|
+
class SelectAllToolbarToolComponent extends ToolBarToolComponent {
|
|
37072
|
+
idService;
|
|
37073
|
+
ctx;
|
|
37074
|
+
constructor(idService, ctx) {
|
|
37075
|
+
super();
|
|
37076
|
+
this.idService = idService;
|
|
37077
|
+
this.ctx = ctx;
|
|
37078
|
+
}
|
|
37079
|
+
/**
|
|
37080
|
+
* @hidden
|
|
37081
|
+
*/
|
|
37082
|
+
selectAllCheckboxId() {
|
|
37083
|
+
return this.idService.selectAllCheckboxId();
|
|
37084
|
+
}
|
|
37085
|
+
/**
|
|
37086
|
+
* @hidden
|
|
37087
|
+
*/
|
|
37088
|
+
get selectAllCheckboxLabel() {
|
|
37089
|
+
return this.ctx.localization.get('selectAllCheckboxLabel');
|
|
37090
|
+
}
|
|
37091
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectAllToolbarToolComponent, deps: [{ token: IdService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
37092
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SelectAllToolbarToolComponent, isStandalone: true, selector: "kendo-grid-select-all-tool", providers: [
|
|
37093
|
+
{
|
|
37094
|
+
provide: ToolBarToolComponent,
|
|
37095
|
+
useExisting: forwardRef(() => SelectAllToolbarToolComponent)
|
|
37096
|
+
}
|
|
37097
|
+
], usesInheritance: true, ngImport: i0, template: `
|
|
37098
|
+
<ng-template #toolbarTemplate #sectionTemplate #popupTemplate>
|
|
37099
|
+
<kendo-checkbox #checkbox
|
|
37100
|
+
[attr.id]="selectAllCheckboxId()"
|
|
37101
|
+
size="large"
|
|
37102
|
+
[inputAttributes]="{'aria-label': selectAllCheckboxLabel}"
|
|
37103
|
+
kendoGridSelectAllCheckbox
|
|
37104
|
+
kendoGridFocusable
|
|
37105
|
+
></kendo-checkbox>
|
|
37106
|
+
<label class="k-checkbox-label" [for]="checkbox.focusableId">{{selectAllCheckboxLabel}}</label>
|
|
37107
|
+
</ng-template>
|
|
37108
|
+
`, isInline: true, dependencies: [{ kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }, { kind: "directive", type: SelectAllCheckboxDirective, selector: "[kendoGridSelectAllCheckbox]", inputs: ["state"], outputs: ["selectAllChange"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { kind: "directive", type: LabelDirective, selector: "label[for]", inputs: ["for", "labelClass"] }] });
|
|
37109
|
+
}
|
|
37110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectAllToolbarToolComponent, decorators: [{
|
|
37111
|
+
type: Component,
|
|
37112
|
+
args: [{
|
|
37113
|
+
providers: [
|
|
37114
|
+
{
|
|
37115
|
+
provide: ToolBarToolComponent,
|
|
37116
|
+
useExisting: forwardRef(() => SelectAllToolbarToolComponent)
|
|
37117
|
+
}
|
|
37118
|
+
],
|
|
37119
|
+
selector: 'kendo-grid-select-all-tool',
|
|
37120
|
+
template: `
|
|
37121
|
+
<ng-template #toolbarTemplate #sectionTemplate #popupTemplate>
|
|
37122
|
+
<kendo-checkbox #checkbox
|
|
37123
|
+
[attr.id]="selectAllCheckboxId()"
|
|
37124
|
+
size="large"
|
|
37125
|
+
[inputAttributes]="{'aria-label': selectAllCheckboxLabel}"
|
|
37126
|
+
kendoGridSelectAllCheckbox
|
|
37127
|
+
kendoGridFocusable
|
|
37128
|
+
></kendo-checkbox>
|
|
37129
|
+
<label class="k-checkbox-label" [for]="checkbox.focusableId">{{selectAllCheckboxLabel}}</label>
|
|
37130
|
+
</ng-template>
|
|
37131
|
+
`,
|
|
37132
|
+
standalone: true,
|
|
37133
|
+
imports: [CheckBoxComponent, SelectAllCheckboxDirective, FocusableDirective, LabelDirective]
|
|
37134
|
+
}]
|
|
37135
|
+
}], ctorParameters: function () { return [{ type: IdService }, { type: ContextService }]; } });
|
|
37136
|
+
|
|
36190
37137
|
// DRAGGABLE COLUMN
|
|
36191
37138
|
/**
|
|
36192
37139
|
* @hidden
|
|
@@ -36417,7 +37364,8 @@ const KENDO_GRID_BODY_EXPORTS = [
|
|
|
36417
37364
|
SortCommandToolbarDirective,
|
|
36418
37365
|
FilterCommandToolbarDirective,
|
|
36419
37366
|
AIAssistantToolbarDirective,
|
|
36420
|
-
GroupCommandToolbarDirective
|
|
37367
|
+
GroupCommandToolbarDirective,
|
|
37368
|
+
SelectAllToolbarToolComponent
|
|
36421
37369
|
];
|
|
36422
37370
|
/**
|
|
36423
37371
|
* @hidden
|
|
@@ -36559,9 +37507,9 @@ const KENDO_GRID = [
|
|
|
36559
37507
|
*/
|
|
36560
37508
|
class GridModule {
|
|
36561
37509
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
36562
|
-
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, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FooterComponent,
|
|
37510
|
+
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, ColumnMenuChooserItemCheckedDirective, 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, GroupBindingDirective, 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,
|
|
36563
37511
|
UndoCommandToolbarDirective,
|
|
36564
|
-
RedoCommandToolbarDirective], exports: [GridComponent, ToolbarTemplateDirective, ToolbarComponent, GridSpacerComponent, StatusBarTemplateDirective, DataBindingDirective, SelectionDirective, HighlightDirective, CustomMessagesComponent, GroupBindingDirective, 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, 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,
|
|
37512
|
+
RedoCommandToolbarDirective], exports: [GridComponent, ToolbarTemplateDirective, ToolbarComponent, GridSpacerComponent, StatusBarTemplateDirective, DataBindingDirective, SelectionDirective, HighlightDirective, CustomMessagesComponent, GroupBindingDirective, 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] });
|
|
36565
37513
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridModule, providers: [
|
|
36566
37514
|
PopupService,
|
|
36567
37515
|
ResizeBatchService,
|
|
@@ -36576,7 +37524,7 @@ class GridModule {
|
|
|
36576
37524
|
MonthViewService,
|
|
36577
37525
|
YearViewService,
|
|
36578
37526
|
NavigationService$1
|
|
36579
|
-
], imports: [GroupHeaderComponent, GroupPanelComponent, TableBodyComponent, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, HeaderComponent,
|
|
37527
|
+
], imports: [GroupHeaderComponent, GroupPanelComponent, TableBodyComponent, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, SelectAllToolbarToolComponent, HeaderComponent, i53.CustomMessagesComponent, i53.PagerInfoComponent, i53.PagerInputComponent, i53.PagerNextButtonsComponent, i53.PagerNumericButtonsComponent, i53.PagerPageSizesComponent, i53.PagerPrevButtonsComponent, i53.PagerComponent, i53.PagerSpacerComponent, i54.ToolBarComponent, i54.ToolbarCustomMessagesComponent, i54.ToolBarButtonComponent, i54.ToolBarButtonGroupComponent, i54.ToolBarDropDownButtonComponent, i54.ToolBarSeparatorComponent, i54.ToolBarSpacerComponent, i54.ToolBarSplitButtonComponent, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellWrapperComponent, DateFilterCellComponent, FilterCellOperatorsComponent, FilterCellOperatorsComponent, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, BooleanFilterMenuComponent, ColumnListComponent, ColumnChooserComponent, ColumnMenuChooserComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuSortComponent, ColumnMenuComponent, ColumnMenuLockComponent, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridComponent, ListComponent, FormComponent, DialogFormComponent, FormFormFieldComponent, i54.ToolBarComponent, i54.ToolbarCustomMessagesComponent, i54.ToolBarButtonComponent, i54.ToolBarButtonGroupComponent, i54.ToolBarDropDownButtonComponent, i54.ToolBarSeparatorComponent, i54.ToolBarSpacerComponent, i54.ToolBarSplitButtonComponent] });
|
|
36580
37528
|
}
|
|
36581
37529
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridModule, decorators: [{
|
|
36582
37530
|
type: NgModule,
|
|
@@ -36688,5 +37636,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
36688
37636
|
* Generated bundle index. Do not edit.
|
|
36689
37637
|
*/
|
|
36690
37638
|
|
|
36691
|
-
export { AIAssistantToolbarDirective, AddCommandDirective, AddCommandToolbarDirective, AfterEqFilterOperatorComponent, AfterFilterOperatorComponent, AutoCompleteFilterCellComponent, BaseFilterCellComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, BooleanFilterCellComponent, BooleanFilterComponent, BooleanFilterMenuComponent, BooleanFilterRadioButtonDirective, BrowserSupportService, CELL_CONTEXT, CancelCommandDirective, CancelCommandToolbarDirective, CellCloseEvent, CellComponent, CellLoadingTemplateDirective, CellSelectionAggregateService, CellSelectionService, CellTemplateDirective, ChangeNotificationService, CheckboxColumnComponent, ColGroupComponent, ColumnBase, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnComponent, ColumnGroupComponent, ColumnHandleDirective, ColumnInfoService, ColumnListComponent, ColumnLockedChangeEvent, ColumnMenuAutoSizeAllColumnsComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuChooserComponent, ColumnMenuComponent, ColumnMenuContainerComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuItemDirective, ColumnMenuLockComponent, ColumnMenuPositionComponent, ColumnMenuService, ColumnMenuSortComponent, ColumnMenuStickComponent, ColumnMenuTemplateDirective, ColumnReorderEvent, ColumnReorderService, ColumnResizingService, ColumnStickyChangeEvent, ColumnVisibilityChangeEvent, ColumnsContainer, CommandColumnComponent, ContainsFilterOperatorComponent, ContextService, CustomMessagesComponent, DEFAULT_AI_REQUEST_OPTIONS, DEFAULT_SCROLLER_FACTORY, DataBindingDirective, DateFilterCellComponent, DateFilterComponent, DateFilterMenuComponent, DateFilterMenuInputComponent, DetailCollapseEvent, DetailExpandEvent, DetailTemplateDirective, DetailsService, DoesNotContainFilterOperatorComponent, DomEventsService, DragAndDropService, DragHintService, DropCueService, EditCommandDirective, EditCommandToolbarDirective, EditService as EditServiceClass, EditTemplateDirective, EditingDirectiveBase, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, ExcelCommandDirective, ExcelCommandToolbarDirective, ExcelComponent, ExcelExportEvent, ExcelModule, ExcelService, ExpandDetailsDirective, ExpandGroupDirective, ExternalEditingDirective, FieldAccessorPipe, FilterCellComponent, FilterCellHostDirective, FilterCellOperatorsComponent, FilterCellTemplateDirective, FilterCellWrapperComponent, FilterCommandToolbarDirective, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuDropDownListDirective, FilterMenuHostDirective, FilterMenuInputWrapperComponent, FilterMenuTemplateDirective, FilterRowComponent, FilterService, FocusRoot, FocusableDirective, FooterComponent, FooterTemplateDirective, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, GridClipboardDirective, GridComponent, GridModule, GridSpacerComponent, GridTableDirective, GridToolbarFocusableDirective, GridToolbarNavigationService, GroupBindingDirective, GroupCommandToolbarDirective, GroupFooterTemplateDirective, GroupHeaderColumnTemplateDirective, GroupHeaderComponent, GroupHeaderTemplateDirective, GroupInfoService, GroupPanelComponent, GroupsService, HeaderComponent, HeaderTemplateDirective, HighlightDirective, IdService, InCellEditingDirective, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, KENDO_GRID, KENDO_GRID_BODY_EXPORTS, KENDO_GRID_COLUMN_DRAGANDDROP, KENDO_GRID_COLUMN_MENU_DECLARATIONS, KENDO_GRID_COLUMN_MENU_EXPORTS, KENDO_GRID_DECLARATIONS, KENDO_GRID_EXCEL_EXPORT, KENDO_GRID_EXPORTS, KENDO_GRID_FILTER_MENU, KENDO_GRID_FILTER_MENU_EXPORTS, KENDO_GRID_FILTER_OPERATORS, KENDO_GRID_FILTER_ROW, KENDO_GRID_FILTER_ROW_EXPORTS, KENDO_GRID_FILTER_SHARED, KENDO_GRID_FOOTER_EXPORTS, KENDO_GRID_GROUP_EXPORTS, KENDO_GRID_HEADER_EXPORTS, KENDO_GRID_PDF_EXPORT, KENDO_GRID_SHARED, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, ListComponent, LoadingComponent, LoadingTemplateDirective, LocalDataChangesService, LogicalCellDirective, LogicalRowDirective, MenuTabbingService, NavigationService, NoRecordsTemplateDirective, NotEqualFilterOperatorComponent, NumericFilterCellComponent, NumericFilterComponent, NumericFilterMenuComponent, NumericFilterMenuInputComponent, PDFCommandDirective, PDFCommandToolbarDirective, PDFComponent, PDFMarginComponent, PDFModule, PDFService, PDFTemplateDirective, PopupCloseEvent, ReactiveEditingDirective, RedoCommandToolbarDirective, RemoveCommandDirective, RemoveCommandToolbarDirective, ResizableContainerDirective, ResizeService, ResponsiveService, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, RowEditingDirectiveBase, RowReorderColumnComponent, RowReorderService, SaveCommandDirective, SaveCommandToolbarDirective, ScrollRequestService, ScrollSyncService, SelectAllCheckboxDirective, SelectionCheckboxDirective, SelectionDirective, SelectionService, SinglePopupService, SizingOptionsService, Skip, SortCommandToolbarDirective, SortService, SpanColumnComponent, StartsWithFilterOperatorComponent, StatusBarTemplateDirective, StringFilterCellComponent, StringFilterComponent, StringFilterMenuComponent, StringFilterMenuInputComponent, SuspendService, TableBodyComponent, TableDirective, TemplateEditingDirective, ToolbarComponent, ToolbarTemplateDirective, UndoCommandToolbarDirective, UndoRedoDirective, UndoRedoEvent, convertDateStringsInFilter, count, defaultTrackBy, hasFilterMenu, hasFilterRow, isDateField, isFilterable, slice };
|
|
37639
|
+
export { AIAssistantToolbarDirective, AddCommandDirective, AddCommandToolbarDirective, AfterEqFilterOperatorComponent, AfterFilterOperatorComponent, AutoCompleteFilterCellComponent, BaseFilterCellComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, BooleanFilterCellComponent, BooleanFilterComponent, BooleanFilterMenuComponent, BooleanFilterRadioButtonDirective, BrowserSupportService, CELL_CONTEXT, CancelCommandDirective, CancelCommandToolbarDirective, CellCloseEvent, CellComponent, CellLoadingTemplateDirective, CellSelectionAggregateService, CellSelectionService, CellTemplateDirective, ChangeNotificationService, CheckboxColumnComponent, ColGroupComponent, ColumnBase, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnComponent, ColumnGroupComponent, ColumnHandleDirective, ColumnInfoService, ColumnListComponent, ColumnLockedChangeEvent, ColumnMenuAutoSizeAllColumnsComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuChooserComponent, ColumnMenuComponent, ColumnMenuContainerComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuItemDirective, ColumnMenuLockComponent, ColumnMenuPositionComponent, ColumnMenuService, ColumnMenuSortComponent, ColumnMenuStickComponent, ColumnMenuTemplateDirective, ColumnReorderEvent, ColumnReorderService, ColumnResizingService, ColumnStickyChangeEvent, ColumnVisibilityChangeEvent, ColumnsContainer, CommandColumnComponent, ContainsFilterOperatorComponent, ContextService, CustomMessagesComponent, DEFAULT_AI_REQUEST_OPTIONS, DEFAULT_SCROLLER_FACTORY, DataBindingDirective, DateFilterCellComponent, DateFilterComponent, DateFilterMenuComponent, DateFilterMenuInputComponent, DetailCollapseEvent, DetailExpandEvent, DetailTemplateDirective, DetailsService, DoesNotContainFilterOperatorComponent, DomEventsService, DragAndDropService, DragHintService, DropCueService, EditCommandDirective, EditCommandToolbarDirective, EditService as EditServiceClass, EditTemplateDirective, EditingDirectiveBase, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, ExcelCommandDirective, ExcelCommandToolbarDirective, ExcelComponent, ExcelExportEvent, ExcelModule, ExcelService, ExpandDetailsDirective, ExpandGroupDirective, ExternalEditingDirective, FieldAccessorPipe, FilterCellComponent, FilterCellHostDirective, FilterCellOperatorsComponent, FilterCellTemplateDirective, FilterCellWrapperComponent, FilterCommandToolbarDirective, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuDropDownListDirective, FilterMenuHostDirective, FilterMenuInputWrapperComponent, FilterMenuTemplateDirective, FilterRowComponent, FilterService, FocusRoot, FocusableDirective, FooterComponent, FooterTemplateDirective, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, GridClipboardDirective, GridComponent, GridModule, GridSpacerComponent, GridTableDirective, GridToolbarFocusableDirective, GridToolbarNavigationService, GroupBindingDirective, GroupCommandToolbarDirective, GroupFooterTemplateDirective, GroupHeaderColumnTemplateDirective, GroupHeaderComponent, GroupHeaderTemplateDirective, GroupInfoService, GroupPanelComponent, GroupsService, HeaderComponent, HeaderTemplateDirective, HighlightDirective, IdService, InCellEditingDirective, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, KENDO_GRID, KENDO_GRID_BODY_EXPORTS, KENDO_GRID_COLUMN_DRAGANDDROP, KENDO_GRID_COLUMN_MENU_DECLARATIONS, KENDO_GRID_COLUMN_MENU_EXPORTS, KENDO_GRID_DECLARATIONS, KENDO_GRID_EXCEL_EXPORT, KENDO_GRID_EXPORTS, KENDO_GRID_FILTER_MENU, KENDO_GRID_FILTER_MENU_EXPORTS, KENDO_GRID_FILTER_OPERATORS, KENDO_GRID_FILTER_ROW, KENDO_GRID_FILTER_ROW_EXPORTS, KENDO_GRID_FILTER_SHARED, KENDO_GRID_FOOTER_EXPORTS, KENDO_GRID_GROUP_EXPORTS, KENDO_GRID_HEADER_EXPORTS, KENDO_GRID_PDF_EXPORT, KENDO_GRID_SHARED, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, ListComponent, LoadingComponent, LoadingTemplateDirective, LocalDataChangesService, LogicalCellDirective, LogicalRowDirective, MenuTabbingService, NavigationService, NoRecordsTemplateDirective, NotEqualFilterOperatorComponent, NumericFilterCellComponent, NumericFilterComponent, NumericFilterMenuComponent, NumericFilterMenuInputComponent, PDFCommandDirective, PDFCommandToolbarDirective, PDFComponent, PDFMarginComponent, PDFModule, PDFService, PDFTemplateDirective, PopupCloseEvent, ReactiveEditingDirective, RedoCommandToolbarDirective, RemoveCommandDirective, RemoveCommandToolbarDirective, ResizableContainerDirective, ResizeService, ResponsiveService, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, RowEditingDirectiveBase, RowReorderColumnComponent, RowReorderService, SaveCommandDirective, SaveCommandToolbarDirective, ScrollRequestService, ScrollSyncService, SelectAllCheckboxDirective, SelectAllToolbarToolComponent, SelectionCheckboxDirective, SelectionDirective, SelectionService, SinglePopupService, SizingOptionsService, Skip, SortCommandToolbarDirective, SortService, SpanColumnComponent, StartsWithFilterOperatorComponent, StatusBarTemplateDirective, StringFilterCellComponent, StringFilterComponent, StringFilterMenuComponent, StringFilterMenuInputComponent, SuspendService, TableBodyComponent, TableDirective, TemplateEditingDirective, ToolbarComponent, ToolbarTemplateDirective, UndoCommandToolbarDirective, UndoRedoDirective, UndoRedoEvent, convertDateStringsInFilter, count, defaultTrackBy, hasFilterMenu, hasFilterRow, isDateField, isFilterable, slice };
|
|
36692
37640
|
|