es6-crawler-detect 3.3.0 → 4.0.0-beta.1

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.
Files changed (358) hide show
  1. package/.babelrc +1 -1
  2. package/.mocharc.json +5 -0
  3. package/README.md +1 -0
  4. package/dist/main.bundle.js +1 -1
  5. package/eslint.config.mjs +62 -0
  6. package/example/node/package.json +1 -1
  7. package/example/node/yarn.lock +222 -99
  8. package/package.json +30 -25
  9. package/src/index.js +20 -14
  10. package/src/index.ts +18 -0
  11. package/src/lib/crawler/crawlers.js +1399 -1403
  12. package/src/lib/crawler/crawlers.ts +1397 -0
  13. package/src/lib/crawler/exclusions.js +58 -62
  14. package/src/lib/crawler/exclusions.ts +56 -0
  15. package/src/lib/crawler/headers.js +6 -10
  16. package/src/lib/crawler/headers.ts +18 -0
  17. package/src/lib/crawler/provider.js +1 -10
  18. package/src/lib/crawler/provider.ts +3 -0
  19. package/src/lib/crawler.js +98 -130
  20. package/src/lib/crawler.ts +128 -0
  21. package/src/types.js +2 -0
  22. package/src/types.ts +15 -0
  23. package/test/lib/crawler.spec.js +149 -0
  24. package/test/lib/crawler.spec.ts +116 -0
  25. package/tsconfig.json +16 -0
  26. package/webpack.common.js +20 -20
  27. package/webpack.dev.js +7 -7
  28. package/webpack.prod.js +14 -14
  29. package/.eslintignore +0 -6
  30. package/.eslintrc.json +0 -30
  31. package/example/node/node_modules/.bin/mime +0 -15
  32. package/example/node/node_modules/.bin/mime.cmd +0 -7
  33. package/example/node/node_modules/.yarn-integrity +0 -67
  34. package/example/node/node_modules/accepts/HISTORY.md +0 -236
  35. package/example/node/node_modules/accepts/LICENSE +0 -23
  36. package/example/node/node_modules/accepts/README.md +0 -142
  37. package/example/node/node_modules/accepts/index.js +0 -238
  38. package/example/node/node_modules/accepts/package.json +0 -47
  39. package/example/node/node_modules/array-flatten/LICENSE +0 -21
  40. package/example/node/node_modules/array-flatten/README.md +0 -43
  41. package/example/node/node_modules/array-flatten/array-flatten.js +0 -64
  42. package/example/node/node_modules/array-flatten/package.json +0 -39
  43. package/example/node/node_modules/body-parser/HISTORY.md +0 -624
  44. package/example/node/node_modules/body-parser/LICENSE +0 -23
  45. package/example/node/node_modules/body-parser/README.md +0 -456
  46. package/example/node/node_modules/body-parser/index.js +0 -157
  47. package/example/node/node_modules/body-parser/lib/read.js +0 -181
  48. package/example/node/node_modules/body-parser/lib/types/json.js +0 -230
  49. package/example/node/node_modules/body-parser/lib/types/raw.js +0 -101
  50. package/example/node/node_modules/body-parser/lib/types/text.js +0 -121
  51. package/example/node/node_modules/body-parser/lib/types/urlencoded.js +0 -284
  52. package/example/node/node_modules/body-parser/package.json +0 -52
  53. package/example/node/node_modules/bytes/History.md +0 -92
  54. package/example/node/node_modules/bytes/LICENSE +0 -23
  55. package/example/node/node_modules/bytes/Readme.md +0 -152
  56. package/example/node/node_modules/bytes/index.js +0 -166
  57. package/example/node/node_modules/bytes/package.json +0 -42
  58. package/example/node/node_modules/content-disposition/HISTORY.md +0 -60
  59. package/example/node/node_modules/content-disposition/LICENSE +0 -22
  60. package/example/node/node_modules/content-disposition/README.md +0 -142
  61. package/example/node/node_modules/content-disposition/index.js +0 -458
  62. package/example/node/node_modules/content-disposition/package.json +0 -44
  63. package/example/node/node_modules/content-type/HISTORY.md +0 -24
  64. package/example/node/node_modules/content-type/LICENSE +0 -22
  65. package/example/node/node_modules/content-type/README.md +0 -92
  66. package/example/node/node_modules/content-type/index.js +0 -222
  67. package/example/node/node_modules/content-type/package.json +0 -40
  68. package/example/node/node_modules/cookie/HISTORY.md +0 -128
  69. package/example/node/node_modules/cookie/LICENSE +0 -24
  70. package/example/node/node_modules/cookie/README.md +0 -257
  71. package/example/node/node_modules/cookie/index.js +0 -202
  72. package/example/node/node_modules/cookie/package.json +0 -40
  73. package/example/node/node_modules/cookie-signature/History.md +0 -38
  74. package/example/node/node_modules/cookie-signature/Readme.md +0 -42
  75. package/example/node/node_modules/cookie-signature/index.js +0 -51
  76. package/example/node/node_modules/cookie-signature/package.json +0 -18
  77. package/example/node/node_modules/debug/.coveralls.yml +0 -1
  78. package/example/node/node_modules/debug/.eslintrc +0 -11
  79. package/example/node/node_modules/debug/.travis.yml +0 -14
  80. package/example/node/node_modules/debug/CHANGELOG.md +0 -362
  81. package/example/node/node_modules/debug/LICENSE +0 -19
  82. package/example/node/node_modules/debug/Makefile +0 -50
  83. package/example/node/node_modules/debug/README.md +0 -312
  84. package/example/node/node_modules/debug/component.json +0 -19
  85. package/example/node/node_modules/debug/karma.conf.js +0 -70
  86. package/example/node/node_modules/debug/node.js +0 -1
  87. package/example/node/node_modules/debug/package.json +0 -49
  88. package/example/node/node_modules/debug/src/browser.js +0 -185
  89. package/example/node/node_modules/debug/src/debug.js +0 -202
  90. package/example/node/node_modules/debug/src/index.js +0 -10
  91. package/example/node/node_modules/debug/src/inspector-log.js +0 -15
  92. package/example/node/node_modules/debug/src/node.js +0 -248
  93. package/example/node/node_modules/depd/History.md +0 -96
  94. package/example/node/node_modules/depd/LICENSE +0 -22
  95. package/example/node/node_modules/depd/Readme.md +0 -280
  96. package/example/node/node_modules/depd/index.js +0 -522
  97. package/example/node/node_modules/depd/lib/browser/index.js +0 -77
  98. package/example/node/node_modules/depd/lib/compat/callsite-tostring.js +0 -103
  99. package/example/node/node_modules/depd/lib/compat/event-listener-count.js +0 -22
  100. package/example/node/node_modules/depd/lib/compat/index.js +0 -79
  101. package/example/node/node_modules/depd/package.json +0 -41
  102. package/example/node/node_modules/destroy/LICENSE +0 -22
  103. package/example/node/node_modules/destroy/README.md +0 -60
  104. package/example/node/node_modules/destroy/index.js +0 -75
  105. package/example/node/node_modules/destroy/package.json +0 -37
  106. package/example/node/node_modules/ee-first/LICENSE +0 -22
  107. package/example/node/node_modules/ee-first/README.md +0 -80
  108. package/example/node/node_modules/ee-first/index.js +0 -95
  109. package/example/node/node_modules/ee-first/package.json +0 -29
  110. package/example/node/node_modules/encodeurl/HISTORY.md +0 -14
  111. package/example/node/node_modules/encodeurl/LICENSE +0 -22
  112. package/example/node/node_modules/encodeurl/README.md +0 -128
  113. package/example/node/node_modules/encodeurl/index.js +0 -60
  114. package/example/node/node_modules/encodeurl/package.json +0 -40
  115. package/example/node/node_modules/escape-html/LICENSE +0 -24
  116. package/example/node/node_modules/escape-html/Readme.md +0 -43
  117. package/example/node/node_modules/escape-html/index.js +0 -78
  118. package/example/node/node_modules/escape-html/package.json +0 -24
  119. package/example/node/node_modules/etag/HISTORY.md +0 -83
  120. package/example/node/node_modules/etag/LICENSE +0 -22
  121. package/example/node/node_modules/etag/README.md +0 -159
  122. package/example/node/node_modules/etag/index.js +0 -131
  123. package/example/node/node_modules/etag/package.json +0 -47
  124. package/example/node/node_modules/express/History.md +0 -3510
  125. package/example/node/node_modules/express/LICENSE +0 -24
  126. package/example/node/node_modules/express/Readme.md +0 -158
  127. package/example/node/node_modules/express/index.js +0 -11
  128. package/example/node/node_modules/express/lib/application.js +0 -644
  129. package/example/node/node_modules/express/lib/express.js +0 -116
  130. package/example/node/node_modules/express/lib/middleware/init.js +0 -43
  131. package/example/node/node_modules/express/lib/middleware/query.js +0 -47
  132. package/example/node/node_modules/express/lib/request.js +0 -525
  133. package/example/node/node_modules/express/lib/response.js +0 -1147
  134. package/example/node/node_modules/express/lib/router/index.js +0 -668
  135. package/example/node/node_modules/express/lib/router/layer.js +0 -181
  136. package/example/node/node_modules/express/lib/router/route.js +0 -216
  137. package/example/node/node_modules/express/lib/utils.js +0 -302
  138. package/example/node/node_modules/express/lib/view.js +0 -182
  139. package/example/node/node_modules/express/package.json +0 -99
  140. package/example/node/node_modules/finalhandler/HISTORY.md +0 -187
  141. package/example/node/node_modules/finalhandler/LICENSE +0 -22
  142. package/example/node/node_modules/finalhandler/README.md +0 -148
  143. package/example/node/node_modules/finalhandler/index.js +0 -331
  144. package/example/node/node_modules/finalhandler/package.json +0 -45
  145. package/example/node/node_modules/forwarded/HISTORY.md +0 -21
  146. package/example/node/node_modules/forwarded/LICENSE +0 -22
  147. package/example/node/node_modules/forwarded/README.md +0 -57
  148. package/example/node/node_modules/forwarded/index.js +0 -90
  149. package/example/node/node_modules/forwarded/package.json +0 -45
  150. package/example/node/node_modules/fresh/HISTORY.md +0 -70
  151. package/example/node/node_modules/fresh/LICENSE +0 -23
  152. package/example/node/node_modules/fresh/README.md +0 -119
  153. package/example/node/node_modules/fresh/index.js +0 -137
  154. package/example/node/node_modules/fresh/package.json +0 -46
  155. package/example/node/node_modules/http-errors/HISTORY.md +0 -165
  156. package/example/node/node_modules/http-errors/LICENSE +0 -23
  157. package/example/node/node_modules/http-errors/README.md +0 -169
  158. package/example/node/node_modules/http-errors/index.js +0 -299
  159. package/example/node/node_modules/http-errors/package.json +0 -49
  160. package/example/node/node_modules/iconv-lite/Changelog.md +0 -162
  161. package/example/node/node_modules/iconv-lite/LICENSE +0 -21
  162. package/example/node/node_modules/iconv-lite/README.md +0 -156
  163. package/example/node/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -555
  164. package/example/node/node_modules/iconv-lite/encodings/dbcs-data.js +0 -176
  165. package/example/node/node_modules/iconv-lite/encodings/index.js +0 -22
  166. package/example/node/node_modules/iconv-lite/encodings/internal.js +0 -188
  167. package/example/node/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -72
  168. package/example/node/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
  169. package/example/node/node_modules/iconv-lite/encodings/sbcs-data.js +0 -174
  170. package/example/node/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
  171. package/example/node/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
  172. package/example/node/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
  173. package/example/node/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
  174. package/example/node/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
  175. package/example/node/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
  176. package/example/node/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -55
  177. package/example/node/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
  178. package/example/node/node_modules/iconv-lite/encodings/utf16.js +0 -177
  179. package/example/node/node_modules/iconv-lite/encodings/utf7.js +0 -290
  180. package/example/node/node_modules/iconv-lite/lib/bom-handling.js +0 -52
  181. package/example/node/node_modules/iconv-lite/lib/extend-node.js +0 -217
  182. package/example/node/node_modules/iconv-lite/lib/index.d.ts +0 -24
  183. package/example/node/node_modules/iconv-lite/lib/index.js +0 -153
  184. package/example/node/node_modules/iconv-lite/lib/streams.js +0 -121
  185. package/example/node/node_modules/iconv-lite/package.json +0 -46
  186. package/example/node/node_modules/inherits/LICENSE +0 -16
  187. package/example/node/node_modules/inherits/README.md +0 -42
  188. package/example/node/node_modules/inherits/inherits.js +0 -9
  189. package/example/node/node_modules/inherits/inherits_browser.js +0 -27
  190. package/example/node/node_modules/inherits/package.json +0 -29
  191. package/example/node/node_modules/ipaddr.js/LICENSE +0 -19
  192. package/example/node/node_modules/ipaddr.js/README.md +0 -233
  193. package/example/node/node_modules/ipaddr.js/ipaddr.min.js +0 -1
  194. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js +0 -673
  195. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +0 -68
  196. package/example/node/node_modules/ipaddr.js/package.json +0 -35
  197. package/example/node/node_modules/media-typer/HISTORY.md +0 -22
  198. package/example/node/node_modules/media-typer/LICENSE +0 -22
  199. package/example/node/node_modules/media-typer/README.md +0 -81
  200. package/example/node/node_modules/media-typer/index.js +0 -270
  201. package/example/node/node_modules/media-typer/package.json +0 -26
  202. package/example/node/node_modules/merge-descriptors/HISTORY.md +0 -21
  203. package/example/node/node_modules/merge-descriptors/LICENSE +0 -23
  204. package/example/node/node_modules/merge-descriptors/README.md +0 -48
  205. package/example/node/node_modules/merge-descriptors/index.js +0 -60
  206. package/example/node/node_modules/merge-descriptors/package.json +0 -32
  207. package/example/node/node_modules/methods/HISTORY.md +0 -29
  208. package/example/node/node_modules/methods/LICENSE +0 -24
  209. package/example/node/node_modules/methods/README.md +0 -51
  210. package/example/node/node_modules/methods/index.js +0 -69
  211. package/example/node/node_modules/methods/package.json +0 -36
  212. package/example/node/node_modules/mime/CHANGELOG.md +0 -164
  213. package/example/node/node_modules/mime/LICENSE +0 -21
  214. package/example/node/node_modules/mime/README.md +0 -90
  215. package/example/node/node_modules/mime/cli.js +0 -8
  216. package/example/node/node_modules/mime/mime.js +0 -108
  217. package/example/node/node_modules/mime/package.json +0 -44
  218. package/example/node/node_modules/mime/src/build.js +0 -53
  219. package/example/node/node_modules/mime/src/test.js +0 -60
  220. package/example/node/node_modules/mime/types.json +0 -1
  221. package/example/node/node_modules/mime-db/HISTORY.md +0 -499
  222. package/example/node/node_modules/mime-db/LICENSE +0 -22
  223. package/example/node/node_modules/mime-db/README.md +0 -100
  224. package/example/node/node_modules/mime-db/db.json +0 -8471
  225. package/example/node/node_modules/mime-db/index.js +0 -11
  226. package/example/node/node_modules/mime-db/package.json +0 -59
  227. package/example/node/node_modules/mime-types/HISTORY.md +0 -388
  228. package/example/node/node_modules/mime-types/LICENSE +0 -23
  229. package/example/node/node_modules/mime-types/README.md +0 -113
  230. package/example/node/node_modules/mime-types/index.js +0 -188
  231. package/example/node/node_modules/mime-types/package.json +0 -44
  232. package/example/node/node_modules/ms/index.js +0 -152
  233. package/example/node/node_modules/ms/license.md +0 -21
  234. package/example/node/node_modules/ms/package.json +0 -37
  235. package/example/node/node_modules/ms/readme.md +0 -51
  236. package/example/node/node_modules/negotiator/HISTORY.md +0 -103
  237. package/example/node/node_modules/negotiator/LICENSE +0 -24
  238. package/example/node/node_modules/negotiator/README.md +0 -203
  239. package/example/node/node_modules/negotiator/index.js +0 -124
  240. package/example/node/node_modules/negotiator/lib/charset.js +0 -169
  241. package/example/node/node_modules/negotiator/lib/encoding.js +0 -184
  242. package/example/node/node_modules/negotiator/lib/language.js +0 -179
  243. package/example/node/node_modules/negotiator/lib/mediaType.js +0 -294
  244. package/example/node/node_modules/negotiator/package.json +0 -42
  245. package/example/node/node_modules/on-finished/HISTORY.md +0 -88
  246. package/example/node/node_modules/on-finished/LICENSE +0 -23
  247. package/example/node/node_modules/on-finished/README.md +0 -154
  248. package/example/node/node_modules/on-finished/index.js +0 -196
  249. package/example/node/node_modules/on-finished/package.json +0 -31
  250. package/example/node/node_modules/parseurl/HISTORY.md +0 -58
  251. package/example/node/node_modules/parseurl/LICENSE +0 -24
  252. package/example/node/node_modules/parseurl/README.md +0 -133
  253. package/example/node/node_modules/parseurl/index.js +0 -158
  254. package/example/node/node_modules/parseurl/package.json +0 -40
  255. package/example/node/node_modules/path-to-regexp/History.md +0 -36
  256. package/example/node/node_modules/path-to-regexp/LICENSE +0 -21
  257. package/example/node/node_modules/path-to-regexp/Readme.md +0 -35
  258. package/example/node/node_modules/path-to-regexp/index.js +0 -129
  259. package/example/node/node_modules/path-to-regexp/package.json +0 -30
  260. package/example/node/node_modules/proxy-addr/HISTORY.md +0 -161
  261. package/example/node/node_modules/proxy-addr/LICENSE +0 -22
  262. package/example/node/node_modules/proxy-addr/README.md +0 -139
  263. package/example/node/node_modules/proxy-addr/index.js +0 -327
  264. package/example/node/node_modules/proxy-addr/package.json +0 -47
  265. package/example/node/node_modules/qs/.editorconfig +0 -39
  266. package/example/node/node_modules/qs/.eslintignore +0 -2
  267. package/example/node/node_modules/qs/.eslintrc +0 -35
  268. package/example/node/node_modules/qs/.github/FUNDING.yml +0 -12
  269. package/example/node/node_modules/qs/.nycrc +0 -13
  270. package/example/node/node_modules/qs/CHANGELOG.md +0 -359
  271. package/example/node/node_modules/qs/LICENSE.md +0 -29
  272. package/example/node/node_modules/qs/README.md +0 -604
  273. package/example/node/node_modules/qs/dist/qs.js +0 -832
  274. package/example/node/node_modules/qs/lib/formats.js +0 -23
  275. package/example/node/node_modules/qs/lib/index.js +0 -11
  276. package/example/node/node_modules/qs/lib/parse.js +0 -257
  277. package/example/node/node_modules/qs/lib/stringify.js +0 -278
  278. package/example/node/node_modules/qs/lib/utils.js +0 -251
  279. package/example/node/node_modules/qs/package.json +0 -69
  280. package/example/node/node_modules/qs/test/parse.js +0 -772
  281. package/example/node/node_modules/qs/test/stringify.js +0 -793
  282. package/example/node/node_modules/qs/test/utils.js +0 -136
  283. package/example/node/node_modules/range-parser/HISTORY.md +0 -56
  284. package/example/node/node_modules/range-parser/LICENSE +0 -23
  285. package/example/node/node_modules/range-parser/README.md +0 -84
  286. package/example/node/node_modules/range-parser/index.js +0 -162
  287. package/example/node/node_modules/range-parser/package.json +0 -44
  288. package/example/node/node_modules/raw-body/HISTORY.md +0 -284
  289. package/example/node/node_modules/raw-body/LICENSE +0 -22
  290. package/example/node/node_modules/raw-body/README.md +0 -217
  291. package/example/node/node_modules/raw-body/index.d.ts +0 -87
  292. package/example/node/node_modules/raw-body/index.js +0 -286
  293. package/example/node/node_modules/raw-body/package.json +0 -48
  294. package/example/node/node_modules/safe-buffer/LICENSE +0 -21
  295. package/example/node/node_modules/safe-buffer/README.md +0 -584
  296. package/example/node/node_modules/safe-buffer/index.d.ts +0 -187
  297. package/example/node/node_modules/safe-buffer/index.js +0 -65
  298. package/example/node/node_modules/safe-buffer/package.json +0 -51
  299. package/example/node/node_modules/safer-buffer/LICENSE +0 -21
  300. package/example/node/node_modules/safer-buffer/Porting-Buffer.md +0 -268
  301. package/example/node/node_modules/safer-buffer/Readme.md +0 -156
  302. package/example/node/node_modules/safer-buffer/dangerous.js +0 -58
  303. package/example/node/node_modules/safer-buffer/package.json +0 -34
  304. package/example/node/node_modules/safer-buffer/safer.js +0 -77
  305. package/example/node/node_modules/safer-buffer/tests.js +0 -406
  306. package/example/node/node_modules/send/HISTORY.md +0 -506
  307. package/example/node/node_modules/send/LICENSE +0 -23
  308. package/example/node/node_modules/send/README.md +0 -327
  309. package/example/node/node_modules/send/index.js +0 -1133
  310. package/example/node/node_modules/send/node_modules/.bin/mime +0 -15
  311. package/example/node/node_modules/send/node_modules/.bin/mime.cmd +0 -7
  312. package/example/node/node_modules/send/node_modules/ms/index.js +0 -162
  313. package/example/node/node_modules/send/node_modules/ms/license.md +0 -21
  314. package/example/node/node_modules/send/node_modules/ms/package.json +0 -38
  315. package/example/node/node_modules/send/node_modules/ms/readme.md +0 -59
  316. package/example/node/node_modules/send/package.json +0 -61
  317. package/example/node/node_modules/serve-static/HISTORY.md +0 -459
  318. package/example/node/node_modules/serve-static/LICENSE +0 -25
  319. package/example/node/node_modules/serve-static/README.md +0 -257
  320. package/example/node/node_modules/serve-static/index.js +0 -210
  321. package/example/node/node_modules/serve-static/package.json +0 -42
  322. package/example/node/node_modules/setprototypeof/LICENSE +0 -13
  323. package/example/node/node_modules/setprototypeof/README.md +0 -31
  324. package/example/node/node_modules/setprototypeof/index.d.ts +0 -2
  325. package/example/node/node_modules/setprototypeof/index.js +0 -17
  326. package/example/node/node_modules/setprototypeof/package.json +0 -38
  327. package/example/node/node_modules/setprototypeof/test/index.js +0 -24
  328. package/example/node/node_modules/statuses/HISTORY.md +0 -65
  329. package/example/node/node_modules/statuses/LICENSE +0 -23
  330. package/example/node/node_modules/statuses/README.md +0 -127
  331. package/example/node/node_modules/statuses/codes.json +0 -66
  332. package/example/node/node_modules/statuses/index.js +0 -113
  333. package/example/node/node_modules/statuses/package.json +0 -48
  334. package/example/node/node_modules/toidentifier/HISTORY.md +0 -9
  335. package/example/node/node_modules/toidentifier/LICENSE +0 -21
  336. package/example/node/node_modules/toidentifier/README.md +0 -61
  337. package/example/node/node_modules/toidentifier/index.js +0 -32
  338. package/example/node/node_modules/toidentifier/package.json +0 -38
  339. package/example/node/node_modules/type-is/HISTORY.md +0 -259
  340. package/example/node/node_modules/type-is/LICENSE +0 -23
  341. package/example/node/node_modules/type-is/README.md +0 -170
  342. package/example/node/node_modules/type-is/index.js +0 -266
  343. package/example/node/node_modules/type-is/package.json +0 -45
  344. package/example/node/node_modules/unpipe/HISTORY.md +0 -4
  345. package/example/node/node_modules/unpipe/LICENSE +0 -22
  346. package/example/node/node_modules/unpipe/README.md +0 -43
  347. package/example/node/node_modules/unpipe/index.js +0 -69
  348. package/example/node/node_modules/unpipe/package.json +0 -27
  349. package/example/node/node_modules/utils-merge/LICENSE +0 -20
  350. package/example/node/node_modules/utils-merge/README.md +0 -34
  351. package/example/node/node_modules/utils-merge/index.js +0 -23
  352. package/example/node/node_modules/utils-merge/package.json +0 -40
  353. package/example/node/node_modules/vary/HISTORY.md +0 -39
  354. package/example/node/node_modules/vary/LICENSE +0 -22
  355. package/example/node/node_modules/vary/README.md +0 -101
  356. package/example/node/node_modules/vary/index.js +0 -149
  357. package/example/node/node_modules/vary/package.json +0 -43
  358. package/test/lib/crawler.test.js +0 -94
