Skip to content

Commit 186d2b6

Browse files
Copilotdamyanpetev
andauthored
Migrate simple igx-ts templates to Angular built-in control flow
Migrated carousel, dropdown, chip, select (default, groups, in-form), autocomplete (custom, extended), input-group, list, and tree templates from *ngIf/*ngFor to @if/@for syntax. Removed NgIf/NgFor imports. Agent-Logs-Url: https://github.com/IgniteUI/igniteui-cli/sessions/375664ee-c0d9-49d6-a1d2-9efb61015c44 Co-authored-by: damyanpetev <3198469+damyanpetev@users.noreply.github.com>
1 parent ca4c52f commit 186d2b6

22 files changed

Lines changed: 70 additions & 46 deletions

File tree

packages/igx-templates/igx-ts/autocomplete/autocomplete-custom/files/src/app/__path__/__filePrefix__.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,11 @@
1111
<input igxInput name="town" type="text" [igxAutocomplete]="townsPanel" [(ngModel)]="townSelected" />
1212
</igx-input-group>
1313
<igx-drop-down #townsPanel maxHeight="300px">
14-
<igx-drop-down-item *ngFor="let town of towns | <%=camelCaseName%>StartsWith:townSelected" [value]="town">
14+
@for (town of towns | <%=camelCaseName%>StartsWith:townSelected; track town) {
15+
<igx-drop-down-item [value]="town">
1516
{{town}}
1617
</igx-drop-down-item>
18+
}
1719
</igx-drop-down>
1820
</form>
1921
</article>

packages/igx-templates/igx-ts/autocomplete/autocomplete-custom/files/src/app/__path__/__filePrefix__.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { Component, Pipe, PipeTransform, forwardRef } from '@angular/core';
22
import { Towns } from './towns-data';
3-
import { NgFor } from '@angular/common';
43
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
54
import {
65
IgxInputGroupComponent,
@@ -23,7 +22,6 @@ import {
2322
IgxInputDirective,
2423
IgxAutocompleteDirective,
2524
IgxDropDownComponent,
26-
NgFor,
2725
IgxDropDownItemComponent,
2826
forwardRef(() => <%=ClassName%>PipeStartsWith),
2927
],

packages/igx-templates/igx-ts/autocomplete/autocomplete-extended/files/src/app/__path__/__filePrefix__.html

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,17 @@
2222
[(ngModel)]="townSelected"/>
2323
</igx-input-group>
2424
<igx-drop-down #townsEnhancedPanel maxHeight="300px" (selectionChanging)="getPostalCode($event)">
25+
@for (eRegion of regions | <%=camelCaseName%>RegionContains:townSelected; track eRegion) {
2526
<igx-drop-down-item-group
26-
*ngFor="let eRegion of regions | <%=camelCaseName%>RegionContains:townSelected"
2727
[label]="eRegion.name">
28-
<igx-drop-down-item *ngFor="let town of eRegion.towns | <%=camelCaseName%>StartsWith:townSelected"
28+
@for (town of eRegion.towns | <%=camelCaseName%>StartsWith:townSelected; track town) {
29+
<igx-drop-down-item
2930
[value]="town.name">
3031
{{town.name}}
3132
</igx-drop-down-item>
33+
}
3234
</igx-drop-down-item-group>
35+
}
3336
</igx-drop-down>
3437

3538
<igx-toast #message>Postal Code: {{postalCode}}"</igx-toast>

packages/igx-templates/igx-ts/autocomplete/autocomplete-extended/files/src/app/__path__/__filePrefix__.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import {
1414
IgxLabelDirective,
1515
} from '<%=igxPackage%>';
1616
import { Region, Town, townsExtended } from './towns-data-extended';
17-
import { NgFor } from '@angular/common';
1817
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
1918

2019
@Component({
@@ -29,7 +28,6 @@ import { ReactiveFormsModule, FormsModule } from '@angular/forms';
2928
IgxAutocompleteDirective,
3029
FormsModule,
3130
IgxDropDownComponent,
32-
NgFor,
3331
IgxDropDownGroupComponent,
3432
IgxDropDownItemComponent,
3533
IgxToastComponent,

packages/igx-templates/igx-ts/carousel/default/files/src/app/__path__/__filePrefix__.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
<a href="https://www.infragistics.com/products/ignite-ui-angular/angular/components/carousel" target="_blank">official documentation page</a>.</p>
55
<div class="carousel-container">
66
<igx-carousel [interval]="interval" [pause]="pause" [loop]="loop">
7-
<igx-slide *ngFor="let slide of slides;" [active]="!!slide.active">
7+
@for (slide of slides; track slide) {
8+
<igx-slide [active]="!!slide.active">
89
<img [src]="slide.image">
910
</igx-slide>
11+
}
1012
</igx-carousel>
1113
</div>

packages/igx-templates/igx-ts/carousel/default/files/src/app/__path__/__filePrefix__.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import { Component, OnInit } from '@angular/core';
2-
import { NgFor } from '@angular/common';
32
import { IgxCarouselComponent, IgxSlideComponent } from '<%=igxPackage%>';
43

54
@Component({
65
selector: 'app-<%=filePrefix%>',
76
templateUrl: './<%=filePrefix%>.html',
87
styleUrl: './<%=filePrefix%>.scss',
9-
imports: [IgxCarouselComponent, NgFor, IgxSlideComponent]
8+
imports: [IgxCarouselComponent, IgxSlideComponent]
109
})
1110
export class <%=ClassName%> implements OnInit {
1211
public slides: Slide[] = [];

packages/igx-templates/igx-ts/chip/default/files/src/app/__path__/__filePrefix__.html

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,23 @@
88
<span class="header">Selected Events</span>
99
<div class="chipsArea">
1010
<igx-chips-area #chipsArea class="chiparea">
11-
<igx-chip class="chipStyle" *ngFor="let chip of chipList" [id]="chip.id" [removable]="true" (remove)="chipRemoved($event)">
11+
@for (chip of chipList; track chip.id) {
12+
<igx-chip class="chipStyle" [id]="chip.id" [removable]="true" (remove)="chipRemoved($event)">
1213
<span #label [class]="'igx-chip__text'">{{chip.name}}</span>
1314
</igx-chip>
15+
}
1416
</igx-chips-area>
1517
</div>
1618
<div class="chips">
1719
<button #openButton igxButton="raised" (click)="toggleDropDown($event)" [igxDropDownItemNavigation]="dropdown">Talks</button>
1820
<igx-drop-down #dropdown (selectionChanging)="itemSelection($event)">
19-
<igx-drop-down-item *ngFor="let item of dropDownList" [value]="item.name">
21+
@for (item of dropDownList; track item.id) {
22+
<igx-drop-down-item [value]="item.name">
2023
<div class="ig-drop-down__item-template">
2124
<span>{{item.name}}</span>
2225
</div>
2326
</igx-drop-down-item>
27+
}
2428
</igx-drop-down>
2529
</div>
2630
</div>

packages/igx-templates/igx-ts/chip/default/files/src/app/__path__/__filePrefix__.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import {
1515
IgxDropDownItemNavigationDirective,
1616
IgxDropDownItemComponent,
1717
} from '<%=igxPackage%>';
18-
import { NgFor } from '@angular/common';
1918

2019
interface NamedEntry {
2120
id: string;
@@ -29,7 +28,6 @@ interface NamedEntry {
2928
imports: [
3029
IgxLayoutDirective,
3130
IgxChipsAreaComponent,
32-
NgFor,
3331
IgxChipComponent,
3432
IgxButtonDirective,
3533
IgxDropDownItemNavigationDirective,

packages/igx-templates/igx-ts/dropdown/default/files/src/app/__path__/__filePrefix__.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,10 @@
66
<div class="sample-wrapper drop-down-wrapper">
77
<button #button igxButton="raised" igxRipple [igxToggleAction]="dropdown" [igxDropDownItemNavigation]="dropdown">Toggle dropdown</button>
88
<igx-drop-down width="200px" #dropdown>
9-
<igx-drop-down-item *ngFor="let item of items" [disabled]="!!item.disabled" [isHeader]="!!item.header">
9+
@for (item of items; track item) {
10+
<igx-drop-down-item [disabled]="!!item.disabled" [isHeader]="!!item.header">
1011
{{ item.name }}
1112
</igx-drop-down-item>
13+
}
1214
</igx-drop-down>
1315
</div>

packages/igx-templates/igx-ts/dropdown/default/files/src/app/__path__/__filePrefix__.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import {
88
IgxDropDownComponent,
99
IgxDropDownItemComponent,
1010
} from '<%=igxPackage%>';
11-
import { NgFor } from '@angular/common';
1211

1312
@Component({
1413
selector: 'app-<%=filePrefix%>',
@@ -20,7 +19,6 @@ import { NgFor } from '@angular/common';
2019
IgxToggleActionDirective,
2120
IgxDropDownItemNavigationDirective,
2221
IgxDropDownComponent,
23-
NgFor,
2422
IgxDropDownItemComponent,
2523
]
2624
})

0 commit comments

Comments
 (0)