es6-crawler-detect 3.2.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 (361) 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/server.js +38 -32
  8. package/example/node/yarn.lock +222 -99
  9. package/package.json +30 -25
  10. package/src/index.js +20 -14
  11. package/src/index.ts +18 -0
  12. package/src/lib/crawler/crawlers.js +9 -12
  13. package/src/lib/crawler/crawlers.ts +1397 -0
  14. package/src/lib/crawler/exclusions.js +7 -11
  15. package/src/lib/crawler/exclusions.ts +56 -0
  16. package/src/lib/crawler/headers.js +6 -10
  17. package/src/lib/crawler/headers.ts +18 -0
  18. package/src/lib/crawler/provider.js +1 -10
  19. package/src/lib/crawler/provider.ts +3 -0
  20. package/src/lib/crawler.js +61 -98
  21. package/src/lib/crawler.ts +128 -0
  22. package/src/types.js +2 -0
  23. package/src/types.ts +15 -0
  24. package/test/lib/crawler.spec.js +149 -0
  25. package/test/lib/crawler.spec.ts +116 -0
  26. package/test/lib/database/crawlers.txt +3651 -0
  27. package/test/lib/database/devices.txt +165636 -0
  28. package/tsconfig.json +16 -0
  29. package/webpack.common.js +20 -20
  30. package/webpack.dev.js +7 -7
  31. package/webpack.prod.js +14 -14
  32. package/.eslintignore +0 -6
  33. package/.eslintrc.json +0 -30
  34. package/example/node/node_modules/.bin/mime +0 -15
  35. package/example/node/node_modules/.bin/mime.cmd +0 -7
  36. package/example/node/node_modules/.yarn-integrity +0 -67
  37. package/example/node/node_modules/accepts/HISTORY.md +0 -236
  38. package/example/node/node_modules/accepts/LICENSE +0 -23
  39. package/example/node/node_modules/accepts/README.md +0 -142
  40. package/example/node/node_modules/accepts/index.js +0 -238
  41. package/example/node/node_modules/accepts/package.json +0 -47
  42. package/example/node/node_modules/array-flatten/LICENSE +0 -21
  43. package/example/node/node_modules/array-flatten/README.md +0 -43
  44. package/example/node/node_modules/array-flatten/array-flatten.js +0 -64
  45. package/example/node/node_modules/array-flatten/package.json +0 -39
  46. package/example/node/node_modules/body-parser/HISTORY.md +0 -624
  47. package/example/node/node_modules/body-parser/LICENSE +0 -23
  48. package/example/node/node_modules/body-parser/README.md +0 -456
  49. package/example/node/node_modules/body-parser/index.js +0 -157
  50. package/example/node/node_modules/body-parser/lib/read.js +0 -181
  51. package/example/node/node_modules/body-parser/lib/types/json.js +0 -230
  52. package/example/node/node_modules/body-parser/lib/types/raw.js +0 -101
  53. package/example/node/node_modules/body-parser/lib/types/text.js +0 -121
  54. package/example/node/node_modules/body-parser/lib/types/urlencoded.js +0 -284
  55. package/example/node/node_modules/body-parser/package.json +0 -52
  56. package/example/node/node_modules/bytes/History.md +0 -92
  57. package/example/node/node_modules/bytes/LICENSE +0 -23
  58. package/example/node/node_modules/bytes/Readme.md +0 -152
  59. package/example/node/node_modules/bytes/index.js +0 -166
  60. package/example/node/node_modules/bytes/package.json +0 -42
  61. package/example/node/node_modules/content-disposition/HISTORY.md +0 -60
  62. package/example/node/node_modules/content-disposition/LICENSE +0 -22
  63. package/example/node/node_modules/content-disposition/README.md +0 -142
  64. package/example/node/node_modules/content-disposition/index.js +0 -458
  65. package/example/node/node_modules/content-disposition/package.json +0 -44
  66. package/example/node/node_modules/content-type/HISTORY.md +0 -24
  67. package/example/node/node_modules/content-type/LICENSE +0 -22
  68. package/example/node/node_modules/content-type/README.md +0 -92
  69. package/example/node/node_modules/content-type/index.js +0 -222
  70. package/example/node/node_modules/content-type/package.json +0 -40
  71. package/example/node/node_modules/cookie/HISTORY.md +0 -128
  72. package/example/node/node_modules/cookie/LICENSE +0 -24
  73. package/example/node/node_modules/cookie/README.md +0 -257
  74. package/example/node/node_modules/cookie/index.js +0 -202
  75. package/example/node/node_modules/cookie/package.json +0 -40
  76. package/example/node/node_modules/cookie-signature/History.md +0 -38
  77. package/example/node/node_modules/cookie-signature/Readme.md +0 -42
  78. package/example/node/node_modules/cookie-signature/index.js +0 -51
  79. package/example/node/node_modules/cookie-signature/package.json +0 -18
  80. package/example/node/node_modules/debug/.coveralls.yml +0 -1
  81. package/example/node/node_modules/debug/.eslintrc +0 -11
  82. package/example/node/node_modules/debug/.travis.yml +0 -14
  83. package/example/node/node_modules/debug/CHANGELOG.md +0 -362
  84. package/example/node/node_modules/debug/LICENSE +0 -19
  85. package/example/node/node_modules/debug/Makefile +0 -50
  86. package/example/node/node_modules/debug/README.md +0 -312
  87. package/example/node/node_modules/debug/component.json +0 -19
  88. package/example/node/node_modules/debug/karma.conf.js +0 -70
  89. package/example/node/node_modules/debug/node.js +0 -1
  90. package/example/node/node_modules/debug/package.json +0 -49
  91. package/example/node/node_modules/debug/src/browser.js +0 -185
  92. package/example/node/node_modules/debug/src/debug.js +0 -202
  93. package/example/node/node_modules/debug/src/index.js +0 -10
  94. package/example/node/node_modules/debug/src/inspector-log.js +0 -15
  95. package/example/node/node_modules/debug/src/node.js +0 -248
  96. package/example/node/node_modules/depd/History.md +0 -96
  97. package/example/node/node_modules/depd/LICENSE +0 -22
  98. package/example/node/node_modules/depd/Readme.md +0 -280
  99. package/example/node/node_modules/depd/index.js +0 -522
  100. package/example/node/node_modules/depd/lib/browser/index.js +0 -77
  101. package/example/node/node_modules/depd/lib/compat/callsite-tostring.js +0 -103
  102. package/example/node/node_modules/depd/lib/compat/event-listener-count.js +0 -22
  103. package/example/node/node_modules/depd/lib/compat/index.js +0 -79
  104. package/example/node/node_modules/depd/package.json +0 -41
  105. package/example/node/node_modules/destroy/LICENSE +0 -22
  106. package/example/node/node_modules/destroy/README.md +0 -60
  107. package/example/node/node_modules/destroy/index.js +0 -75
  108. package/example/node/node_modules/destroy/package.json +0 -37
  109. package/example/node/node_modules/ee-first/LICENSE +0 -22
  110. package/example/node/node_modules/ee-first/README.md +0 -80
  111. package/example/node/node_modules/ee-first/index.js +0 -95
  112. package/example/node/node_modules/ee-first/package.json +0 -29
  113. package/example/node/node_modules/encodeurl/HISTORY.md +0 -14
  114. package/example/node/node_modules/encodeurl/LICENSE +0 -22
  115. package/example/node/node_modules/encodeurl/README.md +0 -128
  116. package/example/node/node_modules/encodeurl/index.js +0 -60
  117. package/example/node/node_modules/encodeurl/package.json +0 -40
  118. package/example/node/node_modules/escape-html/LICENSE +0 -24
  119. package/example/node/node_modules/escape-html/Readme.md +0 -43
  120. package/example/node/node_modules/escape-html/index.js +0 -78
  121. package/example/node/node_modules/escape-html/package.json +0 -24
  122. package/example/node/node_modules/etag/HISTORY.md +0 -83
  123. package/example/node/node_modules/etag/LICENSE +0 -22
  124. package/example/node/node_modules/etag/README.md +0 -159
  125. package/example/node/node_modules/etag/index.js +0 -131
  126. package/example/node/node_modules/etag/package.json +0 -47
  127. package/example/node/node_modules/express/History.md +0 -3510
  128. package/example/node/node_modules/express/LICENSE +0 -24
  129. package/example/node/node_modules/express/Readme.md +0 -158
  130. package/example/node/node_modules/express/index.js +0 -11
  131. package/example/node/node_modules/express/lib/application.js +0 -644
  132. package/example/node/node_modules/express/lib/express.js +0 -116
  133. package/example/node/node_modules/express/lib/middleware/init.js +0 -43
  134. package/example/node/node_modules/express/lib/middleware/query.js +0 -47
  135. package/example/node/node_modules/express/lib/request.js +0 -525
  136. package/example/node/node_modules/express/lib/response.js +0 -1147
  137. package/example/node/node_modules/express/lib/router/index.js +0 -668
  138. package/example/node/node_modules/express/lib/router/layer.js +0 -181
  139. package/example/node/node_modules/express/lib/router/route.js +0 -216
  140. package/example/node/node_modules/express/lib/utils.js +0 -302
  141. package/example/node/node_modules/express/lib/view.js +0 -182
  142. package/example/node/node_modules/express/package.json +0 -99
  143. package/example/node/node_modules/finalhandler/HISTORY.md +0 -187
  144. package/example/node/node_modules/finalhandler/LICENSE +0 -22
  145. package/example/node/node_modules/finalhandler/README.md +0 -148
  146. package/example/node/node_modules/finalhandler/index.js +0 -331
  147. package/example/node/node_modules/finalhandler/package.json +0 -45
  148. package/example/node/node_modules/forwarded/HISTORY.md +0 -21
  149. package/example/node/node_modules/forwarded/LICENSE +0 -22
  150. package/example/node/node_modules/forwarded/README.md +0 -57
  151. package/example/node/node_modules/forwarded/index.js +0 -90
  152. package/example/node/node_modules/forwarded/package.json +0 -45
  153. package/example/node/node_modules/fresh/HISTORY.md +0 -70
  154. package/example/node/node_modules/fresh/LICENSE +0 -23
  155. package/example/node/node_modules/fresh/README.md +0 -119
  156. package/example/node/node_modules/fresh/index.js +0 -137
  157. package/example/node/node_modules/fresh/package.json +0 -46
  158. package/example/node/node_modules/http-errors/HISTORY.md +0 -165
  159. package/example/node/node_modules/http-errors/LICENSE +0 -23
  160. package/example/node/node_modules/http-errors/README.md +0 -169
  161. package/example/node/node_modules/http-errors/index.js +0 -299
  162. package/example/node/node_modules/http-errors/package.json +0 -49
  163. package/example/node/node_modules/iconv-lite/Changelog.md +0 -162
  164. package/example/node/node_modules/iconv-lite/LICENSE +0 -21
  165. package/example/node/node_modules/iconv-lite/README.md +0 -156
  166. package/example/node/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -555
  167. package/example/node/node_modules/iconv-lite/encodings/dbcs-data.js +0 -176
  168. package/example/node/node_modules/iconv-lite/encodings/index.js +0 -22
  169. package/example/node/node_modules/iconv-lite/encodings/internal.js +0 -188
  170. package/example/node/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -72
  171. package/example/node/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
  172. package/example/node/node_modules/iconv-lite/encodings/sbcs-data.js +0 -174
  173. package/example/node/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
  174. package/example/node/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
  175. package/example/node/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
  176. package/example/node/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
  177. package/example/node/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
  178. package/example/node/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
  179. package/example/node/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -55
  180. package/example/node/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
  181. package/example/node/node_modules/iconv-lite/encodings/utf16.js +0 -177
  182. package/example/node/node_modules/iconv-lite/encodings/utf7.js +0 -290
  183. package/example/node/node_modules/iconv-lite/lib/bom-handling.js +0 -52
  184. package/example/node/node_modules/iconv-lite/lib/extend-node.js +0 -217
  185. package/example/node/node_modules/iconv-lite/lib/index.d.ts +0 -24
  186. package/example/node/node_modules/iconv-lite/lib/index.js +0 -153
  187. package/example/node/node_modules/iconv-lite/lib/streams.js +0 -121
  188. package/example/node/node_modules/iconv-lite/package.json +0 -46
  189. package/example/node/node_modules/inherits/LICENSE +0 -16
  190. package/example/node/node_modules/inherits/README.md +0 -42
  191. package/example/node/node_modules/inherits/inherits.js +0 -9
  192. package/example/node/node_modules/inherits/inherits_browser.js +0 -27
  193. package/example/node/node_modules/inherits/package.json +0 -29
  194. package/example/node/node_modules/ipaddr.js/LICENSE +0 -19
  195. package/example/node/node_modules/ipaddr.js/README.md +0 -233
  196. package/example/node/node_modules/ipaddr.js/ipaddr.min.js +0 -1
  197. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js +0 -673
  198. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +0 -68
  199. package/example/node/node_modules/ipaddr.js/package.json +0 -35
  200. package/example/node/node_modules/media-typer/HISTORY.md +0 -22
  201. package/example/node/node_modules/media-typer/LICENSE +0 -22
  202. package/example/node/node_modules/media-typer/README.md +0 -81
  203. package/example/node/node_modules/media-typer/index.js +0 -270
  204. package/example/node/node_modules/media-typer/package.json +0 -26
  205. package/example/node/node_modules/merge-descriptors/HISTORY.md +0 -21
  206. package/example/node/node_modules/merge-descriptors/LICENSE +0 -23
  207. package/example/node/node_modules/merge-descriptors/README.md +0 -48
  208. package/example/node/node_modules/merge-descriptors/index.js +0 -60
  209. package/example/node/node_modules/merge-descriptors/package.json +0 -32
  210. package/example/node/node_modules/methods/HISTORY.md +0 -29
  211. package/example/node/node_modules/methods/LICENSE +0 -24
  212. package/example/node/node_modules/methods/README.md +0 -51
  213. package/example/node/node_modules/methods/index.js +0 -69
  214. package/example/node/node_modules/methods/package.json +0 -36
  215. package/example/node/node_modules/mime/CHANGELOG.md +0 -164
  216. package/example/node/node_modules/mime/LICENSE +0 -21
  217. package/example/node/node_modules/mime/README.md +0 -90
  218. package/example/node/node_modules/mime/cli.js +0 -8
  219. package/example/node/node_modules/mime/mime.js +0 -108
  220. package/example/node/node_modules/mime/package.json +0 -44
  221. package/example/node/node_modules/mime/src/build.js +0 -53
  222. package/example/node/node_modules/mime/src/test.js +0 -60
  223. package/example/node/node_modules/mime/types.json +0 -1
  224. package/example/node/node_modules/mime-db/HISTORY.md +0 -499
  225. package/example/node/node_modules/mime-db/LICENSE +0 -22
  226. package/example/node/node_modules/mime-db/README.md +0 -100
  227. package/example/node/node_modules/mime-db/db.json +0 -8471
  228. package/example/node/node_modules/mime-db/index.js +0 -11
  229. package/example/node/node_modules/mime-db/package.json +0 -59
  230. package/example/node/node_modules/mime-types/HISTORY.md +0 -388
  231. package/example/node/node_modules/mime-types/LICENSE +0 -23
  232. package/example/node/node_modules/mime-types/README.md +0 -113
  233. package/example/node/node_modules/mime-types/index.js +0 -188
  234. package/example/node/node_modules/mime-types/package.json +0 -44
  235. package/example/node/node_modules/ms/index.js +0 -152
  236. package/example/node/node_modules/ms/license.md +0 -21
  237. package/example/node/node_modules/ms/package.json +0 -37
  238. package/example/node/node_modules/ms/readme.md +0 -51
  239. package/example/node/node_modules/negotiator/HISTORY.md +0 -103
  240. package/example/node/node_modules/negotiator/LICENSE +0 -24
  241. package/example/node/node_modules/negotiator/README.md +0 -203
  242. package/example/node/node_modules/negotiator/index.js +0 -124
  243. package/example/node/node_modules/negotiator/lib/charset.js +0 -169
  244. package/example/node/node_modules/negotiator/lib/encoding.js +0 -184
  245. package/example/node/node_modules/negotiator/lib/language.js +0 -179
  246. package/example/node/node_modules/negotiator/lib/mediaType.js +0 -294
  247. package/example/node/node_modules/negotiator/package.json +0 -42
  248. package/example/node/node_modules/on-finished/HISTORY.md +0 -88
  249. package/example/node/node_modules/on-finished/LICENSE +0 -23
  250. package/example/node/node_modules/on-finished/README.md +0 -154
  251. package/example/node/node_modules/on-finished/index.js +0 -196
  252. package/example/node/node_modules/on-finished/package.json +0 -31
  253. package/example/node/node_modules/parseurl/HISTORY.md +0 -58
  254. package/example/node/node_modules/parseurl/LICENSE +0 -24
  255. package/example/node/node_modules/parseurl/README.md +0 -133
  256. package/example/node/node_modules/parseurl/index.js +0 -158
  257. package/example/node/node_modules/parseurl/package.json +0 -40
  258. package/example/node/node_modules/path-to-regexp/History.md +0 -36
  259. package/example/node/node_modules/path-to-regexp/LICENSE +0 -21
  260. package/example/node/node_modules/path-to-regexp/Readme.md +0 -35
  261. package/example/node/node_modules/path-to-regexp/index.js +0 -129
  262. package/example/node/node_modules/path-to-regexp/package.json +0 -30
  263. package/example/node/node_modules/proxy-addr/HISTORY.md +0 -161
  264. package/example/node/node_modules/proxy-addr/LICENSE +0 -22
  265. package/example/node/node_modules/proxy-addr/README.md +0 -139
  266. package/example/node/node_modules/proxy-addr/index.js +0 -327
  267. package/example/node/node_modules/proxy-addr/package.json +0 -47
  268. package/example/node/node_modules/qs/.editorconfig +0 -39
  269. package/example/node/node_modules/qs/.eslintignore +0 -2
  270. package/example/node/node_modules/qs/.eslintrc +0 -35
  271. package/example/node/node_modules/qs/.github/FUNDING.yml +0 -12
  272. package/example/node/node_modules/qs/.nycrc +0 -13
  273. package/example/node/node_modules/qs/CHANGELOG.md +0 -359
  274. package/example/node/node_modules/qs/LICENSE.md +0 -29
  275. package/example/node/node_modules/qs/README.md +0 -604
  276. package/example/node/node_modules/qs/dist/qs.js +0 -832
  277. package/example/node/node_modules/qs/lib/formats.js +0 -23
  278. package/example/node/node_modules/qs/lib/index.js +0 -11
  279. package/example/node/node_modules/qs/lib/parse.js +0 -257
  280. package/example/node/node_modules/qs/lib/stringify.js +0 -278
  281. package/example/node/node_modules/qs/lib/utils.js +0 -251
  282. package/example/node/node_modules/qs/package.json +0 -69
  283. package/example/node/node_modules/qs/test/parse.js +0 -772
  284. package/example/node/node_modules/qs/test/stringify.js +0 -793
  285. package/example/node/node_modules/qs/test/utils.js +0 -136
  286. package/example/node/node_modules/range-parser/HISTORY.md +0 -56
  287. package/example/node/node_modules/range-parser/LICENSE +0 -23
  288. package/example/node/node_modules/range-parser/README.md +0 -84
  289. package/example/node/node_modules/range-parser/index.js +0 -162
  290. package/example/node/node_modules/range-parser/package.json +0 -44
  291. package/example/node/node_modules/raw-body/HISTORY.md +0 -284
  292. package/example/node/node_modules/raw-body/LICENSE +0 -22
  293. package/example/node/node_modules/raw-body/README.md +0 -217
  294. package/example/node/node_modules/raw-body/index.d.ts +0 -87
  295. package/example/node/node_modules/raw-body/index.js +0 -286
  296. package/example/node/node_modules/raw-body/package.json +0 -48
  297. package/example/node/node_modules/safe-buffer/LICENSE +0 -21
  298. package/example/node/node_modules/safe-buffer/README.md +0 -584
  299. package/example/node/node_modules/safe-buffer/index.d.ts +0 -187
  300. package/example/node/node_modules/safe-buffer/index.js +0 -65
  301. package/example/node/node_modules/safe-buffer/package.json +0 -51
  302. package/example/node/node_modules/safer-buffer/LICENSE +0 -21
  303. package/example/node/node_modules/safer-buffer/Porting-Buffer.md +0 -268
  304. package/example/node/node_modules/safer-buffer/Readme.md +0 -156
  305. package/example/node/node_modules/safer-buffer/dangerous.js +0 -58
  306. package/example/node/node_modules/safer-buffer/package.json +0 -34
  307. package/example/node/node_modules/safer-buffer/safer.js +0 -77
  308. package/example/node/node_modules/safer-buffer/tests.js +0 -406
  309. package/example/node/node_modules/send/HISTORY.md +0 -506
  310. package/example/node/node_modules/send/LICENSE +0 -23
  311. package/example/node/node_modules/send/README.md +0 -327
  312. package/example/node/node_modules/send/index.js +0 -1133
  313. package/example/node/node_modules/send/node_modules/.bin/mime +0 -15
  314. package/example/node/node_modules/send/node_modules/.bin/mime.cmd +0 -7
  315. package/example/node/node_modules/send/node_modules/ms/index.js +0 -162
  316. package/example/node/node_modules/send/node_modules/ms/license.md +0 -21
  317. package/example/node/node_modules/send/node_modules/ms/package.json +0 -38
  318. package/example/node/node_modules/send/node_modules/ms/readme.md +0 -59
  319. package/example/node/node_modules/send/package.json +0 -61
  320. package/example/node/node_modules/serve-static/HISTORY.md +0 -459
  321. package/example/node/node_modules/serve-static/LICENSE +0 -25
  322. package/example/node/node_modules/serve-static/README.md +0 -257
  323. package/example/node/node_modules/serve-static/index.js +0 -210
  324. package/example/node/node_modules/serve-static/package.json +0 -42
  325. package/example/node/node_modules/setprototypeof/LICENSE +0 -13
  326. package/example/node/node_modules/setprototypeof/README.md +0 -31
  327. package/example/node/node_modules/setprototypeof/index.d.ts +0 -2
  328. package/example/node/node_modules/setprototypeof/index.js +0 -17
  329. package/example/node/node_modules/setprototypeof/package.json +0 -38
  330. package/example/node/node_modules/setprototypeof/test/index.js +0 -24
  331. package/example/node/node_modules/statuses/HISTORY.md +0 -65
  332. package/example/node/node_modules/statuses/LICENSE +0 -23
  333. package/example/node/node_modules/statuses/README.md +0 -127
  334. package/example/node/node_modules/statuses/codes.json +0 -66
  335. package/example/node/node_modules/statuses/index.js +0 -113
  336. package/example/node/node_modules/statuses/package.json +0 -48
  337. package/example/node/node_modules/toidentifier/HISTORY.md +0 -9
  338. package/example/node/node_modules/toidentifier/LICENSE +0 -21
  339. package/example/node/node_modules/toidentifier/README.md +0 -61
  340. package/example/node/node_modules/toidentifier/index.js +0 -32
  341. package/example/node/node_modules/toidentifier/package.json +0 -38
  342. package/example/node/node_modules/type-is/HISTORY.md +0 -259
  343. package/example/node/node_modules/type-is/LICENSE +0 -23
  344. package/example/node/node_modules/type-is/README.md +0 -170
  345. package/example/node/node_modules/type-is/index.js +0 -266
  346. package/example/node/node_modules/type-is/package.json +0 -45
  347. package/example/node/node_modules/unpipe/HISTORY.md +0 -4
  348. package/example/node/node_modules/unpipe/LICENSE +0 -22
  349. package/example/node/node_modules/unpipe/README.md +0 -43
  350. package/example/node/node_modules/unpipe/index.js +0 -69
  351. package/example/node/node_modules/unpipe/package.json +0 -27
  352. package/example/node/node_modules/utils-merge/LICENSE +0 -20
  353. package/example/node/node_modules/utils-merge/README.md +0 -34
  354. package/example/node/node_modules/utils-merge/index.js +0 -23
  355. package/example/node/node_modules/utils-merge/package.json +0 -40
  356. package/example/node/node_modules/vary/HISTORY.md +0 -39
  357. package/example/node/node_modules/vary/LICENSE +0 -22
  358. package/example/node/node_modules/vary/README.md +0 -101
  359. package/example/node/node_modules/vary/index.js +0 -149
  360. package/example/node/node_modules/vary/package.json +0 -43
  361. package/test/lib/crawler.test.js +0 -52
