capture-website
Advanced tools
Comparing version 0.8.2 to 1.0.0
/// <reference lib="dom"/> | ||
/// <reference types="puppeteer"/> | ||
import {SetCookie, LaunchOptions, Page, Browser} from 'puppeteer'; | ||
@@ -150,3 +149,3 @@ | ||
*/ | ||
readonly scrollToElement?: string | captureWebsite.ScrollToElementOptions | ||
readonly scrollToElement?: string | ScrollToElementOptions; | ||
@@ -205,3 +204,3 @@ /** | ||
*/ | ||
readonly cookies?: (string | SetCookie)[]; | ||
readonly cookies?: Array<string | SetCookie>; | ||
@@ -282,7 +281,7 @@ /** | ||
*/ | ||
file( | ||
file: ( | ||
input: string, | ||
outputFilePath: string, | ||
options?: captureWebsite.FileOptions | ||
): Promise<void>; | ||
) => Promise<void>; | ||
@@ -295,3 +294,3 @@ /** | ||
*/ | ||
buffer(input: string, options?: captureWebsite.Options): Promise<Buffer>; | ||
buffer: (input: string, options?: captureWebsite.Options) => Promise<Buffer>; | ||
@@ -304,5 +303,5 @@ /** | ||
*/ | ||
base64(input: string, options?: captureWebsite.Options): Promise<string>; | ||
base64: (input: string, options?: captureWebsite.Options) => Promise<string>; | ||
}; | ||
export = captureWebsite; |
32
index.js
@@ -7,3 +7,3 @@ /* global document */ | ||
const puppeteer = require('puppeteer'); | ||
const devices = require('puppeteer/DeviceDescriptors'); | ||
const {devicesMap} = require('puppeteer/DeviceDescriptors'); | ||
const toughCookie = require('tough-cookie'); | ||
@@ -15,8 +15,2 @@ | ||
const removeElements = elements => { | ||
for (const element of elements) { | ||
element.style.display = 'none'; | ||
} | ||
}; | ||
const scrollToElement = (element, options) => { | ||
@@ -115,3 +109,3 @@ const isOverflown = element => { | ||
jar.setCookieSync(cookie, url); | ||
const ret = jar.serializeSync().cookies[0]; | ||
const returnValue = jar.serializeSync().cookies[0]; | ||
@@ -122,10 +116,10 @@ // Use this instead of the above when the following issue is fixed: | ||
ret.name = ret.key; | ||
delete ret.key; | ||
returnValue.name = returnValue.key; | ||
delete returnValue.key; | ||
if (ret.expires) { | ||
ret.expires = Math.floor(new Date(ret.expires) / 1000); | ||
if (returnValue.expires) { | ||
returnValue.expires = Math.floor(new Date(returnValue.expires) / 1000); | ||
} | ||
return ret; | ||
return returnValue; | ||
}; | ||
@@ -229,7 +223,7 @@ | ||
if (options.emulateDevice) { | ||
if (!(options.emulateDevice in devices)) { | ||
if (!(options.emulateDevice in devicesMap)) { | ||
throw new Error(`The device name \`${options.emulateDevice}\` is not supported`); | ||
} | ||
await page.emulate(devices[options.emulateDevice]); | ||
await page.emulate(devicesMap[options.emulateDevice]); | ||
} | ||
@@ -253,3 +247,3 @@ | ||
await page.addStyleTag({ | ||
content: `${options.hideElements.join(', ')} { visibility: hidden; }` | ||
content: `${options.hideElements.join(', ')} { visibility: hidden !important; }` | ||
}); | ||
@@ -259,3 +253,5 @@ } | ||
if (options.removeElements) { | ||
await Promise.all(options.removeElements.map(selector => page.$$eval(selector, removeElements))); | ||
await page.addStyleTag({ | ||
content: `${options.removeElements.join(' ')} { display: none !important; }` | ||
}); | ||
} | ||
@@ -354,3 +350,3 @@ | ||
module.exports.devices = Object.values(devices).map(device => device.name); | ||
module.exports.devices = Object.values(devicesMap).map(device => device.name); | ||
@@ -357,0 +353,0 @@ if (process.env.NODE_ENV === 'test') { |
{ | ||
"name": "capture-website", | ||
"version": "0.8.2", | ||
"version": "1.0.0", | ||
"description": "Capture screenshots of websites", | ||
"license": "MIT", | ||
"repository": "sindresorhus/capture-website", | ||
"funding": "https://github.com/sponsors/sindresorhus", | ||
"author": { | ||
"name": "Sindre Sorhus", | ||
"email": "sindresorhus@gmail.com", | ||
"url": "sindresorhus.com" | ||
"url": "https://sindresorhus.com" | ||
}, | ||
"engines": { | ||
"node": ">=8" | ||
"node": ">=10" | ||
}, | ||
@@ -39,7 +40,7 @@ "scripts": { | ||
"file-url": "^3.0.0", | ||
"puppeteer": "^2.0.0", | ||
"tough-cookie": "^3.0.1" | ||
"puppeteer": "^3.0.4", | ||
"tough-cookie": "^4.0.0" | ||
}, | ||
"devDependencies": { | ||
"@types/puppeteer": "^1.20.2", | ||
"@types/puppeteer": "^2.0.1", | ||
"ava": "^2.0.0", | ||
@@ -51,8 +52,13 @@ "create-test-server": "^3.0.1", | ||
"is-png": "^2.0.0", | ||
"pify": "^4.0.1", | ||
"png-js": "^0.1.1", | ||
"tempy": "^0.3.0", | ||
"tsd": "^0.10.0", | ||
"xo": "^0.25.3" | ||
"pify": "^5.0.0", | ||
"png-js": "^1.0.0", | ||
"tempy": "^0.5.0", | ||
"tsd": "^0.11.0", | ||
"xo": "^0.30.0" | ||
}, | ||
"xo": { | ||
"rules": { | ||
"@typescript-eslint/prefer-readonly-parameter-types": "off" | ||
} | ||
} | ||
} |
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
31946
1
499
+ Added@types/node@20.14.9(transitive)
+ Added@types/yauzl@2.10.3(transitive)
+ Addedbase64-js@1.5.1(transitive)
+ Addedbl@4.1.0(transitive)
+ Addedbuffer@5.7.1(transitive)
+ Addedchownr@1.1.4(transitive)
+ Addedend-of-stream@1.4.4(transitive)
+ Addedextract-zip@2.0.1(transitive)
+ Addedfs-constants@1.0.0(transitive)
+ Addedget-stream@5.2.0(transitive)
+ Addedieee754@1.2.1(transitive)
+ Addedmkdirp-classic@0.5.3(transitive)
+ Addedpump@3.0.0(transitive)
+ Addedpuppeteer@3.3.0(transitive)
+ Addedquerystringify@2.2.0(transitive)
+ Addedreadable-stream@3.6.2(transitive)
+ Addedrequires-port@1.0.0(transitive)
+ Addedrimraf@3.0.2(transitive)
+ Addedsafe-buffer@5.2.1(transitive)
+ Addedstring_decoder@1.3.0(transitive)
+ Addedtar-fs@2.1.1(transitive)
+ Addedtar-stream@2.2.0(transitive)
+ Addedthrough@2.3.8(transitive)
+ Addedtough-cookie@4.1.4(transitive)
+ Addedunbzip2-stream@1.4.3(transitive)
+ Addedundici-types@5.26.5(transitive)
+ Addeduniversalify@0.2.0(transitive)
+ Addedurl-parse@1.5.10(transitive)
+ Addedws@7.5.10(transitive)
- Removed@types/mime-types@2.1.4(transitive)
- Removedasync-limiter@1.0.1(transitive)
- Removedbuffer-from@1.1.2(transitive)
- Removedconcat-stream@1.6.2(transitive)
- Removedcore-util-is@1.0.3(transitive)
- Removeddebug@2.6.9(transitive)
- Removedextract-zip@1.7.0(transitive)
- Removedip-regex@2.1.0(transitive)
- Removedisarray@1.0.0(transitive)
- Removedmime-db@1.52.0(transitive)
- Removedmime-types@2.1.35(transitive)
- Removedminimist@1.2.8(transitive)
- Removedmkdirp@0.5.6(transitive)
- Removedms@2.0.0(transitive)
- Removedprocess-nextick-args@2.0.1(transitive)
- Removedpuppeteer@2.1.1(transitive)
- Removedreadable-stream@2.3.8(transitive)
- Removedrimraf@2.7.1(transitive)
- Removedsafe-buffer@5.1.2(transitive)
- Removedstring_decoder@1.1.1(transitive)
- Removedtough-cookie@3.0.1(transitive)
- Removedtypedarray@0.0.6(transitive)
- Removedws@6.2.3(transitive)
Updatedpuppeteer@^3.0.4
Updatedtough-cookie@^4.0.0