28 lines
729 B
TypeScript
28 lines
729 B
TypeScript
import { Component, inject } from '@angular/core';
|
|
import { Router } from '@angular/router';
|
|
import { IssuesStore } from './issues.store';
|
|
|
|
@Component({
|
|
selector: 'app-issues',
|
|
imports: [],
|
|
templateUrl: './issues.html',
|
|
styleUrl: './issues.css',
|
|
})
|
|
export class Issues {
|
|
private readonly router = inject(Router);
|
|
private readonly issuesStore = inject(IssuesStore);
|
|
|
|
protected readonly issues = this.issuesStore.issues;
|
|
|
|
protected createIssue(): void {
|
|
const nextId = this.issuesStore.getNextId();
|
|
this.router.navigate(['/issues/new'], {
|
|
queryParams: { draftId: nextId, mode: 'edit' },
|
|
});
|
|
}
|
|
|
|
protected openIssue(issueId: number): void {
|
|
this.router.navigate(['/issues', issueId]);
|
|
}
|
|
}
|