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

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 (383) hide show
  1. package/.babelrc +1 -1
  2. package/.mocharc.json +5 -0
  3. package/README.md +1 -0
  4. package/dist/index.d.ts +5 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +18 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/lib/crawler/crawlers.d.ts +5 -0
  9. package/dist/lib/crawler/crawlers.d.ts.map +1 -0
  10. package/dist/lib/crawler/crawlers.js +1400 -0
  11. package/dist/lib/crawler/crawlers.js.map +1 -0
  12. package/dist/lib/crawler/exclusions.d.ts +5 -0
  13. package/dist/lib/crawler/exclusions.d.ts.map +1 -0
  14. package/dist/lib/crawler/exclusions.js +59 -0
  15. package/dist/lib/crawler/exclusions.js.map +1 -0
  16. package/dist/lib/crawler/headers.d.ts +5 -0
  17. package/dist/lib/crawler/headers.d.ts.map +1 -0
  18. package/dist/lib/crawler/headers.js +21 -0
  19. package/dist/lib/crawler/headers.js.map +1 -0
  20. package/dist/lib/crawler/provider.d.ts +4 -0
  21. package/dist/lib/crawler/provider.d.ts.map +1 -0
  22. package/dist/lib/crawler/provider.js +3 -0
  23. package/dist/lib/crawler/provider.js.map +1 -0
  24. package/dist/lib/crawler.d.ts +21 -0
  25. package/dist/lib/crawler.d.ts.map +1 -0
  26. package/dist/lib/crawler.js +98 -0
  27. package/dist/lib/crawler.js.map +1 -0
  28. package/dist/types.d.ts +9 -0
  29. package/dist/types.d.ts.map +1 -0
  30. package/dist/types.js +3 -0
  31. package/dist/types.js.map +1 -0
  32. package/eslint.config.mjs +62 -0
  33. package/example/node/package.json +1 -1
  34. package/example/node/yarn.lock +222 -99
  35. package/package.json +30 -24
  36. package/src/index.ts +18 -0
  37. package/src/lib/crawler/{crawlers.js → crawlers.ts} +1397 -1403
  38. package/src/lib/crawler/{exclusions.js → exclusions.ts} +56 -62
  39. package/src/lib/crawler/{headers.js → headers.ts} +4 -10
  40. package/src/lib/crawler/provider.ts +3 -0
  41. package/src/lib/crawler.ts +128 -0
  42. package/src/types.ts +15 -0
  43. package/test/lib/crawler.spec.ts +116 -0
  44. package/tsconfig.json +28 -0
  45. package/.eslintignore +0 -6
  46. package/.eslintrc.json +0 -30
  47. package/dist/main.bundle.js +0 -1
  48. package/example/node/dist/crawler.min.js +0 -1
  49. package/example/node/node_modules/.bin/mime +0 -15
  50. package/example/node/node_modules/.bin/mime.cmd +0 -7
  51. package/example/node/node_modules/.yarn-integrity +0 -67
  52. package/example/node/node_modules/accepts/HISTORY.md +0 -236
  53. package/example/node/node_modules/accepts/LICENSE +0 -23
  54. package/example/node/node_modules/accepts/README.md +0 -142
  55. package/example/node/node_modules/accepts/index.js +0 -238
  56. package/example/node/node_modules/accepts/package.json +0 -47
  57. package/example/node/node_modules/array-flatten/LICENSE +0 -21
  58. package/example/node/node_modules/array-flatten/README.md +0 -43
  59. package/example/node/node_modules/array-flatten/array-flatten.js +0 -64
  60. package/example/node/node_modules/array-flatten/package.json +0 -39
  61. package/example/node/node_modules/body-parser/HISTORY.md +0 -624
  62. package/example/node/node_modules/body-parser/LICENSE +0 -23
  63. package/example/node/node_modules/body-parser/README.md +0 -456
  64. package/example/node/node_modules/body-parser/index.js +0 -157
  65. package/example/node/node_modules/body-parser/lib/read.js +0 -181
  66. package/example/node/node_modules/body-parser/lib/types/json.js +0 -230
  67. package/example/node/node_modules/body-parser/lib/types/raw.js +0 -101
  68. package/example/node/node_modules/body-parser/lib/types/text.js +0 -121
  69. package/example/node/node_modules/body-parser/lib/types/urlencoded.js +0 -284
  70. package/example/node/node_modules/body-parser/package.json +0 -52
  71. package/example/node/node_modules/bytes/History.md +0 -92
  72. package/example/node/node_modules/bytes/LICENSE +0 -23
  73. package/example/node/node_modules/bytes/Readme.md +0 -152
  74. package/example/node/node_modules/bytes/index.js +0 -166
  75. package/example/node/node_modules/bytes/package.json +0 -42
  76. package/example/node/node_modules/content-disposition/HISTORY.md +0 -60
  77. package/example/node/node_modules/content-disposition/LICENSE +0 -22
  78. package/example/node/node_modules/content-disposition/README.md +0 -142
  79. package/example/node/node_modules/content-disposition/index.js +0 -458
  80. package/example/node/node_modules/content-disposition/package.json +0 -44
  81. package/example/node/node_modules/content-type/HISTORY.md +0 -24
  82. package/example/node/node_modules/content-type/LICENSE +0 -22
  83. package/example/node/node_modules/content-type/README.md +0 -92
  84. package/example/node/node_modules/content-type/index.js +0 -222
  85. package/example/node/node_modules/content-type/package.json +0 -40
  86. package/example/node/node_modules/cookie/HISTORY.md +0 -128
  87. package/example/node/node_modules/cookie/LICENSE +0 -24
  88. package/example/node/node_modules/cookie/README.md +0 -257
  89. package/example/node/node_modules/cookie/index.js +0 -202
  90. package/example/node/node_modules/cookie/package.json +0 -40
  91. package/example/node/node_modules/cookie-signature/History.md +0 -38
  92. package/example/node/node_modules/cookie-signature/Readme.md +0 -42
  93. package/example/node/node_modules/cookie-signature/index.js +0 -51
  94. package/example/node/node_modules/cookie-signature/package.json +0 -18
  95. package/example/node/node_modules/debug/.coveralls.yml +0 -1
  96. package/example/node/node_modules/debug/.eslintrc +0 -11
  97. package/example/node/node_modules/debug/.travis.yml +0 -14
  98. package/example/node/node_modules/debug/CHANGELOG.md +0 -362
  99. package/example/node/node_modules/debug/LICENSE +0 -19
  100. package/example/node/node_modules/debug/Makefile +0 -50
  101. package/example/node/node_modules/debug/README.md +0 -312
  102. package/example/node/node_modules/debug/component.json +0 -19
  103. package/example/node/node_modules/debug/karma.conf.js +0 -70
  104. package/example/node/node_modules/debug/node.js +0 -1
  105. package/example/node/node_modules/debug/package.json +0 -49
  106. package/example/node/node_modules/debug/src/browser.js +0 -185
  107. package/example/node/node_modules/debug/src/debug.js +0 -202
  108. package/example/node/node_modules/debug/src/index.js +0 -10
  109. package/example/node/node_modules/debug/src/inspector-log.js +0 -15
  110. package/example/node/node_modules/debug/src/node.js +0 -248
  111. package/example/node/node_modules/depd/History.md +0 -96
  112. package/example/node/node_modules/depd/LICENSE +0 -22
  113. package/example/node/node_modules/depd/Readme.md +0 -280
  114. package/example/node/node_modules/depd/index.js +0 -522
  115. package/example/node/node_modules/depd/lib/browser/index.js +0 -77
  116. package/example/node/node_modules/depd/lib/compat/callsite-tostring.js +0 -103
  117. package/example/node/node_modules/depd/lib/compat/event-listener-count.js +0 -22
  118. package/example/node/node_modules/depd/lib/compat/index.js +0 -79
  119. package/example/node/node_modules/depd/package.json +0 -41
  120. package/example/node/node_modules/destroy/LICENSE +0 -22
  121. package/example/node/node_modules/destroy/README.md +0 -60
  122. package/example/node/node_modules/destroy/index.js +0 -75
  123. package/example/node/node_modules/destroy/package.json +0 -37
  124. package/example/node/node_modules/ee-first/LICENSE +0 -22
  125. package/example/node/node_modules/ee-first/README.md +0 -80
  126. package/example/node/node_modules/ee-first/index.js +0 -95
  127. package/example/node/node_modules/ee-first/package.json +0 -29
  128. package/example/node/node_modules/encodeurl/HISTORY.md +0 -14
  129. package/example/node/node_modules/encodeurl/LICENSE +0 -22
  130. package/example/node/node_modules/encodeurl/README.md +0 -128
  131. package/example/node/node_modules/encodeurl/index.js +0 -60
  132. package/example/node/node_modules/encodeurl/package.json +0 -40
  133. package/example/node/node_modules/escape-html/LICENSE +0 -24
  134. package/example/node/node_modules/escape-html/Readme.md +0 -43
  135. package/example/node/node_modules/escape-html/index.js +0 -78
  136. package/example/node/node_modules/escape-html/package.json +0 -24
  137. package/example/node/node_modules/etag/HISTORY.md +0 -83
  138. package/example/node/node_modules/etag/LICENSE +0 -22
  139. package/example/node/node_modules/etag/README.md +0 -159
  140. package/example/node/node_modules/etag/index.js +0 -131
  141. package/example/node/node_modules/etag/package.json +0 -47
  142. package/example/node/node_modules/express/History.md +0 -3510
  143. package/example/node/node_modules/express/LICENSE +0 -24
  144. package/example/node/node_modules/express/Readme.md +0 -158
  145. package/example/node/node_modules/express/index.js +0 -11
  146. package/example/node/node_modules/express/lib/application.js +0 -644
  147. package/example/node/node_modules/express/lib/express.js +0 -116
  148. package/example/node/node_modules/express/lib/middleware/init.js +0 -43
  149. package/example/node/node_modules/express/lib/middleware/query.js +0 -47
  150. package/example/node/node_modules/express/lib/request.js +0 -525
  151. package/example/node/node_modules/express/lib/response.js +0 -1147
  152. package/example/node/node_modules/express/lib/router/index.js +0 -668
  153. package/example/node/node_modules/express/lib/router/layer.js +0 -181
  154. package/example/node/node_modules/express/lib/router/route.js +0 -216
  155. package/example/node/node_modules/express/lib/utils.js +0 -302
  156. package/example/node/node_modules/express/lib/view.js +0 -182
  157. package/example/node/node_modules/express/package.json +0 -99
  158. package/example/node/node_modules/finalhandler/HISTORY.md +0 -187
  159. package/example/node/node_modules/finalhandler/LICENSE +0 -22
  160. package/example/node/node_modules/finalhandler/README.md +0 -148
  161. package/example/node/node_modules/finalhandler/index.js +0 -331
  162. package/example/node/node_modules/finalhandler/package.json +0 -45
  163. package/example/node/node_modules/forwarded/HISTORY.md +0 -21
  164. package/example/node/node_modules/forwarded/LICENSE +0 -22
  165. package/example/node/node_modules/forwarded/README.md +0 -57
  166. package/example/node/node_modules/forwarded/index.js +0 -90
  167. package/example/node/node_modules/forwarded/package.json +0 -45
  168. package/example/node/node_modules/fresh/HISTORY.md +0 -70
  169. package/example/node/node_modules/fresh/LICENSE +0 -23
  170. package/example/node/node_modules/fresh/README.md +0 -119
  171. package/example/node/node_modules/fresh/index.js +0 -137
  172. package/example/node/node_modules/fresh/package.json +0 -46
  173. package/example/node/node_modules/http-errors/HISTORY.md +0 -165
  174. package/example/node/node_modules/http-errors/LICENSE +0 -23
  175. package/example/node/node_modules/http-errors/README.md +0 -169
  176. package/example/node/node_modules/http-errors/index.js +0 -299
  177. package/example/node/node_modules/http-errors/package.json +0 -49
  178. package/example/node/node_modules/iconv-lite/Changelog.md +0 -162
  179. package/example/node/node_modules/iconv-lite/LICENSE +0 -21
  180. package/example/node/node_modules/iconv-lite/README.md +0 -156
  181. package/example/node/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -555
  182. package/example/node/node_modules/iconv-lite/encodings/dbcs-data.js +0 -176
  183. package/example/node/node_modules/iconv-lite/encodings/index.js +0 -22
  184. package/example/node/node_modules/iconv-lite/encodings/internal.js +0 -188
  185. package/example/node/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -72
  186. package/example/node/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
  187. package/example/node/node_modules/iconv-lite/encodings/sbcs-data.js +0 -174
  188. package/example/node/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
  189. package/example/node/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
  190. package/example/node/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
  191. package/example/node/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
  192. package/example/node/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
  193. package/example/node/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
  194. package/example/node/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -55
  195. package/example/node/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
  196. package/example/node/node_modules/iconv-lite/encodings/utf16.js +0 -177
  197. package/example/node/node_modules/iconv-lite/encodings/utf7.js +0 -290
  198. package/example/node/node_modules/iconv-lite/lib/bom-handling.js +0 -52
  199. package/example/node/node_modules/iconv-lite/lib/extend-node.js +0 -217
  200. package/example/node/node_modules/iconv-lite/lib/index.d.ts +0 -24
  201. package/example/node/node_modules/iconv-lite/lib/index.js +0 -153
  202. package/example/node/node_modules/iconv-lite/lib/streams.js +0 -121
  203. package/example/node/node_modules/iconv-lite/package.json +0 -46
  204. package/example/node/node_modules/inherits/LICENSE +0 -16
  205. package/example/node/node_modules/inherits/README.md +0 -42
  206. package/example/node/node_modules/inherits/inherits.js +0 -9
  207. package/example/node/node_modules/inherits/inherits_browser.js +0 -27
  208. package/example/node/node_modules/inherits/package.json +0 -29
  209. package/example/node/node_modules/ipaddr.js/LICENSE +0 -19
  210. package/example/node/node_modules/ipaddr.js/README.md +0 -233
  211. package/example/node/node_modules/ipaddr.js/ipaddr.min.js +0 -1
  212. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js +0 -673
  213. package/example/node/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +0 -68
  214. package/example/node/node_modules/ipaddr.js/package.json +0 -35
  215. package/example/node/node_modules/media-typer/HISTORY.md +0 -22
  216. package/example/node/node_modules/media-typer/LICENSE +0 -22
  217. package/example/node/node_modules/media-typer/README.md +0 -81
  218. package/example/node/node_modules/media-typer/index.js +0 -270
  219. package/example/node/node_modules/media-typer/package.json +0 -26
  220. package/example/node/node_modules/merge-descriptors/HISTORY.md +0 -21
  221. package/example/node/node_modules/merge-descriptors/LICENSE +0 -23
  222. package/example/node/node_modules/merge-descriptors/README.md +0 -48
  223. package/example/node/node_modules/merge-descriptors/index.js +0 -60
  224. package/example/node/node_modules/merge-descriptors/package.json +0 -32
  225. package/example/node/node_modules/methods/HISTORY.md +0 -29
  226. package/example/node/node_modules/methods/LICENSE +0 -24
  227. package/example/node/node_modules/methods/README.md +0 -51
  228. package/example/node/node_modules/methods/index.js +0 -69
  229. package/example/node/node_modules/methods/package.json +0 -36
  230. package/example/node/node_modules/mime/CHANGELOG.md +0 -164
  231. package/example/node/node_modules/mime/LICENSE +0 -21
  232. package/example/node/node_modules/mime/README.md +0 -90
  233. package/example/node/node_modules/mime/cli.js +0 -8
  234. package/example/node/node_modules/mime/mime.js +0 -108
  235. package/example/node/node_modules/mime/package.json +0 -44
  236. package/example/node/node_modules/mime/src/build.js +0 -53
  237. package/example/node/node_modules/mime/src/test.js +0 -60
  238. package/example/node/node_modules/mime/types.json +0 -1
  239. package/example/node/node_modules/mime-db/HISTORY.md +0 -499
  240. package/example/node/node_modules/mime-db/LICENSE +0 -22
  241. package/example/node/node_modules/mime-db/README.md +0 -100
  242. package/example/node/node_modules/mime-db/db.json +0 -8471
  243. package/example/node/node_modules/mime-db/index.js +0 -11
  244. package/example/node/node_modules/mime-db/package.json +0 -59
  245. package/example/node/node_modules/mime-types/HISTORY.md +0 -388
  246. package/example/node/node_modules/mime-types/LICENSE +0 -23
  247. package/example/node/node_modules/mime-types/README.md +0 -113
  248. package/example/node/node_modules/mime-types/index.js +0 -188
  249. package/example/node/node_modules/mime-types/package.json +0 -44
  250. package/example/node/node_modules/ms/index.js +0 -152
  251. package/example/node/node_modules/ms/license.md +0 -21
  252. package/example/node/node_modules/ms/package.json +0 -37
  253. package/example/node/node_modules/ms/readme.md +0 -51
  254. package/example/node/node_modules/negotiator/HISTORY.md +0 -103
  255. package/example/node/node_modules/negotiator/LICENSE +0 -24
  256. package/example/node/node_modules/negotiator/README.md +0 -203
  257. package/example/node/node_modules/negotiator/index.js +0 -124
  258. package/example/node/node_modules/negotiator/lib/charset.js +0 -169
  259. package/example/node/node_modules/negotiator/lib/encoding.js +0 -184
  260. package/example/node/node_modules/negotiator/lib/language.js +0 -179
  261. package/example/node/node_modules/negotiator/lib/mediaType.js +0 -294
  262. package/example/node/node_modules/negotiator/package.json +0 -42
  263. package/example/node/node_modules/on-finished/HISTORY.md +0 -88
  264. package/example/node/node_modules/on-finished/LICENSE +0 -23
  265. package/example/node/node_modules/on-finished/README.md +0 -154
  266. package/example/node/node_modules/on-finished/index.js +0 -196
  267. package/example/node/node_modules/on-finished/package.json +0 -31
  268. package/example/node/node_modules/parseurl/HISTORY.md +0 -58
  269. package/example/node/node_modules/parseurl/LICENSE +0 -24
  270. package/example/node/node_modules/parseurl/README.md +0 -133
  271. package/example/node/node_modules/parseurl/index.js +0 -158
  272. package/example/node/node_modules/parseurl/package.json +0 -40
  273. package/example/node/node_modules/path-to-regexp/History.md +0 -36
  274. package/example/node/node_modules/path-to-regexp/LICENSE +0 -21
  275. package/example/node/node_modules/path-to-regexp/Readme.md +0 -35
  276. package/example/node/node_modules/path-to-regexp/index.js +0 -129
  277. package/example/node/node_modules/path-to-regexp/package.json +0 -30
  278. package/example/node/node_modules/proxy-addr/HISTORY.md +0 -161
  279. package/example/node/node_modules/proxy-addr/LICENSE +0 -22
  280. package/example/node/node_modules/proxy-addr/README.md +0 -139
  281. package/example/node/node_modules/proxy-addr/index.js +0 -327
  282. package/example/node/node_modules/proxy-addr/package.json +0 -47
  283. package/example/node/node_modules/qs/.editorconfig +0 -39
  284. package/example/node/node_modules/qs/.eslintignore +0 -2
  285. package/example/node/node_modules/qs/.eslintrc +0 -35
  286. package/example/node/node_modules/qs/.github/FUNDING.yml +0 -12
  287. package/example/node/node_modules/qs/.nycrc +0 -13
  288. package/example/node/node_modules/qs/CHANGELOG.md +0 -359
  289. package/example/node/node_modules/qs/LICENSE.md +0 -29
  290. package/example/node/node_modules/qs/README.md +0 -604
  291. package/example/node/node_modules/qs/dist/qs.js +0 -832
  292. package/example/node/node_modules/qs/lib/formats.js +0 -23
  293. package/example/node/node_modules/qs/lib/index.js +0 -11
  294. package/example/node/node_modules/qs/lib/parse.js +0 -257
  295. package/example/node/node_modules/qs/lib/stringify.js +0 -278
  296. package/example/node/node_modules/qs/lib/utils.js +0 -251
  297. package/example/node/node_modules/qs/package.json +0 -69
  298. package/example/node/node_modules/qs/test/parse.js +0 -772
  299. package/example/node/node_modules/qs/test/stringify.js +0 -793
  300. package/example/node/node_modules/qs/test/utils.js +0 -136
  301. package/example/node/node_modules/range-parser/HISTORY.md +0 -56
  302. package/example/node/node_modules/range-parser/LICENSE +0 -23
  303. package/example/node/node_modules/range-parser/README.md +0 -84
  304. package/example/node/node_modules/range-parser/index.js +0 -162
  305. package/example/node/node_modules/range-parser/package.json +0 -44
  306. package/example/node/node_modules/raw-body/HISTORY.md +0 -284
  307. package/example/node/node_modules/raw-body/LICENSE +0 -22
  308. package/example/node/node_modules/raw-body/README.md +0 -217
  309. package/example/node/node_modules/raw-body/index.d.ts +0 -87
  310. package/example/node/node_modules/raw-body/index.js +0 -286
  311. package/example/node/node_modules/raw-body/package.json +0 -48
  312. package/example/node/node_modules/safe-buffer/LICENSE +0 -21
  313. package/example/node/node_modules/safe-buffer/README.md +0 -584
  314. package/example/node/node_modules/safe-buffer/index.d.ts +0 -187
  315. package/example/node/node_modules/safe-buffer/index.js +0 -65
  316. package/example/node/node_modules/safe-buffer/package.json +0 -51
  317. package/example/node/node_modules/safer-buffer/LICENSE +0 -21
  318. package/example/node/node_modules/safer-buffer/Porting-Buffer.md +0 -268
  319. package/example/node/node_modules/safer-buffer/Readme.md +0 -156
  320. package/example/node/node_modules/safer-buffer/dangerous.js +0 -58
  321. package/example/node/node_modules/safer-buffer/package.json +0 -34
  322. package/example/node/node_modules/safer-buffer/safer.js +0 -77
  323. package/example/node/node_modules/safer-buffer/tests.js +0 -406
  324. package/example/node/node_modules/send/HISTORY.md +0 -506
  325. package/example/node/node_modules/send/LICENSE +0 -23
  326. package/example/node/node_modules/send/README.md +0 -327
  327. package/example/node/node_modules/send/index.js +0 -1133
  328. package/example/node/node_modules/send/node_modules/.bin/mime +0 -15
  329. package/example/node/node_modules/send/node_modules/.bin/mime.cmd +0 -7
  330. package/example/node/node_modules/send/node_modules/ms/index.js +0 -162
  331. package/example/node/node_modules/send/node_modules/ms/license.md +0 -21
  332. package/example/node/node_modules/send/node_modules/ms/package.json +0 -38
  333. package/example/node/node_modules/send/node_modules/ms/readme.md +0 -59
  334. package/example/node/node_modules/send/package.json +0 -61
  335. package/example/node/node_modules/serve-static/HISTORY.md +0 -459
  336. package/example/node/node_modules/serve-static/LICENSE +0 -25
  337. package/example/node/node_modules/serve-static/README.md +0 -257
  338. package/example/node/node_modules/serve-static/index.js +0 -210
  339. package/example/node/node_modules/serve-static/package.json +0 -42
  340. package/example/node/node_modules/setprototypeof/LICENSE +0 -13
  341. package/example/node/node_modules/setprototypeof/README.md +0 -31
  342. package/example/node/node_modules/setprototypeof/index.d.ts +0 -2
  343. package/example/node/node_modules/setprototypeof/index.js +0 -17
  344. package/example/node/node_modules/setprototypeof/package.json +0 -38
  345. package/example/node/node_modules/setprototypeof/test/index.js +0 -24
  346. package/example/node/node_modules/statuses/HISTORY.md +0 -65
  347. package/example/node/node_modules/statuses/LICENSE +0 -23
  348. package/example/node/node_modules/statuses/README.md +0 -127
  349. package/example/node/node_modules/statuses/codes.json +0 -66
  350. package/example/node/node_modules/statuses/index.js +0 -113
  351. package/example/node/node_modules/statuses/package.json +0 -48
  352. package/example/node/node_modules/toidentifier/HISTORY.md +0 -9
  353. package/example/node/node_modules/toidentifier/LICENSE +0 -21
  354. package/example/node/node_modules/toidentifier/README.md +0 -61
  355. package/example/node/node_modules/toidentifier/index.js +0 -32
  356. package/example/node/node_modules/toidentifier/package.json +0 -38
  357. package/example/node/node_modules/type-is/HISTORY.md +0 -259
  358. package/example/node/node_modules/type-is/LICENSE +0 -23
  359. package/example/node/node_modules/type-is/README.md +0 -170
  360. package/example/node/node_modules/type-is/index.js +0 -266
  361. package/example/node/node_modules/type-is/package.json +0 -45
  362. package/example/node/node_modules/unpipe/HISTORY.md +0 -4
  363. package/example/node/node_modules/unpipe/LICENSE +0 -22
  364. package/example/node/node_modules/unpipe/README.md +0 -43
  365. package/example/node/node_modules/unpipe/index.js +0 -69
  366. package/example/node/node_modules/unpipe/package.json +0 -27
  367. package/example/node/node_modules/utils-merge/LICENSE +0 -20
  368. package/example/node/node_modules/utils-merge/README.md +0 -34
  369. package/example/node/node_modules/utils-merge/index.js +0 -23
  370. package/example/node/node_modules/utils-merge/package.json +0 -40
  371. package/example/node/node_modules/vary/HISTORY.md +0 -39
  372. package/example/node/node_modules/vary/LICENSE +0 -22
  373. package/example/node/node_modules/vary/README.md +0 -101
  374. package/example/node/node_modules/vary/index.js +0 -149
  375. package/example/node/node_modules/vary/package.json +0 -43
  376. package/example/node/server.js +0 -38
  377. package/src/index.js +0 -16
  378. package/src/lib/crawler/provider.js +0 -11
  379. package/src/lib/crawler.js +0 -130
  380. package/test/lib/crawler.test.js +0 -94
  381. package/webpack.common.js +0 -20
  382. package/webpack.dev.js +0 -7
  383. package/webpack.prod.js +0 -14
