{ "version": 3, "sources": ["src/app/want-to-read/_components/want-to-read/want-to-read.component.ts", "src/app/want-to-read/_components/want-to-read/want-to-read.component.html", "src/app/_routes/want-to-read-routing.module.ts"], "sourcesContent": ["import { DOCUMENT, NgStyle, NgIf, DecimalPipe } from '@angular/common';\r\nimport {\r\n AfterContentChecked,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component, DestroyRef,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n inject,\r\n Inject,\r\n OnInit,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { take, debounceTime } from 'rxjs';\r\nimport { BulkSelectionService } from 'src/app/cards/bulk-selection.service';\r\nimport { FilterSettings } from 'src/app/metadata-filter/filter-settings';\r\nimport { FilterUtilitiesService } from 'src/app/shared/_services/filter-utilities.service';\r\nimport { UtilityService, KEY_CODES } from 'src/app/shared/_services/utility.service';\r\nimport { SeriesRemovedEvent } from 'src/app/_models/events/series-removed-event';\r\nimport { JumpKey } from 'src/app/_models/jumpbar/jump-key';\r\nimport { Pagination } from 'src/app/_models/pagination';\r\nimport { Series } from 'src/app/_models/series';\r\nimport { FilterEvent } from 'src/app/_models/metadata/series-filter';\r\nimport { Action, ActionItem } from 'src/app/_services/action-factory.service';\r\nimport { ActionService } from 'src/app/_services/action.service';\r\nimport { ImageService } from 'src/app/_services/image.service';\r\nimport { JumpbarService } from 'src/app/_services/jumpbar.service';\r\nimport { MessageHubService, EVENTS } from 'src/app/_services/message-hub.service';\r\nimport { ScrollService } from 'src/app/_services/scroll.service';\r\nimport { SeriesService } from 'src/app/_services/series.service';\r\nimport {takeUntilDestroyed} from \"@angular/core/rxjs-interop\";\r\nimport { SeriesCardComponent } from '../../../cards/series-card/series-card.component';\r\nimport { CardDetailLayoutComponent } from '../../../cards/card-detail-layout/card-detail-layout.component';\r\nimport { BulkOperationsComponent } from '../../../cards/bulk-operations/bulk-operations.component';\r\nimport { SideNavCompanionBarComponent } from '../../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component';\r\nimport {translate, TranslocoDirective} from \"@ngneat/transloco\";\r\nimport {SeriesFilterV2} from \"../../../_models/metadata/v2/series-filter-v2\";\r\n\r\n\r\n@Component({\r\n selector: 'app-want-to-read',\r\n templateUrl: './want-to-read.component.html',\r\n styleUrls: ['./want-to-read.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: true,\r\n imports: [SideNavCompanionBarComponent, NgStyle, BulkOperationsComponent, CardDetailLayoutComponent, SeriesCardComponent, NgIf, DecimalPipe, TranslocoDirective]\r\n})\r\nexport class WantToReadComponent implements OnInit, AfterContentChecked {\r\n\r\n @ViewChild('scrollingBlock') scrollingBlock: ElementRef | undefined;\r\n @ViewChild('companionBar') companionBar: ElementRef | undefined;\r\n private readonly destroyRef = inject(DestroyRef);\r\n\r\n isLoading: boolean = true;\r\n series: Array = [];\r\n pagination: Pagination = new Pagination();\r\n filter: SeriesFilterV2 | undefined = undefined;\r\n filterSettings: FilterSettings = new FilterSettings();\r\n refresh: EventEmitter = new EventEmitter();\r\n\r\n filterActiveCheck!: SeriesFilterV2;\r\n filterActive: boolean = false;\r\n\r\n jumpbarKeys: Array = [];\r\n\r\n filterOpen: EventEmitter = new EventEmitter();\r\n\r\n trackByIdentity = (index: number, item: Series) => `${item.name}_${item.localizedName}_${item.pagesRead}`;\r\n\r\n bulkActionCallback = (action: ActionItem, data: any) => {\r\n const selectedSeriesIndices = this.bulkSelectionService.getSelectedCardsForSource('series');\r\n const selectedSeries = this.series.filter((series, index: number) => selectedSeriesIndices.includes(index + ''));\r\n\r\n switch (action.action) {\r\n case Action.RemoveFromWantToReadList:\r\n this.actionService.removeMultipleSeriesFromWantToReadList(selectedSeries.map(s => s.id), () => {\r\n this.bulkSelectionService.deselectAll();\r\n this.loadPage();\r\n });\r\n break;\r\n }\r\n }\r\n\r\n collectionTag: any;\r\n\r\n get ScrollingBlockHeight() {\r\n if (this.scrollingBlock === undefined) return 'calc(var(--vh)*100)';\r\n const navbar = this.document.querySelector('.navbar') as HTMLElement;\r\n if (navbar === null) return 'calc(var(--vh)*100)';\r\n\r\n const companionHeight = this.companionBar!.nativeElement.offsetHeight;\r\n const navbarHeight = navbar.offsetHeight;\r\n const totalHeight = companionHeight + navbarHeight + 21; //21px to account for padding\r\n return 'calc(var(--vh)*100 - ' + totalHeight + 'px)';\r\n }\r\n\r\n constructor(public imageService: ImageService, private router: Router, private route: ActivatedRoute,\r\n private seriesService: SeriesService, private titleService: Title,\r\n public bulkSelectionService: BulkSelectionService, private actionService: ActionService, private messageHub: MessageHubService,\r\n private filterUtilityService: FilterUtilitiesService, private utilityService: UtilityService, @Inject(DOCUMENT) private document: Document,\r\n private readonly cdRef: ChangeDetectorRef, private scrollService: ScrollService, private hubService: MessageHubService,\r\n private jumpbarService: JumpbarService) {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.titleService.setTitle('Kavita - ' + translate('want-to-read.title'));\r\n\r\n this.filterUtilityService.filterPresetsFromUrl(this.route.snapshot).subscribe(filter => {\r\n this.filter = filter;\r\n\r\n this.filterActiveCheck = this.filterUtilityService.createSeriesV2Filter();\r\n this.filterActiveCheck!.statements.push(this.filterUtilityService.createSeriesV2DefaultStatement());\r\n this.filterSettings.presetsV2 = this.filter;\r\n\r\n this.cdRef.markForCheck();\r\n });\r\n\r\n this.hubService.messages$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((event) => {\r\n if (event.event === EVENTS.SeriesRemoved) {\r\n const seriesRemoved = event.payload as SeriesRemovedEvent;\r\n if (!this.utilityService.deepEqual(this.filter, this.filterActiveCheck)) {\r\n this.loadPage();\r\n return;\r\n }\r\n\r\n this.series = this.series.filter(s => s.id != seriesRemoved.seriesId);\r\n this.pagination.totalItems--;\r\n this.cdRef.markForCheck();\r\n this.refresh.emit();\r\n }\r\n });\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.messageHub.messages$.pipe(takeUntilDestroyed(this.destroyRef), debounceTime(2000)).subscribe(event => {\r\n if (event.event === EVENTS.SeriesRemoved) {\r\n this.loadPage();\r\n }\r\n });\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n this.scrollService.setScrollContainer(this.scrollingBlock);\r\n }\r\n\r\n @HostListener('document:keydown.shift', ['$event'])\r\n handleKeypress(event: KeyboardEvent) {\r\n if (event.key === KEY_CODES.SHIFT) {\r\n this.bulkSelectionService.isShiftDown = true;\r\n }\r\n }\r\n\r\n @HostListener('document:keyup.shift', ['$event'])\r\n handleKeyUp(event: KeyboardEvent) {\r\n if (event.key === KEY_CODES.SHIFT) {\r\n this.bulkSelectionService.isShiftDown = false;\r\n }\r\n }\r\n\r\n removeSeries(seriesId: number) {\r\n this.series = this.series.filter(s => s.id != seriesId);\r\n this.pagination.totalItems--;\r\n this.cdRef.markForCheck();\r\n this.refresh.emit();\r\n }\r\n\r\n loadPage() {\r\n this.filterActive = !this.utilityService.deepEqual(this.filter, this.filterActiveCheck);\r\n this.isLoading = true;\r\n this.cdRef.markForCheck();\r\n\r\n this.seriesService.getWantToRead(undefined, undefined, this.filter).pipe(take(1)).subscribe(paginatedList => {\r\n this.series = paginatedList.result;\r\n this.pagination = paginatedList.pagination;\r\n this.jumpbarKeys = this.jumpbarService.getJumpKeys(this.series, (series: Series) => series.name);\r\n this.isLoading = false;\r\n this.cdRef.markForCheck();\r\n });\r\n }\r\n\r\n updateFilter(data: FilterEvent) {\r\n if (data.filterV2 === undefined) return;\r\n this.filter = data.filterV2;\r\n\r\n if (data.isFirst) {\r\n this.loadPage();\r\n return;\r\n }\r\n\r\n this.filterUtilityService.updateUrlFromFilter(this.filter).subscribe((encodedFilter) => {\r\n this.loadPage();\r\n });\r\n }\r\n}\r\n\r\n\r\n", "\r\n
\r\n \r\n \r\n

\r\n {{t('title')}}\r\n

\r\n
\r\n
{{t('series-count', {num: (pagination.totalItems | number)})}}
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n {{t('no-items')}}\r\n \r\n
\r\n\r\n
\r\n \r\n {{t('no-items-filtered')}}\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n", "import { Routes } from '@angular/router';\r\nimport { WantToReadComponent } from '../want-to-read/_components/want-to-read/want-to-read.component';\r\n\r\nexport const routes: Routes = [\r\n {path: '', component: WantToReadComponent, pathMatch: 'full'},\r\n];\r\n"], "mappings": "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", "names": ["\u0275\u0275elementStart", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r4", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "removeSeries", "position_r5", "idx", "bulkSelectionService", "handleCardSelection", "series", "length", "\u0275\u0275elementEnd", "\u0275\u0275property", "item_r6", "libraryId", "isCardSelected", "\u0275\u0275text", "\u0275\u0275textInterpolate1", "t_r7", "\u0275\u0275template", "WantToReadComponent_ng_container_0_app_card_detail_layout_13_div_3_ng_template_1_Template", "\u0275\u0275templateRefExtractor", "WantToReadComponent_ng_container_0_app_card_detail_layout_13_div_4_ng_template_1_Template", "_r3", "updateFilter", "WantToReadComponent_ng_container_0_app_card_detail_layout_13_ng_template_1_Template", "WantToReadComponent_ng_container_0_app_card_detail_layout_13_div_3_Template", "WantToReadComponent_ng_container_0_app_card_detail_layout_13_div_4_Template", "isLoading", "pagination", "filterSettings", "filterOpen", "jumpbarKeys", "trackByIdentity", "refresh", "\u0275\u0275advance", "filterActive", "\u0275\u0275elementContainerStart", "_r1", "emit", "\u0275\u0275element", "WantToReadComponent_ng_container_0_app_card_detail_layout_13_Template", "\u0275\u0275textInterpolate", "\u0275\u0275pureFunction1", "_c2", "\u0275\u0275pipeBind1", "totalItems", "_c3", "ScrollingBlockHeight", "bulkActionCallback", "filter", "WantToReadComponent", "scrollingBlock", "undefined", "navbar", "document", "querySelector", "companionHeight", "companionBar", "nativeElement", "offsetHeight", "navbarHeight", "constructor", "imageService", "router", "route", "seriesService", "titleService", "actionService", "messageHub", "filterUtilityService", "utilityService", "cdRef", "scrollService", "hubService", "jumpbarService", "destroyRef", "inject", "DestroyRef", "Pagination", "FilterSettings", "EventEmitter", "index", "item", "name", "localizedName", "pagesRead", "action", "data", "selectedSeriesIndices", "getSelectedCardsForSource", "selectedSeries", "includes", "Action", "RemoveFromWantToReadList", "removeMultipleSeriesFromWantToReadList", "map", "s", "id", "deselectAll", "loadPage", "routeReuseStrategy", "shouldReuseRoute", "setTitle", "translate", "filterPresetsFromUrl", "snapshot", "subscribe", "filterActiveCheck", "createSeriesV2Filter", "statements", "push", "createSeriesV2DefaultStatement", "presetsV2", "markForCheck", "messages$", "pipe", "takeUntilDestroyed", "event", "EVENTS", "SeriesRemoved", "seriesRemoved", "payload", "deepEqual", "seriesId", "ngOnInit", "debounceTime", "ngAfterContentChecked", "setScrollContainer", "handleKeypress", "key", "KEY_CODES", "SHIFT", "isShiftDown", "handleKeyUp", "getWantToRead", "take", "paginatedList", "result", "getJumpKeys", "filterV2", "isFirst", "updateUrlFromFilter", "encodedFilter", "\u0275\u0275directiveInject", "ImageService", "Router", "ActivatedRoute", "SeriesService", "Title", "BulkSelectionService", "ActionService", "MessageHubService", "FilterUtilitiesService", "UtilityService", "DOCUMENT", "ChangeDetectorRef", "ScrollService", "JumpbarService", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275resolveDocument", "WantToReadComponent_ng_container_0_Template", "SideNavCompanionBarComponent", "NgStyle", "BulkOperationsComponent", "CardDetailLayoutComponent", "SeriesCardComponent", "NgIf", "DecimalPipe", "TranslocoDirective", "styles", "changeDetection", "_WantToReadComponent", "routes", "path", "component", "WantToReadComponent", "pathMatch"] }