@progress/kendo-angular-listview 21.1.1-develop.2 → 21.2.0-develop.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,14 +4,14 @@
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as i0 from '@angular/core';
6
6
  import { Injectable, Directive, Input, Optional, EventEmitter, Component, ChangeDetectionStrategy, HostBinding, ContentChild, ViewChild, ViewChildren, Output, HostListener, NgModule } from '@angular/core';
7
- import { isDocumentAvailable, normalizeNumpadKeys, Keys, isChanged, hasObservers, EventsOutsideAngularDirective, ResizeBatchService } from '@progress/kendo-angular-common';
7
+ import { isDocumentAvailable, normalizeKeys, Keys, isChanged, hasObservers, EventsOutsideAngularDirective, ResizeBatchService } from '@progress/kendo-angular-common';
8
8
  import { validatePackage } from '@progress/kendo-licensing';
9
9
  import * as i2 from '@progress/kendo-angular-l10n';
10
10
  import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
11
11
  import { Subject, Subscription } from 'rxjs';
12
12
  import { FormGroup, FormControl } from '@angular/forms';
13
13
  import { switchMap, take } from 'rxjs/operators';
14
- import { NgIf, NgTemplateOutlet, NgClass, NgStyle, NgFor } from '@angular/common';
14
+ import { NgTemplateOutlet, NgClass, NgStyle } from '@angular/common';
15
15
  import { PagerComponent, PageSizeChangeEvent as PageSizeChangeEvent$1 } from '@progress/kendo-angular-pager';
16
16
  import { Button } from '@progress/kendo-angular-buttons';
17
17
  import { IconWrapperComponent, IconsService } from '@progress/kendo-angular-icons';
@@ -25,8 +25,8 @@ const packageMetadata = {
25
25
  productName: 'Kendo UI for Angular',
26
26
  productCode: 'KENDOUIANGULAR',
27
27
  productCodes: ['KENDOUIANGULAR'],
28
- publishDate: 1763729389,
29
- version: '21.1.1-develop.2',
28
+ publishDate: 1764593181,
29
+ version: '21.2.0-develop.10',
30
30
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
31
31
  };
32
32
 
@@ -174,7 +174,7 @@ class NavigationService {
174
174
  }
