Skip to content

Commit 341bc82

Browse files
committed
docs: convert list/pag/progb/progs/rad/rip/elev to signals
1 parent 76f5be0 commit 341bc82

17 files changed

Lines changed: 84 additions & 85 deletions
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
<div class="example-container" [class.mat-shadow-1]="!isActive" [class.mat-shadow-4]="isActive">
1+
<div class="example-container" [class.mat-shadow-1]="!isActive()" [class.mat-shadow-4]="isActive()">
22
Example
33
</div>
44

5-
<button matButton (click)="isActive = !isActive">Toggle Elevation</button>
5+
<button matButton (click)="isActive.set(!isActive())">Toggle Elevation</button>

src/components-examples/material/core/elevation-overview/elevation-overview-example.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component} from '@angular/core';
1+
import {Component, signal} from '@angular/core';
22
import {MatButtonModule} from '@angular/material/button';
33

44
/**
@@ -11,5 +11,5 @@ import {MatButtonModule} from '@angular/material/button';
1111
imports: [MatButtonModule],
1212
})
1313
export class ElevationOverviewExample {
14-
isActive = false;
14+
isActive = signal(false);
1515
}

src/components-examples/material/core/ripple-overview/ripple-overview-example.html

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,12 @@
1111
<input matInput [(ngModel)]="color" type="text">
1212
</mat-form-field>
1313

14-
1514
<div class="example-ripple-container mat-shadow-2"
1615
matRipple
17-
[matRippleCentered]="centered"
18-
[matRippleDisabled]="disabled"
19-
[matRippleUnbounded]="unbounded"
20-
[matRippleRadius]="radius"
21-
[matRippleColor]="color">
16+
[matRippleCentered]="centered()"
17+
[matRippleDisabled]="disabled()"
18+
[matRippleUnbounded]="unbounded()"
19+
[matRippleRadius]="radius()"
20+
[matRippleColor]="color()">
2221
Click me
2322
</div>

src/components-examples/material/core/ripple-overview/ripple-overview-example.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component} from '@angular/core';
1+
import {Component, signal} from '@angular/core';
22
import {MatRippleModule} from '@angular/material/core';
33
import {MatInputModule} from '@angular/material/input';
44
import {MatFormFieldModule} from '@angular/material/form-field';
@@ -15,10 +15,10 @@ import {MatCheckboxModule} from '@angular/material/checkbox';
1515
imports: [MatCheckboxModule, FormsModule, MatFormFieldModule, MatInputModule, MatRippleModule],
1616
})
1717
export class RippleOverviewExample {
18-
centered = false;
19-
disabled = false;
20-
unbounded = false;
18+
centered = signal(false);
19+
disabled = signal(false);
20+
unbounded = signal(false);
2121

22-
radius!: number;
23-
color!: string;
22+
radius = signal<number>(0);
23+
color = signal('');
2424
}

src/components-examples/material/list/list-navigation/list-navigation-example.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
<a
44
mat-list-item
55
href="#{{link}}"
6-
(click)="$event.preventDefault(); activeLink=link;"
7-
[activated]="activeLink === link"
6+
(click)="$event.preventDefault(); activeLink.set(link)"
7+
[activated]="activeLink() === link"
88
>{{link | titlecase}}</a
99
>
1010
}
@@ -13,9 +13,9 @@ <h3 matSubheader>List with icons</h3>
1313
@for (link of fragments; track link) {
1414
<a
1515
mat-list-item
16-
[activated]="activeLink===link"
16+
[activated]="activeLink() === link"
1717
href="#{{link}}"
18-
(click)="$event.preventDefault(); activeLink=link;"
18+
(click)="$event.preventDefault(); activeLink.set(link);"
1919
>
2020
<mat-icon matListItemIcon>folder</mat-icon>
2121
<span matListItemTitle>{{ link | titlecase}}</span>

src/components-examples/material/list/list-navigation/list-navigation-example.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import {TitleCasePipe} from '@angular/common';
2-
import {Component} from '@angular/core';
2+
import {Component, signal} from '@angular/core';
33
import {MatIconModule} from '@angular/material/icon';
44
import {MatListModule} from '@angular/material/list';
55

@@ -13,5 +13,5 @@ import {MatListModule} from '@angular/material/list';
1313
})
1414
export class ListNavigationExample {
1515
fragments = ['inbox', 'outbox', 'drafts'];
16-
activeLink: string | null = null;
16+
activeLink = signal<string | null>(null);
1717
}

src/components-examples/material/paginator/paginator-configurable/paginator-configurable-example.html

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
<mat-form-field>
1818
<mat-label>Page Size Options</mat-label>
19-
<input matInput [ngModel]="pageSizeOptions" (ngModelChange)="setPageSizeOptions($event)"
19+
<input matInput [ngModel]="pageSizeOptions()" (ngModelChange)="setPageSizeOptions($event)"
2020
[ngModelOptions]="{updateOn: 'blur'}" placeholder="Ex. 10,25,50">
2121
</mat-form-field>
2222

@@ -31,17 +31,17 @@
3131
<mat-paginator #paginator
3232
class="demo-paginator"
3333
(page)="handlePageEvent($event)"
34-
[length]="length"
35-
[pageSize]="pageSize"
36-
[disabled]="disabled"
37-
[showFirstLastButtons]="showFirstLastButtons"
38-
[pageSizeOptions]="showPageSizeOptions ? pageSizeOptions : []"
39-
[hidePageSize]="hidePageSize"
40-
[pageIndex]="pageIndex"
34+
[length]="length()"
35+
[pageSize]="pageSize()"
36+
[disabled]="disabled()"
37+
[showFirstLastButtons]="showFirstLastButtons()"
38+
[pageSizeOptions]="showPageSizeOptions() ? pageSizeOptions() : []"
39+
[hidePageSize]="hidePageSize()"
40+
[pageIndex]="pageIndex()"
4141
aria-label="Select page">
4242
</mat-paginator>
4343

4444
<div class="demo-data">
45-
<div> Output event: {{(pageEvent | json) || 'No events dispatched yet'}} </div>
45+
<div> Output event: {{(pageEvent() | json) || 'No events dispatched yet'}} </div>
4646
<div> getNumberOfPages: {{paginator.getNumberOfPages()}} </div>
4747
</div>

src/components-examples/material/paginator/paginator-configurable/paginator-configurable-example.ts

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component} from '@angular/core';
1+
import {Component, signal} from '@angular/core';
22
import {PageEvent, MatPaginatorModule} from '@angular/material/paginator';
33
import {JsonPipe} from '@angular/common';
44
import {MatSlideToggleModule} from '@angular/material/slide-toggle';
@@ -23,28 +23,28 @@ import {MatFormFieldModule} from '@angular/material/form-field';
2323
],
2424
})
2525
export class PaginatorConfigurableExample {
26-
length = 50;
27-
pageSize = 10;
28-
pageIndex = 0;
29-
pageSizeOptions = [5, 10, 25];
26+
length = signal(50);
27+
pageSize = signal(10);
28+
pageIndex = signal(0);
29+
pageSizeOptions = signal([5, 10, 25]);
3030

31-
hidePageSize = false;
32-
showPageSizeOptions = true;
33-
showFirstLastButtons = true;
34-
disabled = false;
31+
hidePageSize = signal(false);
32+
showPageSizeOptions = signal(true);
33+
showFirstLastButtons = signal(true);
34+
disabled = signal(false);
3535

36-
pageEvent: PageEvent | undefined;
36+
pageEvent = signal<PageEvent | undefined>(undefined);
3737

3838
handlePageEvent(e: PageEvent) {
39-
this.pageEvent = e;
40-
this.length = e.length;
41-
this.pageSize = e.pageSize;
42-
this.pageIndex = e.pageIndex;
39+
this.pageEvent.set(e);
40+
this.length.set(e.length);
41+
this.pageSize.set(e.pageSize);
42+
this.pageIndex.set(e.pageIndex);
4343
}
4444

4545
setPageSizeOptions(setPageSizeOptionsInput: string) {
4646
if (setPageSizeOptionsInput) {
47-
this.pageSizeOptions = setPageSizeOptionsInput.split(',').map(str => +str);
47+
this.pageSizeOptions.set(setPageSizeOptionsInput.split(',').map(str => +str));
4848
}
4949
}
5050
}
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<mat-paginator
22
(page)="handlePageEvent($event)"
3-
[length]="length"
4-
[pageSize]="pageSize"
5-
[showFirstLastButtons]="showFirstLastButtons"
6-
[pageSizeOptions]="pageSizeOptions"
7-
[pageIndex]="pageIndex"
3+
[length]="length()"
4+
[pageSize]="pageSize()"
5+
[showFirstLastButtons]="showFirstLastButtons()"
6+
[pageSizeOptions]="pageSizeOptions()"
7+
[pageIndex]="pageIndex()"
88
aria-label="Select page">
99
</mat-paginator>

src/components-examples/material/paginator/paginator-harness/paginator-harness-example.spec.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,26 +24,26 @@ describe('PaginatorHarnessExample', () => {
2424
it('should be able to navigate between pages', async () => {
2525
const paginator = await loader.getHarness(MatPaginatorHarness);
2626

27-
expect(instance.pageIndex).toBe(0);
27+
expect(instance.pageIndex()).toBe(0);
2828
await paginator.goToNextPage();
29-
expect(instance.pageIndex).toBe(1);
29+
expect(instance.pageIndex()).toBe(1);
3030
await paginator.goToPreviousPage();
31-
expect(instance.pageIndex).toBe(0);
31+
expect(instance.pageIndex()).toBe(0);
3232
});
3333

3434
it('should be able to go to the last page', async () => {
3535
const paginator = await loader.getHarness(MatPaginatorHarness);
3636

37-
expect(instance.pageIndex).toBe(0);
37+
expect(instance.pageIndex()).toBe(0);
3838
await paginator.goToLastPage();
39-
expect(instance.pageIndex).toBe(49);
39+
expect(instance.pageIndex()).toBe(49);
4040
});
4141

4242
it('should be able to set the page size', async () => {
4343
const paginator = await loader.getHarness(MatPaginatorHarness);
4444

45-
expect(instance.pageSize).toBe(10);
45+
expect(instance.pageSize()).toBe(10);
4646
await paginator.setPageSize(25);
47-
expect(instance.pageSize).toBe(25);
47+
expect(instance.pageSize()).toBe(25);
4848
});
4949
});

0 commit comments

Comments
 (0)