Import des sources angular à partir de 'headup_app'

This commit is contained in:
Rampeur
2025-08-11 23:26:29 +02:00
parent 7dcb426ef5
commit 0a6cbc0c00
335 changed files with 64362 additions and 0 deletions
+71
View File
@@ -0,0 +1,71 @@
import { Component, DestroyRef, inject, OnInit, OnDestroy } from '@angular/core';
import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
import { DatePipe, DecimalPipe } from '@angular/common';
import { ActivatedRoute, RouterLink } from '@angular/router';
import { MatButtonModule } from '@angular/material/button';
import { MatCardModule } from '@angular/material/card';
import { MatDividerModule } from '@angular/material/divider';
import { MatIconModule } from '@angular/material/icon';
import { MatMenuModule } from '@angular/material/menu';
import { Observable, Subscription } from 'rxjs';
import { ListErrorsComponent, MenuItems } from 'src/app/components/shared';
import { Errors, Jump, JumpPageData } from 'src/app/core/models';
@Component({
selector: 'app-jump',
standalone: true,
imports: [
DatePipe, DecimalPipe, RouterLink,
MatButtonModule, MatCardModule,
MatDividerModule, MatIconModule, MatMenuModule,
ListErrorsComponent
],
templateUrl: './jump.component.html',
styleUrl: './jump.component.scss'
})
export class JumpComponent implements OnInit, OnDestroy {
private _data: Subscription = new Subscription();
public title: string = '';
public errors: Errors = { errors: {} };
public destroyRef = inject(DestroyRef);
public jump: Jump = {} as Jump;
public prevSlug: string = '';
public nextSlug: string = '';
constructor(
private route: ActivatedRoute,
public menuItems: MenuItems
) { }
ngOnInit() {
const data$: Observable<{ pageData: JumpPageData }> = this.route.data as Observable<{ pageData: JumpPageData }>;
this._data = data$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((data: { pageData: JumpPageData }) => {
this.jump = data.pageData.jump;
this.prevSlug = data.pageData.prevJump?.slug;
this.nextSlug = data.pageData.nextJump?.slug;
this.title = `Saut n° ${this.jump.numero} `;
});
/*
const data$: Observable<Jump> = this.route.data as Observable<Jump>;
this._data = data$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((data: Jump) => {
this.jump = data;
console.log('jump : ', this.jump);
});
*/
}
ngOnDestroy() {
this._data.unsubscribe();
}
formatDuration(duration: number): string {
const start = new Date(0);
start.setSeconds(duration);
return start.toISOString().substring(14, 19);
}
private _resetErrors(): void {
this.errors = { errors: {} };
}
}