dcs8 1.1.0

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 (597) hide show
  1. package/index.html +314 -0
  2. package/mod/douban-proxy.js +98 -0
  3. package/mod/node_modules/.package-lock.json +845 -0
  4. package/mod/node_modules/accepts/HISTORY.md +250 -0
  5. package/mod/node_modules/accepts/LICENSE +23 -0
  6. package/mod/node_modules/accepts/README.md +140 -0
  7. package/mod/node_modules/accepts/index.js +238 -0
  8. package/mod/node_modules/accepts/package.json +47 -0
  9. package/mod/node_modules/body-parser/LICENSE +23 -0
  10. package/mod/node_modules/body-parser/README.md +494 -0
  11. package/mod/node_modules/body-parser/index.js +71 -0
  12. package/mod/node_modules/body-parser/lib/read.js +247 -0
  13. package/mod/node_modules/body-parser/lib/types/json.js +158 -0
  14. package/mod/node_modules/body-parser/lib/types/raw.js +42 -0
  15. package/mod/node_modules/body-parser/lib/types/text.js +36 -0
  16. package/mod/node_modules/body-parser/lib/types/urlencoded.js +142 -0
  17. package/mod/node_modules/body-parser/lib/utils.js +98 -0
  18. package/mod/node_modules/body-parser/package.json +52 -0
  19. package/mod/node_modules/bytes/History.md +97 -0
  20. package/mod/node_modules/bytes/LICENSE +23 -0
  21. package/mod/node_modules/bytes/Readme.md +152 -0
  22. package/mod/node_modules/bytes/index.js +170 -0
  23. package/mod/node_modules/bytes/package.json +42 -0
  24. package/mod/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  25. package/mod/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  26. package/mod/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  27. package/mod/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  28. package/mod/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  29. package/mod/node_modules/call-bind-apply-helpers/README.md +62 -0
  30. package/mod/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  31. package/mod/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  32. package/mod/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  33. package/mod/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  34. package/mod/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  35. package/mod/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  36. package/mod/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  37. package/mod/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  38. package/mod/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  39. package/mod/node_modules/call-bind-apply-helpers/index.js +15 -0
  40. package/mod/node_modules/call-bind-apply-helpers/package.json +85 -0
  41. package/mod/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  42. package/mod/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  43. package/mod/node_modules/call-bind-apply-helpers/test/index.js +63 -0
  44. package/mod/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  45. package/mod/node_modules/call-bound/.eslintrc +13 -0
  46. package/mod/node_modules/call-bound/.github/FUNDING.yml +12 -0
  47. package/mod/node_modules/call-bound/.nycrc +9 -0
  48. package/mod/node_modules/call-bound/CHANGELOG.md +42 -0
  49. package/mod/node_modules/call-bound/LICENSE +21 -0
  50. package/mod/node_modules/call-bound/README.md +53 -0
  51. package/mod/node_modules/call-bound/index.d.ts +94 -0
  52. package/mod/node_modules/call-bound/index.js +19 -0
  53. package/mod/node_modules/call-bound/package.json +99 -0
  54. package/mod/node_modules/call-bound/test/index.js +61 -0
  55. package/mod/node_modules/call-bound/tsconfig.json +10 -0
  56. package/mod/node_modules/content-disposition/HISTORY.md +72 -0
  57. package/mod/node_modules/content-disposition/LICENSE +22 -0
  58. package/mod/node_modules/content-disposition/README.md +142 -0
  59. package/mod/node_modules/content-disposition/index.js +458 -0
  60. package/mod/node_modules/content-disposition/package.json +43 -0
  61. package/mod/node_modules/content-type/HISTORY.md +29 -0
  62. package/mod/node_modules/content-type/LICENSE +22 -0
  63. package/mod/node_modules/content-type/README.md +94 -0
  64. package/mod/node_modules/content-type/index.js +225 -0
  65. package/mod/node_modules/content-type/package.json +42 -0
  66. package/mod/node_modules/cookie/LICENSE +24 -0
  67. package/mod/node_modules/cookie/README.md +317 -0
  68. package/mod/node_modules/cookie/SECURITY.md +25 -0
  69. package/mod/node_modules/cookie/index.js +335 -0
  70. package/mod/node_modules/cookie/package.json +44 -0
  71. package/mod/node_modules/cookie-signature/History.md +70 -0
  72. package/mod/node_modules/cookie-signature/LICENSE +22 -0
  73. package/mod/node_modules/cookie-signature/Readme.md +23 -0
  74. package/mod/node_modules/cookie-signature/index.js +47 -0
  75. package/mod/node_modules/cookie-signature/package.json +24 -0
  76. package/mod/node_modules/cors/LICENSE +22 -0
  77. package/mod/node_modules/cors/README.md +277 -0
  78. package/mod/node_modules/cors/lib/index.js +238 -0
  79. package/mod/node_modules/cors/package.json +42 -0
  80. package/mod/node_modules/debug/LICENSE +20 -0
  81. package/mod/node_modules/debug/README.md +481 -0
  82. package/mod/node_modules/debug/package.json +64 -0
  83. package/mod/node_modules/debug/src/browser.js +272 -0
  84. package/mod/node_modules/debug/src/common.js +292 -0
  85. package/mod/node_modules/debug/src/index.js +10 -0
  86. package/mod/node_modules/debug/src/node.js +263 -0
  87. package/mod/node_modules/depd/History.md +103 -0
  88. package/mod/node_modules/depd/LICENSE +22 -0
  89. package/mod/node_modules/depd/Readme.md +280 -0
  90. package/mod/node_modules/depd/index.js +538 -0
  91. package/mod/node_modules/depd/lib/browser/index.js +77 -0
  92. package/mod/node_modules/depd/package.json +45 -0
  93. package/mod/node_modules/dunder-proto/.eslintrc +5 -0
  94. package/mod/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  95. package/mod/node_modules/dunder-proto/.nycrc +13 -0
  96. package/mod/node_modules/dunder-proto/CHANGELOG.md +24 -0
  97. package/mod/node_modules/dunder-proto/LICENSE +21 -0
  98. package/mod/node_modules/dunder-proto/README.md +54 -0
  99. package/mod/node_modules/dunder-proto/get.d.ts +5 -0
  100. package/mod/node_modules/dunder-proto/get.js +30 -0
  101. package/mod/node_modules/dunder-proto/package.json +76 -0
  102. package/mod/node_modules/dunder-proto/set.d.ts +5 -0
  103. package/mod/node_modules/dunder-proto/set.js +35 -0
  104. package/mod/node_modules/dunder-proto/test/get.js +34 -0
  105. package/mod/node_modules/dunder-proto/test/index.js +4 -0
  106. package/mod/node_modules/dunder-proto/test/set.js +50 -0
  107. package/mod/node_modules/dunder-proto/tsconfig.json +9 -0
  108. package/mod/node_modules/ee-first/LICENSE +22 -0
  109. package/mod/node_modules/ee-first/README.md +80 -0
  110. package/mod/node_modules/ee-first/index.js +95 -0
  111. package/mod/node_modules/ee-first/package.json +29 -0
  112. package/mod/node_modules/encodeurl/LICENSE +22 -0
  113. package/mod/node_modules/encodeurl/README.md +109 -0
  114. package/mod/node_modules/encodeurl/index.js +60 -0
  115. package/mod/node_modules/encodeurl/package.json +40 -0
  116. package/mod/node_modules/es-define-property/.eslintrc +13 -0
  117. package/mod/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  118. package/mod/node_modules/es-define-property/.nycrc +9 -0
  119. package/mod/node_modules/es-define-property/CHANGELOG.md +29 -0
  120. package/mod/node_modules/es-define-property/LICENSE +21 -0
  121. package/mod/node_modules/es-define-property/README.md +49 -0
  122. package/mod/node_modules/es-define-property/index.d.ts +3 -0
  123. package/mod/node_modules/es-define-property/index.js +14 -0
  124. package/mod/node_modules/es-define-property/package.json +81 -0
  125. package/mod/node_modules/es-define-property/test/index.js +56 -0
  126. package/mod/node_modules/es-define-property/tsconfig.json +10 -0
  127. package/mod/node_modules/es-errors/.eslintrc +5 -0
  128. package/mod/node_modules/es-errors/.github/FUNDING.yml +12 -0
  129. package/mod/node_modules/es-errors/CHANGELOG.md +40 -0
  130. package/mod/node_modules/es-errors/LICENSE +21 -0
  131. package/mod/node_modules/es-errors/README.md +55 -0
  132. package/mod/node_modules/es-errors/eval.d.ts +3 -0
  133. package/mod/node_modules/es-errors/eval.js +4 -0
  134. package/mod/node_modules/es-errors/index.d.ts +3 -0
  135. package/mod/node_modules/es-errors/index.js +4 -0
  136. package/mod/node_modules/es-errors/package.json +80 -0
  137. package/mod/node_modules/es-errors/range.d.ts +3 -0
  138. package/mod/node_modules/es-errors/range.js +4 -0
  139. package/mod/node_modules/es-errors/ref.d.ts +3 -0
  140. package/mod/node_modules/es-errors/ref.js +4 -0
  141. package/mod/node_modules/es-errors/syntax.d.ts +3 -0
  142. package/mod/node_modules/es-errors/syntax.js +4 -0
  143. package/mod/node_modules/es-errors/test/index.js +19 -0
  144. package/mod/node_modules/es-errors/tsconfig.json +49 -0
  145. package/mod/node_modules/es-errors/type.d.ts +3 -0
  146. package/mod/node_modules/es-errors/type.js +4 -0
  147. package/mod/node_modules/es-errors/uri.d.ts +3 -0
  148. package/mod/node_modules/es-errors/uri.js +4 -0
  149. package/mod/node_modules/es-object-atoms/.eslintrc +16 -0
  150. package/mod/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  151. package/mod/node_modules/es-object-atoms/CHANGELOG.md +37 -0
  152. package/mod/node_modules/es-object-atoms/LICENSE +21 -0
  153. package/mod/node_modules/es-object-atoms/README.md +63 -0
  154. package/mod/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  155. package/mod/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  156. package/mod/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  157. package/mod/node_modules/es-object-atoms/ToObject.js +10 -0
  158. package/mod/node_modules/es-object-atoms/index.d.ts +3 -0
  159. package/mod/node_modules/es-object-atoms/index.js +4 -0
  160. package/mod/node_modules/es-object-atoms/isObject.d.ts +3 -0
  161. package/mod/node_modules/es-object-atoms/isObject.js +6 -0
  162. package/mod/node_modules/es-object-atoms/package.json +80 -0
  163. package/mod/node_modules/es-object-atoms/test/index.js +38 -0
  164. package/mod/node_modules/es-object-atoms/tsconfig.json +6 -0
  165. package/mod/node_modules/escape-html/LICENSE +24 -0
  166. package/mod/node_modules/escape-html/Readme.md +43 -0
  167. package/mod/node_modules/escape-html/index.js +78 -0
  168. package/mod/node_modules/escape-html/package.json +24 -0
  169. package/mod/node_modules/etag/HISTORY.md +83 -0
  170. package/mod/node_modules/etag/LICENSE +22 -0
  171. package/mod/node_modules/etag/README.md +159 -0
  172. package/mod/node_modules/etag/index.js +131 -0
  173. package/mod/node_modules/etag/package.json +47 -0
  174. package/mod/node_modules/express/LICENSE +24 -0
  175. package/mod/node_modules/express/Readme.md +276 -0
  176. package/mod/node_modules/express/index.js +11 -0
  177. package/mod/node_modules/express/lib/application.js +631 -0
  178. package/mod/node_modules/express/lib/express.js +81 -0
  179. package/mod/node_modules/express/lib/request.js +514 -0
  180. package/mod/node_modules/express/lib/response.js +1053 -0
  181. package/mod/node_modules/express/lib/utils.js +271 -0
  182. package/mod/node_modules/express/lib/view.js +205 -0
  183. package/mod/node_modules/express/package.json +99 -0
  184. package/mod/node_modules/finalhandler/HISTORY.md +239 -0
  185. package/mod/node_modules/finalhandler/LICENSE +22 -0
  186. package/mod/node_modules/finalhandler/README.md +150 -0
  187. package/mod/node_modules/finalhandler/index.js +293 -0
  188. package/mod/node_modules/finalhandler/package.json +47 -0
  189. package/mod/node_modules/forwarded/HISTORY.md +21 -0
  190. package/mod/node_modules/forwarded/LICENSE +22 -0
  191. package/mod/node_modules/forwarded/README.md +57 -0
  192. package/mod/node_modules/forwarded/index.js +90 -0
  193. package/mod/node_modules/forwarded/package.json +45 -0
  194. package/mod/node_modules/fresh/HISTORY.md +80 -0
  195. package/mod/node_modules/fresh/LICENSE +23 -0
  196. package/mod/node_modules/fresh/README.md +117 -0
  197. package/mod/node_modules/fresh/index.js +136 -0
  198. package/mod/node_modules/fresh/package.json +46 -0
  199. package/mod/node_modules/function-bind/.eslintrc +21 -0
  200. package/mod/node_modules/function-bind/.github/FUNDING.yml +12 -0
  201. package/mod/node_modules/function-bind/.github/SECURITY.md +3 -0
  202. package/mod/node_modules/function-bind/.nycrc +13 -0
  203. package/mod/node_modules/function-bind/CHANGELOG.md +136 -0
  204. package/mod/node_modules/function-bind/LICENSE +20 -0
  205. package/mod/node_modules/function-bind/README.md +46 -0
  206. package/mod/node_modules/function-bind/implementation.js +84 -0
  207. package/mod/node_modules/function-bind/index.js +5 -0
  208. package/mod/node_modules/function-bind/package.json +87 -0
  209. package/mod/node_modules/function-bind/test/.eslintrc +9 -0
  210. package/mod/node_modules/function-bind/test/index.js +252 -0
  211. package/mod/node_modules/get-intrinsic/.eslintrc +42 -0
  212. package/mod/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  213. package/mod/node_modules/get-intrinsic/.nycrc +9 -0
  214. package/mod/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  215. package/mod/node_modules/get-intrinsic/LICENSE +21 -0
  216. package/mod/node_modules/get-intrinsic/README.md +71 -0
  217. package/mod/node_modules/get-intrinsic/index.js +378 -0
  218. package/mod/node_modules/get-intrinsic/package.json +97 -0
  219. package/mod/node_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
  220. package/mod/node_modules/get-proto/.eslintrc +10 -0
  221. package/mod/node_modules/get-proto/.github/FUNDING.yml +12 -0
  222. package/mod/node_modules/get-proto/.nycrc +9 -0
  223. package/mod/node_modules/get-proto/CHANGELOG.md +21 -0
  224. package/mod/node_modules/get-proto/LICENSE +21 -0
  225. package/mod/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  226. package/mod/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  227. package/mod/node_modules/get-proto/README.md +50 -0
  228. package/mod/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  229. package/mod/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  230. package/mod/node_modules/get-proto/index.d.ts +5 -0
  231. package/mod/node_modules/get-proto/index.js +27 -0
  232. package/mod/node_modules/get-proto/package.json +81 -0
  233. package/mod/node_modules/get-proto/test/index.js +68 -0
  234. package/mod/node_modules/get-proto/tsconfig.json +9 -0
  235. package/mod/node_modules/gopd/.eslintrc +16 -0
  236. package/mod/node_modules/gopd/.github/FUNDING.yml +12 -0
  237. package/mod/node_modules/gopd/CHANGELOG.md +45 -0
  238. package/mod/node_modules/gopd/LICENSE +21 -0
  239. package/mod/node_modules/gopd/README.md +40 -0
  240. package/mod/node_modules/gopd/gOPD.d.ts +1 -0
  241. package/mod/node_modules/gopd/gOPD.js +4 -0
  242. package/mod/node_modules/gopd/index.d.ts +5 -0
  243. package/mod/node_modules/gopd/index.js +15 -0
  244. package/mod/node_modules/gopd/package.json +77 -0
  245. package/mod/node_modules/gopd/test/index.js +36 -0
  246. package/mod/node_modules/gopd/tsconfig.json +9 -0
  247. package/mod/node_modules/has-symbols/.eslintrc +11 -0
  248. package/mod/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  249. package/mod/node_modules/has-symbols/.nycrc +9 -0
  250. package/mod/node_modules/has-symbols/CHANGELOG.md +91 -0
  251. package/mod/node_modules/has-symbols/LICENSE +21 -0
  252. package/mod/node_modules/has-symbols/README.md +46 -0
  253. package/mod/node_modules/has-symbols/index.d.ts +3 -0
  254. package/mod/node_modules/has-symbols/index.js +14 -0
  255. package/mod/node_modules/has-symbols/package.json +111 -0
  256. package/mod/node_modules/has-symbols/shams.d.ts +3 -0
  257. package/mod/node_modules/has-symbols/shams.js +45 -0
  258. package/mod/node_modules/has-symbols/test/index.js +22 -0
  259. package/mod/node_modules/has-symbols/test/shams/core-js.js +29 -0
  260. package/mod/node_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
  261. package/mod/node_modules/has-symbols/test/tests.js +58 -0
  262. package/mod/node_modules/has-symbols/tsconfig.json +10 -0
  263. package/mod/node_modules/hasown/.eslintrc +5 -0
  264. package/mod/node_modules/hasown/.github/FUNDING.yml +12 -0
  265. package/mod/node_modules/hasown/.nycrc +13 -0
  266. package/mod/node_modules/hasown/CHANGELOG.md +40 -0
  267. package/mod/node_modules/hasown/LICENSE +21 -0
  268. package/mod/node_modules/hasown/README.md +40 -0
  269. package/mod/node_modules/hasown/index.d.ts +3 -0
  270. package/mod/node_modules/hasown/index.js +8 -0
  271. package/mod/node_modules/hasown/package.json +92 -0
  272. package/mod/node_modules/hasown/tsconfig.json +6 -0
  273. package/mod/node_modules/http-errors/HISTORY.md +186 -0
  274. package/mod/node_modules/http-errors/LICENSE +23 -0
  275. package/mod/node_modules/http-errors/README.md +169 -0
  276. package/mod/node_modules/http-errors/index.js +290 -0
  277. package/mod/node_modules/http-errors/package.json +54 -0
  278. package/mod/node_modules/iconv-lite/LICENSE +21 -0
  279. package/mod/node_modules/iconv-lite/README.md +138 -0
  280. package/mod/node_modules/iconv-lite/encodings/dbcs-codec.js +532 -0
  281. package/mod/node_modules/iconv-lite/encodings/dbcs-data.js +185 -0
  282. package/mod/node_modules/iconv-lite/encodings/index.js +23 -0
  283. package/mod/node_modules/iconv-lite/encodings/internal.js +218 -0
  284. package/mod/node_modules/iconv-lite/encodings/sbcs-codec.js +75 -0
  285. package/mod/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  286. package/mod/node_modules/iconv-lite/encodings/sbcs-data.js +178 -0
  287. package/mod/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  288. package/mod/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  289. package/mod/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  290. package/mod/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  291. package/mod/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  292. package/mod/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  293. package/mod/node_modules/iconv-lite/encodings/tables/gbk-added.json +56 -0
  294. package/mod/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  295. package/mod/node_modules/iconv-lite/encodings/utf16.js +187 -0
  296. package/mod/node_modules/iconv-lite/encodings/utf32.js +307 -0
  297. package/mod/node_modules/iconv-lite/encodings/utf7.js +283 -0
  298. package/mod/node_modules/iconv-lite/lib/bom-handling.js +48 -0
  299. package/mod/node_modules/iconv-lite/lib/helpers/merge-exports.js +13 -0
  300. package/mod/node_modules/iconv-lite/lib/index.d.ts +129 -0
  301. package/mod/node_modules/iconv-lite/lib/index.js +182 -0
  302. package/mod/node_modules/iconv-lite/lib/streams.js +105 -0
  303. package/mod/node_modules/iconv-lite/package.json +70 -0
  304. package/mod/node_modules/iconv-lite/types/encodings.d.ts +423 -0
  305. package/mod/node_modules/inherits/LICENSE +16 -0
  306. package/mod/node_modules/inherits/README.md +42 -0
  307. package/mod/node_modules/inherits/inherits.js +9 -0
  308. package/mod/node_modules/inherits/inherits_browser.js +27 -0
  309. package/mod/node_modules/inherits/package.json +29 -0
  310. package/mod/node_modules/ipaddr.js/LICENSE +19 -0
  311. package/mod/node_modules/ipaddr.js/README.md +233 -0
  312. package/mod/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  313. package/mod/node_modules/ipaddr.js/lib/ipaddr.js +673 -0
  314. package/mod/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
  315. package/mod/node_modules/ipaddr.js/package.json +35 -0
  316. package/mod/node_modules/is-promise/LICENSE +19 -0
  317. package/mod/node_modules/is-promise/index.d.ts +2 -0
  318. package/mod/node_modules/is-promise/index.js +6 -0
  319. package/mod/node_modules/is-promise/index.mjs +3 -0
  320. package/mod/node_modules/is-promise/package.json +30 -0
  321. package/mod/node_modules/is-promise/readme.md +33 -0
  322. package/mod/node_modules/math-intrinsics/.eslintrc +16 -0
  323. package/mod/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  324. package/mod/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  325. package/mod/node_modules/math-intrinsics/LICENSE +21 -0
  326. package/mod/node_modules/math-intrinsics/README.md +50 -0
  327. package/mod/node_modules/math-intrinsics/abs.d.ts +1 -0
  328. package/mod/node_modules/math-intrinsics/abs.js +4 -0
  329. package/mod/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  330. package/mod/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  331. package/mod/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  332. package/mod/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  333. package/mod/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  334. package/mod/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  335. package/mod/node_modules/math-intrinsics/floor.d.ts +1 -0
  336. package/mod/node_modules/math-intrinsics/floor.js +4 -0
  337. package/mod/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  338. package/mod/node_modules/math-intrinsics/isFinite.js +12 -0
  339. package/mod/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  340. package/mod/node_modules/math-intrinsics/isInteger.js +16 -0
  341. package/mod/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  342. package/mod/node_modules/math-intrinsics/isNaN.js +6 -0
  343. package/mod/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  344. package/mod/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  345. package/mod/node_modules/math-intrinsics/max.d.ts +1 -0
  346. package/mod/node_modules/math-intrinsics/max.js +4 -0
  347. package/mod/node_modules/math-intrinsics/min.d.ts +1 -0
  348. package/mod/node_modules/math-intrinsics/min.js +4 -0
  349. package/mod/node_modules/math-intrinsics/mod.d.ts +3 -0
  350. package/mod/node_modules/math-intrinsics/mod.js +9 -0
  351. package/mod/node_modules/math-intrinsics/package.json +86 -0
  352. package/mod/node_modules/math-intrinsics/pow.d.ts +1 -0
  353. package/mod/node_modules/math-intrinsics/pow.js +4 -0
  354. package/mod/node_modules/math-intrinsics/round.d.ts +1 -0
  355. package/mod/node_modules/math-intrinsics/round.js +4 -0
  356. package/mod/node_modules/math-intrinsics/sign.d.ts +3 -0
  357. package/mod/node_modules/math-intrinsics/sign.js +11 -0
  358. package/mod/node_modules/math-intrinsics/test/index.js +192 -0
  359. package/mod/node_modules/math-intrinsics/tsconfig.json +3 -0
  360. package/mod/node_modules/media-typer/HISTORY.md +50 -0
  361. package/mod/node_modules/media-typer/LICENSE +22 -0
  362. package/mod/node_modules/media-typer/README.md +93 -0
  363. package/mod/node_modules/media-typer/index.js +143 -0
  364. package/mod/node_modules/media-typer/package.json +33 -0
  365. package/mod/node_modules/merge-descriptors/index.d.ts +11 -0
  366. package/mod/node_modules/merge-descriptors/index.js +26 -0
  367. package/mod/node_modules/merge-descriptors/license +11 -0
  368. package/mod/node_modules/merge-descriptors/package.json +50 -0
  369. package/mod/node_modules/merge-descriptors/readme.md +55 -0
  370. package/mod/node_modules/mime-db/HISTORY.md +541 -0
  371. package/mod/node_modules/mime-db/LICENSE +23 -0
  372. package/mod/node_modules/mime-db/README.md +109 -0
  373. package/mod/node_modules/mime-db/db.json +9342 -0
  374. package/mod/node_modules/mime-db/index.js +12 -0
  375. package/mod/node_modules/mime-db/package.json +56 -0
  376. package/mod/node_modules/mime-types/HISTORY.md +428 -0
  377. package/mod/node_modules/mime-types/LICENSE +23 -0
  378. package/mod/node_modules/mime-types/README.md +126 -0
  379. package/mod/node_modules/mime-types/index.js +211 -0
  380. package/mod/node_modules/mime-types/mimeScore.js +57 -0
  381. package/mod/node_modules/mime-types/package.json +49 -0
  382. package/mod/node_modules/ms/index.js +162 -0
  383. package/mod/node_modules/ms/license.md +21 -0
  384. package/mod/node_modules/ms/package.json +38 -0
  385. package/mod/node_modules/ms/readme.md +59 -0
  386. package/mod/node_modules/negotiator/HISTORY.md +114 -0
  387. package/mod/node_modules/negotiator/LICENSE +24 -0
  388. package/mod/node_modules/negotiator/README.md +212 -0
  389. package/mod/node_modules/negotiator/index.js +83 -0
  390. package/mod/node_modules/negotiator/lib/charset.js +169 -0
  391. package/mod/node_modules/negotiator/lib/encoding.js +205 -0
  392. package/mod/node_modules/negotiator/lib/language.js +179 -0
  393. package/mod/node_modules/negotiator/lib/mediaType.js +294 -0
  394. package/mod/node_modules/negotiator/package.json +43 -0
  395. package/mod/node_modules/object-assign/index.js +90 -0
  396. package/mod/node_modules/object-assign/license +21 -0
  397. package/mod/node_modules/object-assign/package.json +42 -0
  398. package/mod/node_modules/object-assign/readme.md +61 -0
  399. package/mod/node_modules/object-inspect/.eslintrc +53 -0
  400. package/mod/node_modules/object-inspect/.github/FUNDING.yml +12 -0
  401. package/mod/node_modules/object-inspect/.nycrc +13 -0
  402. package/mod/node_modules/object-inspect/CHANGELOG.md +424 -0
  403. package/mod/node_modules/object-inspect/LICENSE +21 -0
  404. package/mod/node_modules/object-inspect/example/all.js +23 -0
  405. package/mod/node_modules/object-inspect/example/circular.js +6 -0
  406. package/mod/node_modules/object-inspect/example/fn.js +5 -0
  407. package/mod/node_modules/object-inspect/example/inspect.js +10 -0
  408. package/mod/node_modules/object-inspect/index.js +544 -0
  409. package/mod/node_modules/object-inspect/package-support.json +20 -0
  410. package/mod/node_modules/object-inspect/package.json +105 -0
  411. package/mod/node_modules/object-inspect/readme.markdown +84 -0
  412. package/mod/node_modules/object-inspect/test/bigint.js +58 -0
  413. package/mod/node_modules/object-inspect/test/browser/dom.js +15 -0
  414. package/mod/node_modules/object-inspect/test/circular.js +16 -0
  415. package/mod/node_modules/object-inspect/test/deep.js +12 -0
  416. package/mod/node_modules/object-inspect/test/element.js +53 -0
  417. package/mod/node_modules/object-inspect/test/err.js +48 -0
  418. package/mod/node_modules/object-inspect/test/fakes.js +29 -0
  419. package/mod/node_modules/object-inspect/test/fn.js +76 -0
  420. package/mod/node_modules/object-inspect/test/global.js +17 -0
  421. package/mod/node_modules/object-inspect/test/has.js +15 -0
  422. package/mod/node_modules/object-inspect/test/holes.js +15 -0
  423. package/mod/node_modules/object-inspect/test/indent-option.js +271 -0
  424. package/mod/node_modules/object-inspect/test/inspect.js +139 -0
  425. package/mod/node_modules/object-inspect/test/lowbyte.js +12 -0
  426. package/mod/node_modules/object-inspect/test/number.js +58 -0
  427. package/mod/node_modules/object-inspect/test/quoteStyle.js +26 -0
  428. package/mod/node_modules/object-inspect/test/toStringTag.js +40 -0
  429. package/mod/node_modules/object-inspect/test/undef.js +12 -0
  430. package/mod/node_modules/object-inspect/test/values.js +261 -0
  431. package/mod/node_modules/object-inspect/test-core-js.js +26 -0
  432. package/mod/node_modules/object-inspect/util.inspect.js +1 -0
  433. package/mod/node_modules/on-finished/HISTORY.md +98 -0
  434. package/mod/node_modules/on-finished/LICENSE +23 -0
  435. package/mod/node_modules/on-finished/README.md +162 -0
  436. package/mod/node_modules/on-finished/index.js +234 -0
  437. package/mod/node_modules/on-finished/package.json +39 -0
  438. package/mod/node_modules/once/LICENSE +15 -0
  439. package/mod/node_modules/once/README.md +79 -0
  440. package/mod/node_modules/once/once.js +42 -0
  441. package/mod/node_modules/once/package.json +33 -0
  442. package/mod/node_modules/parseurl/HISTORY.md +58 -0
  443. package/mod/node_modules/parseurl/LICENSE +24 -0
  444. package/mod/node_modules/parseurl/README.md +133 -0
  445. package/mod/node_modules/parseurl/index.js +158 -0
  446. package/mod/node_modules/parseurl/package.json +40 -0
  447. package/mod/node_modules/path-to-regexp/LICENSE +21 -0
  448. package/mod/node_modules/path-to-regexp/Readme.md +224 -0
  449. package/mod/node_modules/path-to-regexp/dist/index.d.ts +144 -0
  450. package/mod/node_modules/path-to-regexp/dist/index.js +409 -0
  451. package/mod/node_modules/path-to-regexp/dist/index.js.map +1 -0
  452. package/mod/node_modules/path-to-regexp/package.json +64 -0
  453. package/mod/node_modules/proxy-addr/HISTORY.md +161 -0
  454. package/mod/node_modules/proxy-addr/LICENSE +22 -0
  455. package/mod/node_modules/proxy-addr/README.md +139 -0
  456. package/mod/node_modules/proxy-addr/index.js +327 -0
  457. package/mod/node_modules/proxy-addr/package.json +47 -0
  458. package/mod/node_modules/qs/.editorconfig +46 -0
  459. package/mod/node_modules/qs/.github/FUNDING.yml +12 -0
  460. package/mod/node_modules/qs/.github/SECURITY.md +11 -0
  461. package/mod/node_modules/qs/.github/THREAT_MODEL.md +78 -0
  462. package/mod/node_modules/qs/.nycrc +13 -0
  463. package/mod/node_modules/qs/CHANGELOG.md +631 -0
  464. package/mod/node_modules/qs/LICENSE.md +29 -0
  465. package/mod/node_modules/qs/README.md +733 -0
  466. package/mod/node_modules/qs/dist/qs.js +141 -0
  467. package/mod/node_modules/qs/eslint.config.mjs +56 -0
  468. package/mod/node_modules/qs/lib/formats.js +23 -0
  469. package/mod/node_modules/qs/lib/index.js +11 -0
  470. package/mod/node_modules/qs/lib/parse.js +360 -0
  471. package/mod/node_modules/qs/lib/stringify.js +356 -0
  472. package/mod/node_modules/qs/lib/utils.js +320 -0
  473. package/mod/node_modules/qs/package.json +94 -0
  474. package/mod/node_modules/qs/test/empty-keys-cases.js +267 -0
  475. package/mod/node_modules/qs/test/parse.js +1396 -0
  476. package/mod/node_modules/qs/test/stringify.js +1310 -0
  477. package/mod/node_modules/qs/test/utils.js +381 -0
  478. package/mod/node_modules/range-parser/HISTORY.md +56 -0
  479. package/mod/node_modules/range-parser/LICENSE +23 -0
  480. package/mod/node_modules/range-parser/README.md +84 -0
  481. package/mod/node_modules/range-parser/index.js +162 -0
  482. package/mod/node_modules/range-parser/package.json +44 -0
  483. package/mod/node_modules/raw-body/LICENSE +22 -0
  484. package/mod/node_modules/raw-body/README.md +223 -0
  485. package/mod/node_modules/raw-body/index.d.ts +85 -0
  486. package/mod/node_modules/raw-body/index.js +336 -0
  487. package/mod/node_modules/raw-body/package.json +46 -0
  488. package/mod/node_modules/router/HISTORY.md +228 -0
  489. package/mod/node_modules/router/LICENSE +23 -0
  490. package/mod/node_modules/router/README.md +416 -0
  491. package/mod/node_modules/router/index.js +748 -0
  492. package/mod/node_modules/router/lib/layer.js +247 -0
  493. package/mod/node_modules/router/lib/route.js +242 -0
  494. package/mod/node_modules/router/package.json +44 -0
  495. package/mod/node_modules/safer-buffer/LICENSE +21 -0
  496. package/mod/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  497. package/mod/node_modules/safer-buffer/Readme.md +156 -0
  498. package/mod/node_modules/safer-buffer/dangerous.js +58 -0
  499. package/mod/node_modules/safer-buffer/package.json +34 -0
  500. package/mod/node_modules/safer-buffer/safer.js +77 -0
  501. package/mod/node_modules/safer-buffer/tests.js +406 -0
  502. package/mod/node_modules/send/LICENSE +23 -0
  503. package/mod/node_modules/send/README.md +317 -0
  504. package/mod/node_modules/send/index.js +997 -0
  505. package/mod/node_modules/send/package.json +63 -0
  506. package/mod/node_modules/serve-static/LICENSE +25 -0
  507. package/mod/node_modules/serve-static/README.md +253 -0
  508. package/mod/node_modules/serve-static/index.js +208 -0
  509. package/mod/node_modules/serve-static/package.json +44 -0
  510. package/mod/node_modules/setprototypeof/LICENSE +13 -0
  511. package/mod/node_modules/setprototypeof/README.md +31 -0
  512. package/mod/node_modules/setprototypeof/index.d.ts +2 -0
  513. package/mod/node_modules/setprototypeof/index.js +17 -0
  514. package/mod/node_modules/setprototypeof/package.json +38 -0
  515. package/mod/node_modules/setprototypeof/test/index.js +24 -0
  516. package/mod/node_modules/side-channel/.editorconfig +9 -0
  517. package/mod/node_modules/side-channel/.eslintrc +12 -0
  518. package/mod/node_modules/side-channel/.github/FUNDING.yml +12 -0
  519. package/mod/node_modules/side-channel/.nycrc +13 -0
  520. package/mod/node_modules/side-channel/CHANGELOG.md +110 -0
  521. package/mod/node_modules/side-channel/LICENSE +21 -0
  522. package/mod/node_modules/side-channel/README.md +61 -0
  523. package/mod/node_modules/side-channel/index.d.ts +14 -0
  524. package/mod/node_modules/side-channel/index.js +43 -0
  525. package/mod/node_modules/side-channel/package.json +85 -0
  526. package/mod/node_modules/side-channel/test/index.js +104 -0
  527. package/mod/node_modules/side-channel/tsconfig.json +9 -0
  528. package/mod/node_modules/side-channel-list/.editorconfig +9 -0
  529. package/mod/node_modules/side-channel-list/.eslintrc +11 -0
  530. package/mod/node_modules/side-channel-list/.github/FUNDING.yml +12 -0
  531. package/mod/node_modules/side-channel-list/.nycrc +13 -0
  532. package/mod/node_modules/side-channel-list/CHANGELOG.md +15 -0
  533. package/mod/node_modules/side-channel-list/LICENSE +21 -0
  534. package/mod/node_modules/side-channel-list/README.md +62 -0
  535. package/mod/node_modules/side-channel-list/index.d.ts +13 -0
  536. package/mod/node_modules/side-channel-list/index.js +113 -0
  537. package/mod/node_modules/side-channel-list/list.d.ts +14 -0
  538. package/mod/node_modules/side-channel-list/package.json +77 -0
  539. package/mod/node_modules/side-channel-list/test/index.js +104 -0
  540. package/mod/node_modules/side-channel-list/tsconfig.json +9 -0
  541. package/mod/node_modules/side-channel-map/.editorconfig +9 -0
  542. package/mod/node_modules/side-channel-map/.eslintrc +11 -0
  543. package/mod/node_modules/side-channel-map/.github/FUNDING.yml +12 -0
  544. package/mod/node_modules/side-channel-map/.nycrc +13 -0
  545. package/mod/node_modules/side-channel-map/CHANGELOG.md +22 -0
  546. package/mod/node_modules/side-channel-map/LICENSE +21 -0
  547. package/mod/node_modules/side-channel-map/README.md +62 -0
  548. package/mod/node_modules/side-channel-map/index.d.ts +15 -0
  549. package/mod/node_modules/side-channel-map/index.js +68 -0
  550. package/mod/node_modules/side-channel-map/package.json +80 -0
  551. package/mod/node_modules/side-channel-map/test/index.js +114 -0
  552. package/mod/node_modules/side-channel-map/tsconfig.json +9 -0
  553. package/mod/node_modules/side-channel-weakmap/.editorconfig +9 -0
  554. package/mod/node_modules/side-channel-weakmap/.eslintrc +12 -0
  555. package/mod/node_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
  556. package/mod/node_modules/side-channel-weakmap/.nycrc +13 -0
  557. package/mod/node_modules/side-channel-weakmap/CHANGELOG.md +28 -0
  558. package/mod/node_modules/side-channel-weakmap/LICENSE +21 -0
  559. package/mod/node_modules/side-channel-weakmap/README.md +62 -0
  560. package/mod/node_modules/side-channel-weakmap/index.d.ts +15 -0
  561. package/mod/node_modules/side-channel-weakmap/index.js +84 -0
  562. package/mod/node_modules/side-channel-weakmap/package.json +87 -0
  563. package/mod/node_modules/side-channel-weakmap/test/index.js +114 -0
  564. package/mod/node_modules/side-channel-weakmap/tsconfig.json +9 -0
  565. package/mod/node_modules/statuses/HISTORY.md +87 -0
  566. package/mod/node_modules/statuses/LICENSE +23 -0
  567. package/mod/node_modules/statuses/README.md +139 -0
  568. package/mod/node_modules/statuses/codes.json +65 -0
  569. package/mod/node_modules/statuses/index.js +146 -0
  570. package/mod/node_modules/statuses/package.json +49 -0
  571. package/mod/node_modules/toidentifier/HISTORY.md +9 -0
  572. package/mod/node_modules/toidentifier/LICENSE +21 -0
  573. package/mod/node_modules/toidentifier/README.md +61 -0
  574. package/mod/node_modules/toidentifier/index.js +32 -0
  575. package/mod/node_modules/toidentifier/package.json +38 -0
  576. package/mod/node_modules/type-is/HISTORY.md +292 -0
  577. package/mod/node_modules/type-is/LICENSE +23 -0
  578. package/mod/node_modules/type-is/README.md +198 -0
  579. package/mod/node_modules/type-is/index.js +250 -0
  580. package/mod/node_modules/type-is/package.json +47 -0
  581. package/mod/node_modules/unpipe/HISTORY.md +4 -0
  582. package/mod/node_modules/unpipe/LICENSE +22 -0
  583. package/mod/node_modules/unpipe/README.md +43 -0
  584. package/mod/node_modules/unpipe/index.js +69 -0
  585. package/mod/node_modules/unpipe/package.json +27 -0
  586. package/mod/node_modules/vary/HISTORY.md +39 -0
  587. package/mod/node_modules/vary/LICENSE +22 -0
  588. package/mod/node_modules/vary/README.md +101 -0
  589. package/mod/node_modules/vary/index.js +149 -0
  590. package/mod/node_modules/vary/package.json +43 -0
  591. package/mod/node_modules/wrappy/LICENSE +15 -0
  592. package/mod/node_modules/wrappy/README.md +36 -0
  593. package/mod/node_modules/wrappy/package.json +29 -0
  594. package/mod/node_modules/wrappy/wrappy.js +33 -0
  595. package/mod/package-lock.json +854 -0
  596. package/mod/package.json +16 -0
  597. package/package.json +19 -0
