Lazy loading

This commit is contained in:
shamoon 2025-07-01 22:02:00 -07:00
parent 855b128213
commit a3b6de99fd
No known key found for this signature in database
2 changed files with 9 additions and 1 deletions

View File

@ -53,7 +53,13 @@
</div> </div>
</div> </div>
<div class="pdf-viewer-container w-100" [class.selected]="p.selected"> <div class="pdf-viewer-container w-100" [class.selected]="p.selected">
<pdf-viewer [src]="pdfSrc" [page]="p.page" [rotation]="p.rotate" [original-size]="false" [show-all]="false" [render-text]="false"></pdf-viewer> @defer (on viewport) {
<pdf-viewer [class.opacity-0]="!p.loaded" [src]="pdfSrc" [page]="p.page" [rotation]="p.rotate" [original-size]="false" [show-all]="false" [render-text]="false" (page-rendered)="p.loaded = true"></pdf-viewer>
} @placeholder {
<div class="placeholder-glow w-100 h-100 z-10">
<span class="placeholder w-100"></span>
</div>
}
</div> </div>
@if (p.splitAfter) { @if (p.splitAfter) {
<div class="split-after rounded position-absolute top-0 end-0 bg-dark text-uppercase text-center h-100 px-1 small fw-bold">&mdash; <span i18n>Split here</span> &mdash;</div> <div class="split-after rounded position-absolute top-0 end-0 bg-dark text-uppercase text-center h-100 px-1 small fw-bold">&mdash; <span i18n>Split here</span> &mdash;</div>

View File

@ -17,6 +17,7 @@ interface PageOperation {
rotate: number rotate: number
splitAfter: boolean splitAfter: boolean
selected?: boolean selected?: boolean
loaded?: boolean
} }
@Component({ @Component({
@ -51,6 +52,7 @@ export class PDFEditorComponent extends ConfirmDialogComponent {
rotate: 0, rotate: 0,
splitAfter: false, splitAfter: false,
selected: false, selected: false,
loaded: false,
})) }))
} }