html-get 2.10.5 → 2.10.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "html-get",
3
3
  "description": "Get the HTML from any website, using prerendering when is necessary.",
4
4
  "homepage": "https://nicedoc.com/microlinkhq/html-get",
5
- "version": "2.10.5",
5
+ "version": "2.10.7",
6
6
  "main": "src/index.js",
7
7
  "bin": {
8
8
  "html-get": "bin/index.js"
@@ -63,6 +63,7 @@
63
63
  "pretty": "latest",
64
64
  "puppeteer": "latest",
65
65
  "regex-iso-date": "latest",
66
+ "signal-exit": "latest",
66
67
  "simple-git-hooks": "latest",
67
68
  "standard": "latest",
68
69
  "standard-markdown": "latest",
@@ -1,39 +1,39 @@
1
1
  [
2
- "youtube",
3
2
  "google",
4
- "apple",
3
+ "youtube",
5
4
  "microsoft",
5
+ "apple",
6
6
  "wikipedia",
7
7
  "wordpress",
8
8
  "blogspot",
9
9
  "vimeo",
10
10
  "github",
11
- "bbc",
12
- "slideshare",
13
11
  "theguardian",
14
12
  "imdb",
13
+ "bbc",
15
14
  "nytimes",
16
- "telegraph",
15
+ "slideshare",
16
+ "soundcloud",
17
17
  "pinterest",
18
+ "telegraph",
18
19
  "huffingtonpost",
19
- "soundcloud",
20
- "spotify",
20
+ "engadget",
21
21
  "techcrunch",
22
22
  "zoom",
23
- "engadget",
24
- "eventbrite",
25
23
  "yelp",
24
+ "eventbrite",
25
+ "spotify",
26
26
  "theverge",
27
+ "dribbble",
27
28
  "giphy",
29
+ "imgur",
28
30
  "csdn",
29
31
  "deviantart",
30
32
  "digg",
31
- "dribbble",
32
33
  "etsy",
33
34
  "flickr",
34
35
  "ghost",
35
36
  "gitlab",
36
- "imgur",
37
37
  "meetup",
38
38
  "producthunt",
39
39
  "sourceforge",
package/src/index.js CHANGED
@@ -13,11 +13,12 @@ const addHtml = require('./html')
13
13
 
14
14
  const REQ_TIMEOUT = 8000
15
15
 
16
- const fetch = (
17
- url,
18
- { reflect = false, toEncode, timeout = REQ_TIMEOUT, ...opts }
19
- ) =>
20
- new PCancelable(async (resolve, reject, onCancel) => {
16
+ const fetch = PCancelable.fn(
17
+ async (
18
+ url,
19
+ { reflect = false, toEncode, timeout = REQ_TIMEOUT, ...opts },
20
+ onCancel
21
+ ) => {
21
22
  const reqTimeout = reflect ? timeout / 2 : timeout
22
23
 
23
24
  const req = got(url, {
@@ -36,26 +37,27 @@ const fetch = (
36
37
 
37
38
  try {
38
39
  const res = await req
39
- return resolve({
40
+ return {
40
41
  headers: res.headers,
41
42
  html: await toEncode(res.body, res.headers['content-type']),
42
43
  mode: 'fetch',
43
44
  url: res.url,
44
45
  statusCode: res.statusCode
45
- })
46
+ }
46
47
  } catch (error) {
47
48
  debug('fetch:error', { url, message: error.message || error, reflect })
48
49
  return reflect
49
- ? resolve({ isRejected: true, error })
50
- : resolve({
51
- url,
52
- html: '',
53
- mode: 'fetch',
54
- headers: error.response ? error.response.headers : {},
55
- statusCode: error.response ? error.response.statusCode : undefined
56
- })
50
+ ? { isRejected: true, error }
51
+ : {
52
+ url,
53
+ html: '',
54
+ mode: 'fetch',
55
+ headers: error.response ? error.response.headers : {},
56
+ statusCode: error.response ? error.response.statusCode : undefined
57
+ }
57
58
  }
58
- })
59
+ }
60
+ )
59
61
 
60
62
  const prerender = async (
61
63
  url,