@@ -1,525 +0,0 @@
1
- /*!
2
- * express
3
- * Copyright(c) 2009-2013 TJ Holowaychuk
4
- * Copyright(c) 2013 Roman Shtylman
5
- * Copyright(c) 2014-2015 Douglas Christopher Wilson
6
- * MIT Licensed
7
- */
8
-
9
- 'use strict';
10
-
11
- /**
12
- * Module dependencies.
13
- * @private
14
- */
15
-
16
- var accepts = require('accepts');
17
- var deprecate = require('depd')('express');
18
- var isIP = require('net').isIP;
19
- var typeis = require('type-is');
20
- var http = require('http');
21
- var fresh = require('fresh');
22
- var parseRange = require('range-parser');
23
- var parse = require('parseurl');
24
- var proxyaddr = require('proxy-addr');
25
-
26
- /**
27
- * Request prototype.
28
- * @public
29
- */
30
-
31
- var req = Object.create(http.IncomingMessage.prototype)
32
-
33
- /**
34
- * Module exports.
35
- * @public
36
- */
37
-
38
- module.exports = req
39
-
40
- /**
41
- * Return request header.
42
- *
43
- * The `Referrer` header field is special-cased,
44
- * both `Referrer` and `Referer` are interchangeable.
45
- *
46
- * Examples:
47
- *
48
- * req.get('Content-Type');
49
- * // => "text/plain"
50
- *
51
- * req.get('content-type');
52
- * // => "text/plain"
53
- *
54
- * req.get('Something');
55
- * // => undefined
56
- *
57
- * Aliased as `req.header()`.
58
- *
59
- * @param {String} name
60
- * @return {String}
61
- * @public
62
- */
63
-
64
- req.get =
65
- req.header = function header(name) {
66
- if (!name) {
67
- throw new TypeError('name argument is required to req.get');
68
- }
69
-
70
- if (typeof name !== 'string') {
71
- throw new TypeError('name must be a string to req.get');
72
- }
73
-
74
- var lc = name.toLowerCase();
75
-
76
- switch (lc) {
77
- case 'referer':
78
- case 'referrer':
79
- return this.headers.referrer
80
- || this.headers.referer;
81
- default:
82
- return this.headers[lc];
83
- }
84
- };
85
-
86
- /**
87
- * To do: update docs.
88
- *
89
- * Check if the given `type(s)` is acceptable, returning
90
- * the best match when true, otherwise `undefined`, in which
91
- * case you should respond with 406 "Not Acceptable".
92
- *
93
- * The `type` value may be a single MIME type string
94
- * such as "application/json", an extension name
95
- * such as "json", a comma-delimited list such as "json, html, text/plain",
96
- * an argument list such as `"json", "html", "text/plain"`,
97
- * or an array `["json", "html", "text/plain"]`. When a list
98
- * or array is given, the _best_ match, if any is returned.
99
- *
100
- * Examples:
101
- *
102
- * // Accept: text/html
103
- * req.accepts('html');
104
- * // => "html"
105
- *
106
- * // Accept: text/*, application/json
107
- * req.accepts('html');
108
- * // => "html"
109
- * req.accepts('text/html');
110
- * // => "text/html"
111
- * req.accepts('json, text');
112
- * // => "json"
113
- * req.accepts('application/json');
114
- * // => "application/json"
115
- *
116
- * // Accept: text/*, application/json
117
- * req.accepts('image/png');
118
- * req.accepts('png');
119
- * // => undefined
120
- *
121
- * // Accept: text/*;q=.5, application/json
122
- * req.accepts(['html', 'json']);
123
- * req.accepts('html', 'json');
124
- * req.accepts('html, json');
125
- * // => "json"
126
- *
127
- * @param {String|Array} type(s)
128
- * @return {String|Array|Boolean}
129
- * @public
130
- */
131
-
132
- req.accepts = function(){
133
- var accept = accepts(this);
134
- return accept.types.apply(accept, arguments);
135
- };
136
-
137
- /**
138
- * Check if the given `encoding`s are accepted.
139
- *
140
- * @param {String} ...encoding
141
- * @return {String|Array}
142
- * @public
143
- */
144
-
145
- req.acceptsEncodings = function(){
146
- var accept = accepts(this);
147
- return accept.encodings.apply(accept, arguments);
148
- };
149
-
150
- req.acceptsEncoding = deprecate.function(req.acceptsEncodings,
151
- 'req.acceptsEncoding: Use acceptsEncodings instead');
152
-
153
- /**
154
- * Check if the given `charset`s are acceptable,
155
- * otherwise you should respond with 406 "Not Acceptable".
156
- *
157
- * @param {String} ...charset
158
- * @return {String|Array}
159
- * @public
160
- */
161
-
162
- req.acceptsCharsets = function(){
163
- var accept = accepts(this);
164
- return accept.charsets.apply(accept, arguments);
165
- };
166
-
167
- req.acceptsCharset = deprecate.function(req.acceptsCharsets,
168
- 'req.acceptsCharset: Use acceptsCharsets instead');
169
-
170
- /**
171
- * Check if the given `lang`s are acceptable,
172
- * otherwise you should respond with 406 "Not Acceptable".
173
- *
174
- * @param {String} ...lang
175
- * @return {String|Array}
176
- * @public
177
- */
178
-
179
- req.acceptsLanguages = function(){
180
- var accept = accepts(this);
181
- return accept.languages.apply(accept, arguments);
182
- };
183
-
184
- req.acceptsLanguage = deprecate.function(req.acceptsLanguages,
185
- 'req.acceptsLanguage: Use acceptsLanguages instead');
186
-
187
- /**
188
- * Parse Range header field, capping to the given `size`.
189
- *
190
- * Unspecified ranges such as "0-" require knowledge of your resource length. In
191
- * the case of a byte range this is of course the total number of bytes. If the
192
- * Range header field is not given `undefined` is returned, `-1` when unsatisfiable,
193
- * and `-2` when syntactically invalid.
194
- *
195
- * When ranges are returned, the array has a "type" property which is the type of
196
- * range that is required (most commonly, "bytes"). Each array element is an object
197
- * with a "start" and "end" property for the portion of the range.
198
- *
199
- * The "combine" option can be set to `true` and overlapping & adjacent ranges
200
- * will be combined into a single range.
201
- *
202
- * NOTE: remember that ranges are inclusive, so for example "Range: users=0-3"
203
- * should respond with 4 users when available, not 3.
204
- *
205
- * @param {number} size
206
- * @param {object} [options]
207
- * @param {boolean} [options.combine=false]
208
- * @return {number|array}
209
- * @public
210
- */
211
-
212
- req.range = function range(size, options) {
213
- var range = this.get('Range');
214
- if (!range) return;
215
- return parseRange(size, range, options);
216
- };
217
-
218
- /**
219
- * Return the value of param `name` when present or `defaultValue`.
220
- *
221
- * - Checks route placeholders, ex: _/user/:id_
222
- * - Checks body params, ex: id=12, {"id":12}
223
- * - Checks query string params, ex: ?id=12
224
- *
225
- * To utilize request bodies, `req.body`
226
- * should be an object. This can be done by using
227
- * the `bodyParser()` middleware.
228
- *
229
- * @param {String} name
230
- * @param {Mixed} [defaultValue]
231
- * @return {String}
232
- * @public
233
- */
234
-
235
- req.param = function param(name, defaultValue) {
236
- var params = this.params || {};
237
- var body = this.body || {};
238
- var query = this.query || {};
239
-
240
- var args = arguments.length === 1
241
- ? 'name'
242
- : 'name, default';
243
- deprecate('req.param(' + args + '): Use req.params, req.body, or req.query instead');
244
-
245
- if (null != params[name] && params.hasOwnProperty(name)) return params[name];
246
- if (null != body[name]) return body[name];
247
- if (null != query[name]) return query[name];
248
-
249
- return defaultValue;
250
- };
251
-
252
- /**
253
- * Check if the incoming request contains the "Content-Type"
254
- * header field, and it contains the given mime `type`.
255
- *
256
- * Examples:
257
- *
258
- * // With Content-Type: text/html; charset=utf-8
259
- * req.is('html');
260
- * req.is('text/html');
261
- * req.is('text/*');
262
- * // => true
263
- *
264
- * // When Content-Type is application/json
265
- * req.is('json');
266
- * req.is('application/json');
267
- * req.is('application/*');
268
- * // => true
269
- *
270
- * req.is('html');
271
- * // => false
272
- *
273
- * @param {String|Array} types...
274
- * @return {String|false|null}
275
- * @public
276
- */
277
-
278
- req.is = function is(types) {
279
- var arr = types;
280
-
281
- // support flattened arguments
282
- if (!Array.isArray(types)) {
283
- arr = new Array(arguments.length);
284
- for (var i = 0; i < arr.length; i++) {
285
- arr[i] = arguments[i];
286
- }
287
- }
288
-
289
- return typeis(this, arr);
290
- };
291
-
292
- /**
293
- * Return the protocol string "http" or "https"
294
- * when requested with TLS. When the "trust proxy"
295
- * setting trusts the socket address, the
296
- * "X-Forwarded-Proto" header field will be trusted
297
- * and used if present.
298
- *
299
- * If you're running behind a reverse proxy that
300
- * supplies https for you this may be enabled.
301
- *
302
- * @return {String}
303
- * @public
304
- */
305
-
306
- defineGetter(req, 'protocol', function protocol(){
307
- var proto = this.connection.encrypted
308
- ? 'https'
309
- : 'http';
310
- var trust = this.app.get('trust proxy fn');
311
-
312
- if (!trust(this.connection.remoteAddress, 0)) {
313
- return proto;
314
- }
315
-
316
- // Note: X-Forwarded-Proto is normally only ever a
317
- // single value, but this is to be safe.
318
- var header = this.get('X-Forwarded-Proto') || proto
319
- var index = header.indexOf(',')
320
-
321
- return index !== -1
322
- ? header.substring(0, index).trim()
323
- : header.trim()
324
- });
325
-
326
- /**
327
- * Short-hand for:
328
- *
329
- * req.protocol === 'https'
330
- *
331
- * @return {Boolean}
332
- * @public
333
- */
334
-
335
- defineGetter(req, 'secure', function secure(){
336
- return this.protocol === 'https';
337
- });
338
-
339
- /**
340
- * Return the remote address from the trusted proxy.
341
- *
342
- * The is the remote address on the socket unless
343
- * "trust proxy" is set.
344
- *
345
- * @return {String}
346
- * @public
347
- */
348
-
349
- defineGetter(req, 'ip', function ip(){
350
- var trust = this.app.get('trust proxy fn');
351
- return proxyaddr(this, trust);
352
- });
353
-
354
- /**
355
- * When "trust proxy" is set, trusted proxy addresses + client.
356
- *
357
- * For example if the value were "client, proxy1, proxy2"
358
- * you would receive the array `["client", "proxy1", "proxy2"]`
359
- * where "proxy2" is the furthest down-stream and "proxy1" and
360
- * "proxy2" were trusted.
361
- *
362
- * @return {Array}
363
- * @public
364
- */
365
-
366
- defineGetter(req, 'ips', function ips() {
367
- var trust = this.app.get('trust proxy fn');
368
- var addrs = proxyaddr.all(this, trust);
369
-
370
- // reverse the order (to farthest -> closest)
371
- // and remove socket address
372
- addrs.reverse().pop()
373
-
374
- return addrs
375
- });
376
-
377
- /**
378
- * Return subdomains as an array.
379
- *
380
- * Subdomains are the dot-separated parts of the host before the main domain of
381
- * the app. By default, the domain of the app is assumed to be the last two
382
- * parts of the host. This can be changed by setting "subdomain offset".
383
- *
384
- * For example, if the domain is "tobi.ferrets.example.com":
385
- * If "subdomain offset" is not set, req.subdomains is `["ferrets", "tobi"]`.
386
- * If "subdomain offset" is 3, req.subdomains is `["tobi"]`.
387
- *
388
- * @return {Array}
389
- * @public
390
- */
391
-
392
- defineGetter(req, 'subdomains', function subdomains() {
393
- var hostname = this.hostname;
394
-
395
- if (!hostname) return [];
396
-
397
- var offset = this.app.get('subdomain offset');
398
- var subdomains = !isIP(hostname)
399
- ? hostname.split('.').reverse()
400
- : [hostname];
401
-
402
- return subdomains.slice(offset);
403
- });
404
-
405
- /**
406
- * Short-hand for `url.parse(req.url).pathname`.
407
- *
408
- * @return {String}
409
- * @public
410
- */
411
-
412
- defineGetter(req, 'path', function path() {
413
- return parse(this).pathname;
414
- });
415
-
416
- /**
417
- * Parse the "Host" header field to a hostname.
418
- *
419
- * When the "trust proxy" setting trusts the socket
420
- * address, the "X-Forwarded-Host" header field will
421
- * be trusted.
422
- *
423
- * @return {String}
424
- * @public
425
- */
426
-
427
- defineGetter(req, 'hostname', function hostname(){
428
- var trust = this.app.get('trust proxy fn');
429
- var host = this.get('X-Forwarded-Host');
430
-
431
- if (!host || !trust(this.connection.remoteAddress, 0)) {
432
- host = this.get('Host');
433
- } else if (host.indexOf(',') !== -1) {
434
- // Note: X-Forwarded-Host is normally only ever a
435
- // single value, but this is to be safe.
436
- host = host.substring(0, host.indexOf(',')).trimRight()
437
- }
438
-
439
- if (!host) return;
440
-
441
- // IPv6 literal support
442
- var offset = host[0] === '['
443
- ? host.indexOf(']') + 1
444
- : 0;
445
- var index = host.indexOf(':', offset);
446
-
447
- return index !== -1
448
- ? host.substring(0, index)
449
- : host;
450
- });
451
-
452
- // TODO: change req.host to return host in next major
453
-
454
- defineGetter(req, 'host', deprecate.function(function host(){
455
- return this.hostname;
456
- }, 'req.host: Use req.hostname instead'));
457
-
458
- /**
459
- * Check if the request is fresh, aka
460
- * Last-Modified and/or the ETag
461
- * still match.
462
- *
463
- * @return {Boolean}
464
- * @public
465
- */
466
-
467
- defineGetter(req, 'fresh', function(){
468
- var method = this.method;
469
- var res = this.res
470
- var status = res.statusCode
471
-
472
- // GET or HEAD for weak freshness validation only
473
- if ('GET' !== method && 'HEAD' !== method) return false;
474
-
475
- // 2xx or 304 as per rfc2616 14.26
476
- if ((status >= 200 && status < 300) || 304 === status) {
477
- return fresh(this.headers, {
478
- 'etag': res.get('ETag'),
479
- 'last-modified': res.get('Last-Modified')
480
- })
481
- }
482
-
483
- return false;
484
- });
485
-
486
- /**
487
- * Check if the request is stale, aka
488
- * "Last-Modified" and / or the "ETag" for the
489
- * resource has changed.
490
- *
491
- * @return {Boolean}
492
- * @public
493
- */
494
-
495
- defineGetter(req, 'stale', function stale(){
496
- return !this.fresh;
497
- });
498
-
499
- /**
500
- * Check if the request was an _XMLHttpRequest_.
501
- *
502
- * @return {Boolean}
503
- * @public
504
- */
505
-
506
- defineGetter(req, 'xhr', function xhr(){
507
- var val = this.get('X-Requested-With') || '';
508
- return val.toLowerCase() === 'xmlhttprequest';
509
- });
510
-
511
- /**
512
- * Helper function for creating a getter on an object.
513
- *
514
- * @param {Object} obj
515
- * @param {String} name
516
- * @param {Function} getter
517
- * @private
518
- */
519
- function defineGetter(obj, name, getter) {
520
- Object.defineProperty(obj, name, {
521
- configurable: true,
522
- enumerable: true,
523
- get: getter
524
- });
525
- }