Skip to content

Commit

Permalink
Open external window in specific target #196
Browse files Browse the repository at this point in the history
  • Loading branch information
codehippie1 committed Jan 9, 2023
1 parent 61b92e4 commit 6cc01b1
Show file tree
Hide file tree
Showing 11 changed files with 26 additions and 17 deletions.
Binary file modified SampleApp/ng2-pdfjs-viewer-15.0.0.tgz
Binary file not shown.
4 changes: 2 additions & 2 deletions SampleApp/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SampleApp/src/app/app.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<button mat-raised-button routerLink="dynamic" color="primary" routerLinkActive="mat-accent">Dynamic PDF</button>
</mat-toolbar>

<ng2-pdfjs-viewer #externalPdfViewer [externalWindow]="true" openFile="false" [useOnlyCssZoom]=true></ng2-pdfjs-viewer>
<ng2-pdfjs-viewer #externalPdfViewer [externalWindow]="true" openFile="false" [useOnlyCssZoom]=true target="_myWindow"></ng2-pdfjs-viewer>
<div class="container mat-typography">
<router-outlet></router-outlet>
</div>
Expand Down
9 changes: 6 additions & 3 deletions lib/dist/esm2020/src/ng2-pdfjs-viewer.component.mjs

Large diffs are not rendered by default.

