@progress/kendo-angular-grid 18.2.1-develop.3 → 18.3.0-develop.1

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.
Files changed (51) hide show
  1. package/column-menu/column-chooser.component.d.ts +1 -4
  2. package/column-menu/column-list.component.d.ts +1 -2
  3. package/column-menu/column-menu-item.component.d.ts +2 -2
  4. package/column-menu/column-menu.component.d.ts +1 -0
  5. package/column-menu/column-menu.service.d.ts +4 -4
  6. package/column-menu/utils.d.ts +2 -2
  7. package/esm2022/column-menu/column-chooser.component.mjs +2 -5
  8. package/esm2022/column-menu/column-list-kb-nav.service.mjs +1 -1
  9. package/esm2022/column-menu/column-list.component.mjs +25 -19
  10. package/esm2022/column-menu/column-menu.component.mjs +10 -17
  11. package/esm2022/column-menu/column-menu.service.mjs +6 -6
  12. package/esm2022/column-menu/utils.mjs +2 -3
  13. package/esm2022/filtering/cell/date-filter-cell.component.mjs +5 -22
  14. package/esm2022/filtering/cell/numeric-filter-cell.component.mjs +4 -8
  15. package/esm2022/filtering/cell/string-filter-cell.component.mjs +0 -2
  16. package/esm2022/filtering/menu/boolean-filter-menu.component.mjs +1 -1
  17. package/esm2022/filtering/menu/date-filter-menu-input.component.mjs +6 -12
  18. package/esm2022/filtering/menu/date-filter-menu.component.mjs +4 -8
  19. package/esm2022/filtering/menu/filter-menu-container.component.mjs +1 -3
  20. package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +2 -2
  21. package/esm2022/filtering/menu/filter-menu.component.mjs +8 -17
  22. package/esm2022/filtering/menu/numeric-filter-menu-input.component.mjs +6 -12
  23. package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +4 -8
  24. package/esm2022/filtering/menu/string-filter-menu-input.component.mjs +2 -4
  25. package/esm2022/filtering/operators/after-eq-filter-operator.component.mjs +2 -2
  26. package/esm2022/filtering/operators/after-filter-operator.component.mjs +2 -2
  27. package/esm2022/filtering/operators/before-eq-filter-operator.component.mjs +2 -2
  28. package/esm2022/filtering/operators/before-filter-operator.component.mjs +2 -2
  29. package/esm2022/filtering/operators/contains-filter-operator.component.mjs +1 -1
  30. package/esm2022/filtering/operators/ends-with-filter-operator.component.mjs +1 -1
  31. package/esm2022/filtering/operators/eq-filter-operator.component.mjs +1 -1
  32. package/esm2022/filtering/operators/filter-operator.base.mjs +18 -18
  33. package/esm2022/filtering/operators/gt-filter-operator.component.mjs +1 -1
  34. package/esm2022/filtering/operators/gte-filter-operator.component.mjs +1 -1
  35. package/esm2022/filtering/operators/is-empty-filter-operator.component.mjs +1 -1
  36. package/esm2022/filtering/operators/is-not-empty-filter-operator.component.mjs +1 -1
  37. package/esm2022/filtering/operators/is-not-null-filter-operator.component.mjs +1 -1
  38. package/esm2022/filtering/operators/isnull-filter-operator.component.mjs +1 -1
  39. package/esm2022/filtering/operators/lt-filter-operator.component.mjs +1 -1
  40. package/esm2022/filtering/operators/lte-filter-operator.component.mjs +1 -1
  41. package/esm2022/filtering/operators/neq-filter-operator.component.mjs +1 -1
  42. package/esm2022/filtering/operators/not-contains-filter-operator.component.mjs +1 -1
  43. package/esm2022/filtering/operators/starts-with-filter-operator.component.mjs +1 -1
  44. package/esm2022/grid.component.mjs +2 -0
  45. package/esm2022/package-metadata.mjs +2 -2
  46. package/esm2022/rendering/header/header.component.mjs +12 -18
  47. package/fesm2022/progress-kendo-angular-grid.mjs +145 -210
  48. package/filtering/cell/date-filter-cell.component.d.ts +1 -14
  49. package/filtering/menu/filter-menu.component.d.ts +1 -0
  50. package/package.json +19 -19
  51. package/schematics/ngAdd/index.js +4 -4