@@ -1,176 +0,0 @@
1
- "use strict";
2
-
3
- // Description of supported double byte encodings and aliases.
4
- // Tables are not require()-d until they are needed to speed up library load.
5
- // require()-s are direct to support Browserify.
6
-
7
- module.exports = {
8
-
9
- // == Japanese/ShiftJIS ====================================================
10
- // All japanese encodings are based on JIS X set of standards:
11
- // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
12
- // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes.
13
- // Has several variations in 1978, 1983, 1990 and 1997.
14
- // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
15
- // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
16
- // 2 planes, first is superset of 0208, second - revised 0212.
17
- // Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
18
-
19
- // Byte encodings are:
20
- // * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
21
- // encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
22
- // Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
23
- // * EUC-JP: Up to 3 bytes per character. Used mostly on *nixes.
24
- // 0x00-0x7F - lower part of 0201
25
- // 0x8E, 0xA1-0xDF - upper part of 0201
26
- // (0xA1-0xFE)x2 - 0208 plane (94x94).
27
- // 0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
28
- // * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
29
- // Used as-is in ISO2022 family.
30
- // * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII,
31
- // 0201-1976 Roman, 0208-1978, 0208-1983.
32
- // * ISO2022-JP-1: Adds esc seq for 0212-1990.
33
- // * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
34
- // * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
35
- // * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
36
- //
37
- // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
38
- //
39
- // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
40
-
41
- 'shiftjis': {
42
- type: '_dbcs',
43
- table: function() { return require('./tables/shiftjis.json') },
44
- encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E},
45
- encodeSkipVals: [{from: 0xED40, to: 0xF940}],
46
- },
47
- 'csshiftjis': 'shiftjis',
48
- 'mskanji': 'shiftjis',
49
- 'sjis': 'shiftjis',
50
- 'windows31j': 'shiftjis',
51
- 'ms31j': 'shiftjis',
52
- 'xsjis': 'shiftjis',
53
- 'windows932': 'shiftjis',
54
- 'ms932': 'shiftjis',
55
- '932': 'shiftjis',
56
- 'cp932': 'shiftjis',
57
-
58
- 'eucjp': {
59
- type: '_dbcs',
60
- table: function() { return require('./tables/eucjp.json') },
61
- encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E},
62
- },
63
-
64
- // TODO: KDDI extension to Shift_JIS
65
- // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
66
- // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
67
-
68
-
69
- // == Chinese/GBK ==========================================================
70
- // http://en.wikipedia.org/wiki/GBK
71
- // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
72
-
73
- // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
74
- 'gb2312': 'cp936',
75
- 'gb231280': 'cp936',
76
- 'gb23121980': 'cp936',
77
- 'csgb2312': 'cp936',
78
- 'csiso58gb231280': 'cp936',
79
- 'euccn': 'cp936',
80
-
81
- // Microsoft's CP936 is a subset and approximation of GBK.
82
- 'windows936': 'cp936',
83
- 'ms936': 'cp936',
84
- '936': 'cp936',
85
- 'cp936': {
86
- type: '_dbcs',
87
- table: function() { return require('./tables/cp936.json') },
88
- },
89
-
90
- // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
91
- 'gbk': {
92
- type: '_dbcs',
93
- table: function() { return require('./tables/cp936.json').concat(require('./tables/gbk-added.json')) },
94
- },
95
- 'xgbk': 'gbk',
96
- 'isoir58': 'gbk',
97
-
98
- // GB18030 is an algorithmic extension of GBK.
99
- // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
100
- // http://icu-project.org/docs/papers/gb18030.html
101
- // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
102
- // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
103
- 'gb18030': {
104
- type: '_dbcs',
105
- table: function() { return require('./tables/cp936.json').concat(require('./tables/gbk-added.json')) },
106
- gb18030: function() { return require('./tables/gb18030-ranges.json') },
107
- encodeSkipVals: [0x80],
108
- encodeAdd: {'€': 0xA2E3},
109
- },
110
-
111
- 'chinese': 'gb18030',
112
-
113
-
114
- // == Korean ===============================================================
115
- // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
116
- 'windows949': 'cp949',
117
- 'ms949': 'cp949',
118
- '949': 'cp949',
119
- 'cp949': {
120
- type: '_dbcs',
121
- table: function() { return require('./tables/cp949.json') },
122
- },
123
-
124
- 'cseuckr': 'cp949',
125
- 'csksc56011987': 'cp949',
126
- 'euckr': 'cp949',
127
- 'isoir149': 'cp949',
128
- 'korean': 'cp949',
129
- 'ksc56011987': 'cp949',
130
- 'ksc56011989': 'cp949',
131
- 'ksc5601': 'cp949',
132
-
133
-
134
- // == Big5/Taiwan/Hong Kong ================================================
135
- // There are lots of tables for Big5 and cp950. Please see the following links for history:
136
- // http://moztw.org/docs/big5/ http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
137
- // Variations, in roughly number of defined chars:
138
- // * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
139
- // * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
140
- // * Big5-2003 (Taiwan standard) almost superset of cp950.
141
- // * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
142
- // * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard.
143
- // many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
144
- // Plus, it has 4 combining sequences.
145
- // Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
146
- // because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
147
- // Implementations are not consistent within browsers; sometimes labeled as just big5.
148
- // MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
149
- // Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
150
- // In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
151
- // Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
152
- // http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
153
- //
154
- // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
155
- // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
156
-
157
- 'windows950': 'cp950',
158
- 'ms950': 'cp950',
159
- '950': 'cp950',
160
- 'cp950': {
161
- type: '_dbcs',
162
- table: function() { return require('./tables/cp950.json') },
163
- },
164
-
165
- // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
166
- 'big5': 'big5hkscs',
167
- 'big5hkscs': {
168
- type: '_dbcs',
169
- table: function() { return require('./tables/cp950.json').concat(require('./tables/big5-added.json')) },
170
- encodeSkipVals: [0xa2cc],
171
- },
172
-
173
- 'cnbig5': 'big5hkscs',
174
- 'csbig5': 'big5hkscs',
175
- 'xxbig5': 'big5hkscs',
176
- };
@@ -1,22 +0,0 @@
1
- "use strict";
2
-
3
- // Update this array if you add/rename/remove files in this directory.
4
- // We support Browserify by skipping automatic module discovery and requiring modules directly.
5
- var modules = [
6
- require("./internal"),
7
- require("./utf16"),
8
- require("./utf7"),
9
- require("./sbcs-codec"),
10
- require("./sbcs-data"),
11
- require("./sbcs-data-generated"),
12
- require("./dbcs-codec"),
13
- require("./dbcs-data"),
14
- ];
15
-
16
- // Put all encoding/alias/codec definitions to single object and export it.
17
- for (var i = 0; i < modules.length; i++) {
18
- var module = modules[i];
19
- for (var enc in module)
20
- if (Object.prototype.hasOwnProperty.call(module, enc))
21
- exports[enc] = module[enc];
22
- }
@@ -1,188 +0,0 @@
1
- "use strict";
2
- var Buffer = require("safer-buffer").Buffer;
3
-
4
- // Export Node.js internal encodings.
5
-
6
- module.exports = {
7
- // Encodings
8
- utf8: { type: "_internal", bomAware: true},
9
- cesu8: { type: "_internal", bomAware: true},
10
- unicode11utf8: "utf8",
11
-
12
- ucs2: { type: "_internal", bomAware: true},
13
- utf16le: "ucs2",
14
-
15
- binary: { type: "_internal" },
16
- base64: { type: "_internal" },
17
- hex: { type: "_internal" },
18
-
19
- // Codec.
20
- _internal: InternalCodec,
21
- };
22
-
23
- //------------------------------------------------------------------------------
24
-
25
- function InternalCodec(codecOptions, iconv) {
26
- this.enc = codecOptions.encodingName;
27
- this.bomAware = codecOptions.bomAware;
28
-
29
- if (this.enc === "base64")
30
- this.encoder = InternalEncoderBase64;
31
- else if (this.enc === "cesu8") {
32
- this.enc = "utf8"; // Use utf8 for decoding.
33
- this.encoder = InternalEncoderCesu8;
34
-
35
- // Add decoder for versions of Node not supporting CESU-8
36
- if (Buffer.from('eda0bdedb2a9', 'hex').toString() !== '💩') {
37
- this.decoder = InternalDecoderCesu8;
38
- this.defaultCharUnicode = iconv.defaultCharUnicode;
39
- }
40
- }
41
- }
42
-
43
- InternalCodec.prototype.encoder = InternalEncoder;
44
- InternalCodec.prototype.decoder = InternalDecoder;
45
-
46
- //------------------------------------------------------------------------------
47
-
48
- // We use node.js internal decoder. Its signature is the same as ours.
49
- var StringDecoder = require('string_decoder').StringDecoder;
50
-
51
- if (!StringDecoder.prototype.end) // Node v0.8 doesn't have this method.
52
- StringDecoder.prototype.end = function() {};
53
-
54
-
55
- function InternalDecoder(options, codec) {
56
- StringDecoder.call(this, codec.enc);
57
- }
58
-
59
- InternalDecoder.prototype = StringDecoder.prototype;
60
-
61
-
62
- //------------------------------------------------------------------------------
63
- // Encoder is mostly trivial
64
-
65
- function InternalEncoder(options, codec) {
66
- this.enc = codec.enc;
67
- }
68
-
69
- InternalEncoder.prototype.write = function(str) {
70
- return Buffer.from(str, this.enc);
71
- }
72
-
73
- InternalEncoder.prototype.end = function() {
74
- }
75
-
76
-
77
- //------------------------------------------------------------------------------
78
- // Except base64 encoder, which must keep its state.
79
-
80
- function InternalEncoderBase64(options, codec) {
81
- this.prevStr = '';
82
- }
83
-
84
- InternalEncoderBase64.prototype.write = function(str) {
85
- str = this.prevStr + str;
86
- var completeQuads = str.length - (str.length % 4);
87
- this.prevStr = str.slice(completeQuads);
88
- str = str.slice(0, completeQuads);
89
-
90
- return Buffer.from(str, "base64");
91
- }
92
-
93
- InternalEncoderBase64.prototype.end = function() {
94
- return Buffer.from(this.prevStr, "base64");
95
- }
96
-
97
-
98
- //------------------------------------------------------------------------------
99
- // CESU-8 encoder is also special.
100
-
101
- function InternalEncoderCesu8(options, codec) {
102
- }
103
-
104
- InternalEncoderCesu8.prototype.write = function(str) {
105
- var buf = Buffer.alloc(str.length * 3), bufIdx = 0;
106
- for (var i = 0; i < str.length; i++) {
107
- var charCode = str.charCodeAt(i);
108
- // Naive implementation, but it works because CESU-8 is especially easy
109
- // to convert from UTF-16 (which all JS strings are encoded in).
110
- if (charCode < 0x80)
111
- buf[bufIdx++] = charCode;
112
- else if (charCode < 0x800) {
113
- buf[bufIdx++] = 0xC0 + (charCode >>> 6);
114
- buf[bufIdx++] = 0x80 + (charCode & 0x3f);
115
- }
116
- else { // charCode will always be < 0x10000 in javascript.
117
- buf[bufIdx++] = 0xE0 + (charCode >>> 12);
118
- buf[bufIdx++] = 0x80 + ((charCode >>> 6) & 0x3f);
119
- buf[bufIdx++] = 0x80 + (charCode & 0x3f);
120
- }
121
- }
122
- return buf.slice(0, bufIdx);
123
- }
124
-
125
- InternalEncoderCesu8.prototype.end = function() {
126
- }
127
-
128
- //------------------------------------------------------------------------------
129
- // CESU-8 decoder is not implemented in Node v4.0+
130
-
131
- function InternalDecoderCesu8(options, codec) {
132
- this.acc = 0;
133
- this.contBytes = 0;
134
- this.accBytes = 0;
135
- this.defaultCharUnicode = codec.defaultCharUnicode;
136
- }
137
-
138
- InternalDecoderCesu8.prototype.write = function(buf) {
139
- var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes,
140
- res = '';
141
- for (var i = 0; i < buf.length; i++) {
142
- var curByte = buf[i];
143
- if ((curByte & 0xC0) !== 0x80) { // Leading byte
144
- if (contBytes > 0) { // Previous code is invalid
145
- res += this.defaultCharUnicode;
146
- contBytes = 0;
147
- }
148
-
149
- if (curByte < 0x80) { // Single-byte code
150
- res += String.fromCharCode(curByte);
151
- } else if (curByte < 0xE0) { // Two-byte code
152
- acc = curByte & 0x1F;
153
- contBytes = 1; accBytes = 1;
154
- } else if (curByte < 0xF0) { // Three-byte code
155
- acc = curByte & 0x0F;
156
- contBytes = 2; accBytes = 1;
157
- } else { // Four or more are not supported for CESU-8.
158
- res += this.defaultCharUnicode;
159
- }
160
- } else { // Continuation byte
161
- if (contBytes > 0) { // We're waiting for it.
162
- acc = (acc << 6) | (curByte & 0x3f);
163
- contBytes--; accBytes++;
164
- if (contBytes === 0) {
165
- // Check for overlong encoding, but support Modified UTF-8 (encoding NULL as C0 80)
166
- if (accBytes === 2 && acc < 0x80 && acc > 0)
167
- res += this.defaultCharUnicode;
168
- else if (accBytes === 3 && acc < 0x800)
169
- res += this.defaultCharUnicode;
170
- else
171
- // Actually add character.
172
- res += String.fromCharCode(acc);
173
- }
174
- } else { // Unexpected continuation byte
175
- res += this.defaultCharUnicode;
176
- }
177
- }
178
- }
179
- this.acc = acc; this.contBytes = contBytes; this.accBytes = accBytes;
180
- return res;
181
- }
182
-
183
- InternalDecoderCesu8.prototype.end = function() {
184
- var res = 0;
185
- if (this.contBytes > 0)
186
- res += this.defaultCharUnicode;
187
- return res;
188
- }
@@ -1,72 +0,0 @@
1
- "use strict";
2
- var Buffer = require("safer-buffer").Buffer;
3
-
4
- // Single-byte codec. Needs a 'chars' string parameter that contains 256 or 128 chars that
5
- // correspond to encoded bytes (if 128 - then lower half is ASCII).
6
-
7
- exports._sbcs = SBCSCodec;
8
- function SBCSCodec(codecOptions, iconv) {
9
- if (!codecOptions)
10
- throw new Error("SBCS codec is called without the data.")
11
-
12
- // Prepare char buffer for decoding.
13
- if (!codecOptions.chars || (codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256))
14
- throw new Error("Encoding '"+codecOptions.type+"' has incorrect 'chars' (must be of len 128 or 256)");
15
-
16
- if (codecOptions.chars.length === 128) {
17
- var asciiString = "";
18
- for (var i = 0; i < 128; i++)
19
- asciiString += String.fromCharCode(i);
20
- codecOptions.chars = asciiString + codecOptions.chars;
21
- }
22
-
23
- this.decodeBuf = Buffer.from(codecOptions.chars, 'ucs2');
24
-
25
- // Encoding buffer.
26
- var encodeBuf = Buffer.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
27
-
28
- for (var i = 0; i < codecOptions.chars.length; i++)
29
- encodeBuf[codecOptions.chars.charCodeAt(i)] = i;
30
-
31
- this.encodeBuf = encodeBuf;
32
- }
33
-
34
- SBCSCodec.prototype.encoder = SBCSEncoder;
35
- SBCSCodec.prototype.decoder = SBCSDecoder;
36
-
37
-
38
- function SBCSEncoder(options, codec) {
39
- this.encodeBuf = codec.encodeBuf;
40
- }
41
-
42
- SBCSEncoder.prototype.write = function(str) {
43
- var buf = Buffer.alloc(str.length);
44
- for (var i = 0; i < str.length; i++)
45
- buf[i] = this.encodeBuf[str.charCodeAt(i)];
46
-
47
- return buf;
48
- }
49
-
50
- SBCSEncoder.prototype.end = function() {
51
- }
52
-
53
-
54
- function SBCSDecoder(options, codec) {
55
- this.decodeBuf = codec.decodeBuf;
56
- }
57
-
58
- SBCSDecoder.prototype.write = function(buf) {
59
- // Strings are immutable in JS -> we use ucs2 buffer to speed up computations.
60
- var decodeBuf = this.decodeBuf;
61
- var newBuf = Buffer.alloc(buf.length*2);
62
- var idx1 = 0, idx2 = 0;
63
- for (var i = 0; i < buf.length; i++) {
64
- idx1 = buf[i]*2; idx2 = i*2;
65
- newBuf[idx2] = decodeBuf[idx1];
66
- newBuf[idx2+1] = decodeBuf[idx1+1];
67
- }
68
- return newBuf.toString('ucs2');
69
- }
70
-
71
- SBCSDecoder.prototype.end = function() {
72
- }