Recently Added Chapters/Volumes (#1007)
* Working on adding recently added chapter/volumes to dashboard. Have some progress, need to tweak grouping logic. * Tweaked the logic to work well for grouping. Now to incorporate information for UI to provide seamless integration * Implemented UI part for Recently Added.
This commit is contained in:
parent
81562b7d41
commit
2d59580aef
11 changed files with 253 additions and 23 deletions
|
|
@ -2,6 +2,7 @@ import { Injectable, OnDestroy } from '@angular/core';
|
|||
import { Subject } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
import { environment } from 'src/environments/environment';
|
||||
import { RecentlyAddedItem } from '../_models/recently-added-item';
|
||||
import { AccountService } from './account.service';
|
||||
import { NavService } from './nav.service';
|
||||
|
||||
|
|
@ -41,6 +42,13 @@ export class ImageService implements OnDestroy {
|
|||
this.onDestroy.complete();
|
||||
}
|
||||
|
||||
getRecentlyAddedItem(item: RecentlyAddedItem) {
|
||||
if (item.chapterId === 0) {
|
||||
return this.getVolumeCoverImage(item.volumeId);
|
||||
}
|
||||
return this.getChapterCoverImage(item.chapterId);
|
||||
}
|
||||
|
||||
getVolumeCoverImage(volumeId: number) {
|
||||
return this.baseUrl + 'image/volume-cover?volumeId=' + volumeId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,10 +5,10 @@ import { map } from 'rxjs/operators';
|
|||
import { environment } from 'src/environments/environment';
|
||||
import { Chapter } from '../_models/chapter';
|
||||
import { CollectionTag } from '../_models/collection-tag';
|
||||
import { InProgressChapter } from '../_models/in-progress-chapter';
|
||||
import { PaginatedResult } from '../_models/pagination';
|
||||
import { RecentlyAddedItem } from '../_models/recently-added-item';
|
||||
import { Series } from '../_models/series';
|
||||
import { ReadStatus, SeriesFilter } from '../_models/series-filter';
|
||||
import { SeriesFilter } from '../_models/series-filter';
|
||||
import { SeriesMetadata } from '../_models/series-metadata';
|
||||
import { Volume } from '../_models/volume';
|
||||
import { ImageService } from './image.service';
|
||||
|
|
@ -123,6 +123,15 @@ export class SeriesService {
|
|||
);
|
||||
}
|
||||
|
||||
getRecentlyAddedChapters() {
|
||||
return this.httpClient.post<RecentlyAddedItem[]>(this.baseUrl + 'series/recently-added-chapters', {}).pipe(
|
||||
map(items => {
|
||||
items.forEach((item, i) => item.id = i);
|
||||
return items;
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
getOnDeck(libraryId: number = 0, pageNum?: number, itemsPerPage?: number, filter?: SeriesFilter) {
|
||||
const data = this.createSeriesFilter(filter);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue