Skip to content

Commit 8a0cb2f

Browse files
committed
Update all dependencies
1 parent 6535413 commit 8a0cb2f

File tree

15 files changed

+188
-48
lines changed

15 files changed

+188
-48
lines changed

package-lock.json

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

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
"@types/markdown-it": "^12.2.3",
5959
"cheerio": "^1.0.0-rc.12",
6060
"dedent": "^0.7.0",
61+
"dependency-package-path": "^1.0.0",
6162
"es6-template-string": "^1.2.0",
6263
"front-matter": "^4.0.2",
6364
"fs-extra": "^10.1.0",

src/Constants.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1+
import { dependencyPath } from "dependency-package-path";
12
import pkgUp = require("pkg-up");
3+
import puppeteer, { PuppeteerNode } from "puppeteer-core";
24
import { dirname } from "upath";
35

46
/**
@@ -11,6 +13,11 @@ export class Constants
1113
*/
1214
private static packageDirectory: string = null;
1315

16+
/**
17+
* A puppeteer instance.
18+
*/
19+
private static puppeteer: PuppeteerNode = null;
20+
1421
/**
1522
* Gets the path to the root of this package.
1623
*/
@@ -23,4 +30,22 @@ export class Constants
2330

2431
return this.packageDirectory;
2532
}
33+
34+
/**
35+
* Gets a puppeteer instance.
36+
*/
37+
public static get Puppeteer(): PuppeteerNode
38+
{
39+
if (this.puppeteer === null)
40+
{
41+
let puppeteerConstructor: any = puppeteer.constructor;
42+
43+
this.puppeteer = new puppeteerConstructor(
44+
{
45+
projectRoot: dependencyPath("puppeteer-core", __dirname)
46+
});
47+
}
48+
49+
return this.puppeteer;
50+
}
2651
}

src/Conversion/Converter.ts

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,13 @@ import { ensureDir, move, pathExists, remove, writeFile } from "fs-extra";
77
import getPort = require("get-port");
88
import { glob } from "glob";
99
import MarkdownIt = require("markdown-it");
10-
import * as puppeteer from "puppeteer-core";
10+
import { Browser, LaunchOptions, PDFOptions, ScreenshotOptions } from "puppeteer-core";
1111
import serveHandler = require("serve-handler");
1212
import { transliterate } from "transliteration";
1313
import { basename, dirname, join, relative } from "upath";
1414
import { CancellationToken, Progress } from "vscode";
1515
import websiteScraper = require("website-scraper");
16+
import { Constants } from "../Constants";
1617
import { Resources } from "../Properties/Resources";
1718
import { InsertionType } from "../System/Documents/Assets/InsertionType";
1819
import { StyleSheet } from "../System/Documents/Assets/StyleSheet";
@@ -61,7 +62,7 @@ export class Converter
6162
/**
6263
* The browser which is used to perform the conversion.
6364
*/
64-
private browser: puppeteer.Browser;
65+
private browser: Browser;
6566

6667
/**
6768
* A value indicating whether the converter has been initialized.
@@ -192,7 +193,7 @@ export class Converter
192193
/**
193194
* Gets the options for launching the browser.
194195
*/
195-
public get BrowserOptions(): puppeteer.LaunchOptions
196+
public get BrowserOptions(): LaunchOptions
196197
{
197198
return {
198199
...(
@@ -207,7 +208,7 @@ export class Converter
207208
/**
208209
* Gets the browser which is used to perform the conversion.
209210
*/
210-
protected get Browser(): puppeteer.Browser
211+
protected get Browser(): Browser
211212
{
212213
return this.Initialized ? this.browser : null;
213214
}
@@ -306,7 +307,7 @@ export class Converter
306307

307308
try
308309
{
309-
this.browser = await puppeteer.launch(
310+
this.browser = await Constants.Puppeteer.launch(
310311
{
311312
...this.BrowserOptions,
312313
args: [
@@ -316,7 +317,7 @@ export class Converter
316317
}
317318
catch
318319
{
319-
this.browser = await puppeteer.launch(
320+
this.browser = await Constants.Puppeteer.launch(
320321
{
321322
...this.BrowserOptions,
322323
args: [
@@ -454,7 +455,7 @@ export class Converter
454455
}
455456
</style>`;
456457

457-
let pdfOptions: puppeteer.PDFOptions = {
458+
let pdfOptions: PDFOptions = {
458459
margin: {
459460
top: this.Document.Paper.Margin.Top,
460461
right: this.Document.Paper.Margin.Right,
@@ -482,7 +483,7 @@ export class Converter
482483
await page.pdf(pdfOptions);
483484
break;
484485
default:
485-
let screenshotOptions: puppeteer.ScreenshotOptions = {
486+
let screenshotOptions: ScreenshotOptions = {
486487
fullPage: true,
487488
path
488489
};

src/Conversion/ConverterPlugin.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
import * as puppeteer from "puppeteer-core";
1+
import { Browser } from "puppeteer-core";
22
import { join, parse } from "upath";
33
import { encode } from "utf8";
4+
import { Constants } from "../Constants";
45
import { Converter } from "./Converter";
56

67
/**
@@ -57,7 +58,7 @@ export class ConverterPlugin
5758
*/
5859
public apply(registerAction: (name: string, callback: (options: any) => any) => void): void
5960
{
60-
let browser: puppeteer.Browser;
61+
let browser: Browser;
6162
let occupiedFilenames: string[];
6263
let subdirectories: { [extension: string]: string };
6364
let defaultFilename: string;
@@ -72,14 +73,14 @@ export class ConverterPlugin
7273

7374
try
7475
{
75-
browser = await puppeteer.launch({
76+
browser = await Constants.Puppeteer.launch({
7677
...this.Converter.BrowserOptions,
7778
args: browserArguments
7879
});
7980
}
8081
catch
8182
{
82-
browser = await puppeteer.launch({
83+
browser = await Constants.Puppeteer.launch({
8384
...this.Converter.BrowserOptions,
8485
args: [
8586
...browserArguments,

src/MarkdownConverterExtension.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import { exec } from "child_process";
22
import { Package } from "@manuth/package-json-editor";
33
import { mkdirp, pathExists } from "fs-extra";
4-
import * as puppeteer from "puppeteer-core";
5-
import { PUPPETEER_REVISIONS } from "puppeteer-core/lib/cjs/puppeteer/revisions";
4+
import { PUPPETEER_REVISIONS } from "puppeteer-core/lib/cjs/puppeteer/revisions.js";
65
import format = require("string-template");
76
import { join, resolve } from "upath";
87
import { commands, ExtensionContext, Progress, ProgressLocation, window } from "vscode";
@@ -222,7 +221,7 @@ export class MarkdownConverterExtension extends Extension
222221
}));
223222
}
224223
while (
225-
!await pathExists((puppeteer as unknown as puppeteer.PuppeteerNode).executablePath()) &&
224+
!await pathExists(Constants.Puppeteer.executablePath()) &&
226225
!success &&
227226
await (window.showWarningMessage(
228227
Resources.Resources.Get("UpdateFailed"),
@@ -254,7 +253,7 @@ export class MarkdownConverterExtension extends Extension
254253
protected async DownloadUpdate(reporter: Progress<IProgressState>): Promise<void>
255254
{
256255
let progress = 0;
257-
let browserFetcher = (puppeteer as unknown as puppeteer.PuppeteerNode).createBrowserFetcher({});
256+
let browserFetcher = Constants.Puppeteer.createBrowserFetcher({});
258257

259258
await browserFetcher.download(
260259
this.ChromiumRevision,

0 commit comments

Comments
 (0)