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,203 +0,0 @@
1
- # negotiator
2
-
3
- [![NPM Version][npm-image]][npm-url]
4
- [![NPM Downloads][downloads-image]][downloads-url]
5
- [![Node.js Version][node-version-image]][node-version-url]
6
- [![Build Status][travis-image]][travis-url]
7
- [![Test Coverage][coveralls-image]][coveralls-url]
8
-
9
- An HTTP content negotiator for Node.js
10
-
11
- ## Installation
12
-
13
- ```sh
14
- $ npm install negotiator
15
- ```
16
-
17
- ## API
18
-
19
- ```js
20
- var Negotiator = require('negotiator')
21
- ```
22
-
23
- ### Accept Negotiation
24
-
25
- ```js
26
- availableMediaTypes = ['text/html', 'text/plain', 'application/json']
27
-
28
- // The negotiator constructor receives a request object
29
- negotiator = new Negotiator(request)
30
-
31
- // Let's say Accept header is 'text/html, application/*;q=0.2, image/jpeg;q=0.8'
32
-
33
- negotiator.mediaTypes()
34
- // -> ['text/html', 'image/jpeg', 'application/*']
35
-
36
- negotiator.mediaTypes(availableMediaTypes)
37
- // -> ['text/html', 'application/json']
38
-
39
- negotiator.mediaType(availableMediaTypes)
40
- // -> 'text/html'
41
- ```
42
-
43
- You can check a working example at `examples/accept.js`.
44
-
45
- #### Methods
46
-
47
- ##### mediaType()
48
-
49
- Returns the most preferred media type from the client.
50
-
51
- ##### mediaType(availableMediaType)
52
-
53
- Returns the most preferred media type from a list of available media types.
54
-
55
- ##### mediaTypes()
56
-
57
- Returns an array of preferred media types ordered by the client preference.
58
-
59
- ##### mediaTypes(availableMediaTypes)
60
-
61
- Returns an array of preferred media types ordered by priority from a list of
62
- available media types.
63
-
64
- ### Accept-Language Negotiation
65
-
66
- ```js
67
- negotiator = new Negotiator(request)
68
-
69
- availableLanguages = ['en', 'es', 'fr']
70
-
71
- // Let's say Accept-Language header is 'en;q=0.8, es, pt'
72
-
73
- negotiator.languages()
74
- // -> ['es', 'pt', 'en']
75
-
76
- negotiator.languages(availableLanguages)
77
- // -> ['es', 'en']
78
-
79
- language = negotiator.language(availableLanguages)
80
- // -> 'es'
81
- ```
82
-
83
- You can check a working example at `examples/language.js`.
84
-
85
- #### Methods
86
-
87
- ##### language()
88
-
89
- Returns the most preferred language from the client.
90
-
91
- ##### language(availableLanguages)
92
-
93
- Returns the most preferred language from a list of available languages.
94
-
95
- ##### languages()
96
-
97
- Returns an array of preferred languages ordered by the client preference.
98
-
99
- ##### languages(availableLanguages)
100
-
101
- Returns an array of preferred languages ordered by priority from a list of
102
- available languages.
103
-
104
- ### Accept-Charset Negotiation
105
-
106
- ```js
107
- availableCharsets = ['utf-8', 'iso-8859-1', 'iso-8859-5']
108
-
109
- negotiator = new Negotiator(request)
110
-
111
- // Let's say Accept-Charset header is 'utf-8, iso-8859-1;q=0.8, utf-7;q=0.2'
112
-
113
- negotiator.charsets()
114
- // -> ['utf-8', 'iso-8859-1', 'utf-7']
115
-
116
- negotiator.charsets(availableCharsets)
117
- // -> ['utf-8', 'iso-8859-1']
118
-
119
- negotiator.charset(availableCharsets)
120
- // -> 'utf-8'
121
- ```
122
-
123
- You can check a working example at `examples/charset.js`.
124
-
125
- #### Methods
126
-
127
- ##### charset()
128
-
129
- Returns the most preferred charset from the client.
130
-
131
- ##### charset(availableCharsets)
132
-
133
- Returns the most preferred charset from a list of available charsets.
134
-
135
- ##### charsets()
136
-
137
- Returns an array of preferred charsets ordered by the client preference.
138
-
139
- ##### charsets(availableCharsets)
140
-
141
- Returns an array of preferred charsets ordered by priority from a list of
142
- available charsets.
143
-
144
- ### Accept-Encoding Negotiation
145
-
146
- ```js
147
- availableEncodings = ['identity', 'gzip']
148
-
149
- negotiator = new Negotiator(request)
150
-
151
- // Let's say Accept-Encoding header is 'gzip, compress;q=0.2, identity;q=0.5'
152
-
153
- negotiator.encodings()
154
- // -> ['gzip', 'identity', 'compress']
155
-
156
- negotiator.encodings(availableEncodings)
157
- // -> ['gzip', 'identity']
158
-
159
- negotiator.encoding(availableEncodings)
160
- // -> 'gzip'
161
- ```
162
-
163
- You can check a working example at `examples/encoding.js`.
164
-
165
- #### Methods
166
-
167
- ##### encoding()
168
-
169
- Returns the most preferred encoding from the client.
170
-
171
- ##### encoding(availableEncodings)
172
-
173
- Returns the most preferred encoding from a list of available encodings.
174
-
175
- ##### encodings()
176
-
177
- Returns an array of preferred encodings ordered by the client preference.
178
-
179
- ##### encodings(availableEncodings)
180
-
181
- Returns an array of preferred encodings ordered by priority from a list of
182
- available encodings.
183
-
184
- ## See Also
185
-
186
- The [accepts](https://npmjs.org/package/accepts#readme) module builds on
187
- this module and provides an alternative interface, mime type validation,
188
- and more.
189
-
190
- ## License
191
-
192
- [MIT](LICENSE)
193
-
194
- [npm-image]: https://img.shields.io/npm/v/negotiator.svg
195
- [npm-url]: https://npmjs.org/package/negotiator
196
- [node-version-image]: https://img.shields.io/node/v/negotiator.svg
197
- [node-version-url]: https://nodejs.org/en/download/
198
- [travis-image]: https://img.shields.io/travis/jshttp/negotiator/master.svg
199
- [travis-url]: https://travis-ci.org/jshttp/negotiator
200
- [coveralls-image]: https://img.shields.io/coveralls/jshttp/negotiator/master.svg
201
- [coveralls-url]: https://coveralls.io/r/jshttp/negotiator?branch=master
202
- [downloads-image]: https://img.shields.io/npm/dm/negotiator.svg
203
- [downloads-url]: https://npmjs.org/package/negotiator
@@ -1,124 +0,0 @@
1
- /*!
2
- * negotiator
3
- * Copyright(c) 2012 Federico Romero
4
- * Copyright(c) 2012-2014 Isaac Z. Schlueter
5
- * Copyright(c) 2015 Douglas Christopher Wilson
6
- * MIT Licensed
7
- */
8
-
9
- 'use strict';
10
-
11
- /**
12
- * Cached loaded submodules.
13
- * @private
14
- */
15
-
16
- var modules = Object.create(null);
17
-
18
- /**
19
- * Module exports.
20
- * @public
21
- */
22
-
23
- module.exports = Negotiator;
24
- module.exports.Negotiator = Negotiator;
25
-
26
- /**
27
- * Create a Negotiator instance from a request.
28
- * @param {object} request
29
- * @public
30
- */
31
-
32
- function Negotiator(request) {
33
- if (!(this instanceof Negotiator)) {
34
- return new Negotiator(request);
35
- }
36
-
37
- this.request = request;
38
- }
39
-
40
- Negotiator.prototype.charset = function charset(available) {
41
- var set = this.charsets(available);
42
- return set && set[0];
43
- };
44
-
45
- Negotiator.prototype.charsets = function charsets(available) {
46
- var preferredCharsets = loadModule('charset').preferredCharsets;
47
- return preferredCharsets(this.request.headers['accept-charset'], available);
48
- };
49
-
50
- Negotiator.prototype.encoding = function encoding(available) {
51
- var set = this.encodings(available);
52
- return set && set[0];
53
- };
54
-
55
- Negotiator.prototype.encodings = function encodings(available) {
56
- var preferredEncodings = loadModule('encoding').preferredEncodings;
57
- return preferredEncodings(this.request.headers['accept-encoding'], available);
58
- };
59
-
60
- Negotiator.prototype.language = function language(available) {
61
- var set = this.languages(available);
62
- return set && set[0];
63
- };
64
-
65
- Negotiator.prototype.languages = function languages(available) {
66
- var preferredLanguages = loadModule('language').preferredLanguages;
67
- return preferredLanguages(this.request.headers['accept-language'], available);
68
- };
69
-
70
- Negotiator.prototype.mediaType = function mediaType(available) {
71
- var set = this.mediaTypes(available);
72
- return set && set[0];
73
- };
74
-
75
- Negotiator.prototype.mediaTypes = function mediaTypes(available) {
76
- var preferredMediaTypes = loadModule('mediaType').preferredMediaTypes;
77
- return preferredMediaTypes(this.request.headers.accept, available);
78
- };
79
-
80
- // Backwards compatibility
81
- Negotiator.prototype.preferredCharset = Negotiator.prototype.charset;
82
- Negotiator.prototype.preferredCharsets = Negotiator.prototype.charsets;
83
- Negotiator.prototype.preferredEncoding = Negotiator.prototype.encoding;
84
- Negotiator.prototype.preferredEncodings = Negotiator.prototype.encodings;
85
- Negotiator.prototype.preferredLanguage = Negotiator.prototype.language;
86
- Negotiator.prototype.preferredLanguages = Negotiator.prototype.languages;
87
- Negotiator.prototype.preferredMediaType = Negotiator.prototype.mediaType;
88
- Negotiator.prototype.preferredMediaTypes = Negotiator.prototype.mediaTypes;
89
-
90
- /**
91
- * Load the given module.
92
- * @private
93
- */
94
-
95
- function loadModule(moduleName) {
96
- var module = modules[moduleName];
97
-
98
- if (module !== undefined) {
99
- return module;
100
- }
101
-
102
- // This uses a switch for static require analysis
103
- switch (moduleName) {
104
- case 'charset':
105
- module = require('./lib/charset');
106
- break;
107
- case 'encoding':
108
- module = require('./lib/encoding');
109
- break;
110
- case 'language':
111
- module = require('./lib/language');
112
- break;
113
- case 'mediaType':
114
- module = require('./lib/mediaType');
115
- break;
116
- default:
117
- throw new Error('Cannot find module \'' + moduleName + '\'');
118
- }
119
-
120
- // Store to prevent invoking require()
121
- modules[moduleName] = module;
122
-
123
- return module;
124
- }
@@ -1,169 +0,0 @@
1
- /**
2
- * negotiator
3
- * Copyright(c) 2012 Isaac Z. Schlueter
4
- * Copyright(c) 2014 Federico Romero
5
- * Copyright(c) 2014-2015 Douglas Christopher Wilson
6
- * MIT Licensed
7
- */
8
-
9
- 'use strict';
10
-
11
- /**
12
- * Module exports.
13
- * @public
14
- */
15
-
16
- module.exports = preferredCharsets;
17
- module.exports.preferredCharsets = preferredCharsets;
18
-
19
- /**
20
- * Module variables.
21
- * @private
22
- */
23
-
24
- var simpleCharsetRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/;
25
-
26
- /**
27
- * Parse the Accept-Charset header.
28
- * @private
29
- */
30
-
31
- function parseAcceptCharset(accept) {
32
- var accepts = accept.split(',');
33
-
34
- for (var i = 0, j = 0; i < accepts.length; i++) {
35
- var charset = parseCharset(accepts[i].trim(), i);
36
-
37
- if (charset) {
38
- accepts[j++] = charset;
39
- }
40
- }
41
-
42
- // trim accepts
43
- accepts.length = j;
44
-
45
- return accepts;
46
- }
47
-
48
- /**
49
- * Parse a charset from the Accept-Charset header.
50
- * @private
51
- */
52
-
53
- function parseCharset(str, i) {
54
- var match = simpleCharsetRegExp.exec(str);
55
- if (!match) return null;
56
-
57
- var charset = match[1];
58
- var q = 1;
59
- if (match[2]) {
60
- var params = match[2].split(';')
61
- for (var j = 0; j < params.length; j++) {
62
- var p = params[j].trim().split('=');
63
- if (p[0] === 'q') {
64
- q = parseFloat(p[1]);
65
- break;
66
- }
67
- }
68
- }
69
-
70
- return {
71
- charset: charset,
72
- q: q,
73
- i: i
74
- };
75
- }
76
-
77
- /**
78
- * Get the priority of a charset.
79
- * @private
80
- */
81
-
82
- function getCharsetPriority(charset, accepted, index) {
83
- var priority = {o: -1, q: 0, s: 0};
84
-
85
- for (var i = 0; i < accepted.length; i++) {
86
- var spec = specify(charset, accepted[i], index);
87
-
88
- if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
89
- priority = spec;
90
- }
91
- }
92
-
93
- return priority;
94
- }
95
-
96
- /**
97
- * Get the specificity of the charset.
98
- * @private
99
- */
100
-
101
- function specify(charset, spec, index) {
102
- var s = 0;
103
- if(spec.charset.toLowerCase() === charset.toLowerCase()){
104
- s |= 1;
105
- } else if (spec.charset !== '*' ) {
106
- return null
107
- }
108
-
109
- return {
110
- i: index,
111
- o: spec.i,
112
- q: spec.q,
113
- s: s
114
- }
115
- }
116
-
117
- /**
118
- * Get the preferred charsets from an Accept-Charset header.
119
- * @public
120
- */
121
-
122
- function preferredCharsets(accept, provided) {
123
- // RFC 2616 sec 14.2: no header = *
124
- var accepts = parseAcceptCharset(accept === undefined ? '*' : accept || '');
125
-
126
- if (!provided) {
127
- // sorted list of all charsets
128
- return accepts
129
- .filter(isQuality)
130
- .sort(compareSpecs)
131
- .map(getFullCharset);
132
- }
133
-
134
- var priorities = provided.map(function getPriority(type, index) {
135
- return getCharsetPriority(type, accepts, index);
136
- });
137
-
138
- // sorted list of accepted charsets
139
- return priorities.filter(isQuality).sort(compareSpecs).map(function getCharset(priority) {
140
- return provided[priorities.indexOf(priority)];
141
- });
142
- }
143
-
144
- /**
145
- * Compare two specs.
146
- * @private
147
- */
148
-
149
- function compareSpecs(a, b) {
150
- return (b.q - a.q) || (b.s - a.s) || (a.o - b.o) || (a.i - b.i) || 0;
151
- }
152
-
153
- /**
154
- * Get full charset string.
155
- * @private
156
- */
157
-
158
- function getFullCharset(spec) {
159
- return spec.charset;
160
- }
161
-
162
- /**
163
- * Check if a spec has any quality.
164
- * @private
165
- */
166
-
167
- function isQuality(spec) {
168
- return spec.q > 0;
169
- }
@@ -1,184 +0,0 @@
1
- /**
2
- * negotiator
3
- * Copyright(c) 2012 Isaac Z. Schlueter
4
- * Copyright(c) 2014 Federico Romero
5
- * Copyright(c) 2014-2015 Douglas Christopher Wilson
6
- * MIT Licensed
7
- */
8
-
9
- 'use strict';
10
-
11
- /**
12
- * Module exports.
13
- * @public
14
- */
15
-
16
- module.exports = preferredEncodings;
17
- module.exports.preferredEncodings = preferredEncodings;
18
-
19
- /**
20
- * Module variables.
21
- * @private
22
- */
23
-
24
- var simpleEncodingRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/;
25
-
26
- /**
27
- * Parse the Accept-Encoding header.
28
- * @private
29
- */
30
-
31
- function parseAcceptEncoding(accept) {
32
- var accepts = accept.split(',');
33
- var hasIdentity = false;
34
- var minQuality = 1;
35
-
36
- for (var i = 0, j = 0; i < accepts.length; i++) {
37
- var encoding = parseEncoding(accepts[i].trim(), i);
38
-
39
- if (encoding) {
40
- accepts[j++] = encoding;
41
- hasIdentity = hasIdentity || specify('identity', encoding);
42
- minQuality = Math.min(minQuality, encoding.q || 1);
43
- }
44
- }
45
-
46
- if (!hasIdentity) {
47
- /*
48
- * If identity doesn't explicitly appear in the accept-encoding header,
49
- * it's added to the list of acceptable encoding with the lowest q
50
- */
51
- accepts[j++] = {
52
- encoding: 'identity',
53
- q: minQuality,
54
- i: i
55
- };
56
- }
57
-
58
- // trim accepts
59
- accepts.length = j;
60
-
61
- return accepts;
62
- }
63
-
64
- /**
65
- * Parse an encoding from the Accept-Encoding header.
66
- * @private
67
- */
68
-
69
- function parseEncoding(str, i) {
70
- var match = simpleEncodingRegExp.exec(str);
71
- if (!match) return null;
72
-
73
- var encoding = match[1];
74
- var q = 1;
75
- if (match[2]) {
76
- var params = match[2].split(';');
77
- for (var j = 0; j < params.length; j++) {
78
- var p = params[j].trim().split('=');
79
- if (p[0] === 'q') {
80
- q = parseFloat(p[1]);
81
- break;
82
- }
83
- }
84
- }
85
-
86
- return {
87
- encoding: encoding,
88
- q: q,
89
- i: i
90
- };
91
- }
92
-
93
- /**
94
- * Get the priority of an encoding.
95
- * @private
96
- */
97
-
98
- function getEncodingPriority(encoding, accepted, index) {
99
- var priority = {o: -1, q: 0, s: 0};
100
-
101
- for (var i = 0; i < accepted.length; i++) {
102
- var spec = specify(encoding, accepted[i], index);
103
-
104
- if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
105
- priority = spec;
106
- }
107
- }
108
-
109
- return priority;
110
- }
111
-
112
- /**
113
- * Get the specificity of the encoding.
114
- * @private
115
- */
116
-
117
- function specify(encoding, spec, index) {
118
- var s = 0;
119
- if(spec.encoding.toLowerCase() === encoding.toLowerCase()){
120
- s |= 1;
121
- } else if (spec.encoding !== '*' ) {
122
- return null
123
- }
124
-
125
- return {
126
- i: index,
127
- o: spec.i,
128
- q: spec.q,
129
- s: s
130
- }
131
- };
132
-
133
- /**
134
- * Get the preferred encodings from an Accept-Encoding header.
135
- * @public
136
- */
137
-
138
- function preferredEncodings(accept, provided) {
139
- var accepts = parseAcceptEncoding(accept || '');
140
-
141
- if (!provided) {
142
- // sorted list of all encodings
143
- return accepts
144
- .filter(isQuality)
145
- .sort(compareSpecs)
146
- .map(getFullEncoding);
147
- }
148
-
149
- var priorities = provided.map(function getPriority(type, index) {
150
- return getEncodingPriority(type, accepts, index);
151
- });
152
-
153
- // sorted list of accepted encodings
154
- return priorities.filter(isQuality).sort(compareSpecs).map(function getEncoding(priority) {
155
- return provided[priorities.indexOf(priority)];
156
- });
157
- }
158
-
159
- /**
160
- * Compare two specs.
161
- * @private
162
- */
163
-
164
- function compareSpecs(a, b) {
165
- return (b.q - a.q) || (b.s - a.s) || (a.o - b.o) || (a.i - b.i) || 0;
166
- }
167
-
168
- /**
169
- * Get full encoding string.
170
- * @private
171
- */
172
-
173
- function getFullEncoding(spec) {
174
- return spec.encoding;
175
- }
176
-
177
- /**
178
- * Check if a spec has any quality.
179
- * @private
180
- */
181
-
182
- function isQuality(spec) {
183
- return spec.q > 0;
184
- }