{ "version": 3, "sources": ["src/app/pdf-reader/_components/pdf-reader/pdf-reader.component.ts", "src/app/pdf-reader/_components/pdf-reader/pdf-reader.component.html", "src/app/_routes/pdf-reader.router.module.ts"], "sourcesContent": ["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component, DestroyRef,\n ElementRef,\n HostListener,\n inject,\n Inject,\n OnDestroy,\n OnInit,\n ViewChild\n} from '@angular/core';\nimport {ActivatedRoute, Router} from '@angular/router';\nimport {NgxExtendedPdfViewerModule, PageViewModeType, ProgressBarEvent, ScrollModeType} from 'ngx-extended-pdf-viewer';\nimport {ToastrService} from 'ngx-toastr';\nimport {take} from 'rxjs';\nimport {BookService} from 'src/app/book-reader/_services/book.service';\nimport {Breakpoint, KEY_CODES, UtilityService} from 'src/app/shared/_services/utility.service';\nimport {Chapter} from 'src/app/_models/chapter';\nimport {User} from 'src/app/_models/user';\nimport {AccountService} from 'src/app/_services/account.service';\nimport {NavService} from 'src/app/_services/nav.service';\nimport {CHAPTER_ID_DOESNT_EXIST, ReaderService} from 'src/app/_services/reader.service';\nimport {SeriesService} from 'src/app/_services/series.service';\nimport {ThemeService} from 'src/app/_services/theme.service';\nimport {NgbTooltip} from '@ng-bootstrap/ng-bootstrap';\nimport {AsyncPipe, DOCUMENT, NgStyle} from '@angular/common';\nimport {translate, TranslocoDirective} from \"@jsverse/transloco\";\nimport {PdfLayoutMode} from \"../../../_models/preferences/pdf-layout-mode\";\nimport {PdfScrollMode} from \"../../../_models/preferences/pdf-scroll-mode\";\nimport {PdfTheme} from \"../../../_models/preferences/pdf-theme\";\nimport {PdfSpreadMode} from \"../../../_models/preferences/pdf-spread-mode\";\nimport {SpreadType} from \"ngx-extended-pdf-viewer/lib/options/spread-type\";\nimport {PdfLayoutModePipe} from \"../../_pipe/pdf-layout-mode.pipe\";\nimport {PdfScrollModeTypePipe} from \"../../_pipe/pdf-scroll-mode.pipe\";\nimport {PdfSpreadTypePipe} from \"../../_pipe/pdf-spread-mode.pipe\";\n\n@Component({\n selector: 'app-pdf-reader',\n templateUrl: './pdf-reader.component.html',\n styleUrls: ['./pdf-reader.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [NgStyle, NgxExtendedPdfViewerModule, NgbTooltip, AsyncPipe, TranslocoDirective,\n PdfLayoutModePipe, PdfScrollModeTypePipe, PdfSpreadTypePipe]\n})\nexport class PdfReaderComponent implements OnInit, OnDestroy {\n\n private readonly route = inject(ActivatedRoute);\n private readonly router = inject(Router);\n private readonly seriesService = inject(SeriesService);\n private readonly navService = inject(NavService);\n private readonly toastr = inject(ToastrService);\n private readonly bookService = inject(BookService);\n private readonly themeService = inject(ThemeService);\n private readonly cdRef = inject(ChangeDetectorRef);\n public readonly accountService = inject(AccountService);\n public readonly readerService = inject(ReaderService);\n public readonly utilityService = inject(UtilityService);\n public readonly destroyRef = inject(DestroyRef);\n\n protected readonly ScrollModeType = ScrollModeType;\n protected readonly Breakpoint = Breakpoint;\n\n @ViewChild('container') container!: ElementRef;\n\n libraryId!: number;\n seriesId!: number;\n volumeId!: number;\n chapterId!: number;\n chapter!: Chapter;\n user!: User;\n\n /**\n * Reading List id. Defaults to -1.\n */\n readingListId: number = CHAPTER_ID_DOESNT_EXIST;\n\n /**\n * If this is true, no progress will be saved.\n */\n incognitoMode: boolean = false;\n\n /**\n * If this is true, chapters will be fetched in the order of a reading list, rather than natural series order.\n */\n readingListMode: boolean = false;\n\n /**\n * Current Page number\n */\n currentPage: number = 1;\n /**\n * Total pages\n */\n maxPages: number = 1;\n bookTitle: string = '';\n\n zoomSetting: string | number = 'auto';\n\n theme: 'dark' | 'light' = 'light';\n themeMap: {[key:string]: {background: string, font: string}} = {\n 'dark': {'background': '#292929', 'font': '#d9d9d9'},\n 'light': {'background': '#f9f9f9', 'font': '#5a5a5a'}\n }\n backgroundColor: string = this.themeMap[this.theme].background;\n fontColor: string = this.themeMap[this.theme].font;\n\n isLoading: boolean = true;\n /**\n * How much of the current document is loaded\n */\n loadPercent: number = 0;\n scrollbarNeeded = false;\n\n pageLayoutMode: PageViewModeType = 'multiple';\n scrollMode: ScrollModeType = ScrollModeType.vertical;\n spreadMode: SpreadType = 'off';\n\n constructor(@Inject(DOCUMENT) private document: Document) {\n this.navService.hideNavBar();\n this.themeService.clearThemes();\n this.navService.hideSideNav();\n }\n\n @HostListener('window:keyup', ['$event'])\n handleKeyPress(event: KeyboardEvent) {\n if (event.key === KEY_CODES.ESC_KEY) {\n this.closeReader();\n }\n }\n\n @HostListener('window:resize', ['$event'])\n @HostListener('window:orientationchange', ['$event'])\n onResize(){\n // Update the window Height\n this.calcScrollbarNeeded();\n }\n\n ngOnDestroy(): void {\n this.themeService.currentTheme$.pipe(take(1)).subscribe(theme => {\n this.themeService.setTheme(theme.name);\n });\n\n this.navService.showNavBar();\n this.navService.showSideNav();\n this.readerService.disableWakeLock();\n }\n\n ngOnInit(): void {\n const libraryId = this.route.snapshot.paramMap.get('libraryId');\n const seriesId = this.route.snapshot.paramMap.get('seriesId');\n const chapterId = this.route.snapshot.paramMap.get('chapterId');\n\n if (libraryId === null || seriesId === null || chapterId === null) {\n this.router.navigateByUrl('/home');\n return;\n }\n\n this.libraryId = parseInt(libraryId, 10);\n this.seriesId = parseInt(seriesId, 10);\n this.chapterId = parseInt(chapterId, 10);\n this.incognitoMode = this.route.snapshot.queryParamMap.get('incognitoMode') === 'true';\n\n\n const readingListId = this.route.snapshot.queryParamMap.get('readingListId');\n if (readingListId != null) {\n this.readingListMode = true;\n this.readingListId = parseInt(readingListId, 10);\n }\n\n this.cdRef.markForCheck();\n\n this.accountService.currentUser$.pipe(take(1)).subscribe(user => {\n if (user) {\n this.user = user;\n this.init();\n }\n });\n }\n\n\n calcScrollbarNeeded() {\n const viewContainer = this.document.querySelector('#viewerContainer');\n if (viewContainer == null) return;\n this.scrollbarNeeded = viewContainer.scrollHeight > this.container?.nativeElement?.clientHeight;\n this.cdRef.markForCheck();\n }\n\n convertPdfLayoutMode(mode: PdfLayoutMode) {\n switch (mode) {\n case PdfLayoutMode.Multiple:\n return 'multiple';\n case PdfLayoutMode.Single:\n return 'single';\n case PdfLayoutMode.Book:\n return 'book';\n case PdfLayoutMode.InfiniteScroll:\n return 'infinite-scroll';\n\n }\n }\n\n convertPdfScrollMode(mode: PdfScrollMode) {\n switch (mode) {\n case PdfScrollMode.Vertical:\n return ScrollModeType.vertical;\n case PdfScrollMode.Horizontal:\n return ScrollModeType.horizontal;\n case PdfScrollMode.Wrapped:\n return ScrollModeType.wrapped;\n case PdfScrollMode.Page:\n return ScrollModeType.page;\n }\n }\n\n convertPdfSpreadMode(mode: PdfSpreadMode): SpreadType {\n switch (mode) {\n case PdfSpreadMode.None:\n return 'off' as SpreadType;\n case PdfSpreadMode.Odd:\n return 'odd' as SpreadType;\n case PdfSpreadMode.Even:\n return 'even' as SpreadType;\n }\n }\n\n convertPdfTheme(theme: PdfTheme) {\n switch (theme) {\n case PdfTheme.Dark:\n return 'dark';\n case PdfTheme.Light:\n return 'light';\n }\n }\n\n init() {\n\n this.pageLayoutMode = this.convertPdfLayoutMode(PdfLayoutMode.Multiple);\n this.scrollMode = this.convertPdfScrollMode(this.user.preferences.pdfScrollMode || PdfScrollMode.Vertical);\n this.spreadMode = this.convertPdfSpreadMode(this.user.preferences.pdfSpreadMode || PdfSpreadMode.None);\n this.theme = this.convertPdfTheme(this.user.preferences.pdfTheme || PdfTheme.Dark);\n this.backgroundColor = this.themeMap[this.theme].background;\n this.fontColor = this.themeMap[this.theme].font; // TODO: Move this to an observable or something\n\n this.calcScrollbarNeeded();\n\n this.bookService.getBookInfo(this.chapterId).subscribe(info => {\n this.volumeId = info.volumeId;\n this.bookTitle = info.bookTitle;\n this.cdRef.markForCheck();\n });\n\n this.readerService.getProgress(this.chapterId).subscribe(progress => {\n this.currentPage = progress.pageNum || 1;\n this.cdRef.markForCheck();\n });\n\n this.seriesService.getChapter(this.chapterId).subscribe(chapter => {\n this.maxPages = chapter.pages;\n\n if (this.currentPage >= this.maxPages) {\n this.currentPage = this.maxPages - 1;\n this.saveProgress();\n }\n this.cdRef.markForCheck();\n });\n setTimeout(() => this.readerService.enableWakeLock(this.container.nativeElement), 1000);\n }\n\n /**\n * Turns off Incognito mode. This can only happen once if the user clicks the icon. This will modify URL state\n */\n turnOffIncognito() {\n this.incognitoMode = false;\n const newRoute = this.readerService.getNextChapterUrl(this.router.url, this.chapterId, this.incognitoMode, this.readingListMode, this.readingListId);\n window.history.replaceState({}, '', newRoute);\n this.toastr.info(translate('toasts.incognito-off'));\n this.saveProgress();\n this.cdRef.markForCheck();\n }\n\n toggleTheme() {\n if (this.theme === 'dark') {\n this.theme = 'light';\n } else {\n this.theme = 'dark';\n }\n this.backgroundColor = this.themeMap[this.theme].background;\n this.fontColor = this.themeMap[this.theme].font;\n this.cdRef.markForCheck();\n }\n\n toggleScrollMode() {\n const options: Array = [ScrollModeType.vertical, ScrollModeType.horizontal, ScrollModeType.page];\n let index = options.indexOf(this.scrollMode) + 1;\n if (index >= options.length) index = 0;\n this.scrollMode = options[index];\n\n this.calcScrollbarNeeded();\n const currPage = this.currentPage;\n this.cdRef.markForCheck();\n\n setTimeout(() => {\n this.currentPage = currPage;\n this.cdRef.markForCheck();\n }, 100);\n }\n\n toggleSpreadMode() {\n const options: Array = ['off', 'odd', 'even'];\n let index = options.indexOf(this.spreadMode) + 1;\n if (index >= options.length) index = 0;\n this.spreadMode = options[index];\n\n\n this.cdRef.markForCheck();\n }\n\n toggleBookPageMode() {\n if (this.pageLayoutMode === 'book') {\n this.pageLayoutMode = 'multiple';\n } else {\n if (this.utilityService.getActiveBreakpoint() < Breakpoint.Tablet) {\n this.toastr.info(translate('toasts.pdf-book-mode-screen-size'));\n return;\n }\n this.pageLayoutMode = 'book';\n // If the fit is automatic, let's adjust to 100% to ensure it renders correctly (can't do this, but it doesn't always happen)\n }\n this.cdRef.markForCheck();\n }\n\n saveProgress() {\n if (this.incognitoMode) return;\n this.readerService.saveProgress(this.libraryId, this.seriesId, this.volumeId, this.chapterId, this.currentPage).subscribe();\n }\n\n closeReader() {\n this.readerService.closeReader(this.readingListMode, this.readingListId);\n }\n\n updateLoading(state: boolean) {\n this.isLoading = state;\n this.cdRef.markForCheck();\n }\n\n updateLoadProgress(event: ProgressBarEvent) {\n this.loadPercent = event.percent;\n this.cdRef.markForCheck();\n }\n\n updateHandTool(event: any) {\n console.log('event.tool', event);\n }\n\n prevPage() {\n this.currentPage--;\n if (this.currentPage < 0) this.currentPage = 0;\n this.cdRef.markForCheck();\n }\n\n nextPage() {\n this.currentPage++;\n if (this.currentPage > this.maxPages) this.currentPage = this.maxPages;\n this.cdRef.markForCheck();\n }\n\n}\n", "\n @if (accountService.currentUser$ | async; as user) {\n
\n\n @if (isLoading) {\n
\n \n {{t('loading-message')}}\n
\n
\n
\n
\n
\n
\n }\n\n \n\n \n\n @if (scrollMode === ScrollModeType.page && !isLoading) {\n
\n
\n }\n\n \n
\n
\n \n \n \n\n @if (utilityService.getActiveBreakpoint() > Breakpoint.Mobile) {\n \n }\n\n @if (incognitoMode) {\n \n }\n\n \n
\n\n \n\n\n
\n \n \n \n\n \n \n \n \n \n \n \n\n\n \n \n\n \n\n\n\n\n\n \n \n\n\n\n\n
\n \n
\n\n
\n\n
\n
\n }\n\n
\n", "import { Routes } from '@angular/router';\nimport { PdfReaderComponent } from '../pdf-reader/_components/pdf-reader/pdf-reader.component';\n\nexport const routes: Routes = [\n {\n path: ':chapterId',\n component: PdfReaderComponent,\n }\n];\n"], "mappings": "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", "names": ["\u0275\u0275elementStart", "\u0275\u0275element", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "t_r2", "\u0275\u0275property", "\u0275\u0275pureFunction1", "_c1", "ctx_r2", "loadPercent", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r4", "\u0275\u0275nextContext", "\u0275\u0275resetView", "prevPage", "nextPage", "\u0275\u0275classMap", "scrollbarNeeded", "bookTitle", "_c3", "fontColor", "\u0275\u0275textInterpolate", "_r6", "turnOffIncognito", "\u0275\u0275template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Conditional_5_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Conditional_6_Template", "_r5", "closeReader", "toggleScrollMode", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_18_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_19_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_20_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_21_Template", "toggleSpreadMode", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_27_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_28_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Case_29_Template", "toggleTheme", "\u0275\u0275pureFunction2", "_c2", "backgroundColor", "\u0275\u0275conditional", "utilityService", "getActiveBreakpoint", "Breakpoint", "Mobile", "incognitoMode", "\u0275\u0275pipeBind1", "scrollMode", "pageLayoutMode", "tmp_17_0", "ScrollModeType", "vertical", "page", "horizontal", "wrapped", "spreadMode", "tmp_21_0", "\u0275\u0275classMapInterpolate1", "theme", "PdfReaderComponent_ng_container_0_Conditional_1_Conditional_2_Template", "\u0275\u0275twoWayListener", "$event", "_r1", "i0", "\u0275\u0275twoWayBindingSet", "currentPage", "zoomSetting", "saveProgress", "updateLoading", "updateLoadProgress", "calcScrollbarNeeded", "updateHandTool", "PdfReaderComponent_ng_container_0_Conditional_1_Conditional_5_Template", "PdfReaderComponent_ng_container_0_Conditional_1_ng_template_6_Template", "\u0275\u0275templateRefExtractor", "isLoading", "readerService", "downloadPdf", "chapterId", "user_r7", "token", "\u0275\u0275twoWayProperty", "multiToolbar_r8", "preferences", "locale", "\u0275\u0275elementContainerStart", "PdfReaderComponent_ng_container_0_Conditional_1_Template", "tmp_2_0", "accountService", "currentUser$", "PdfReaderComponent", "constructor", "document", "route", "inject", "ActivatedRoute", "router", "Router", "seriesService", "SeriesService", "navService", "NavService", "toastr", "ToastrService", "bookService", "BookService", "themeService", "ThemeService", "cdRef", "ChangeDetectorRef", "AccountService", "ReaderService", "UtilityService", "destroyRef", "DestroyRef", "readingListId", "CHAPTER_ID_DOESNT_EXIST", "readingListMode", "maxPages", "themeMap", "background", "font", "hideNavBar", "clearThemes", "hideSideNav", "handleKeyPress", "event", "key", "KEY_CODES", "ESC_KEY", "onResize", "ngOnDestroy", "currentTheme$", "pipe", "take", "subscribe", "setTheme", "name", "showNavBar", "showSideNav", "disableWakeLock", "ngOnInit", "libraryId", "snapshot", "paramMap", "get", "seriesId", "navigateByUrl", "parseInt", "queryParamMap", "markForCheck", "user", "init", "viewContainer", "querySelector", "scrollHeight", "container", "nativeElement", "clientHeight", "convertPdfLayoutMode", "mode", "PdfLayoutMode", "Multiple", "Single", "Book", "InfiniteScroll", "convertPdfScrollMode", "PdfScrollMode", "Vertical", "Horizontal", "Wrapped", "Page", "convertPdfSpreadMode", "PdfSpreadMode", "None", "Odd", "Even", "convertPdfTheme", "PdfTheme", "Dark", "Light", "pdfScrollMode", "pdfSpreadMode", "pdfTheme", "getBookInfo", "info", "volumeId", "getProgress", "progress", "pageNum", "getChapter", "chapter", "pages", "setTimeout", "enableWakeLock", "newRoute", "getNextChapterUrl", "url", "window", "history", "replaceState", "translate", "options", "index", "indexOf", "length", "currPage", "toggleBookPageMode", "Tablet", "state", "percent", "console", "log", "\u0275\u0275directiveInject", "DOCUMENT", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275resolveWindow", "PdfReaderComponent_ng_container_0_Template", "NgStyle", "NgxExtendedPdfViewerModule", "NgxExtendedPdfViewerComponent", "PdfFindButtonComponent", "PdfHandToolComponent", "PdfPagingAreaComponent", "PdfPresentationModeComponent", "PdfSelectToolComponent", "PdfToggleSecondaryToolbarComponent", "PdfToggleSidebarComponent", "PdfZoomToolbarComponent", "NgbTooltip", "AsyncPipe", "TranslocoDirective", "PdfScrollModeTypePipe", "PdfSpreadTypePipe", "styles", "changeDetection", "routes", "path", "component", "PdfReaderComponent"] }