feat: initial version of reader
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import { CommonModule } from "@angular/common";
|
||||
import { AfterViewInit, Component } from "@angular/core";
|
||||
import { ActivatedRoute, Router } from "@angular/router";
|
||||
import { IRulibChaptersResult } from "../../services/parsers/rulib/rulib.chapters.dto";
|
||||
import { Data } from "../../services/parsers/rulib/rulib.detail.dto";
|
||||
import { SearchService } from "../../services/search.service";
|
||||
|
||||
@@ -13,20 +14,41 @@ import { SearchService } from "../../services/search.service";
|
||||
})
|
||||
export class DetailComponent implements AfterViewInit {
|
||||
detail_item: Data | null = null;
|
||||
chapters: IRulibChaptersResult = { data: [] };
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private searchService: SearchService,
|
||||
private router: Router,
|
||||
) {}
|
||||
|
||||
private getDetails(url: string) {
|
||||
this.searchService.getDetails(url).subscribe((data) => {
|
||||
this.detail_item = data.data;
|
||||
});
|
||||
this.searchService.getChapters(url).subscribe((data) => {
|
||||
this.chapters = data;
|
||||
});
|
||||
}
|
||||
|
||||
ngAfterViewInit(): void {
|
||||
this.route.queryParams.subscribe((params) => {
|
||||
const url = params["url"];
|
||||
if (url) {
|
||||
this.searchService.getDetails(url).subscribe((data) => (this.detail_item = data.data));
|
||||
this.getDetails(url);
|
||||
} else {
|
||||
this.router.navigate(["/"]);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
goToReader() {
|
||||
//TODO: Not only first chapter
|
||||
this.router.navigate(["/", "reader"], {
|
||||
queryParams: {
|
||||
url: this.detail_item?.slug_url,
|
||||
chapter: this.chapters.data[0].number,
|
||||
volume: this.chapters.data[0].volume,
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user