This repository has been archived on 2026-05-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Codiki/frontend/src/app/pages/home/home.component.ts
T

36 lines
1.2 KiB
TypeScript

import {Component, OnInit, inject, Signal} from '@angular/core';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { Observable } from 'rxjs';
import { PublicationListComponent } from '../../components/publication-list/publication-list.component';
import { Publication } from '../../core/rest-services/publications/model/publication';
import { HomeService } from './home.service';
import { CommonModule } from '@angular/common';
import {toSignal} from "@angular/core/rxjs-interop";
@Component({
selector: 'app-home',
imports: [
CommonModule,
MatProgressSpinnerModule,
PublicationListComponent
],
templateUrl: './home.component.html',
styleUrl: './home.component.scss',
providers: [HomeService]
})
export class HomeComponent implements OnInit {
private homeService = inject(HomeService);
get isLoading(): Signal<boolean> {
return toSignal(this.homeService.isLoading$, { initialValue: false });
}
get publications(): Signal<Publication[]> {
return toSignal(this.homeService.publications$, { initialValue: [] });
}
ngOnInit(): void {
this.homeService.startLatestPublicationsRetrieving();
}
}