toSignal via Gemini
This commit is contained in:
@@ -1,32 +1,22 @@
|
||||
import { Component, OnInit, inject } from '@angular/core';
|
||||
import { Component, computed, inject } from '@angular/core';
|
||||
import { MatButtonModule } from '@angular/material/button';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
import { MatTableModule } from '@angular/material/table';
|
||||
import { ActivatedRoute, RouterLink } from '@angular/router';
|
||||
|
||||
import { User } from '../../core/user';
|
||||
import { LocalTimePipe } from '../../shared/local-time.pipe';
|
||||
import { UserListDataSource } from './user-list-datasource';
|
||||
|
||||
import { UserService } from '../user.service';
|
||||
@Component({
|
||||
selector: 'app-user-list',
|
||||
templateUrl: './user-list.component.html',
|
||||
styleUrls: ['./user-list.component.css'],
|
||||
imports: [LocalTimePipe, MatButtonModule, MatIconModule, MatTableModule, RouterLink],
|
||||
})
|
||||
export class UserListComponent implements OnInit {
|
||||
export class UserListComponent {
|
||||
private userService = inject(UserService);
|
||||
private route = inject(ActivatedRoute);
|
||||
listResource = this.userService.list();
|
||||
|
||||
dataSource: UserListDataSource = new UserListDataSource([]);
|
||||
list: User[] = [];
|
||||
/** Columns displayed in the table. Columns IDs can be added, removed, or reordered. */
|
||||
dataSource = computed(() => this.listResource.value() ?? []);
|
||||
displayedColumns = ['name', 'lockedOut', 'roles', 'last'];
|
||||
|
||||
ngOnInit() {
|
||||
this.route.data.subscribe((value) => {
|
||||
const data = value as { list: User[] };
|
||||
this.list = data.list;
|
||||
});
|
||||
this.dataSource = new UserListDataSource(this.list);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user