@@ -89,7 +89,7 @@ export class FilterMenuComponent {
89
89
  this.close();
90
90
  this.updateAria(ariaRoot);
91
91
  });
92
- this.popupSubs.add(this.popupRef.popup.instance.close.subscribe(() => {
92
+ this.popupSubs.add(() => this.popupRef.popup.instance.close.subscribe(() => {
93
93
  this.popupRef = null;
94
94
  this.updateAria(ariaRoot);
95
95
  }));
@@ -104,23 +104,13 @@ export class FilterMenuComponent {
104
104
  }
105
105
  }
106
106
  else {
107
- if (this.navigationService.tableEnabled) {
108
- this.navigationService.focusCell(0, this.column.leafIndex);
109
- }
110
- else {
111
- this.anchor.nativeElement.focus();
112
- }
107
+ this.focusRoot();
113
108
  }
114
109
  return false;
115
110
  }
116
111
  close() {
117
112
  this.cleanUp();
118
- if (this.navigationService.tableEnabled) {
119
- this.navigationService.focusCell(0, this.column.leafIndex);
120
- }
121
- else {
122
- this.anchor.nativeElement.focus();
123
- }
113
+ this.focusRoot();
124
114
  }
125
115
  updateAria(ariaRoot) {
126
116
  ariaRoot && this.renderer.removeAttribute(ariaRoot, 'aria-controls');
@@ -133,6 +123,9 @@ export class FilterMenuComponent {
133
123
  this.popupSubs = null;
134
124
  this.cdr.markForCheck();
135
125
  }
126
+ focusRoot() {
127
+ this.isNavigable ? this.navigationService.focusCell(0, this.column.leafIndex) : this.anchor.nativeElement.focus();
128
+ }
136
129
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuComponent, deps: [{ token: i1.FilterService }, { token: i2.SinglePopupService }, { token: i3.ContextService }, { token: i4.NavigationService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i5.IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
137
130
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterMenuComponent, isStandalone: true, selector: "kendo-grid-filter-menu", inputs: { column: "column", filter: "filter", tabIndex: "tabIndex" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
138
131
  <a #anchor
@@ -155,8 +148,7 @@ export class FilterMenuComponent {
155
148
  [filter]="filter"
156
149
  (close)="close()"
157
150
  (keydown.escape)="close()"
158
- (keydown.enter)="$event.stopImmediatePropagation()"
159
- >
151
+ (keydown.enter)="$event.stopImmediatePropagation()">
160
152
  </kendo-grid-filter-menu-container>
161
153
  </ng-template>
162
154
  `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }] });
@@ -186,8 +178,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
186
178
  [filter]="filter"
187
179
  (close)="close()"
188
180
  (keydown.escape)="close()"
189
- (keydown.enter)="$event.stopImmediatePropagation()"
190
- >
181
+ (keydown.enter)="$event.stopImmediatePropagation()">
191
182
  </kendo-grid-filter-menu-container>
192
183
  </ng-template>
193
184
  `,
@@ -88,8 +88,7 @@ export class NumericFilterMenuInputComponent {
88
88
  [currentFilter]="currentFilter"
89
89
  [filterService]="filterService"
90
90
  [isFirstDropDown]="isFirstDropDown"
91
- [menuTabbingService]="menuTabbingService"
92
- >
91
+ [menuTabbingService]="menuTabbingService">
93
92
  <kendo-numerictextbox
94
93
  kendoFilterInput
95
94
  [columnLabel]="columnLabel"
@@ -102,13 +101,11 @@ export class NumericFilterMenuInputComponent {
102
101
  [min]="min"
103
102
  [max]="max"
104
103
  [step]="step"
105
- [placeholder]="placeholder"
106
- >
104
+ [placeholder]="placeholder">
107
105
  <kendo-numerictextbox-messages
108
106
  [increment]="messageFor('filterNumericIncrement')"
109
107
  [decrement]="messageFor('filterNumericDecrement')"
110
- >
111
- </kendo-numerictextbox-messages>
108
+ ></kendo-numerictextbox-messages>
112
109
  </kendo-numerictextbox>
113
110
  </kendo-grid-filter-menu-input-wrapper>
114
111
  `, isInline: true, dependencies: [{ kind: "component", type: FilterMenuInputWrapperComponent, selector: "kendo-grid-filter-menu-input-wrapper", inputs: ["filterService", "isFirstDropDown", "menuTabbingService", "currentFilter"] }, { 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: "directive", type: FilterInputDirective, selector: "[kendoFilterInput]", inputs: ["filterDelay", "columnLabel", "value"] }, { kind: "component", type: NumericTextBoxCustomMessagesComponent, selector: "kendo-numerictextbox-messages" }] });
@@ -126,8 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
126
123
  [currentFilter]="currentFilter"
127
124
  [filterService]="filterService"
128
125
  [isFirstDropDown]="isFirstDropDown"
129
- [menuTabbingService]="menuTabbingService"
130
- >
126
+ [menuTabbingService]="menuTabbingService">
131
127
  <kendo-numerictextbox
132
128
  kendoFilterInput
133
129
  [columnLabel]="columnLabel"
@@ -140,13 +136,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
140
136
  [min]="min"
141
137
  [max]="max"
142
138
  [step]="step"
143
- [placeholder]="placeholder"
144
- >
139
+ [placeholder]="placeholder">
145
140
  <kendo-numerictextbox-messages
146
141
  [increment]="messageFor('filterNumericIncrement')"
147
142
  [decrement]="messageFor('filterNumericDecrement')"
148
- >
149
- </kendo-numerictextbox-messages>
143
+ ></kendo-numerictextbox-messages>
150
144
  </kendo-numerictextbox>
151
145
  </kendo-grid-filter-menu-input-wrapper>
152
146
  `,
@@ -111,8 +111,7 @@ export class NumericFilterMenuComponent extends NumericFilterComponent {
111
111
  [step]="step"
112
112
  [menuTabbingService]="menuTabbingService"
113
113
  [isFirstDropDown]="true"
114
- [placeholder]="placeholder"
115
- >
114
+ [placeholder]="placeholder">
116
115
  </kendo-grid-numeric-filter-menu-input>
117
116
  <kendo-dropdownlist
118
117
  *ngIf="extra"
@@ -140,8 +139,7 @@ export class NumericFilterMenuComponent extends NumericFilterComponent {
140
139
  [max]="max"
141
140
  [step]="step"
142
141
  [menuTabbingService]="menuTabbingService"
143
- [placeholder]="extraPlaceholder"
144
- >
142
+ [placeholder]="extraPlaceholder">
145
143
  </kendo-grid-numeric-filter-menu-input>
146
144
  `, isInline: true, dependencies: [{ kind: "component", type: NumericFilterMenuInputComponent, selector: "kendo-grid-numeric-filter-menu-input", inputs: ["operators", "column", "filter", "operator", "currentFilter", "filterService", "filterDelay", "isFirstDropDown", "menuTabbingService", "step", "min", "max", "spinners", "decimals", "format", "placeholder"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }] });
147
145
  }
@@ -165,8 +163,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
165
163
  [step]="step"
166
164
  [menuTabbingService]="menuTabbingService"
167
165
  [isFirstDropDown]="true"
168
- [placeholder]="placeholder"
169
- >
166
+ [placeholder]="placeholder">
170
167
  </kendo-grid-numeric-filter-menu-input>
171
168
  <kendo-dropdownlist
172
169
  *ngIf="extra"
@@ -194,8 +191,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
194
191
  [max]="max"
195
192
  [step]="step"
196
193
  [menuTabbingService]="menuTabbingService"
197
- [placeholder]="extraPlaceholder"
198
- >
194
+ [placeholder]="extraPlaceholder">
199
195
  </kendo-grid-numeric-filter-menu-input>
200
196
  `,
201
197
  standalone: true,
@@ -47,8 +47,7 @@ export class StringFilterMenuInputComponent {
47
47
  [currentFilter]="currentFilter"
48
48
  [filterService]="filterService"
49
49
  [isFirstDropDown]="isFirstDropDown"
50
- [menuTabbingService]="menuTabbingService"
51
- >
50
+ [menuTabbingService]="menuTabbingService">
52
51
  <kendo-textbox
53
52
  kendoFilterInput
54
53
  [columnLabel]="columnLabel"
@@ -72,8 +71,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
72
71
  [currentFilter]="currentFilter"
73
72
  [filterService]="filterService"
74
73
  [isFirstDropDown]="isFirstDropDown"
75
- [menuTabbingService]="menuTabbingService"
76
- >
74
+ [menuTabbingService]="menuTabbingService">
77
75
  <kendo-textbox
78
76
  kendoFilterInput
79
77
  [columnLabel]="columnLabel"
@@ -12,14 +12,14 @@ import * as i1 from "../../common/provider.service";
12
12
  * [See example](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class AfterEqFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("after-eq", ctx); }
15
+ constructor(ctx) { super('after-eq', ctx); }
16
16
  /**
17
17
  * @hidden
18
18
  */
19
19
  toJSON() {
20
20
  return {
21
21
  text: this.text,
22
- value: "gte"
22
+ value: 'gte'
23
23
  };
24
24
  }
25
25
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AfterEqFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
@@ -12,14 +12,14 @@ import * as i1 from "../../common/provider.service";
12
12
  * [See example](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class AfterFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("after", ctx); }
15
+ constructor(ctx) { super('after', ctx); }
16
16
  /**
17
17
  * @hidden
18
18
  */
19
19
  toJSON() {
20
20
  return {
21
21
  text: this.text,
22
- value: "gt"
22
+ value: 'gt'
23
23
  };
24
24
  }
25
25
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AfterFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
@@ -12,14 +12,14 @@ import * as i1 from "../../common/provider.service";
12
12
  * [See example](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class BeforeEqFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("before-eq", ctx); }
15
+ constructor(ctx) { super('before-eq', ctx); }
16
16
  /**
17
17
  * @hidden
18
18
  */
19
19
  toJSON() {
20
20
  return {
21
21
  text: this.text,
22
- value: "lte"
22
+ value: 'lte'
23
23
  };
24
24
  }
25
25
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BeforeEqFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
@@ -12,14 +12,14 @@ import * as i1 from "../../common/provider.service";
12
12
  * [See example](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class BeforeFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("before", ctx); }
15
+ constructor(ctx) { super('before', ctx); }
16
16
  /**
17
17
  * @hidden
18
18
  */
19
19
  toJSON() {
20
20
  return {
21
21
  text: this.text,
22
- value: "lt"
22
+ value: 'lt'
23
23
  };
24
24
  }
25
25
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BeforeFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
@@ -12,7 +12,7 @@ import * as i1 from "../../common/provider.service";
12
12
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class ContainsFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("contains", ctx); }
15
+ constructor(ctx) { super('contains', ctx); }
16
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContainsFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
17
17
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ContainsFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-contains-operator", providers: [
18
18
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class EndsWithFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("endswith", ctx); }
16
+ constructor(ctx) { super('endswith', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EndsWithFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EndsWithFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-endswith-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class EqualFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("eq", ctx); }
16
+ constructor(ctx) { super('eq', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EqualFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EqualFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-eq-operator", providers: [
19
19
  {
@@ -12,24 +12,24 @@ const localizeOperators = operators => localization => Object.keys(operators).re
12
12
  return acc;
13
13
  }, {});
14
14
  const operatorTexts = localizeOperators({
15
- "filterEqOperator": "eq",
16
- "filterNotEqOperator": "neq",
17
- "filterGteOperator": "gte",
18
- "filterGtOperator": "gt",
19
- "filterLteOperator": "lte",
20
- "filterLtOperator": "lt",
21
- "filterIsNullOperator": "isnull",
22
- "filterIsNotNullOperator": "isnotnull",
23
- "filterIsEmptyOperator": "isempty",
24
- "filterIsNotEmptyOperator": "isnotempty",
25
- "filterContainsOperator": "contains",
26
- "filterNotContainsOperator": "doesnotcontain",
27
- "filterStartsWithOperator": "startswith",
28
- "filterEndsWithOperator": "endswith",
29
- "filterAfterOrEqualOperator": "after-eq",
30
- "filterAfterOperator": "after",
31
- "filterBeforeOrEqualOperator": "before-eq",
32
- "filterBeforeOperator": "before"
15
+ 'filterEqOperator': 'eq',
16
+ 'filterNotEqOperator': 'neq',
17
+ 'filterGteOperator': 'gte',
18
+ 'filterGtOperator': 'gt',
19
+ 'filterLteOperator': 'lte',
20
+ 'filterLtOperator': 'lt',
21
+ 'filterIsNullOperator': 'isnull',
22
+ 'filterIsNotNullOperator': 'isnotnull',
23
+ 'filterIsEmptyOperator': 'isempty',
24
+ 'filterIsNotEmptyOperator': 'isnotempty',
25
+ 'filterContainsOperator': 'contains',
26
+ 'filterNotContainsOperator': 'doesnotcontain',
27
+ 'filterStartsWithOperator': 'startswith',
28
+ 'filterEndsWithOperator': 'endswith',
29
+ 'filterAfterOrEqualOperator': 'after-eq',
30
+ 'filterAfterOperator': 'after',
31
+ 'filterBeforeOrEqualOperator': 'before-eq',
32
+ 'filterBeforeOperator': 'before'
33
33
  });
34
34
  /**
35
35
  * @hidden
@@ -12,7 +12,7 @@ import * as i1 from "../../common/provider.service";
12
12
  * [See example](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class GreaterFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("gt", ctx); }
15
+ constructor(ctx) { super('gt', ctx); }
16
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GreaterFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
17
17
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GreaterFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-gt-operator", providers: [
18
18
  {
@@ -12,7 +12,7 @@ import * as i1 from "../../common/provider.service";
12
12
  * [See example](slug:filter_row#toc-default-filter-operator).
13
13
  */
14
14
  export class GreaterOrEqualToFilterOperatorComponent extends FilterOperatorBase {
15
- constructor(ctx) { super("gte", ctx); }
15
+ constructor(ctx) { super('gte', ctx); }
16
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GreaterOrEqualToFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
17
17
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GreaterOrEqualToFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-gte-operator", providers: [
18
18
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class IsEmptyFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("isempty", ctx); }
16
+ constructor(ctx) { super('isempty', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IsEmptyFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IsEmptyFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-isempty-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class IsNotEmptyFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("isnotempty", ctx); }
16
+ constructor(ctx) { super('isnotempty', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IsNotEmptyFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IsNotEmptyFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-isnotempty-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class IsNotNullFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("isnotnull", ctx); }
16
+ constructor(ctx) { super('isnotnull', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IsNotNullFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IsNotNullFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-isnotnull-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class IsNullFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("isnull", ctx); }
16
+ constructor(ctx) { super('isnull', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IsNullFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IsNullFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-isnull-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * [See example](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class LessFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("lt", ctx); }
16
+ constructor(ctx) { super('lt', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LessFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LessFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-lt-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * [See example](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class LessOrEqualToFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("lte", ctx); }
16
+ constructor(ctx) { super('lte', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LessOrEqualToFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LessOrEqualToFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-lte-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class NotEqualFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("neq", ctx); }
16
+ constructor(ctx) { super('neq', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotEqualFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NotEqualFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-neq-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class DoesNotContainFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("doesnotcontain", ctx); }
16
+ constructor(ctx) { super('doesnotcontain', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DoesNotContainFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DoesNotContainFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-not-contains-operator", providers: [
19
19
  {
@@ -13,7 +13,7 @@ import * as i1 from "../../common/provider.service";
13
13
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
14
14
  */
15
15
  export class StartsWithFilterOperatorComponent extends FilterOperatorBase {
16
- constructor(ctx) { super("startswith", ctx); }
16
+ constructor(ctx) { super('startswith', ctx); }
17
17
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: StartsWithFilterOperatorComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
18
18
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: StartsWithFilterOperatorComponent, isStandalone: true, selector: "kendo-filter-startswith-operator", providers: [
19
19
  {
@@ -2772,6 +2772,7 @@ export class GridComponent {
2772
2772
  </colgroup>
2773
2773
  <thead kendoGridHeader
2774
2774
  *ngIf="!hideHeader"
2775
+ role="rowgroup"
2775
2776
  [resizable]="resizable"
2776
2777
  [scrollable]="false"
2777
2778
  [columns]="$any(visibleColumns)"
@@ -3482,6 +3483,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3482
3483
  </colgroup>
3483
3484
  <thead kendoGridHeader
3484
3485
  *ngIf="!hideHeader"
3486
+ role="rowgroup"
3485
3487
  [resizable]="resizable"
3486
3488
  [scrollable]="false"
3487
3489
  [columns]="$any(visibleColumns)"
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1742998819,
14
- version: '18.2.1-develop.3',
13
+ publishDate: 1743106180,
14
+ version: '18.3.0-develop.1',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -488,7 +488,6 @@ export class HeaderComponent {
488
488
  }
489
489
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderComponent, deps: [{ token: i1.SinglePopupService }, { token: i2.DragHintService }, { token: i3.DropCueService }, { token: i4.ColumnReorderService }, { token: i5.IdService }, { token: i6.SortService }, { token: i7.ColumnInfoService }, { token: i0.ChangeDetectorRef }, { token: i8.ContextService }, { token: i9.NavigationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
490
490
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: HeaderComponent, isStandalone: true, selector: "[kendoGridHeader]", inputs: { totalColumnLevels: "totalColumnLevels", columns: "columns", groups: "groups", detailTemplate: "detailTemplate", scrollable: "scrollable", filterable: "filterable", sort: "sort", filter: "filter", sortable: "sortable", groupable: "groupable", lockedColumnsCount: "lockedColumnsCount", resizable: "resizable", reorderable: "reorderable", columnMenu: "columnMenu", columnMenuTemplate: "columnMenuTemplate", totalColumnsCount: "totalColumnsCount", totalColumns: "totalColumns", tabIndex: "tabIndex", size: "size" }, host: { properties: { "class.k-table-thead": "this.hostClass" } }, viewQueries: [{ propertyName: "dropTargets", predicate: DropTargetDirective, descendants: true }, { propertyName: "filterMenus", predicate: FilterMenuComponent, descendants: true }, { propertyName: "columnMenus", predicate: ColumnMenuComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
491
- <ng-container>
492
491
  <tr *ngFor="let i of columnLevels; let levelIndex = index"
493
492
  kendoGridLogicalRow
494
493
  [logicalRowIndex]="levelIndex"
@@ -540,8 +539,7 @@ export class HeaderComponent {
540
539
  [attr.colspan]="column.colspan"
541
540
  [attr.aria-haspopup]="isNavigable && (showFilterMenu || showColumnMenu(column)) ? 'dialog' : undefined"
542
541
  [attr.aria-expanded]="isNavigable && (showFilterMenu || showColumnMenu(column)) ? false : undefined"
543
- [attr.aria-keyshortcuts]="isNavigable ? 'Alt + ArrowDown' : undefined">
544
-
542
+ [attr.aria-keyshortcuts]="isNavigable && (showFilterMenu || showColumnMenu(column)) ? 'Alt + ArrowDown' : undefined">
545
543
  <ng-container *ngIf="!isInteractive(getColumnComponent(column), 'sortable')">
546
544
  <span class="k-cell-inner">
547
545
  <span class="k-link" [class.!k-cursor-default]="!isInteractive(getColumnComponent(column), 'groupable') && !isInteractive(getColumnComponent(column), 'reorderable')">
@@ -575,7 +573,6 @@ export class HeaderComponent {
575
573
  </kendo-grid-column-menu>
576
574
  </span>
577
575
  </ng-container>
578
-
579
576
  <ng-container *ngIf="isInteractive(getColumnComponent(column), 'sortable')">
580
577
  <span class="k-cell-inner">
581
578
  <span #link class="k-link" (click)="onSortClick(getColumnComponent(column), $event, link)">
@@ -618,7 +615,6 @@ export class HeaderComponent {
618
615
  </kendo-grid-column-menu>
619
616
  </span>
620
617
  </ng-container>
621
-
622
618
  <ng-container *ngIf="isCheckboxColumn(column) && !column.headerTemplateRef && $any(column).showSelectAll">
623
619
  <kendo-checkbox
624
620
  [attr.id]="selectAllCheckboxId()"
@@ -659,10 +655,13 @@ export class HeaderComponent {
659
655
  [class.k-grid-content-sticky]="column.sticky"
660
656
  [ngClass]="column.headerClass"
661
657
  [ngStyle]="column.headerStyle"
658
+ [attr.aria-haspopup]="(isNavigable && showColumnMenu(column)) ? 'dialog' : undefined"
659
+ [attr.aria-expanded]="(isNavigable && showColumnMenu(column)) ? false : undefined"
660
+ [attr.aria-keyshortcuts]="isNavigable && showColumnMenu(column) ? 'Alt + ArrowDown' : undefined"
662
661
  [attr.rowspan]="column.rowspan(totalColumnLevels)"
663
662
  [attr.colspan]="column.colspan">
664
663
  <span class="k-cell-inner">
665
- <span class="k-link">
664
+ <span class="k-link" [class.!k-cursor-default]="!isInteractive(getColumnComponent(column), 'reorderable')">
666
665
  <ng-template
667
666
  [templateContext]="{
668
667
  templateRef: column.headerTemplateRef,
@@ -705,9 +704,7 @@ export class HeaderComponent {
705
704
  [logicalSlaveRow]="lockedColumnsCount > 0"
706
705
  [logicalCellsCount]="columns.length"
707
706
  [logicalSlaveCellsCount]="unlockedColumnsCount"
708
- [totalColumns]="totalColumns"
709
- ></tr>
710
- </ng-container>
707
+ [totalColumns]="totalColumns"></tr>
711
708
  `, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem", "totalColumns"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { kind: "directive", type: DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["context"], outputs: ["enter", "leave", "drop"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: DraggableColumnDirective, selector: "[kendoDraggableColumn]", inputs: ["context", "enableDrag"], outputs: ["drag"] }, { 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: FilterMenuComponent, selector: "kendo-grid-filter-menu", inputs: ["column", "filter", "tabIndex"] }, { kind: "component", type: ColumnMenuComponent, selector: "kendo-grid-column-menu", inputs: ["standalone", "column", "settings", "sort", "filter", "sortable", "columnMenuTemplate", "tabIndex"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { 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: ColumnHandleDirective, selector: "[kendoGridColumnHandle]", inputs: ["isLast", "columns", "column"] }, { kind: "component", type: FilterRowComponent, selector: "[kendoGridFilterRow]", inputs: ["columns", "filter", "groups", "detailTemplate", "logicalRowIndex", "lockedColumnsCount"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }] });
712
709
  }
713
710
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderComponent, decorators: [{
@@ -715,7 +712,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
715
712
  args: [{
716
713
  selector: '[kendoGridHeader]',
717
714
  template: `
718
- <ng-container>
719
715
  <tr *ngFor="let i of columnLevels; let levelIndex = index"
720
716
  kendoGridLogicalRow
721
717
  [logicalRowIndex]="levelIndex"
@@ -767,8 +763,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
767
763
  [attr.colspan]="column.colspan"
768
764
  [attr.aria-haspopup]="isNavigable && (showFilterMenu || showColumnMenu(column)) ? 'dialog' : undefined"
769
765
  [attr.aria-expanded]="isNavigable && (showFilterMenu || showColumnMenu(column)) ? false : undefined"
770
- [attr.aria-keyshortcuts]="isNavigable ? 'Alt + ArrowDown' : undefined">
771
-
766
+ [attr.aria-keyshortcuts]="isNavigable && (showFilterMenu || showColumnMenu(column)) ? 'Alt + ArrowDown' : undefined">
772
767
  <ng-container *ngIf="!isInteractive(getColumnComponent(column), 'sortable')">
773
768
  <span class="k-cell-inner">
774
769
  <span class="k-link" [class.!k-cursor-default]="!isInteractive(getColumnComponent(column), 'groupable') && !isInteractive(getColumnComponent(column), 'reorderable')">
@@ -802,7 +797,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
802
797
  </kendo-grid-column-menu>
803
798
  </span>
804
799
  </ng-container>
805
-
806
800
  <ng-container *ngIf="isInteractive(getColumnComponent(column), 'sortable')">
807
801
  <span class="k-cell-inner">
808
802
  <span #link class="k-link" (click)="onSortClick(getColumnComponent(column), $event, link)">
@@ -845,7 +839,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
845
839
  </kendo-grid-column-menu>
846
840
  </span>
847
841
  </ng-container>
848
-
849
842
  <ng-container *ngIf="isCheckboxColumn(column) && !column.headerTemplateRef && $any(column).showSelectAll">
850
843
  <kendo-checkbox
851
844
  [attr.id]="selectAllCheckboxId()"
@@ -886,10 +879,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
886
879
  [class.k-grid-content-sticky]="column.sticky"
887
880
  [ngClass]="column.headerClass"
888
881
  [ngStyle]="column.headerStyle"
882
+ [attr.aria-haspopup]="(isNavigable && showColumnMenu(column)) ? 'dialog' : undefined"
883
+ [attr.aria-expanded]="(isNavigable && showColumnMenu(column)) ? false : undefined"
884
+ [attr.aria-keyshortcuts]="isNavigable && showColumnMenu(column) ? 'Alt + ArrowDown' : undefined"
889
885
  [attr.rowspan]="column.rowspan(totalColumnLevels)"
890
886
  [attr.colspan]="column.colspan">
891
887
  <span class="k-cell-inner">
892
- <span class="k-link">
888
+ <span class="k-link" [class.!k-cursor-default]="!isInteractive(getColumnComponent(column), 'reorderable')">
893
889
  <ng-template
894
890
  [templateContext]="{
895
891
  templateRef: column.headerTemplateRef,
@@ -932,9 +928,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
932
928
  [logicalSlaveRow]="lockedColumnsCount > 0"
933
929
  [logicalCellsCount]="columns.length"
934
930
  [logicalSlaveCellsCount]="unlockedColumnsCount"
935
- [totalColumns]="totalColumns"
936
- ></tr>
937
- </ng-container>
931
+ [totalColumns]="totalColumns"></tr>
938
932
  `,
939
933
  standalone: true,
940
934
  imports: [