{ "version": 3, "sources": ["src/app/_services/series.service.ts"], "sourcesContent": ["import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from 'src/environments/environment';\r\nimport { UtilityService } from '../shared/_services/utility.service';\r\nimport { Chapter } from '../_models/chapter';\r\nimport { ChapterMetadata } from '../_models/metadata/chapter-metadata';\r\nimport { CollectionTag } from '../_models/collection-tag';\r\nimport { PaginatedResult } from '../_models/pagination';\r\nimport { Series } from '../_models/series';\r\nimport { RelatedSeries } from '../_models/series-detail/related-series';\r\nimport { SeriesDetail } from '../_models/series-detail/series-detail';\r\nimport { SeriesGroup } from '../_models/series-group';\r\nimport { SeriesMetadata } from '../_models/metadata/series-metadata';\r\nimport { Volume } from '../_models/volume';\r\nimport { ImageService } from './image.service';\r\nimport { TextResonse } from '../_types/text-response';\r\nimport { SeriesFilterV2 } from '../_models/metadata/v2/series-filter-v2';\r\nimport {UserReview} from \"../_single-module/review-card/user-review\";\r\nimport {Rating} from \"../_models/rating\";\r\nimport {Recommendation} from \"../_models/series-detail/recommendation\";\r\nimport {ExternalSeriesDetail} from \"../_models/series-detail/external-series-detail\";\r\nimport {NextExpectedChapter} from \"../_models/series-detail/next-expected-chapter\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SeriesService {\r\n\r\n baseUrl = environment.apiUrl;\r\n paginatedResults: PaginatedResult = new PaginatedResult();\r\n paginatedSeriesForTagsResults: PaginatedResult = new PaginatedResult();\r\n\r\n constructor(private httpClient: HttpClient, private imageService: ImageService,\r\n private utilityService: UtilityService) { }\r\n\r\n getAllSeriesV2(pageNum?: number, itemsPerPage?: number, filter?: SeriesFilterV2) {\r\n let params = new HttpParams();\r\n params = this.utilityService.addPaginationIfExists(params, pageNum, itemsPerPage);\r\n const data = filter || {};\r\n\r\n return this.httpClient.post>(this.baseUrl + 'series/all-v2', data, {observe: 'response', params}).pipe(\r\n map((response: any) => {\r\n return this.utilityService.createPaginatedResult(response, this.paginatedResults);\r\n })\r\n );\r\n }\r\n\r\n getSeriesForLibraryV2(pageNum?: number, itemsPerPage?: number, filter?: SeriesFilterV2) {\r\n let params = new HttpParams();\r\n params = this.utilityService.addPaginationIfExists(params, pageNum, itemsPerPage);\r\n const data = filter || {};\r\n\r\n return this.httpClient.post>(this.baseUrl + 'series/v2', data, {observe: 'response', params}).pipe(\r\n map((response: any) => {\r\n return this.utilityService.createPaginatedResult(response, this.paginatedResults);\r\n })\r\n );\r\n }\r\n\r\n getAllSeriesByIds(seriesIds: Array) {\r\n return this.httpClient.post(this.baseUrl + 'series/series-by-ids', {seriesIds: seriesIds});\r\n }\r\n\r\n getSeries(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/' + seriesId);\r\n }\r\n\r\n getVolumes(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/volumes?seriesId=' + seriesId);\r\n }\r\n\r\n getChapter(chapterId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/chapter?chapterId=' + chapterId);\r\n }\r\n\r\n getChapterMetadata(chapterId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/chapter-metadata?chapterId=' + chapterId);\r\n }\r\n\r\n delete(seriesId: number) {\r\n return this.httpClient.delete(this.baseUrl + 'series/' + seriesId);\r\n }\r\n\r\n deleteMultipleSeries(seriesIds: Array) {\r\n return this.httpClient.post(this.baseUrl + 'series/delete-multiple', {seriesIds});\r\n }\r\n\r\n updateRating(seriesId: number, userRating: number) {\r\n return this.httpClient.post(this.baseUrl + 'series/update-rating', {seriesId, userRating});\r\n }\r\n\r\n updateSeries(model: any) {\r\n return this.httpClient.post(this.baseUrl + 'series/update', model);\r\n }\r\n\r\n markRead(seriesId: number) {\r\n return this.httpClient.post(this.baseUrl + 'reader/mark-read', {seriesId});\r\n }\r\n\r\n markUnread(seriesId: number) {\r\n return this.httpClient.post(this.baseUrl + 'reader/mark-unread', {seriesId});\r\n }\r\n\r\n getRecentlyAdded(pageNum?: number, itemsPerPage?: number, filter?: SeriesFilterV2) {\r\n let params = new HttpParams();\r\n params = this.utilityService.addPaginationIfExists(params, pageNum, itemsPerPage);\r\n\r\n const data = filter || {};\r\n return this.httpClient.post(this.baseUrl + 'series/recently-added-v2', data, {observe: 'response', params}).pipe(\r\n map(response => {\r\n return this.utilityService.createPaginatedResult(response, new PaginatedResult());\r\n })\r\n );\r\n }\r\n\r\n getRecentlyUpdatedSeries() {\r\n return this.httpClient.post(this.baseUrl + 'series/recently-updated-series', {});\r\n }\r\n\r\n getWantToRead(pageNum?: number, itemsPerPage?: number, filter?: SeriesFilterV2): Observable> {\r\n let params = new HttpParams();\r\n params = this.utilityService.addPaginationIfExists(params, pageNum, itemsPerPage);\r\n const data = filter || {};\r\n\r\n return this.httpClient.post(this.baseUrl + 'want-to-read/v2', data, {observe: 'response', params}).pipe(\r\n map(response => {\r\n return this.utilityService.createPaginatedResult(response, new PaginatedResult());\r\n }));\r\n }\r\n\r\n isWantToRead(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'want-to-read?seriesId=' + seriesId, TextResonse)\r\n .pipe(map(val => {\r\n return val === 'true';\r\n }));\r\n }\r\n\r\n getOnDeck(libraryId: number = 0, pageNum?: number, itemsPerPage?: number, filter?: SeriesFilterV2) {\r\n let params = new HttpParams();\r\n params = this.utilityService.addPaginationIfExists(params, pageNum, itemsPerPage);\r\n const data = filter || {};\r\n\r\n return this.httpClient.post(this.baseUrl + 'series/on-deck?libraryId=' + libraryId, data, {observe: 'response', params}).pipe(\r\n map(response => {\r\n return this.utilityService.createPaginatedResult(response, new PaginatedResult());\r\n }));\r\n }\r\n\r\n\r\n refreshMetadata(series: Series) {\r\n return this.httpClient.post(this.baseUrl + 'series/refresh-metadata', {libraryId: series.libraryId, seriesId: series.id});\r\n }\r\n\r\n scan(libraryId: number, seriesId: number, force = false) {\r\n return this.httpClient.post(this.baseUrl + 'series/scan', {libraryId: libraryId, seriesId: seriesId, forceUpdate: force});\r\n }\r\n\r\n analyzeFiles(libraryId: number, seriesId: number) {\r\n return this.httpClient.post(this.baseUrl + 'series/analyze', {libraryId: libraryId, seriesId: seriesId});\r\n }\r\n\r\n getMetadata(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/metadata?seriesId=' + seriesId).pipe(map(items => {\r\n items?.collectionTags.forEach(tag => tag.coverImage = this.imageService.getCollectionCoverImage(tag.id));\r\n return items;\r\n }));\r\n }\r\n\r\n updateMetadata(seriesMetadata: SeriesMetadata, collectionTags: CollectionTag[]) {\r\n const data = {\r\n seriesMetadata,\r\n collectionTags,\r\n };\r\n return this.httpClient.post(this.baseUrl + 'series/metadata', data, TextResonse);\r\n }\r\n\r\n getSeriesForTag(collectionTagId: number, pageNum?: number, itemsPerPage?: number) {\r\n let params = new HttpParams();\r\n\r\n params = this.utilityService.addPaginationIfExists(params, pageNum, itemsPerPage);\r\n\r\n return this.httpClient.get>(this.baseUrl + 'series/series-by-collection?collectionId=' + collectionTagId, {observe: 'response', params}).pipe(\r\n map((response: any) => {\r\n return this.utilityService.createPaginatedResult(response, this.paginatedSeriesForTagsResults);\r\n })\r\n );\r\n }\r\n\r\n getRelatedForSeries(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/all-related?seriesId=' + seriesId);\r\n }\r\n\r\n getRecommendationsForSeries(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'recommended/recommendations?seriesId=' + seriesId);\r\n }\r\n\r\n updateRelationships(seriesId: number, adaptations: Array, characters: Array,\r\n contains: Array, others: Array, prequels: Array,\r\n sequels: Array, sideStories: Array, spinOffs: Array,\r\n alternativeSettings: Array, alternativeVersions: Array, doujinshis: Array, editions: Array) {\r\n return this.httpClient.post(this.baseUrl + 'series/update-related?seriesId=' + seriesId,\r\n {seriesId, adaptations, characters, sequels, prequels, contains, others, sideStories, spinOffs,\r\n alternativeSettings, alternativeVersions, doujinshis, editions});\r\n }\r\n\r\n getSeriesDetail(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/series-detail?seriesId=' + seriesId);\r\n }\r\n\r\n getReviews(seriesId: number) {\r\n return this.httpClient.get>(this.baseUrl + 'review?seriesId=' + seriesId);\r\n }\r\n\r\n updateReview(seriesId: number, body: string) {\r\n return this.httpClient.post(this.baseUrl + 'review', {\r\n seriesId, body\r\n });\r\n }\r\n\r\n getRatings(seriesId: number) {\r\n return this.httpClient.get>(this.baseUrl + 'rating?seriesId=' + seriesId);\r\n }\r\n getOverallRating(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'rating/overall?seriesId=' + seriesId);\r\n }\r\n\r\n removeFromOnDeck(seriesId: number) {\r\n return this.httpClient.post(this.baseUrl + 'series/remove-from-on-deck?seriesId=' + seriesId, {});\r\n }\r\n\r\n getExternalSeriesDetails(aniListId?: number, malId?: number, seriesId?: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/external-series-detail?aniListId=' + (aniListId || 0) + '&malId=' + (malId || 0) + '&seriesId=' + (seriesId || 0));\r\n }\r\n\r\n getNextExpectedChapterDate(seriesId: number) {\r\n return this.httpClient.get(this.baseUrl + 'series/next-expected?seriesId=' + seriesId);\r\n }\r\n\r\n}\r\n"], "mappings": "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", "names": ["SeriesService", "constructor", "httpClient", "imageService", "utilityService", "baseUrl", "environment", "apiUrl", "paginatedResults", "PaginatedResult", "paginatedSeriesForTagsResults", "getAllSeriesV2", "pageNum", "itemsPerPage", "filter", "params", "HttpParams", "addPaginationIfExists", "data", "post", "observe", "pipe", "map", "response", "createPaginatedResult", "getSeriesForLibraryV2", "getAllSeriesByIds", "seriesIds", "getSeries", "seriesId", "get", "getVolumes", "getChapter", "chapterId", "getChapterMetadata", "delete", "deleteMultipleSeries", "updateRating", "userRating", "updateSeries", "model", "markRead", "markUnread", "getRecentlyAdded", "getRecentlyUpdatedSeries", "getWantToRead", "isWantToRead", "TextResonse", "val", "getOnDeck", "libraryId", "refreshMetadata", "series", "id", "scan", "force", "forceUpdate", "analyzeFiles", "getMetadata", "items", "collectionTags", "forEach", "tag", "coverImage", "getCollectionCoverImage", "updateMetadata", "seriesMetadata", "getSeriesForTag", "collectionTagId", "getRelatedForSeries", "getRecommendationsForSeries", "updateRelationships", "adaptations", "characters", "contains", "others", "prequels", "sequels", "sideStories", "spinOffs", "alternativeSettings", "alternativeVersions", "doujinshis", "editions", "getSeriesDetail", "getReviews", "updateReview", "body", "getRatings", "getOverallRating", "removeFromOnDeck", "getExternalSeriesDetails", "aniListId", "malId", "getNextExpectedChapterDate", "\u0275\u0275inject", "HttpClient", "ImageService", "UtilityService", "factory", "\u0275fac", "providedIn", "_SeriesService"] }