UNPKG

ngx-extended-pdf-viewer

Version:

Embedding PDF files in your Angular application. Highly configurable viewer including the toolbar, sidebar, and all the features you're used to.

44 lines 5.52 kB
import { Component, Input, ElementRef, Output, EventEmitter, ChangeDetectorRef } from '@angular/core'; export class PdfSidebarComponent { constructor(elementRef, ref) { this.elementRef = elementRef; this.ref = ref; this.sidebarVisible = true; this.showSidebarButton = true; this.thumbnailDrawn = new EventEmitter(); this.hideSidebarToolbar = true; } showToolbarWhenNecessary() { const element = this.elementRef.nativeElement; const buttons = element.querySelectorAll('button'); let visible = 0; for (let index = 0; index < buttons.length; index++) { const b = buttons.item(index); if (!b.hidden) { visible++; } } this.hideSidebarToolbar = visible <= 1; this.ref.markForCheck(); } } PdfSidebarComponent.decorators = [ { type: Component, args: [{ selector: 'pdf-sidebar', template: "<div>\n <ng-content *ngTemplateOutlet=\"customSidebar ? customSidebar : defaultSidebar\"></ng-content>\n</div>\n\n<ng-template #defaultSidebar>\n <div id=\"sidebarContainer\" [style.top]=\"sidebarPositionTop\">\n <div id=\"additionalSidebarContainer\" [style.display]=\"hideSidebarToolbar ? 'none' : ''\">\n <pdf-sidebar-toolbar></pdf-sidebar-toolbar>\n </div>\n <pdf-sidebar-content\n [customThumbnail]=\"customThumbnail\"\n (thumbnailDrawn)=\"thumbnailDrawn.emit($event)\"\n [hideSidebarToolbar]=\"hideSidebarToolbar\"\n ></pdf-sidebar-content>\n <div id=\"sidebarResizer\" class=\"hidden\"></div>\n </div>\n</ng-template>\n", styles: [""] },] } ]; PdfSidebarComponent.ctorParameters = () => [ { type: ElementRef }, { type: ChangeDetectorRef } ]; PdfSidebarComponent.propDecorators = { sidebarPositionTop: [{ type: Input }], sidebarVisible: [{ type: Input }], showSidebarButton: [{ type: Input }], customSidebar: [{ type: Input }], customThumbnail: [{ type: Input }], thumbnailDrawn: [{ type: Output }] }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXNpZGViYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWV4dGVuZGVkLXBkZi12aWV3ZXIvc3JjL2xpYi9zaWRlYmFyL3BkZi1zaWRlYmFyL3BkZi1zaWRlYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBMkQsVUFBVSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQTZCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUTFMLE1BQU0sT0FBTyxtQkFBbUI7SUFxQjlCLFlBQW9CLFVBQXNCLEVBQVUsR0FBc0I7UUFBdEQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBaEJuRSxtQkFBYyxHQUFHLElBQUksQ0FBQztRQUd0QixzQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFTekIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBMEIsQ0FBQztRQUU1RCx1QkFBa0IsR0FBRyxJQUFJLENBQUM7SUFFNEMsQ0FBQztJQUV2RSx3QkFBd0I7UUFDN0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUE0QixDQUFDO1FBQzdELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRCxJQUFJLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDaEIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDbkQsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRTtnQkFDYixPQUFPLEVBQUUsQ0FBQzthQUNYO1NBQ0Y7UUFDRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxJQUFJLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7OztZQXhDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLG9xQkFBMkM7O2FBRTVDOzs7WUFQbUYsVUFBVTtZQUFtRCxpQkFBaUI7OztpQ0FTL0osS0FBSzs2QkFHTCxLQUFLO2dDQUdMLEtBQUs7NEJBR0wsS0FBSzs4QkFHTCxLQUFLOzZCQUdMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZiwgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0VuY2Fwc3VsYXRpb24sIE5nWm9uZSwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBkZlRodW1ibmFpbERyYXduRXZlbnQgfSBmcm9tICcuLi8uLi9ldmVudHMvcGRmLXRodW1ibmFpbC1kcmF3bi1ldmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkZi1zaWRlYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BkZi1zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGRmLXNpZGViYXIuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQZGZTaWRlYmFyQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIHNpZGViYXJQb3NpdGlvblRvcDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaWRlYmFyVmlzaWJsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dTaWRlYmFyQnV0dG9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY3VzdG9tU2lkZWJhcjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY3VzdG9tVGh1bWJuYWlsOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgdGh1bWJuYWlsRHJhd24gPSBuZXcgRXZlbnRFbWl0dGVyPFBkZlRodW1ibmFpbERyYXduRXZlbnQ+KCk7XG5cbiAgcHVibGljIGhpZGVTaWRlYmFyVG9vbGJhciA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgcHVibGljIHNob3dUb29sYmFyV2hlbk5lY2Vzc2FyeSgpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgY29uc3QgYnV0dG9ucyA9IGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYnV0dG9uJyk7XG4gICAgbGV0IHZpc2libGUgPSAwO1xuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBidXR0b25zLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgY29uc3QgYiA9IGJ1dHRvbnMuaXRlbShpbmRleCk7XG4gICAgICBpZiAoIWIuaGlkZGVuKSB7XG4gICAgICAgIHZpc2libGUrKztcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5oaWRlU2lkZWJhclRvb2xiYXIgPSB2aXNpYmxlIDw9IDE7XG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==