@@ -1,32 +0,0 @@
1
- {
2
- "name": "merge-descriptors",
3
- "description": "Merge objects using descriptors",
4
- "version": "1.0.1",
5
- "author": {
6
- "name": "Jonathan Ong",
7
- "email": "me@jongleberry.com",
8
- "url": "http://jongleberry.com",
9
- "twitter": "https://twitter.com/jongleberry"
10
- },
11
- "contributors": [
12
- "Douglas Christopher Wilson <doug@somethingdoug.com>",
13
- "Mike Grabowski <grabbou@gmail.com>"
14
- ],
15
- "license": "MIT",
16
- "repository": "component/merge-descriptors",
17
- "devDependencies": {
18
- "istanbul": "0.4.1",
19
- "mocha": "1.21.5"
20
- },
21
- "files": [
22
- "HISTORY.md",
23
- "LICENSE",
24
- "README.md",
25
- "index.js"
26
- ],
27
- "scripts": {
28
- "test": "mocha --reporter spec --bail --check-leaks test/",
29
- "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/",
30
- "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/"
31
- }
32
- }
@@ -1,29 +0,0 @@
1
- 1.1.2 / 2016-01-17
2
- ==================
3
-
4
- * perf: enable strict mode
5
-
6
- 1.1.1 / 2014-12-30
7
- ==================
8
-
9
- * Improve `browserify` support
10
-
11
- 1.1.0 / 2014-07-05
12
- ==================
13
-
14
- * Add `CONNECT` method
15
-
16
- 1.0.1 / 2014-06-02
17
- ==================
18
-
19
- * Fix module to work with harmony transform
20
-
21
- 1.0.0 / 2014-05-08
22
- ==================
23
-
24
- * Add `PURGE` method
25
-
26
- 0.1.0 / 2013-10-28
27
- ==================
28
-
29
- * Add `http.METHODS` support
@@ -1,24 +0,0 @@
1
- (The MIT License)
2
-
3
- Copyright (c) 2013-2014 TJ Holowaychuk <tj@vision-media.ca>
4
- Copyright (c) 2015-2016 Douglas Christopher Wilson <doug@somethingdoug.com>
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining
7
- a copy of this software and associated documentation files (the
8
- 'Software'), to deal in the Software without restriction, including
9
- without limitation the rights to use, copy, modify, merge, publish,
10
- distribute, sublicense, and/or sell copies of the Software, and to
11
- permit persons to whom the Software is furnished to do so, subject to
12
- the following conditions:
13
-
14
- The above copyright notice and this permission notice shall be
15
- included in all copies or substantial portions of the Software.
16
-
17
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
18
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
21
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
22
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
23
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24
-
@@ -1,51 +0,0 @@
1
- # Methods
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
- HTTP verbs that Node.js core's HTTP parser supports.
10
-
11
- This module provides an export that is just like `http.METHODS` from Node.js core,
12
- with the following differences:
13
-
14
- * All method names are lower-cased.
15
- * Contains a fallback list of methods for Node.js versions that do not have a
16
- `http.METHODS` export (0.10 and lower).
17
- * Provides the fallback list when using tools like `browserify` without pulling
18
- in the `http` shim module.
19
-
20
- ## Install
21
-
22
- ```bash
23
- $ npm install methods
24
- ```
25
-
26
- ## API
27
-
28
- ```js
29
- var methods = require('methods')
30
- ```
31
-
32
- ### methods
33
-
34
- This is an array of lower-cased method names that Node.js supports. If Node.js
35
- provides the `http.METHODS` export, then this is the same array lower-cased,
36
- otherwise it is a snapshot of the verbs from Node.js 0.10.
37
-
38
- ## License
39
-
40
- [MIT](LICENSE)
41
-
42
- [npm-image]: https://img.shields.io/npm/v/methods.svg?style=flat
43
- [npm-url]: https://npmjs.org/package/methods
44
- [node-version-image]: https://img.shields.io/node/v/methods.svg?style=flat
45
- [node-version-url]: https://nodejs.org/en/download/
46
- [travis-image]: https://img.shields.io/travis/jshttp/methods.svg?style=flat
47
- [travis-url]: https://travis-ci.org/jshttp/methods
48
- [coveralls-image]: https://img.shields.io/coveralls/jshttp/methods.svg?style=flat
49
- [coveralls-url]: https://coveralls.io/r/jshttp/methods?branch=master
50
- [downloads-image]: https://img.shields.io/npm/dm/methods.svg?style=flat
51
- [downloads-url]: https://npmjs.org/package/methods
@@ -1,69 +0,0 @@
1
- /*!
2
- * methods
3
- * Copyright(c) 2013-2014 TJ Holowaychuk
4
- * Copyright(c) 2015-2016 Douglas Christopher Wilson
5
- * MIT Licensed
6
- */
7
-
8
- 'use strict';
9
-
10
- /**
11
- * Module dependencies.
12
- * @private
13
- */
14
-
15
- var http = require('http');
16
-
17
- /**
18
- * Module exports.
19
- * @public
20
- */
21
-
22
- module.exports = getCurrentNodeMethods() || getBasicNodeMethods();
23
-
24
- /**
25
- * Get the current Node.js methods.
26
- * @private
27
- */
28
-
29
- function getCurrentNodeMethods() {
30
- return http.METHODS && http.METHODS.map(function lowerCaseMethod(method) {
31
- return method.toLowerCase();
32
- });
33
- }
34
-
35
- /**
36
- * Get the "basic" Node.js methods, a snapshot from Node.js 0.10.
37
- * @private
38
- */
39
-
40
- function getBasicNodeMethods() {
41
- return [
42
- 'get',
43
- 'post',
44
- 'put',
45
- 'head',
46
- 'delete',
47
- 'options',
48
- 'trace',
49
- 'copy',
50
- 'lock',
51
- 'mkcol',
52
- 'move',
53
- 'purge',
54
- 'propfind',
55
- 'proppatch',
56
- 'unlock',
57
- 'report',
58
- 'mkactivity',
59
- 'checkout',
60
- 'merge',
61
- 'm-search',
62
- 'notify',
63
- 'subscribe',
64
- 'unsubscribe',
65
- 'patch',
66
- 'search',
67
- 'connect'
68
- ];
69
- }
@@ -1,36 +0,0 @@
1
- {
2
- "name": "methods",
3
- "description": "HTTP methods that node supports",
4
- "version": "1.1.2",
5
- "contributors": [
6
- "Douglas Christopher Wilson <doug@somethingdoug.com>",
7
- "Jonathan Ong <me@jongleberry.com> (http://jongleberry.com)",
8
- "TJ Holowaychuk <tj@vision-media.ca> (http://tjholowaychuk.com)"
9
- ],
10
- "license": "MIT",
11
- "repository": "jshttp/methods",
12
- "devDependencies": {
13
- "istanbul": "0.4.1",
14
- "mocha": "1.21.5"
15
- },
16
- "files": [
17
- "index.js",
18
- "HISTORY.md",
19
- "LICENSE"
20
- ],
21
- "engines": {
22
- "node": ">= 0.6"
23
- },
24
- "scripts": {
25
- "test": "mocha --reporter spec --bail --check-leaks test/",
26
- "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
27
- "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/"
28
- },
29
- "browser": {
30
- "http": false
31
- },
32
- "keywords": [
33
- "http",
34
- "methods"
35
- ]
36
- }
@@ -1,164 +0,0 @@
1
- # Changelog
2
-
3
- ## v1.6.0 (24/11/2017)
4
- *No changelog for this release.*
5
-
6
- ---
7
-
8
- ## v2.0.4 (24/11/2017)
9
- - [**closed**] Switch to mime-score module for resolving extension contention issues. [#182](https://github.com/broofa/node-mime/issues/182)
10
- - [**closed**] Update mime-db to 1.31.0 in v1.x branch [#181](https://github.com/broofa/node-mime/issues/181)
11
-
12
- ---
13
-
14
- ## v1.5.0 (22/11/2017)
15
- - [**closed**] need ES5 version ready in npm package [#179](https://github.com/broofa/node-mime/issues/179)
16
- - [**closed**] mime-db no trace of iWork - pages / numbers / etc. [#178](https://github.com/broofa/node-mime/issues/178)
17
- - [**closed**] How it works in brownser ? [#176](https://github.com/broofa/node-mime/issues/176)
18
- - [**closed**] Missing `./Mime` [#175](https://github.com/broofa/node-mime/issues/175)
19
- - [**closed**] Vulnerable Regular Expression [#167](https://github.com/broofa/node-mime/issues/167)
20
-
21
- ---
22
-
23
- ## v2.0.3 (25/09/2017)
24
- *No changelog for this release.*
25
-
26
- ---
27
-
28
- ## v1.4.1 (25/09/2017)
29
- - [**closed**] Issue when bundling with webpack [#172](https://github.com/broofa/node-mime/issues/172)
30
-
31
- ---
32
-
33
- ## v2.0.2 (15/09/2017)
34
- - [**V2**] fs.readFileSync is not a function [#165](https://github.com/broofa/node-mime/issues/165)
35
- - [**closed**] The extension for video/quicktime should map to .mov, not .qt [#164](https://github.com/broofa/node-mime/issues/164)
36
- - [**V2**] [v2 Feedback request] Mime class API [#163](https://github.com/broofa/node-mime/issues/163)
37
- - [**V2**] [v2 Feedback request] Resolving conflicts over extensions [#162](https://github.com/broofa/node-mime/issues/162)
38
- - [**V2**] Allow callers to load module with official, full, or no defined types. [#161](https://github.com/broofa/node-mime/issues/161)
39
- - [**V2**] Use "facets" to resolve extension conflicts [#160](https://github.com/broofa/node-mime/issues/160)
40
- - [**V2**] Remove fs and path dependencies [#152](https://github.com/broofa/node-mime/issues/152)
41
- - [**V2**] Default content-type should not be application/octet-stream [#139](https://github.com/broofa/node-mime/issues/139)
42
- - [**V2**] reset mime-types [#124](https://github.com/broofa/node-mime/issues/124)
43
- - [**V2**] Extensionless paths should return null or false [#113](https://github.com/broofa/node-mime/issues/113)
44
-
45
- ---
46
-
47
- ## v2.0.1 (14/09/2017)
48
- - [**closed**] Changelog for v2.0 does not mention breaking changes [#171](https://github.com/broofa/node-mime/issues/171)
49
- - [**closed**] MIME breaking with 'class' declaration as it is without 'use strict mode' [#170](https://github.com/broofa/node-mime/issues/170)
50
-
51
- ---
52
-
53
- ## v2.0.0 (12/09/2017)
54
- - [**closed**] woff and woff2 [#168](https://github.com/broofa/node-mime/issues/168)
55
-
56
- ---
57
-
58
- ## v1.4.0 (28/08/2017)
59
- - [**closed**] support for ac3 voc files [#159](https://github.com/broofa/node-mime/issues/159)
60
- - [**closed**] Help understanding change from application/xml to text/xml [#158](https://github.com/broofa/node-mime/issues/158)
61
- - [**closed**] no longer able to override mimetype [#157](https://github.com/broofa/node-mime/issues/157)
62
- - [**closed**] application/vnd.adobe.photoshop [#147](https://github.com/broofa/node-mime/issues/147)
63
- - [**closed**] Directories should appear as something other than application/octet-stream [#135](https://github.com/broofa/node-mime/issues/135)
64
- - [**closed**] requested features [#131](https://github.com/broofa/node-mime/issues/131)
65
- - [**closed**] Make types.json loading optional? [#129](https://github.com/broofa/node-mime/issues/129)
66
- - [**closed**] Cannot find module './types.json' [#120](https://github.com/broofa/node-mime/issues/120)
67
- - [**V2**] .wav files show up as "audio/x-wav" instead of "audio/x-wave" [#118](https://github.com/broofa/node-mime/issues/118)
68
- - [**closed**] Don't be a pain in the ass for node community [#108](https://github.com/broofa/node-mime/issues/108)
69
- - [**closed**] don't make default_type global [#78](https://github.com/broofa/node-mime/issues/78)
70
- - [**closed**] mime.extension() fails if the content-type is parameterized [#74](https://github.com/broofa/node-mime/issues/74)
71
-
72
- ---
73
-
74
- ## v1.3.6 (11/05/2017)
75
- - [**closed**] .md should be text/markdown as of March 2016 [#154](https://github.com/broofa/node-mime/issues/154)
76
- - [**closed**] Error while installing mime [#153](https://github.com/broofa/node-mime/issues/153)
77
- - [**closed**] application/manifest+json [#149](https://github.com/broofa/node-mime/issues/149)
78
- - [**closed**] Dynamic adaptive streaming over HTTP (DASH) file extension typo [#141](https://github.com/broofa/node-mime/issues/141)
79
- - [**closed**] charsets image/png undefined [#140](https://github.com/broofa/node-mime/issues/140)
80
- - [**closed**] Mime-db dependency out of date [#130](https://github.com/broofa/node-mime/issues/130)
81
- - [**closed**] how to support plist? [#126](https://github.com/broofa/node-mime/issues/126)
82
- - [**closed**] how does .types file format look like? [#123](https://github.com/broofa/node-mime/issues/123)
83
- - [**closed**] Feature: support for expanding MIME patterns [#121](https://github.com/broofa/node-mime/issues/121)
84
- - [**closed**] DEBUG_MIME doesn't work [#117](https://github.com/broofa/node-mime/issues/117)
85
-
86
- ---
87
-
88
- ## v1.3.4 (06/02/2015)
89
- *No changelog for this release.*
90
-
91
- ---
92
-
93
- ## v1.3.3 (06/02/2015)
94
- *No changelog for this release.*
95
-
96
- ---
97
-
98
- ## v1.3.1 (05/02/2015)
99
- - [**closed**] Consider adding support for Handlebars .hbs file ending [#111](https://github.com/broofa/node-mime/issues/111)
100
- - [**closed**] Consider adding support for hjson. [#110](https://github.com/broofa/node-mime/issues/110)
101
- - [**closed**] Add mime type for Opus audio files [#94](https://github.com/broofa/node-mime/issues/94)
102
- - [**closed**] Consider making the `Requesting New Types` information more visible [#77](https://github.com/broofa/node-mime/issues/77)
103
-
104
- ---
105
-
106
- ## v1.3.0 (05/02/2015)
107
- - [**closed**] Add common name? [#114](https://github.com/broofa/node-mime/issues/114)
108
- - [**closed**] application/x-yaml [#104](https://github.com/broofa/node-mime/issues/104)
109
- - [**closed**] Add mime type for WOFF file format 2.0 [#102](https://github.com/broofa/node-mime/issues/102)
110
- - [**closed**] application/x-msi for .msi [#99](https://github.com/broofa/node-mime/issues/99)
111
- - [**closed**] Add mimetype for gettext translation files [#98](https://github.com/broofa/node-mime/issues/98)
112
- - [**closed**] collaborators [#88](https://github.com/broofa/node-mime/issues/88)
113
- - [**closed**] getting errot in installation of mime module...any1 can help? [#87](https://github.com/broofa/node-mime/issues/87)
114
- - [**closed**] should application/json's charset be utf8? [#86](https://github.com/broofa/node-mime/issues/86)
115
- - [**closed**] Add "license" and "licenses" to package.json [#81](https://github.com/broofa/node-mime/issues/81)
116
- - [**closed**] lookup with extension-less file on Windows returns wrong type [#68](https://github.com/broofa/node-mime/issues/68)
117
-
118
- ---
119
-
120
- ## v1.2.11 (15/08/2013)
121
- - [**closed**] Update mime.types [#65](https://github.com/broofa/node-mime/issues/65)
122
- - [**closed**] Publish a new version [#63](https://github.com/broofa/node-mime/issues/63)
123
- - [**closed**] README should state upfront that "application/octet-stream" is default for unknown extension [#55](https://github.com/broofa/node-mime/issues/55)
124
- - [**closed**] Suggested improvement to the charset API [#52](https://github.com/broofa/node-mime/issues/52)
125
-
126
- ---
127
-
128
- ## v1.2.10 (25/07/2013)
129
- - [**closed**] Mime type for woff files should be application/font-woff and not application/x-font-woff [#62](https://github.com/broofa/node-mime/issues/62)
130
- - [**closed**] node.types in conflict with mime.types [#51](https://github.com/broofa/node-mime/issues/51)
131
-
132
- ---
133
-
134
- ## v1.2.9 (17/01/2013)
135
- - [**closed**] Please update "mime" NPM [#49](https://github.com/broofa/node-mime/issues/49)
136
- - [**closed**] Please add semicolon [#46](https://github.com/broofa/node-mime/issues/46)
137
- - [**closed**] parse full mime types [#43](https://github.com/broofa/node-mime/issues/43)
138
-
139
- ---
140
-
141
- ## v1.2.8 (10/01/2013)
142
- - [**closed**] /js directory mime is application/javascript. Is it correct? [#47](https://github.com/broofa/node-mime/issues/47)
143
- - [**closed**] Add mime types for lua code. [#45](https://github.com/broofa/node-mime/issues/45)
144
-
145
- ---
146
-
147
- ## v1.2.7 (19/10/2012)
148
- - [**closed**] cannot install 1.2.7 via npm [#41](https://github.com/broofa/node-mime/issues/41)
149
- - [**closed**] Transfer ownership to @broofa [#36](https://github.com/broofa/node-mime/issues/36)
150
- - [**closed**] it's wrong to set charset to UTF-8 for text [#30](https://github.com/broofa/node-mime/issues/30)
151
- - [**closed**] Allow multiple instances of MIME types container [#27](https://github.com/broofa/node-mime/issues/27)
152
-
153
- ---
154
-
155
- ## v1.2.5 (16/02/2012)
156
- - [**closed**] When looking up a types, check hasOwnProperty [#23](https://github.com/broofa/node-mime/issues/23)
157
- - [**closed**] Bump version to 1.2.2 [#18](https://github.com/broofa/node-mime/issues/18)
158
- - [**closed**] No license [#16](https://github.com/broofa/node-mime/issues/16)
159
- - [**closed**] Some types missing that are used by html5/css3 [#13](https://github.com/broofa/node-mime/issues/13)
160
- - [**closed**] npm install fails for 1.2.1 [#12](https://github.com/broofa/node-mime/issues/12)
161
- - [**closed**] image/pjpeg + image/x-png [#10](https://github.com/broofa/node-mime/issues/10)
162
- - [**closed**] symlink [#8](https://github.com/broofa/node-mime/issues/8)
163
- - [**closed**] gzip [#2](https://github.com/broofa/node-mime/issues/2)
164
- - [**closed**] ALL CAPS filenames return incorrect mime type [#1](https://github.com/broofa/node-mime/issues/1)
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2010 Benjamin Thomas, Robert Kieffer
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,90 +0,0 @@
1
- # mime
2
-
3
- Comprehensive MIME type mapping API based on mime-db module.
4
-
5
- ## Install
6
-
7
- Install with [npm](http://github.com/isaacs/npm):
8
-
9
- npm install mime
10
-
11
- ## Contributing / Testing
12
-
13
- npm run test
14
-
15
- ## Command Line
16
-
17
- mime [path_string]
18
-
19
- E.g.
20
-
21
- > mime scripts/jquery.js
22
- application/javascript
23
-
24
- ## API - Queries
25
-
26
- ### mime.lookup(path)
27
- Get the mime type associated with a file, if no mime type is found `application/octet-stream` is returned. Performs a case-insensitive lookup using the extension in `path` (the substring after the last '/' or '.'). E.g.
28
-
29
- ```js
30
- var mime = require('mime');
31
-
32
- mime.lookup('/path/to/file.txt'); // => 'text/plain'
33
- mime.lookup('file.txt'); // => 'text/plain'
34
- mime.lookup('.TXT'); // => 'text/plain'
35
- mime.lookup('htm'); // => 'text/html'
36
- ```
37
-
38
- ### mime.default_type
39
- Sets the mime type returned when `mime.lookup` fails to find the extension searched for. (Default is `application/octet-stream`.)
40
-
41
- ### mime.extension(type)
42
- Get the default extension for `type`
43
-
44
- ```js
45
- mime.extension('text/html'); // => 'html'
46
- mime.extension('application/octet-stream'); // => 'bin'
47
- ```
48
-
49
- ### mime.charsets.lookup()
50
-
51
- Map mime-type to charset
52
-
53
- ```js
54
- mime.charsets.lookup('text/plain'); // => 'UTF-8'
55
- ```
56
-
57
- (The logic for charset lookups is pretty rudimentary. Feel free to suggest improvements.)
58
-
59
- ## API - Defining Custom Types
60
-
61
- Custom type mappings can be added on a per-project basis via the following APIs.
62
-
63
- ### mime.define()
64
-
65
- Add custom mime/extension mappings
66
-
67
- ```js
68
- mime.define({
69
- 'text/x-some-format': ['x-sf', 'x-sft', 'x-sfml'],
70
- 'application/x-my-type': ['x-mt', 'x-mtt'],
71
- // etc ...
72
- });
73
-
74
- mime.lookup('x-sft'); // => 'text/x-some-format'
75
- ```
76
-
77
- The first entry in the extensions array is returned by `mime.extension()`. E.g.
78
-
79
- ```js
80
- mime.extension('text/x-some-format'); // => 'x-sf'
81
- ```
82
-
83
- ### mime.load(filepath)
84
-
85
- Load mappings from an Apache ".types" format file
86
-
87
- ```js
88
- mime.load('./my_project.types');
89
- ```
90
- The .types file format is simple - See the `types` dir for examples.
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- var mime = require('./mime.js');
4
- var file = process.argv[2];
5
- var type = mime.lookup(file);
6
-
7
- process.stdout.write(type + '\n');
8
-
@@ -1,108 +0,0 @@
1
- var path = require('path');
2
- var fs = require('fs');
3
-
4
- function Mime() {
5
- // Map of extension -> mime type
6
- this.types = Object.create(null);
7
-
8
- // Map of mime type -> extension
9
- this.extensions = Object.create(null);
10
- }
11
-
12
- /**
13
- * Define mimetype -> extension mappings. Each key is a mime-type that maps
14
- * to an array of extensions associated with the type. The first extension is
15
- * used as the default extension for the type.
16
- *
17
- * e.g. mime.define({'audio/ogg', ['oga', 'ogg', 'spx']});
18
- *
19
- * @param map (Object) type definitions
20
- */
21
- Mime.prototype.define = function (map) {
22
- for (var type in map) {
23
- var exts = map[type];
24
- for (var i = 0; i < exts.length; i++) {
25
- if (process.env.DEBUG_MIME && this.types[exts[i]]) {
26
- console.warn((this._loading || "define()").replace(/.*\//, ''), 'changes "' + exts[i] + '" extension type from ' +
27
- this.types[exts[i]] + ' to ' + type);
28
- }
29
-
30
- this.types[exts[i]] = type;
31
- }
32
-
33
- // Default extension is the first one we encounter
34
- if (!this.extensions[type]) {
35
- this.extensions[type] = exts[0];
36
- }
37
- }
38
- };
39
-
40
- /**
41
- * Load an Apache2-style ".types" file
42
- *
43
- * This may be called multiple times (it's expected). Where files declare
44
- * overlapping types/extensions, the last file wins.
45
- *
46
- * @param file (String) path of file to load.
47
- */
48
- Mime.prototype.load = function(file) {
49
- this._loading = file;
50
- // Read file and split into lines
51
- var map = {},
52
- content = fs.readFileSync(file, 'ascii'),
53
- lines = content.split(/[\r\n]+/);
54
-
55
- lines.forEach(function(line) {
56
- // Clean up whitespace/comments, and split into fields
57
- var fields = line.replace(/\s*#.*|^\s*|\s*$/g, '').split(/\s+/);
58
- map[fields.shift()] = fields;
59
- });
60
-
61
- this.define(map);
62
-
63
- this._loading = null;
64
- };
65
-
66
- /**
67
- * Lookup a mime type based on extension
68
- */
69
- Mime.prototype.lookup = function(path, fallback) {
70
- var ext = path.replace(/^.*[\.\/\\]/, '').toLowerCase();
71
-
72
- return this.types[ext] || fallback || this.default_type;
73
- };
74
-
75
- /**
76
- * Return file extension associated with a mime type
77
- */
78
- Mime.prototype.extension = function(mimeType) {
79
- var type = mimeType.match(/^\s*([^;\s]*)(?:;|\s|$)/)[1].toLowerCase();
80
- return this.extensions[type];
81
- };
82
-
83
- // Default instance
84
- var mime = new Mime();
85
-
86
- // Define built-in types
87
- mime.define(require('./types.json'));
88
-
89
- // Default type
90
- mime.default_type = mime.lookup('bin');
91
-
92
- //
93
- // Additional API specific to the default instance
94
- //
95
-
96
- mime.Mime = Mime;
97
-
98
- /**
99
- * Lookup a charset based on mime type.
100
- */
101
- mime.charsets = {
102
- lookup: function(mimeType, fallback) {
103
- // Assume text types are utf8
104
- return (/^text\/|^application\/(javascript|json)/).test(mimeType) ? 'UTF-8' : fallback;
105
- }
106
- };
107
-
108
- module.exports = mime;