8 changes: 5 additions & 3 deletions lib/dist/fesm2015/ng2-pdfjs-viewer.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ class PdfJsViewerComponent {
this.onDocumentLoad = new EventEmitter();
this.onPageChange = new EventEmitter();
this.externalWindow = false;
this.target = '_blank';
this.showSpinner = true;
this.openFile = true;
this.download = true;
Expand Down Expand Up @@ -114,7 +115,7 @@ class PdfJsViewerComponent {
// console.log(`Status of window - ${this.viewerTab.closed}`);
// }
if (this.externalWindow && (typeof this.viewerTab === 'undefined' || this.viewerTab.closed)) {
this.viewerTab = window.open('', '_blank', this.externalWindowOptions || '');
this.viewerTab = window.open('', this.target, this.externalWindowOptions || '');
if (this.viewerTab == null) {
if (this.diagnosticLogs)
console.error("ng2-pdfjs-viewer: For 'externalWindow = true'. i.e opening in new tab to work, pop-ups should be enabled.");
Expand Down Expand Up @@ -301,7 +302,7 @@ class PdfJsViewerComponent {
}
}
PdfJsViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
PdfJsViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PdfJsViewerComponent, selector: "ng2-pdfjs-viewer", inputs: { viewerId: "viewerId", viewerFolder: "viewerFolder", externalWindow: "externalWindow", showSpinner: "showSpinner", downloadFileName: "downloadFileName", openFile: "openFile", download: "download", startDownload: "startDownload", viewBookmark: "viewBookmark", print: "print", startPrint: "startPrint", fullScreen: "fullScreen", find: "find", zoom: "zoom", nameddest: "nameddest", pagemode: "pagemode", lastPage: "lastPage", rotatecw: "rotatecw", rotateccw: "rotateccw", cursor: "cursor", scroll: "scroll", spread: "spread", locale: "locale", useOnlyCssZoom: "useOnlyCssZoom", errorOverride: "errorOverride", errorAppend: "errorAppend", errorMessage: "errorMessage", diagnosticLogs: "diagnosticLogs", externalWindowOptions: "externalWindowOptions", page: "page", pdfSrc: "pdfSrc" }, outputs: { onBeforePrint: "onBeforePrint", onAfterPrint: "onAfterPrint", onDocumentLoad: "onDocumentLoad", onPageChange: "onPageChange" }, viewQueries: [{ propertyName: "iframe", first: true, predicate: ["iframe"], descendants: true, static: true }], ngImport: i0, template: `<iframe title="ng2-pdfjs-viewer" [hidden]="externalWindow || (!externalWindow && !pdfSrc)" #iframe width="100%" height="100%"></iframe>`, isInline: true });
PdfJsViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PdfJsViewerComponent, selector: "ng2-pdfjs-viewer", inputs: { viewerId: "viewerId", viewerFolder: "viewerFolder", externalWindow: "externalWindow", target: "target", showSpinner: "showSpinner", downloadFileName: "downloadFileName", openFile: "openFile", download: "download", startDownload: "startDownload", viewBookmark: "viewBookmark", print: "print", startPrint: "startPrint", fullScreen: "fullScreen", find: "find", zoom: "zoom", nameddest: "nameddest", pagemode: "pagemode", lastPage: "lastPage", rotatecw: "rotatecw", rotateccw: "rotateccw", cursor: "cursor", scroll: "scroll", spread: "spread", locale: "locale", useOnlyCssZoom: "useOnlyCssZoom", errorOverride: "errorOverride", errorAppend: "errorAppend", errorMessage: "errorMessage", diagnosticLogs: "diagnosticLogs", externalWindowOptions: "externalWindowOptions", page: "page", pdfSrc: "pdfSrc" }, outputs: { onBeforePrint: "onBeforePrint", onAfterPrint: "onAfterPrint", onDocumentLoad: "onDocumentLoad", onPageChange: "onPageChange" }, viewQueries: [{ propertyName: "iframe", first: true, predicate: ["iframe"], descendants: true, static: true }], ngImport: i0, template: `<iframe title="ng2-pdfjs-viewer" [hidden]="externalWindow || (!externalWindow && !pdfSrc)" #iframe width="100%" height="100%"></iframe>`, isInline: true });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, decorators: [{
type: Component,
args: [{
Expand All @@ -325,6 +326,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
type: Input
}], externalWindow: [{
type: Input
}], target: [{
type: Input
}], showSpinner: [{
type: Input
}], downloadFileName: [{
Expand Down Expand Up @@ -408,4 +411,3 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor

export { PdfJsViewerComponent, PdfJsViewerModule };
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map
2 changes: 1 addition & 1 deletion lib/dist/fesm2015/ng2-pdfjs-viewer.mjs.map

Large diffs are not rendered by default.

8 changes: 5 additions & 3 deletions lib/dist/fesm2020/ng2-pdfjs-viewer.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ class PdfJsViewerComponent {
this.onDocumentLoad = new EventEmitter();
this.onPageChange = new EventEmitter();
this.externalWindow = false;
this.target = '_blank';
this.showSpinner = true;
this.openFile = true;
this.download = true;
Expand Down Expand Up @@ -114,7 +115,7 @@ class PdfJsViewerComponent {
// console.log(`Status of window - ${this.viewerTab.closed}`);
// }
if (this.externalWindow && (typeof this.viewerTab === 'undefined' || this.viewerTab.closed)) {
this.viewerTab = window.open('', '_blank', this.externalWindowOptions || '');
this.viewerTab = window.open('', this.target, this.externalWindowOptions || '');
if (this.viewerTab == null) {
if (this.diagnosticLogs)
console.error("ng2-pdfjs-viewer: For 'externalWindow = true'. i.e opening in new tab to work, pop-ups should be enabled.");
Expand Down Expand Up @@ -301,7 +302,7 @@ class PdfJsViewerComponent {
}
}
PdfJsViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
PdfJsViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PdfJsViewerComponent, selector: "ng2-pdfjs-viewer", inputs: { viewerId: "viewerId", viewerFolder: "viewerFolder", externalWindow: "externalWindow", showSpinner: "showSpinner", downloadFileName: "downloadFileName", openFile: "openFile", download: "download", startDownload: "startDownload", viewBookmark: "viewBookmark", print: "print", startPrint: "startPrint", fullScreen: "fullScreen", find: "find", zoom: "zoom", nameddest: "nameddest", pagemode: "pagemode", lastPage: "lastPage", rotatecw: "rotatecw", rotateccw: "rotateccw", cursor: "cursor", scroll: "scroll", spread: "spread", locale: "locale", useOnlyCssZoom: "useOnlyCssZoom", errorOverride: "errorOverride", errorAppend: "errorAppend", errorMessage: "errorMessage", diagnosticLogs: "diagnosticLogs", externalWindowOptions: "externalWindowOptions", page: "page", pdfSrc: "pdfSrc" }, outputs: { onBeforePrint: "onBeforePrint", onAfterPrint: "onAfterPrint", onDocumentLoad: "onDocumentLoad", onPageChange: "onPageChange" }, viewQueries: [{ propertyName: "iframe", first: true, predicate: ["iframe"], descendants: true, static: true }], ngImport: i0, template: `<iframe title="ng2-pdfjs-viewer" [hidden]="externalWindow || (!externalWindow && !pdfSrc)" #iframe width="100%" height="100%"></iframe>`, isInline: true });
PdfJsViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PdfJsViewerComponent, selector: "ng2-pdfjs-viewer", inputs: { viewerId: "viewerId", viewerFolder: "viewerFolder", externalWindow: "externalWindow", target: "target", showSpinner: "showSpinner", downloadFileName: "downloadFileName", openFile: "openFile", download: "download", startDownload: "startDownload", viewBookmark: "viewBookmark", print: "print", startPrint: "startPrint", fullScreen: "fullScreen", find: "find", zoom: "zoom", nameddest: "nameddest", pagemode: "pagemode", lastPage: "lastPage", rotatecw: "rotatecw", rotateccw: "rotateccw", cursor: "cursor", scroll: "scroll", spread: "spread", locale: "locale", useOnlyCssZoom: "useOnlyCssZoom", errorOverride: "errorOverride", errorAppend: "errorAppend", errorMessage: "errorMessage", diagnosticLogs: "diagnosticLogs", externalWindowOptions: "externalWindowOptions", page: "page", pdfSrc: "pdfSrc" }, outputs: { onBeforePrint: "onBeforePrint", onAfterPrint: "onAfterPrint", onDocumentLoad: "onDocumentLoad", onPageChange: "onPageChange" }, viewQueries: [{ propertyName: "iframe", first: true, predicate: ["iframe"], descendants: true, static: true }], ngImport: i0, template: `<iframe title="ng2-pdfjs-viewer" [hidden]="externalWindow || (!externalWindow && !pdfSrc)" #iframe width="100%" height="100%"></iframe>`, isInline: true });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, decorators: [{
type: Component,
args: [{
Expand All @@ -325,6 +326,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
type: Input
}], externalWindow: [{
type: Input
}], target: [{
type: Input
}], showSpinner: [{
type: Input
}], downloadFileName: [{
Expand Down Expand Up @@ -408,4 +411,3 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor

export { PdfJsViewerComponent, PdfJsViewerModule };
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map
2 changes: 1 addition & 1 deletion lib/dist/fesm2020/ng2-pdfjs-viewer.mjs.map

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion lib/dist/src/ng2-pdfjs-viewer.component.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ export declare class PdfJsViewerComponent {
onPageChange: EventEmitter<any>;
viewerFolder: string;
externalWindow: boolean;
target: string;
showSpinner: boolean;
downloadFileName: string;
openFile: boolean;
Expand Down Expand Up @@ -49,5 +50,5 @@ export declare class PdfJsViewerComponent {
refresh(): void;
private loadPdf;
static ɵfac: i0.ɵɵFactoryDeclaration<PdfJsViewerComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<PdfJsViewerComponent, "ng2-pdfjs-viewer", never, { "viewerId": "viewerId"; "viewerFolder": "viewerFolder"; "externalWindow": "externalWindow"; "showSpinner": "showSpinner"; "downloadFileName": "downloadFileName"; "openFile": "openFile"; "download": "download"; "startDownload": "startDownload"; "viewBookmark": "viewBookmark"; "print": "print"; "startPrint": "startPrint"; "fullScreen": "fullScreen"; "find": "find"; "zoom": "zoom"; "nameddest": "nameddest"; "pagemode": "pagemode"; "lastPage": "lastPage"; "rotatecw": "rotatecw"; "rotateccw": "rotateccw"; "cursor": "cursor"; "scroll": "scroll"; "spread": "spread"; "locale": "locale"; "useOnlyCssZoom": "useOnlyCssZoom"; "errorOverride": "errorOverride"; "errorAppend": "errorAppend"; "errorMessage": "errorMessage"; "diagnosticLogs": "diagnosticLogs"; "externalWindowOptions": "externalWindowOptions"; "page": "page"; "pdfSrc": "pdfSrc"; }, { "onBeforePrint": "onBeforePrint"; "onAfterPrint": "onAfterPrint"; "onDocumentLoad": "onDocumentLoad"; "onPageChange": "onPageChange"; }, never, never, false, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<PdfJsViewerComponent, "ng2-pdfjs-viewer", never, { "viewerId": "viewerId"; "viewerFolder": "viewerFolder"; "externalWindow": "externalWindow"; "target": "target"; "showSpinner": "showSpinner"; "downloadFileName": "downloadFileName"; "openFile": "openFile"; "download": "download"; "startDownload": "startDownload"; "viewBookmark": "viewBookmark"; "print": "print"; "startPrint": "startPrint"; "fullScreen": "fullScreen"; "find": "find"; "zoom": "zoom"; "nameddest": "nameddest"; "pagemode": "pagemode"; "lastPage": "lastPage"; "rotatecw": "rotatecw"; "rotateccw": "rotateccw"; "cursor": "cursor"; "scroll": "scroll"; "spread": "spread"; "locale": "locale"; "useOnlyCssZoom": "useOnlyCssZoom"; "errorOverride": "errorOverride"; "errorAppend": "errorAppend"; "errorMessage": "errorMessage"; "diagnosticLogs": "diagnosticLogs"; "externalWindowOptions": "externalWindowOptions"; "page": "page"; "pdfSrc": "pdfSrc"; }, { "onBeforePrint": "onBeforePrint"; "onAfterPrint": "onAfterPrint"; "onDocumentLoad": "onDocumentLoad"; "onPageChange": "onPageChange"; }, never, never, false, never>;
}
2 changes: 1 addition & 1 deletion lib/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ng2-pdfjs-viewer",
"version": "15.0.0",
"version": "15.1.0",
"$schema": "./node_modules/ng-packagr/package.schema.json",
"scripts": {
"build": "ng-packagr -p ng-package.json"
Expand Down
3 changes: 2 additions & 1 deletion lib/src/ng2-pdfjs-viewer.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ export class PdfJsViewerComponent {
@Output() onPageChange: EventEmitter<any> = new EventEmitter();
@Input() public viewerFolder: string;
@Input() public externalWindow: boolean = false;
@Input() public target: string = '_blank';
@Input() public showSpinner: boolean = true;
@Input() public downloadFileName: string;
@Input() public openFile: boolean = true;
Expand Down Expand Up @@ -144,7 +145,7 @@ export class PdfJsViewerComponent {
// }

if (this.externalWindow && (typeof this.viewerTab === 'undefined' || this.viewerTab.closed)) {
this.viewerTab = window.open('', '_blank', this.externalWindowOptions || '');
this.viewerTab = window.open('', this.target, this.externalWindowOptions || '');
if (this.viewerTab == null) {
if(this.diagnosticLogs) console.error("ng2-pdfjs-viewer: For 'externalWindow = true'. i.e opening in new tab to work, pop-ups should be enabled.");
return;
Expand Down

0 comments on commit 6cc01b1

Please sign in to comment.