175
175
  handleKeyDown(event, totalItemsCount) {
176
176
  // on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
177
- const code = normalizeNumpadKeys(event);
177
+ const code = normalizeKeys(event);
178
178
  switch (code) {
179
179
  case Keys.ArrowLeft:
180
180
  case Keys.ArrowUp:
@@ -1142,7 +1142,7 @@ class ListViewComponent {
1142
1142
  this[action].emit(args);
1143
1143
  }
1144
1144
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListViewComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: EditService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
1145
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ListViewComponent, isStandalone: true, selector: "kendo-listview", inputs: { bordered: "bordered", data: "data", loading: "loading", containerStyle: "containerStyle", itemStyle: "itemStyle", containerClass: "containerClass", itemClass: "itemClass", containerLabel: "containerLabel", containerRole: "containerRole", listItemRole: "listItemRole", navigable: "navigable", pageSize: "pageSize", skip: "skip", pageable: "pageable", height: "height" }, outputs: { scrollBottom: "scrollBottom", pageChange: "pageChange", pageSizeChange: "pageSizeChange", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add" }, host: { properties: { "class.k-listview": "this.className", "class.k-listview-bordered": "this.bordered" } }, providers: [
1145
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ListViewComponent, isStandalone: true, selector: "kendo-listview", inputs: { bordered: "bordered", data: "data", loading: "loading", containerStyle: "containerStyle", itemStyle: "itemStyle", containerClass: "containerClass", itemClass: "itemClass", containerLabel: "containerLabel", containerRole: "containerRole", listItemRole: "listItemRole", navigable: "navigable", pageSize: "pageSize", skip: "skip", pageable: "pageable", height: "height" }, outputs: { scrollBottom: "scrollBottom", pageChange: "pageChange", pageSizeChange: "pageSizeChange", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add" }, host: { properties: { "class.k-listview": "this.className", "class.k-listview-bordered": "this.bordered" } }, providers: [
1146
1146
  EditService,
1147
1147
  NavigationService,
1148
1148
  LocalizationService,
@@ -1152,132 +1152,142 @@ class ListViewComponent {
1152
1152
  }
1153
1153
  ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ItemTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "loaderTemplate", first: true, predicate: LoaderTemplateDirective, descendants: true }, { propertyName: "editTemplate", first: true, predicate: EditTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, static: true }, { propertyName: "listViewItems", predicate: ListViewNavigableItemDirective, descendants: true }], exportAs: ["kendoListView"], usesOnChanges: true, ngImport: i0, template: `
1154
1154
  <!-- top pager -->
1155
- <ng-template
1156
- *ngIf="pagerSettings?.position !== 'bottom'"
1155
+ @if (pagerSettings?.position !== 'bottom') {
1156
+ <ng-template
1157
1157
  [ngTemplateOutlet]="pagerTemplate"
1158
1158
  [ngTemplateOutletContext]="{ pagerClass: 'k-listview-pager k-listview-pager-top' }"
1159
- >
1160
- </ng-template>
1161
-
1159
+ >
1160
+ </ng-template>
1161
+ }
1162
+
1162
1163
  <!-- header -->
1163
- <div
1164
- *ngIf="headerTemplate"
1164
+ @if (headerTemplate) {
1165
+ <div
1165
1166
  class="k-listview-header"
1166
- >
1167
- <ng-template
1168
- [ngTemplateOutlet]="headerTemplate?.templateRef"
1169
1167
  >
1168
+ <ng-template
1169
+ [ngTemplateOutlet]="headerTemplate?.templateRef"
1170
+ >
1170
1171
  </ng-template>
1171
- </div>
1172
-
1172
+ </div>
1173
+ }
1174
+
1173
1175
  <!-- content -->
1174
1176
  <div
1175
- #contentContainer
1176
- [attr.tabindex]="containerTabindex"
1177
- class="k-listview-content"
1178
- [ngClass]="containerClass"
1179
- [ngStyle]="containerStyle"
1177
+ #contentContainer
1178
+ [attr.tabindex]="containerTabindex"
1179
+ class="k-listview-content"
1180
+ [ngClass]="containerClass"
1181
+ [ngStyle]="containerStyle"
1180
1182
  [kendoEventsOutsideAngular]="{
1181
1183
  scroll: handleContentScroll
1182
1184
  }"
1183
- [scope]="this"
1184
- [attr.role]="containerRole"
1185
- [attr.aria-label]="containerLabel"
1186
- >
1187
- <!-- new item edit template -->
1185
+ [scope]="this"
1186
+ [attr.role]="containerRole"
1187
+ [attr.aria-label]="containerLabel"
1188
+ >
1189
+ <!-- new item edit template -->
1190
+ @if (editService.hasNewItem) {
1188
1191
  <div
1189
- *ngIf="editService.hasNewItem"
1190
- class="k-listview-item"
1191
- [attr.role]="listItemRole"
1192
- kendoListViewNavigableItem
1193
- [index]="-1"
1194
- [attr.data-kendo-listview-item-index]="-1"
1195
- [ngClass]="itemClass"
1196
- [ngStyle]="itemStyle"
1197
- >
1192
+ class="k-listview-item"
1193
+ [attr.role]="listItemRole"
1194
+ kendoListViewNavigableItem
1195
+ [index]="-1"
1196
+ [attr.data-kendo-listview-item-index]="-1"
1197
+ [ngClass]="itemClass"
1198
+ [ngStyle]="itemStyle"
1199
+ >
1200
+ @if (editTemplate) {
1198
1201
  <ng-template
1199
- *ngIf="editTemplate"
1200
- [ngTemplateOutlet]="editTemplate?.templateRef"
1201
- [ngTemplateOutletContext]="editTemplateContext(-1)"
1202
- >
1202
+ [ngTemplateOutlet]="editTemplate?.templateRef"
1203
+ [ngTemplateOutletContext]="editTemplateContext(-1)"
1204
+ >
1203
1205
  </ng-template>
1206
+ }
1204
1207
  </div>
1205
-
1206
- <!-- items -->
1208
+ }
1209
+
1210
+ <!-- items -->
1211
+ @for (dataItem of items; track dataItem; let index = $index; let first = $first; let last = $last) {
1207
1212
  <div
1208
- *ngFor="let dataItem of items; let index = index; let first = first; let last = last;"
1209
- class="k-listview-item"
1210
- [attr.role]="listItemRole"
1211
- [attr.aria-posinset]="itemPosInSet(index)"
1212
- [attr.aria-setsize]="total"
1213
- kendoListViewNavigableItem
1214
- [index]="index"
1215
- [attr.data-kendo-listview-item-index]="index"
1216
- [ngClass]="itemClass"
1217
- [ngStyle]="itemStyle"
1218
- >
1219
- <ng-template
1220
- [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"
1221
- [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"
1213
+ class="k-listview-item"
1214
+ [attr.role]="listItemRole"
1215
+ [attr.aria-posinset]="itemPosInSet(index)"
1216
+ [attr.aria-setsize]="total"
1217
+ kendoListViewNavigableItem
1218
+ [index]="index"
1219
+ [attr.data-kendo-listview-item-index]="index"
1220
+ [ngClass]="itemClass"
1221
+ [ngStyle]="itemStyle"
1222
+ >
1223
+ <ng-template
1224
+ [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"
1225
+ [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"
1222
1226
  >
1223
- </ng-template>
1227
+ </ng-template>
1224
1228
  </div>
1229
+ }
1225
1230
  </div>
1226
-
1231
+
1227
1232
  <!-- loading indicator -->
1228
- <div
1229
- *ngIf="loading && !loaderTemplate"
1233
+ @if (loading && !loaderTemplate) {
1234
+ <div
1230
1235
  class="k-loading-mask"
1231
- >
1236
+ >
1232
1237
  <!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case -->
1233
1238
  <span class="k-loading-text">Loading</span>
1234
1239
  <div class="k-loading-image"></div>
1235
1240
  <div class="k-loading-color"></div>
1236
- </div>
1237
- <ng-template
1238
- *ngIf="loading && loaderTemplate"
1241
+ </div>
1242
+ }
1243
+ @if (loading && loaderTemplate) {
1244
+ <ng-template
1239
1245
  [ngTemplateOutlet]="loaderTemplate.templateRef"
1240
- >
1241
- </ng-template>
1242
-
1246
+ >
1247
+ </ng-template>
1248
+ }
1249
+
1243
1250
  <!-- footer -->
1244
- <div
1245
- *ngIf="footerTemplate"
1251
+ @if (footerTemplate) {
1252
+ <div
1246
1253
  class="k-listview-footer"
1247
- >
1248
- <ng-template
1249
- [ngTemplateOutlet]="footerTemplate?.templateRef"
1250
1254
  >
1255
+ <ng-template
1256
+ [ngTemplateOutlet]="footerTemplate?.templateRef"
1257
+ >
1251
1258
  </ng-template>
1252
- </div>
1253
-
1259
+ </div>
1260
+ }
1261
+
1254
1262
  <!-- bottom pager -->
1255
- <ng-template
1256
- *ngIf="pagerSettings?.position !== 'top'"
1263
+ @if (pagerSettings?.position !== 'top') {
1264
+ <ng-template
1257
1265
  [ngTemplateOutlet]="pagerTemplate"
1258
1266
  [ngTemplateOutletContext]="{ pagerClass: 'k-listview-pager' }"
1259
- >
1260
- </ng-template>
1261
-
1267
+ >
1268
+ </ng-template>
1269
+ }
1270
+
1262
1271
  <!-- pager template -->
1263
1272
  <ng-template #pagerTemplate let-pagerClass="pagerClass">
1273
+ @if (pageable) {
1264
1274
  <kendo-datapager
1265
- *ngIf="pageable"
1266
- [class]="pagerClass"
1267
- [total]="total"
1268
- [pageSize]="pageSize"
1269
- [skip]="skip"
1270
- [buttonCount]="pagerSettings.buttonCount"
1271
- [info]="pagerSettings.info"
1272
- [previousNext]="pagerSettings.previousNext"
1273
- [type]="pagerSettings.type"
1274
- [pageSizeValues]="pagerSettings.pageSizeValues"
1275
- (pageChange)="handlePageChange($event)"
1276
- (pageSizeChange)="pageSizeChange.emit($event)"
1277
- >
1275
+ [class]="pagerClass"
1276
+ [total]="total"
1277
+ [pageSize]="pageSize"
1278
+ [skip]="skip"
1279
+ [buttonCount]="pagerSettings.buttonCount"
1280
+ [info]="pagerSettings.info"
1281
+ [previousNext]="pagerSettings.previousNext"
1282
+ [type]="pagerSettings.type"
1283
+ [pageSizeValues]="pagerSettings.pageSizeValues"
1284
+ (pageChange)="handlePageChange($event)"
1285
+ (pageSizeChange)="pageSizeChange.emit($event)"
1286
+ >
1278
1287
  </kendo-datapager>
1288
+ }
1279
1289
  </ng-template>
1280
- `, isInline: true, dependencies: [{ 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"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1290
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: ListViewNavigableItemDirective, selector: "[kendoListViewNavigableItem]", inputs: ["index"] }, { kind: "component", type: 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1281
1291
  }
1282
1292
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListViewComponent, decorators: [{
1283
1293
  type: Component,
@@ -1296,134 +1306,144 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1296
1306
  ],
1297
1307
  template: `
1298
1308
  <!-- top pager -->
1299
- <ng-template
1300
- *ngIf="pagerSettings?.position !== 'bottom'"
1309
+ @if (pagerSettings?.position !== 'bottom') {
1310
+ <ng-template
1301
1311
  [ngTemplateOutlet]="pagerTemplate"
1302
1312
  [ngTemplateOutletContext]="{ pagerClass: 'k-listview-pager k-listview-pager-top' }"
1303
- >
1304
- </ng-template>
1305
-
1313
+ >
1314
+ </ng-template>
1315
+ }
1316
+
1306
1317
  <!-- header -->
1307
- <div
1308
- *ngIf="headerTemplate"
1318
+ @if (headerTemplate) {
1319
+ <div
1309
1320
  class="k-listview-header"
1310
- >
1311
- <ng-template
1312
- [ngTemplateOutlet]="headerTemplate?.templateRef"
1313
1321
  >
1322
+ <ng-template
1323
+ [ngTemplateOutlet]="headerTemplate?.templateRef"
1324
+ >
1314
1325
  </ng-template>
1315
- </div>
1316
-
1326
+ </div>
1327
+ }
1328
+
1317
1329
  <!-- content -->
1318
1330
  <div
1319
- #contentContainer
1320
- [attr.tabindex]="containerTabindex"
1321
- class="k-listview-content"
1322
- [ngClass]="containerClass"
1323
- [ngStyle]="containerStyle"
1331
+ #contentContainer
1332
+ [attr.tabindex]="containerTabindex"
1333
+ class="k-listview-content"
1334
+ [ngClass]="containerClass"
1335
+ [ngStyle]="containerStyle"
1324
1336
  [kendoEventsOutsideAngular]="{
1325
1337
  scroll: handleContentScroll
1326
1338
  }"
1327
- [scope]="this"
1328
- [attr.role]="containerRole"
1329
- [attr.aria-label]="containerLabel"
1330
- >
1331
- <!-- new item edit template -->
1339
+ [scope]="this"
1340
+ [attr.role]="containerRole"
1341
+ [attr.aria-label]="containerLabel"
1342
+ >
1343
+ <!-- new item edit template -->
1344
+ @if (editService.hasNewItem) {
1332
1345
  <div
1333
- *ngIf="editService.hasNewItem"
1334
- class="k-listview-item"
1335
- [attr.role]="listItemRole"
1336
- kendoListViewNavigableItem
1337
- [index]="-1"
1338
- [attr.data-kendo-listview-item-index]="-1"
1339
- [ngClass]="itemClass"
1340
- [ngStyle]="itemStyle"
1341
- >
1346
+ class="k-listview-item"
1347
+ [attr.role]="listItemRole"
1348
+ kendoListViewNavigableItem
1349
+ [index]="-1"
1350
+ [attr.data-kendo-listview-item-index]="-1"
1351
+ [ngClass]="itemClass"
1352
+ [ngStyle]="itemStyle"
1353
+ >
1354
+ @if (editTemplate) {
1342
1355
  <ng-template
1343
- *ngIf="editTemplate"
1344
- [ngTemplateOutlet]="editTemplate?.templateRef"
1345
- [ngTemplateOutletContext]="editTemplateContext(-1)"
1346
- >
1356
+ [ngTemplateOutlet]="editTemplate?.templateRef"
1357
+ [ngTemplateOutletContext]="editTemplateContext(-1)"
1358
+ >
1347
1359
  </ng-template>
1360
+ }
1348
1361
  </div>
1349
-
1350
- <!-- items -->
1362
+ }
1363
+
1364
+ <!-- items -->
1365
+ @for (dataItem of items; track dataItem; let index = $index; let first = $first; let last = $last) {
1351
1366
  <div
1352
- *ngFor="let dataItem of items; let index = index; let first = first; let last = last;"
1353
- class="k-listview-item"
1354
- [attr.role]="listItemRole"
1355
- [attr.aria-posinset]="itemPosInSet(index)"
1356
- [attr.aria-setsize]="total"
1357
- kendoListViewNavigableItem
1358
- [index]="index"
1359
- [attr.data-kendo-listview-item-index]="index"
1360
- [ngClass]="itemClass"
1361
- [ngStyle]="itemStyle"
1362
- >
1363
- <ng-template
1364
- [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"
1365
- [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"
1367
+ class="k-listview-item"
1368
+ [attr.role]="listItemRole"
1369
+ [attr.aria-posinset]="itemPosInSet(index)"
1370
+ [attr.aria-setsize]="total"
1371
+ kendoListViewNavigableItem
1372
+ [index]="index"
1373
+ [attr.data-kendo-listview-item-index]="index"
1374
+ [ngClass]="itemClass"
1375
+ [ngStyle]="itemStyle"
1376
+ >
1377
+ <ng-template
1378
+ [ngTemplateOutlet]="isEdited(index) ? editTemplate?.templateRef : itemTemplate?.templateRef"
1379
+ [ngTemplateOutletContext]="isEdited(index) ? editTemplateContext(index) : templateContext(index)"
1366
1380
  >
1367
- </ng-template>
1381
+ </ng-template>
1368
1382
  </div>
1383
+ }
1369
1384
  </div>
1370
-
1385
+
1371
1386
  <!-- loading indicator -->
1372
- <div
1373
- *ngIf="loading && !loaderTemplate"
1387
+ @if (loading && !loaderTemplate) {
1388
+ <div
1374
1389
  class="k-loading-mask"
1375
- >
1390
+ >
1376
1391
  <!-- TODO: the k-loading-text is hidden with css but read by readers - review when implementing accessibility + possible localization case -->
1377
1392
  <span class="k-loading-text">Loading</span>
1378
1393
  <div class="k-loading-image"></div>
1379
1394
  <div class="k-loading-color"></div>
1380
- </div>
1381
- <ng-template
1382
- *ngIf="loading && loaderTemplate"
1395
+ </div>
1396
+ }
1397
+ @if (loading && loaderTemplate) {
1398
+ <ng-template
1383
1399
  [ngTemplateOutlet]="loaderTemplate.templateRef"
1384
- >
1385
- </ng-template>
1386
-
1400
+ >
1401
+ </ng-template>
1402
+ }
1403
+
1387
1404
  <!-- footer -->
1388
- <div
1389
- *ngIf="footerTemplate"
1405
+ @if (footerTemplate) {
1406
+ <div
1390
1407
  class="k-listview-footer"
1391
- >
1392
- <ng-template
1393
- [ngTemplateOutlet]="footerTemplate?.templateRef"
1394
1408
  >
1409
+ <ng-template
1410
+ [ngTemplateOutlet]="footerTemplate?.templateRef"
1411
+ >
1395
1412
  </ng-template>
1396
- </div>
1397
-
1413
+ </div>
1414
+ }
1415
+
1398
1416
  <!-- bottom pager -->
1399
- <ng-template
1400
- *ngIf="pagerSettings?.position !== 'top'"
1417
+ @if (pagerSettings?.position !== 'top') {
1418
+ <ng-template
1401
1419
  [ngTemplateOutlet]="pagerTemplate"
1402
1420
  [ngTemplateOutletContext]="{ pagerClass: 'k-listview-pager' }"
1403
- >
1404
- </ng-template>
1405
-
1421
+ >
1422
+ </ng-template>
1423
+ }
1424
+
1406
1425
  <!-- pager template -->
1407
1426
  <ng-template #pagerTemplate let-pagerClass="pagerClass">
1427
+ @if (pageable) {
1408
1428
  <kendo-datapager
1409
- *ngIf="pageable"
1410
- [class]="pagerClass"
1411
- [total]="total"
1412
- [pageSize]="pageSize"
1413
- [skip]="skip"
1414
- [buttonCount]="pagerSettings.buttonCount"
1415
- [info]="pagerSettings.info"
1416
- [previousNext]="pagerSettings.previousNext"
1417
- [type]="pagerSettings.type"
1418
- [pageSizeValues]="pagerSettings.pageSizeValues"
1419
- (pageChange)="handlePageChange($event)"
1420
- (pageSizeChange)="pageSizeChange.emit($event)"
1421
- >
1429
+ [class]="pagerClass"
1430
+ [total]="total"
1431
+ [pageSize]="pageSize"
1432
+ [skip]="skip"
1433
+ [buttonCount]="pagerSettings.buttonCount"
1434
+ [info]="pagerSettings.info"
1435
+ [previousNext]="pagerSettings.previousNext"
1436
+ [type]="pagerSettings.type"
1437
+ [pageSizeValues]="pagerSettings.pageSizeValues"
1438
+ (pageChange)="handlePageChange($event)"
1439
+ (pageSizeChange)="pageSizeChange.emit($event)"
1440
+ >
1422
1441
  </kendo-datapager>
1442
+ }
1423
1443
  </ng-template>
1424
- `,
1444
+ `,
1425
1445
  standalone: true,
1426
- imports: [NgIf, NgTemplateOutlet, NgClass, NgStyle, EventsOutsideAngularDirective, ListViewNavigableItemDirective, NgFor, PagerComponent]
1446
+ imports: [NgTemplateOutlet, NgClass, NgStyle, EventsOutsideAngularDirective, ListViewNavigableItemDirective, PagerComponent]
1427
1447
  }]
1428
1448
  }], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: EditService }, { type: NavigationService }], propDecorators: { className: [{
1429
1449
  type: HostBinding,
@@ -1619,37 +1639,47 @@ class EditCommandDirective extends Button {
1619
1639
  this.elementRef = element;
1620
1640
  }
1621
1641
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1622
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: EditCommandDirective, isStandalone: true, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1623
- <kendo-icon-wrapper
1624
- *ngIf="icon || svgIcon"
1642
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: EditCommandDirective, isStandalone: true, selector: "[kendoListViewEditCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1643
+ @if (icon || svgIcon) {
1644
+ <kendo-icon-wrapper
1625
1645
  innerCssClass="k-button-icon"
1626
1646
  [name]="icon"
1627
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1628
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1647
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1648
+ }
1649
+ @if (imageUrl) {
1650
+ <span class="k-button-icon k-icon">
1629
1651
  <img [src]="imageUrl" class="k-image" role="presentation" />
1630
- </span>
1631
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1652
+ </span>
1653
+ }
1654
+ @if (iconClass) {
1655
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1656
+ }
1632
1657
  <span class="k-button-text"><ng-content></ng-content></span>
1633
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1658
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1634
1659
  }
1635
1660
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EditCommandDirective, decorators: [{
1636
1661
  type: Component,
1637
1662
  args: [{
1638
1663
  selector: '[kendoListViewEditCommand]',
1639
1664
  template: `
1640
- <kendo-icon-wrapper
1641
- *ngIf="icon || svgIcon"
1665
+ @if (icon || svgIcon) {
1666
+ <kendo-icon-wrapper
1642
1667
  innerCssClass="k-button-icon"
1643
1668
  [name]="icon"
1644
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1645
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1669
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1670
+ }
1671
+ @if (imageUrl) {
1672
+ <span class="k-button-icon k-icon">
1646
1673
  <img [src]="imageUrl" class="k-image" role="presentation" />
1647
- </span>
1648
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1674
+ </span>
1675
+ }
1676
+ @if (iconClass) {
1677
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1678
+ }
1649
1679
  <span class="k-button-text"><ng-content></ng-content></span>
1650
- `,
1680
+ `,
1651
1681
  standalone: true,
1652
- imports: [NgIf, IconWrapperComponent, NgClass]
1682
+ imports: [IconWrapperComponent, NgClass]
1653
1683
  }]
1654
1684
  }], ctorParameters: () => [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.LocalizationService }, { type: i0.NgZone }], propDecorators: { clickHandler: [{
1655
1685
  type: HostListener,
@@ -1687,37 +1717,47 @@ class AddCommandDirective extends Button {
1687
1717
  this.editService = editService;
1688
1718
  }
1689
1719
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1690
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: AddCommandDirective, isStandalone: true, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1691
- <kendo-icon-wrapper
1692
- *ngIf="icon || svgIcon"
1720
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AddCommandDirective, isStandalone: true, selector: "[kendoListViewAddCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1721
+ @if (icon || svgIcon) {
1722
+ <kendo-icon-wrapper
1693
1723
  innerCssClass="k-button-icon"
1694
1724
  [name]="icon"
1695
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1696
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1725
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1726
+ }
1727
+ @if (imageUrl) {
1728
+ <span class="k-button-icon k-icon">
1697
1729
  <img [src]="imageUrl" class="k-image" role="presentation" />
1698
- </span>
1699
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1730
+ </span>
1731
+ }
1732
+ @if (iconClass) {
1733
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1734
+ }
1700
1735
  <span class="k-button-text"><ng-content></ng-content></span>
1701
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1736
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1702
1737
  }
1703
1738
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AddCommandDirective, decorators: [{
1704
1739
  type: Component,
1705
1740
  args: [{
1706
1741
  selector: '[kendoListViewAddCommand]',
1707
1742
  template: `
1708
- <kendo-icon-wrapper
1709
- *ngIf="icon || svgIcon"
1743
+ @if (icon || svgIcon) {
1744
+ <kendo-icon-wrapper
1710
1745
  innerCssClass="k-button-icon"
1711
1746
  [name]="icon"
1712
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1713
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1747
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1748
+ }
1749
+ @if (imageUrl) {
1750
+ <span class="k-button-icon k-icon">
1714
1751
  <img [src]="imageUrl" class="k-image" role="presentation" />
1715
- </span>
1716
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1752
+ </span>
1753
+ }
1754
+ @if (iconClass) {
1755
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1756
+ }
1717
1757
  <span class="k-button-text"><ng-content></ng-content></span>
1718
- `,
1758
+ `,
1719
1759
  standalone: true,
1720
- imports: [NgIf, IconWrapperComponent, NgClass]
1760
+ imports: [IconWrapperComponent, NgClass]
1721
1761
  }]
1722
1762
  }], ctorParameters: () => [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.LocalizationService }, { type: i0.NgZone }], propDecorators: { clickHandler: [{
1723
1763
  type: HostListener,
@@ -1771,37 +1811,47 @@ class SaveCommandDirective extends Button {
1771
1811
  this.elementRef = element;
1772
1812
  }
1773
1813
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1774
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SaveCommandDirective, isStandalone: true, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1775
- <kendo-icon-wrapper
1776
- *ngIf="icon || svgIcon"
1814
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SaveCommandDirective, isStandalone: true, selector: "[kendoListViewSaveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1815
+ @if (icon || svgIcon) {
1816
+ <kendo-icon-wrapper
1777
1817
  innerCssClass="k-button-icon"
1778
1818
  [name]="icon"
1779
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1780
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1819
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1820
+ }
1821
+ @if (imageUrl) {
1822
+ <span class="k-button-icon k-icon">
1781
1823
  <img [src]="imageUrl" class="k-image" role="presentation" />
1782
- </span>
1783
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1824
+ </span>
1825
+ }
1826
+ @if (iconClass) {
1827
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1828
+ }
1784
1829
  <span class="k-button-text"><ng-content></ng-content></span>
1785
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1830
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1786
1831
  }
1787
1832
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SaveCommandDirective, decorators: [{
1788
1833
  type: Component,
1789
1834
  args: [{
1790
1835
  selector: '[kendoListViewSaveCommand]',
1791
1836
  template: `
1792
- <kendo-icon-wrapper
1793
- *ngIf="icon || svgIcon"
1837
+ @if (icon || svgIcon) {
1838
+ <kendo-icon-wrapper
1794
1839
  innerCssClass="k-button-icon"
1795
1840
  [name]="icon"
1796
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1797
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1841
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1842
+ }
1843
+ @if (imageUrl) {
1844
+ <span class="k-button-icon k-icon">
1798
1845
  <img [src]="imageUrl" class="k-image" role="presentation" />
1799
- </span>
1800
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1846
+ </span>
1847
+ }
1848
+ @if (iconClass) {
1849
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1850
+ }
1801
1851
  <span class="k-button-text"><ng-content></ng-content></span>
1802
- `,
1852
+ `,
1803
1853
  standalone: true,
1804
- imports: [NgIf, IconWrapperComponent, NgClass]
1854
+ imports: [IconWrapperComponent, NgClass]
1805
1855
  }]
1806
1856
  }], ctorParameters: () => [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.LocalizationService }, { type: i0.NgZone }], propDecorators: { clickHandler: [{
1807
1857
  type: HostListener,
@@ -1855,37 +1905,47 @@ class CancelCommandDirective extends Button {
1855
1905
  this.elementRef = element;
1856
1906
  }
1857
1907
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1858
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: CancelCommandDirective, isStandalone: true, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1859
- <kendo-icon-wrapper
1860
- *ngIf="icon || svgIcon"
1908
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CancelCommandDirective, isStandalone: true, selector: "[kendoListViewCancelCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1909
+ @if (icon || svgIcon) {
1910
+ <kendo-icon-wrapper
1861
1911
  innerCssClass="k-button-icon"
1862
1912
  [name]="icon"
1863
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1864
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1913
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1914
+ }
1915
+ @if (imageUrl) {
1916
+ <span class="k-button-icon k-icon">
1865
1917
  <img [src]="imageUrl" class="k-image" role="presentation" />
1866
- </span>
1867
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1918
+ </span>
1919
+ }
1920
+ @if (iconClass) {
1921
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1922
+ }
1868
1923
  <span class="k-button-text"><ng-content></ng-content></span>
1869
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1924
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1870
1925
  }
1871
1926
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CancelCommandDirective, decorators: [{
1872
1927
  type: Component,
1873
1928
  args: [{
1874
1929
  selector: '[kendoListViewCancelCommand]',
1875
1930
  template: `
1876
- <kendo-icon-wrapper
1877
- *ngIf="icon || svgIcon"
1931
+ @if (icon || svgIcon) {
1932
+ <kendo-icon-wrapper
1878
1933
  innerCssClass="k-button-icon"
1879
1934
  [name]="icon"
1880
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1881
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1935
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1936
+ }
1937
+ @if (imageUrl) {
1938
+ <span class="k-button-icon k-icon">
1882
1939
  <img [src]="imageUrl" class="k-image" role="presentation" />
1883
- </span>
1884
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1940
+ </span>
1941
+ }
1942
+ @if (iconClass) {
1943
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
1944
+ }
1885
1945
  <span class="k-button-text"><ng-content></ng-content></span>
1886
- `,
1946
+ `,
1887
1947
  standalone: true,
1888
- imports: [NgIf, IconWrapperComponent, NgClass]
1948
+ imports: [IconWrapperComponent, NgClass]
1889
1949
  }]
1890
1950
  }], ctorParameters: () => [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.LocalizationService }, { type: i0.NgZone }], propDecorators: { clickHandler: [{
1891
1951
  type: HostListener,
@@ -1926,37 +1986,47 @@ class RemoveCommandDirective extends Button {
1926
1986
  this.elementRef = element;
1927
1987
  }
1928
1988
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1929
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: RemoveCommandDirective, isStandalone: true, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1930
- <kendo-icon-wrapper
1931
- *ngIf="icon || svgIcon"
1989
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RemoveCommandDirective, isStandalone: true, selector: "[kendoListViewRemoveCommand]", host: { listeners: { "click": "clickHandler($event)" } }, usesInheritance: true, ngImport: i0, template: `
1990
+ @if (icon || svgIcon) {
1991
+ <kendo-icon-wrapper
1932
1992
  innerCssClass="k-button-icon"
1933
1993
  [name]="icon"
1934
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1935
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
1994
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
1995
+ }
1996
+ @if (imageUrl) {
1997
+ <span class="k-button-icon k-icon">
1936
1998
  <img [src]="imageUrl" class="k-image" role="presentation" />
1937
- </span>
1938
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
1999
+ </span>
2000
+ }
2001
+ @if (iconClass) {
2002
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
2003
+ }
1939
2004
  <span class="k-button-text"><ng-content></ng-content></span>
1940
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2005
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1941
2006
  }
1942
2007
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RemoveCommandDirective, decorators: [{
1943
2008
  type: Component,
1944
2009
  args: [{
1945
2010
  selector: '[kendoListViewRemoveCommand]',
1946
2011
  template: `
1947
- <kendo-icon-wrapper
1948
- *ngIf="icon || svgIcon"
2012
+ @if (icon || svgIcon) {
2013
+ <kendo-icon-wrapper
1949
2014
  innerCssClass="k-button-icon"
1950
2015
  [name]="icon"
1951
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
1952
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
2016
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
2017
+ }
2018
+ @if (imageUrl) {
2019
+ <span class="k-button-icon k-icon">
1953
2020
  <img [src]="imageUrl" class="k-image" role="presentation" />
1954
- </span>
1955
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
2021
+ </span>
2022
+ }
2023
+ @if (iconClass) {
2024
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
2025
+ }
1956
2026
  <span class="k-button-text"><ng-content></ng-content></span>
1957
- `,
2027
+ `,
1958
2028
  standalone: true,
1959
- imports: [NgIf, IconWrapperComponent, NgClass]
2029
+ imports: [IconWrapperComponent, NgClass]
1960
2030
  }]
1961
2031
  }], ctorParameters: () => [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.LocalizationService }, { type: i0.NgZone }], propDecorators: { clickHandler: [{
1962
2032
  type: HostListener,