@@ -0,0 +1,317 @@
1
+ # send
2
+
3
+ [![NPM Version][npm-version-image]][npm-url]
4
+ [![NPM Downloads][npm-downloads-image]][npm-url]
5
+ [![CI][github-actions-ci-image]][github-actions-ci-url]
6
+ [![Test Coverage][coveralls-image]][coveralls-url]
7
+
8
+ Send is a library for streaming files from the file system as a http response
9
+ supporting partial responses (Ranges), conditional-GET negotiation (If-Match,
10
+ If-Unmodified-Since, If-None-Match, If-Modified-Since), high test coverage,
11
+ and granular events which may be leveraged to take appropriate actions in your
12
+ application or framework.
13
+
14
+ Looking to serve up entire folders mapped to URLs? Try [serve-static](https://www.npmjs.org/package/serve-static).
15
+
16
+ ## Installation
17
+
18
+ This is a [Node.js](https://nodejs.org/en/) module available through the
19
+ [npm registry](https://www.npmjs.com/). Installation is done using the
20
+ [`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
21
+
22
+ ```bash
23
+ $ npm install send
24
+ ```
25
+
26
+ ## API
27
+
28
+ ```js
29
+ var send = require('send')
30
+ ```
31
+
32
+ ### send(req, path, [options])
33
+
34
+ Create a new `SendStream` for the given path to send to a `res`. The `req` is
35
+ the Node.js HTTP request and the `path` is a urlencoded path to send (urlencoded,
36
+ not the actual file-system path).
37
+
38
+ #### Options
39
+
40
+ ##### acceptRanges
41
+
42
+ Enable or disable accepting ranged requests, defaults to true.
43
+ Disabling this will not send `Accept-Ranges` and ignore the contents
44
+ of the `Range` request header.
45
+
46
+ ##### cacheControl
47
+
48
+ Enable or disable setting `Cache-Control` response header, defaults to
49
+ true. Disabling this will ignore the `immutable` and `maxAge` options.
50
+
51
+ ##### dotfiles
52
+
53
+ Set how "dotfiles" are treated when encountered. A dotfile is a file
54
+ or directory that begins with a dot ("."). Note this check is done on
55
+ the path itself without checking if the path actually exists on the
56
+ disk. If `root` is specified, only the dotfiles above the root are
57
+ checked (i.e. the root itself can be within a dotfile when set
58
+ to "deny").
59
+
60
+ - `'allow'` No special treatment for dotfiles.
61
+ - `'deny'` Send a 403 for any request for a dotfile.
62
+ - `'ignore'` Pretend like the dotfile does not exist and 404.
63
+
64
+ The default value is _similar_ to `'ignore'`, with the exception that
65
+ this default will not ignore the files within a directory that begins
66
+ with a dot, for backward-compatibility.
67
+
68
+ ##### end
69
+
70
+ Byte offset at which the stream ends, defaults to the length of the file
71
+ minus 1. The end is inclusive in the stream, meaning `end: 3` will include
72
+ the 4th byte in the stream.
73
+
74
+ ##### etag
75
+
76
+ Enable or disable etag generation, defaults to true.
77
+
78
+ ##### extensions
79
+
80
+ If a given file doesn't exist, try appending one of the given extensions,
81
+ in the given order. By default, this is disabled (set to `false`). An
82
+ example value that will serve extension-less HTML files: `['html', 'htm']`.
83
+ This is skipped if the requested file already has an extension.
84
+
85
+ ##### immutable
86
+
87
+ Enable or disable the `immutable` directive in the `Cache-Control` response
88
+ header, defaults to `false`. If set to `true`, the `maxAge` option should
89
+ also be specified to enable caching. The `immutable` directive will prevent
90
+ supported clients from making conditional requests during the life of the
91
+ `maxAge` option to check if the file has changed.
92
+
93
+ ##### index
94
+
95
+ By default send supports "index.html" files, to disable this
96
+ set `false` or to supply a new index pass a string or an array
97
+ in preferred order.
98
+
99
+ ##### lastModified
100
+
101
+ Enable or disable `Last-Modified` header, defaults to true. Uses the file
102
+ system's last modified value.
103
+
104
+ ##### maxAge
105
+
106
+ Provide a max-age in milliseconds for http caching, defaults to 0.
107
+ This can also be a string accepted by the
108
+ [ms](https://www.npmjs.org/package/ms#readme) module.
109
+
110
+ ##### root
111
+
112
+ Serve files relative to `path`.
113
+
114
+ ##### start
115
+
116
+ Byte offset at which the stream starts, defaults to 0. The start is inclusive,
117
+ meaning `start: 2` will include the 3rd byte in the stream.
118
+
119
+ #### Events
120
+
121
+ The `SendStream` is an event emitter and will emit the following events:
122
+
123
+ - `error` an error occurred `(err)`
124
+ - `directory` a directory was requested `(res, path)`
125
+ - `file` a file was requested `(path, stat)`
126
+ - `headers` the headers are about to be set on a file `(res, path, stat)`
127
+ - `stream` file streaming has started `(stream)`
128
+ - `end` streaming has completed
129
+
130
+ #### .pipe
131
+
132
+ The `pipe` method is used to pipe the response into the Node.js HTTP response
133
+ object, typically `send(req, path, options).pipe(res)`.
134
+
135
+ ## Error-handling
136
+
137
+ By default when no `error` listeners are present an automatic response will be
138
+ made, otherwise you have full control over the response, aka you may show a 5xx
139
+ page etc.
140
+
141
+ ## Caching
142
+
143
+ It does _not_ perform internal caching, you should use a reverse proxy cache
144
+ such as Varnish for this, or those fancy things called CDNs. If your
145
+ application is small enough that it would benefit from single-node memory
146
+ caching, it's small enough that it does not need caching at all ;).
147
+
148
+ ## Debugging
149
+
150
+ To enable `debug()` instrumentation output export __DEBUG__:
151
+
152
+ ```
153
+ $ DEBUG=send node app
154
+ ```
155
+
156
+ ## Running tests
157
+
158
+ ```
159
+ $ npm install
160
+ $ npm test
161
+ ```
162
+
163
+ ## Examples
164
+
165
+ ### Serve a specific file
166
+
167
+ This simple example will send a specific file to all requests.
168
+
169
+ ```js
170
+ var http = require('http')
171
+ var send = require('send')
172
+
173
+ var server = http.createServer(function onRequest (req, res) {
174
+ send(req, '/path/to/index.html')
175
+ .pipe(res)
176
+ })
177
+
178
+ server.listen(3000)
179
+ ```
180
+
181
+ ### Serve all files from a directory
182
+
183
+ This simple example will just serve up all the files in a
184
+ given directory as the top-level. For example, a request
185
+ `GET /foo.txt` will send back `/www/public/foo.txt`.
186
+
187
+ ```js
188
+ var http = require('http')
189
+ var parseUrl = require('parseurl')
190
+ var send = require('send')
191
+
192
+ var server = http.createServer(function onRequest (req, res) {
193
+ send(req, parseUrl(req).pathname, { root: '/www/public' })
194
+ .pipe(res)
195
+ })
196
+
197
+ server.listen(3000)
198
+ ```
199
+
200
+ ### Custom file types
201
+
202
+ ```js
203
+ var extname = require('path').extname
204
+ var http = require('http')
205
+ var parseUrl = require('parseurl')
206
+ var send = require('send')
207
+
208
+ var server = http.createServer(function onRequest (req, res) {
209
+ send(req, parseUrl(req).pathname, { root: '/www/public' })
210
+ .on('headers', function (res, path) {
211
+ switch (extname(path)) {
212
+ case '.x-mt':
213
+ case '.x-mtt':
214
+ // custom type for these extensions
215
+ res.setHeader('Content-Type', 'application/x-my-type')
216
+ break
217
+ }
218
+ })
219
+ .pipe(res)
220
+ })
221
+
222
+ server.listen(3000)
223
+ ```
224
+
225
+ ### Custom directory index view
226
+
227
+ This is an example of serving up a structure of directories with a
228
+ custom function to render a listing of a directory.
229
+
230
+ ```js
231
+ var http = require('http')
232
+ var fs = require('fs')
233
+ var parseUrl = require('parseurl')
234
+ var send = require('send')
235
+
236
+ // Transfer arbitrary files from within /www/example.com/public/*
237
+ // with a custom handler for directory listing
238
+ var server = http.createServer(function onRequest (req, res) {
239
+ send(req, parseUrl(req).pathname, { index: false, root: '/www/public' })
240
+ .once('directory', directory)
241
+ .pipe(res)
242
+ })
243
+
244
+ server.listen(3000)
245
+
246
+ // Custom directory handler
247
+ function directory (res, path) {
248
+ var stream = this
249
+
250
+ // redirect to trailing slash for consistent url
251
+ if (!stream.hasTrailingSlash()) {
252
+ return stream.redirect(path)
253
+ }
254
+
255
+ // get directory list
256
+ fs.readdir(path, function onReaddir (err, list) {
257
+ if (err) return stream.error(err)
258
+
259
+ // render an index for the directory
260
+ res.setHeader('Content-Type', 'text/plain; charset=UTF-8')
261
+ res.end(list.join('\n') + '\n')
262
+ })
263
+ }
264
+ ```
265
+
266
+ ### Serving from a root directory with custom error-handling
267
+
268
+ ```js
269
+ var http = require('http')
270
+ var parseUrl = require('parseurl')
271
+ var send = require('send')
272
+
273
+ var server = http.createServer(function onRequest (req, res) {
274
+ // your custom error-handling logic:
275
+ function error (err) {
276
+ res.statusCode = err.status || 500
277
+ res.end(err.message)
278
+ }
279
+
280
+ // your custom headers
281
+ function headers (res, path, stat) {
282
+ // serve all files for download
283
+ res.setHeader('Content-Disposition', 'attachment')
284
+ }
285
+
286
+ // your custom directory handling logic:
287
+ function redirect () {
288
+ res.statusCode = 301
289
+ res.setHeader('Location', req.url + '/')
290
+ res.end('Redirecting to ' + req.url + '/')
291
+ }
292
+
293
+ // transfer arbitrary files from within
294
+ // /www/example.com/public/*
295
+ send(req, parseUrl(req).pathname, { root: '/www/public' })
296
+ .on('error', error)
297
+ .on('directory', redirect)
298
+ .on('headers', headers)
299
+ .pipe(res)
300
+ })
301
+
302
+ server.listen(3000)
303
+ ```
304
+
305
+ ## License
306
+
307
+ [MIT](LICENSE)
308
+
309
+ [coveralls-image]: https://badgen.net/coveralls/c/github/pillarjs/send/master
310
+ [coveralls-url]: https://coveralls.io/r/pillarjs/send?branch=master
311
+ [github-actions-ci-image]: https://badgen.net/github/checks/pillarjs/send/master?label=linux
312
+ [github-actions-ci-url]: https://github.com/pillarjs/send/actions/workflows/ci.yml
313
+ [node-image]: https://badgen.net/npm/node/send
314
+ [node-url]: https://nodejs.org/en/download/
315
+ [npm-downloads-image]: https://badgen.net/npm/dm/send
316
+ [npm-url]: https://npmjs.org/package/send
317
+ [npm-version-image]: https://badgen.net/npm/v/send