Skip to content

Commit 6cc01b1

Browse files
committed
Open external window in specific target #196
1 parent 61b92e4 commit 6cc01b1

File tree

11 files changed

+26
-17
lines changed

11 files changed

+26
-17
lines changed
99 Bytes
Binary file not shown.

SampleApp/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

SampleApp/src/app/app.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<button mat-raised-button routerLink="dynamic" color="primary" routerLinkActive="mat-accent">Dynamic PDF</button>
1313
</mat-toolbar>
1414

15-
<ng2-pdfjs-viewer #externalPdfViewer [externalWindow]="true" openFile="false" [useOnlyCssZoom]=true></ng2-pdfjs-viewer>
15+
<ng2-pdfjs-viewer #externalPdfViewer [externalWindow]="true" openFile="false" [useOnlyCssZoom]=true target="_myWindow"></ng2-pdfjs-viewer>
1616
<div class="container mat-typography">
1717
<router-outlet></router-outlet>
1818
</div>

lib/dist/esm2020/src/ng2-pdfjs-viewer.component.mjs

Lines changed: 6 additions & 3 deletions
Large diffs are not rendered by default.

lib/dist/fesm2015/ng2-pdfjs-viewer.mjs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ class PdfJsViewerComponent {
99
this.onDocumentLoad = new EventEmitter();
1010
this.onPageChange = new EventEmitter();
1111
this.externalWindow = false;
12+
this.target = '_blank';
1213
this.showSpinner = true;
1314
this.openFile = true;
1415
this.download = true;
@@ -114,7 +115,7 @@ class PdfJsViewerComponent {
114115
// console.log(`Status of window - ${this.viewerTab.closed}`);
115116
// }
116117
if (this.externalWindow && (typeof this.viewerTab === 'undefined' || this.viewerTab.closed)) {
117-
this.viewerTab = window.open('', '_blank', this.externalWindowOptions || '');
118+
this.viewerTab = window.open('', this.target, this.externalWindowOptions || '');
118119
if (this.viewerTab == null) {
119120
if (this.diagnosticLogs)
120121
console.error("ng2-pdfjs-viewer: For 'externalWindow = true'. i.e opening in new tab to work, pop-ups should be enabled.");
@@ -301,7 +302,7 @@ class PdfJsViewerComponent {
301302
}
302303
}
303304
PdfJsViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
304-
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 });
305+
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 });
305306
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, decorators: [{
306307
type: Component,
307308
args: [{
@@ -325,6 +326,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
325326
type: Input
326327
}], externalWindow: [{
327328
type: Input
329+
}], target: [{
330+
type: Input
328331
}], showSpinner: [{
329332
type: Input
330333
}], downloadFileName: [{
@@ -408,4 +411,3 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
408411

409412
export { PdfJsViewerComponent, PdfJsViewerModule };
410413
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map
411-
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map

lib/dist/fesm2015/ng2-pdfjs-viewer.mjs.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/dist/fesm2020/ng2-pdfjs-viewer.mjs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ class PdfJsViewerComponent {
99
this.onDocumentLoad = new EventEmitter();
1010
this.onPageChange = new EventEmitter();
1111
this.externalWindow = false;
12+
this.target = '_blank';
1213
this.showSpinner = true;
1314
this.openFile = true;
1415
this.download = true;
@@ -114,7 +115,7 @@ class PdfJsViewerComponent {
114115
// console.log(`Status of window - ${this.viewerTab.closed}`);
115116
// }
116117
if (this.externalWindow && (typeof this.viewerTab === 'undefined' || this.viewerTab.closed)) {
117-
this.viewerTab = window.open('', '_blank', this.externalWindowOptions || '');
118+
this.viewerTab = window.open('', this.target, this.externalWindowOptions || '');
118119
if (this.viewerTab == null) {
119120
if (this.diagnosticLogs)
120121
console.error("ng2-pdfjs-viewer: For 'externalWindow = true'. i.e opening in new tab to work, pop-ups should be enabled.");
@@ -301,7 +302,7 @@ class PdfJsViewerComponent {
301302
}
302303
}
303304
PdfJsViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
304-
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 });
305+
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 });
305306
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PdfJsViewerComponent, decorators: [{
306307
type: Component,
307308
args: [{
@@ -325,6 +326,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
325326
type: Input
326327
}], externalWindow: [{
327328
type: Input
329+
}], target: [{
330+
type: Input
328331
}], showSpinner: [{
329332
type: Input
330333
}], downloadFileName: [{
@@ -408,4 +411,3 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
408411

409412
export { PdfJsViewerComponent, PdfJsViewerModule };
410413
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map
411-
//# sourceMappingURL=ng2-pdfjs-viewer.mjs.map

lib/dist/fesm2020/ng2-pdfjs-viewer.mjs.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/dist/src/ng2-pdfjs-viewer.component.d.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ export declare class PdfJsViewerComponent {
99
onPageChange: EventEmitter<any>;
1010
viewerFolder: string;
1111
externalWindow: boolean;
12+
target: string;
1213
showSpinner: boolean;
1314
downloadFileName: string;
1415
openFile: boolean;
@@ -49,5 +50,5 @@ export declare class PdfJsViewerComponent {
4950
refresh(): void;
5051
private loadPdf;
5152
static ɵfac: i0.ɵɵFactoryDeclaration<PdfJsViewerComponent, never>;
52-
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>;
53+
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>;
5354
}

lib/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ng2-pdfjs-viewer",
3-
"version": "15.0.0",
3+
"version": "15.1.0",
44
"$schema": "./node_modules/ng-packagr/package.schema.json",
55
"scripts": {
66
"build": "ng-packagr -p ng-package.json"

0 commit comments

Comments
 (0)