Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
59eed53644 | |||
473aaa004a | |||
ecfd4115a1 | |||
0fbbfaac7c |
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@pushrocks/smartpdf",
|
||||
"version": "1.0.14",
|
||||
"version": "1.0.16",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@pushrocks/smartpdf",
|
||||
"version": "1.0.14",
|
||||
"version": "1.0.16",
|
||||
"private": false,
|
||||
"description": "create pdfs on the fly",
|
||||
"main": "dist/index.js",
|
||||
|
@ -5,7 +5,7 @@ import { PdfCandidate } from './smartpdf.classes.pdfcandidate';
|
||||
|
||||
declare const document;
|
||||
|
||||
import { IPdfResult } from './interfaces';
|
||||
import * as interfaces from './interfaces';
|
||||
|
||||
export class SmartPdf {
|
||||
htmlServerInstance: Server;
|
||||
@ -15,12 +15,13 @@ export class SmartPdf {
|
||||
private _readyDeferred: plugins.smartpromise.Deferred<void>;
|
||||
private _candidates: { [key: string]: PdfCandidate } = {};
|
||||
|
||||
constructor(headlessBrowserArg?) {
|
||||
this.headlessBrowser = headlessBrowserArg
|
||||
constructor() {
|
||||
this._readyDeferred = new plugins.smartpromise.Deferred();
|
||||
}
|
||||
|
||||
async start() {
|
||||
async start(headlessBrowserArg?) {
|
||||
// lets set the external browser in case one is provided
|
||||
this.headlessBrowser = headlessBrowserArg
|
||||
// setup puppeteer
|
||||
if (!this.headlessBrowser) {
|
||||
let chromeArgs: string[] = [];
|
||||
@ -49,6 +50,7 @@ export class SmartPdf {
|
||||
});
|
||||
}
|
||||
|
||||
// stop
|
||||
async stop() {
|
||||
const done = plugins.smartpromise.defer<void>();
|
||||
this.htmlServerInstance.close(() => {
|
||||
@ -65,7 +67,7 @@ export class SmartPdf {
|
||||
/**
|
||||
* returns a pdf for a given html string;
|
||||
*/
|
||||
async getPdfForHtmlString(htmlStringArg: string): Promise<IPdfResult> {
|
||||
async getPdfForHtmlString(htmlStringArg: string): Promise<interfaces.IPdfResult> {
|
||||
await this._readyDeferred.promise;
|
||||
const pdfCandidate = new PdfCandidate(htmlStringArg);
|
||||
this._candidates[pdfCandidate.pdfId] = pdfCandidate;
|
||||
@ -95,7 +97,7 @@ export class SmartPdf {
|
||||
};
|
||||
}
|
||||
|
||||
async getPdfForWebsite(websiteUrl: string): Promise<IPdfResult> {
|
||||
async getPdfForWebsite(websiteUrl: string): Promise<interfaces.IPdfResult> {
|
||||
const page = await this.headlessBrowser.newPage();
|
||||
page.emulateMedia('screen');
|
||||
const response = await page.goto(websiteUrl, { waitUntil: 'networkidle2' });
|
||||
|
Reference in New Issue
Block a user