* Refactored all the code that opens the reader to use a unified function. Added new library and setup basic pdf reader route. * Progress saving is implemented. Targeting ES6 now. * Customized the toolbar to remove things we don't want, made the download button download with correct filename. Adjusted zoom setting to work well on first load regardless of device. * Stream the pdf file to the UI rather than handling the download ourselves. * Started implementing a custom toolbar. * Fixed up the jump bar calculations * Fixed filtering being broken * Pushing up for Robbie to cleanup the toolbar layout * Added an additional button. Working on logic while robbie takes styling * Tried to fix the code for robbie * Tweaks for fonts * Added button for book mode, but doesn't seem to work after renderer is built * Removed book mode * Removed the old image caching code for pdfs as it's not needed with new reader * Removed the interfaces to extract images from pdf. * Fixed original pagination area not scaling correctly * Integrated series remove events to library detail * Cleaned up the getter naming convention * Cleaned up some of the manga reader code to reduce cluter and improve re-use * Implemented Japanese parser support for volume and chapters. * Fixed a bug where resetting scroll in manga reader wasn't working * Fixed a bug where word count grew on each scan. * Removed unused variable * Ensure we calculate word count on files with their own cache timestamp * Adjusted size of reel headers * Put some code in for moving on original image with keyboard, but it's not in use. * Cleaned up the css for the pdf reader * Cleaned up the code * Tweaked the list item so we show scrollbar now when fully read
39 lines
No EOL
2 KiB
HTML
39 lines
No EOL
2 KiB
HTML
<div class="list-item-container d-flex flex-row g-0 mb-2 p-2">
|
|
<div class="pe-2">
|
|
<app-image [imageUrl]="imageUrl" [height]="imageHeight" [width]="imageWidth"></app-image>
|
|
|
|
<span class="download" *ngIf="download$ | async as download">
|
|
<app-circular-loader [currentValue]="download.progress"></app-circular-loader>
|
|
<span class="visually-hidden" role="status">
|
|
{{download.progress}}% downloaded
|
|
</span>
|
|
</span>
|
|
<div class="progress-banner" *ngIf="totalPages > 0">
|
|
<p><ngb-progressbar type="primary" height="5px" [value]="pagesRead" [max]="totalPages"></ngb-progressbar></p>
|
|
</div>
|
|
</div>
|
|
<div class="flex-grow-1">
|
|
<div class="g-0">
|
|
<h5 style="margin-bottom: 0px">
|
|
<app-card-actionables [disabled]="actionInProgress" (actionHandler)="performAction($event)" [actions]="actions" [labelBy]="seriesName" iconClass="fa-ellipsis-v"></app-card-actionables>
|
|
<ng-content select="[title]"></ng-content>
|
|
<button class="btn btn-primary float-end" (click)="read.emit()">
|
|
<span>
|
|
<i class="fa fa-book me-1" aria-hidden="true"></i>
|
|
</span>
|
|
<span class="d-none d-sm-inline-block">Read</span>
|
|
</button>
|
|
</h5>
|
|
<!-- This isn't perfect, but it might work. TODO: Polish this-->
|
|
<h6 class="text-muted" [ngClass]="{'subtitle-with-actionables' : actions.length > 0}" style="font-size: 0.75rem" *ngIf="Title != '' && showTitle">{{Title}}</h6>
|
|
<ng-container *ngIf="summary.length > 0">
|
|
<div class="mt-2 ps-2">
|
|
<app-read-more [text]="summary" [maxLength]="250"></app-read-more>
|
|
</div>
|
|
</ng-container>
|
|
<div class="ps-2 d-none d-md-inline-block">
|
|
<app-entity-info-cards [entity]="entity" [showExtendedProperties]="false"></app-entity-info-cards>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div> |