crabatool 1.0.2 → 1.0.3

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 (625) hide show
  1. package/index.js +23 -2
  2. package/ngp/config.js +2 -2
  3. package/ngp/node_modules/.bin/mime +12 -0
  4. package/ngp/node_modules/.bin/mime.cmd +17 -0
  5. package/ngp/node_modules/.bin/mime.ps1 +28 -0
  6. package/ngp/node_modules/.bin/uglifyjs +12 -0
  7. package/ngp/node_modules/.bin/uglifyjs.cmd +17 -0
  8. package/ngp/node_modules/.bin/uglifyjs.ps1 +28 -0
  9. package/ngp/node_modules/.package-lock.json +863 -0
  10. package/ngp/node_modules/accepts/HISTORY.md +243 -0
  11. package/ngp/node_modules/accepts/LICENSE +23 -0
  12. package/ngp/node_modules/accepts/README.md +140 -0
  13. package/ngp/node_modules/accepts/index.js +238 -0
  14. package/ngp/node_modules/accepts/package.json +47 -0
  15. package/ngp/node_modules/anymatch/LICENSE +15 -0
  16. package/ngp/node_modules/anymatch/README.md +87 -0
  17. package/ngp/node_modules/anymatch/index.d.ts +19 -0
  18. package/ngp/node_modules/anymatch/index.js +104 -0
  19. package/ngp/node_modules/anymatch/package.json +48 -0
  20. package/ngp/node_modules/array-flatten/LICENSE +21 -0
  21. package/ngp/node_modules/array-flatten/README.md +43 -0
  22. package/ngp/node_modules/array-flatten/array-flatten.js +64 -0
  23. package/ngp/node_modules/array-flatten/package.json +39 -0
  24. package/ngp/node_modules/binary-extensions/binary-extensions.json +260 -0
  25. package/ngp/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  26. package/ngp/node_modules/binary-extensions/index.d.ts +14 -0
  27. package/ngp/node_modules/binary-extensions/index.js +1 -0
  28. package/ngp/node_modules/binary-extensions/license +9 -0
  29. package/ngp/node_modules/binary-extensions/package.json +38 -0
  30. package/ngp/node_modules/binary-extensions/readme.md +41 -0
  31. package/ngp/node_modules/body-parser/HISTORY.md +651 -0
  32. package/ngp/node_modules/body-parser/LICENSE +23 -0
  33. package/ngp/node_modules/body-parser/README.md +464 -0
  34. package/ngp/node_modules/body-parser/SECURITY.md +25 -0
  35. package/ngp/node_modules/body-parser/index.js +157 -0
  36. package/ngp/node_modules/body-parser/lib/read.js +205 -0
  37. package/ngp/node_modules/body-parser/lib/types/json.js +236 -0
  38. package/ngp/node_modules/body-parser/lib/types/raw.js +101 -0
  39. package/ngp/node_modules/body-parser/lib/types/text.js +121 -0
  40. package/ngp/node_modules/body-parser/lib/types/urlencoded.js +284 -0
  41. package/ngp/node_modules/body-parser/node_modules/bytes/History.md +97 -0
  42. package/ngp/node_modules/body-parser/node_modules/bytes/LICENSE +23 -0
  43. package/ngp/node_modules/body-parser/node_modules/bytes/Readme.md +152 -0
  44. package/ngp/node_modules/body-parser/node_modules/bytes/index.js +170 -0
  45. package/ngp/node_modules/body-parser/node_modules/bytes/package.json +42 -0
  46. package/ngp/node_modules/body-parser/node_modules/iconv-lite/Changelog.md +162 -0
  47. package/ngp/node_modules/body-parser/node_modules/iconv-lite/LICENSE +21 -0
  48. package/ngp/node_modules/body-parser/node_modules/iconv-lite/README.md +156 -0
  49. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  50. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  51. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/index.js +22 -0
  52. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/internal.js +188 -0
  53. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  54. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  55. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/sbcs-data.js +174 -0
  56. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  57. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  58. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  59. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  60. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  61. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  62. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  63. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  64. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/utf16.js +177 -0
  65. package/ngp/node_modules/body-parser/node_modules/iconv-lite/encodings/utf7.js +290 -0
  66. package/ngp/node_modules/body-parser/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  67. package/ngp/node_modules/body-parser/node_modules/iconv-lite/lib/extend-node.js +217 -0
  68. package/ngp/node_modules/body-parser/node_modules/iconv-lite/lib/index.d.ts +24 -0
  69. package/ngp/node_modules/body-parser/node_modules/iconv-lite/lib/index.js +153 -0
  70. package/ngp/node_modules/body-parser/node_modules/iconv-lite/lib/streams.js +121 -0
  71. package/ngp/node_modules/body-parser/node_modules/iconv-lite/package.json +46 -0
  72. package/ngp/node_modules/body-parser/package.json +56 -0
  73. package/ngp/node_modules/braces/CHANGELOG.md +184 -0
  74. package/ngp/node_modules/braces/LICENSE +21 -0
  75. package/ngp/node_modules/braces/README.md +593 -0
  76. package/ngp/node_modules/braces/index.js +170 -0
  77. package/ngp/node_modules/braces/lib/compile.js +57 -0
  78. package/ngp/node_modules/braces/lib/constants.js +57 -0
  79. package/ngp/node_modules/braces/lib/expand.js +113 -0
  80. package/ngp/node_modules/braces/lib/parse.js +333 -0
  81. package/ngp/node_modules/braces/lib/stringify.js +32 -0
  82. package/ngp/node_modules/braces/lib/utils.js +112 -0
  83. package/ngp/node_modules/braces/package.json +77 -0
  84. package/ngp/node_modules/bytes/History.md +82 -0
  85. package/ngp/node_modules/bytes/LICENSE +23 -0
  86. package/ngp/node_modules/bytes/Readme.md +125 -0
  87. package/ngp/node_modules/bytes/index.js +159 -0
  88. package/ngp/node_modules/bytes/package.json +39 -0
  89. package/ngp/node_modules/call-bind/.eslintignore +1 -0
  90. package/ngp/node_modules/call-bind/.eslintrc +17 -0
  91. package/ngp/node_modules/call-bind/.github/FUNDING.yml +12 -0
  92. package/ngp/node_modules/call-bind/.nycrc +13 -0
  93. package/ngp/node_modules/call-bind/CHANGELOG.md +42 -0
  94. package/ngp/node_modules/call-bind/LICENSE +21 -0
  95. package/ngp/node_modules/call-bind/README.md +2 -0
  96. package/ngp/node_modules/call-bind/callBound.js +15 -0
  97. package/ngp/node_modules/call-bind/index.js +47 -0
  98. package/ngp/node_modules/call-bind/package.json +80 -0
  99. package/ngp/node_modules/call-bind/test/callBound.js +55 -0
  100. package/ngp/node_modules/call-bind/test/index.js +66 -0
  101. package/ngp/node_modules/chokidar/LICENSE +21 -0
  102. package/ngp/node_modules/chokidar/README.md +308 -0
  103. package/ngp/node_modules/chokidar/index.js +973 -0
  104. package/ngp/node_modules/chokidar/lib/constants.js +65 -0
  105. package/ngp/node_modules/chokidar/lib/fsevents-handler.js +524 -0
  106. package/ngp/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  107. package/ngp/node_modules/chokidar/package.json +85 -0
  108. package/ngp/node_modules/chokidar/types/index.d.ts +188 -0
  109. package/ngp/node_modules/compressible/HISTORY.md +111 -0
  110. package/ngp/node_modules/compressible/LICENSE +24 -0
  111. package/ngp/node_modules/compressible/README.md +61 -0
  112. package/ngp/node_modules/compressible/index.js +58 -0
  113. package/ngp/node_modules/compressible/package.json +48 -0
  114. package/ngp/node_modules/compression/HISTORY.md +307 -0
  115. package/ngp/node_modules/compression/LICENSE +23 -0
  116. package/ngp/node_modules/compression/README.md +240 -0
  117. package/ngp/node_modules/compression/index.js +288 -0
  118. package/ngp/node_modules/compression/package.json +47 -0
  119. package/ngp/node_modules/content-disposition/HISTORY.md +60 -0
  120. package/ngp/node_modules/content-disposition/LICENSE +22 -0
  121. package/ngp/node_modules/content-disposition/README.md +142 -0
  122. package/ngp/node_modules/content-disposition/index.js +458 -0
  123. package/ngp/node_modules/content-disposition/node_modules/safe-buffer/LICENSE +21 -0
  124. package/ngp/node_modules/content-disposition/node_modules/safe-buffer/README.md +584 -0
  125. package/ngp/node_modules/content-disposition/node_modules/safe-buffer/index.d.ts +187 -0
  126. package/ngp/node_modules/content-disposition/node_modules/safe-buffer/index.js +65 -0
  127. package/ngp/node_modules/content-disposition/node_modules/safe-buffer/package.json +51 -0
  128. package/ngp/node_modules/content-disposition/package.json +44 -0
  129. package/ngp/node_modules/content-type/HISTORY.md +24 -0
  130. package/ngp/node_modules/content-type/LICENSE +22 -0
  131. package/ngp/node_modules/content-type/README.md +92 -0
  132. package/ngp/node_modules/content-type/index.js +222 -0
  133. package/ngp/node_modules/content-type/package.json +40 -0
  134. package/ngp/node_modules/cookie/HISTORY.md +142 -0
  135. package/ngp/node_modules/cookie/LICENSE +24 -0
  136. package/ngp/node_modules/cookie/README.md +302 -0
  137. package/ngp/node_modules/cookie/SECURITY.md +25 -0
  138. package/ngp/node_modules/cookie/index.js +270 -0
  139. package/ngp/node_modules/cookie/package.json +44 -0
  140. package/ngp/node_modules/cookie-signature/History.md +38 -0
  141. package/ngp/node_modules/cookie-signature/Readme.md +42 -0
  142. package/ngp/node_modules/cookie-signature/index.js +51 -0
  143. package/ngp/node_modules/cookie-signature/package.json +18 -0
  144. package/ngp/node_modules/crabatool/index.js +28 -0
  145. package/ngp/node_modules/crabatool/ngp/config.js +25 -0
  146. package/ngp/node_modules/crabatool/ngp/ngp.js +3 -0
  147. package/ngp/node_modules/crabatool/ngp/package.json +15 -0
  148. package/ngp/node_modules/crabatool/ngp/readme.md +4 -0
  149. package/ngp/node_modules/crabatool/package.json +25 -0
  150. package/ngp/node_modules/crabatool/readme.md +12 -0
  151. package/ngp/node_modules/crabatool/server.js +124 -0
  152. package/ngp/node_modules/debug/.coveralls.yml +1 -0
  153. package/ngp/node_modules/debug/.eslintrc +11 -0
  154. package/ngp/node_modules/debug/.travis.yml +14 -0
  155. package/ngp/node_modules/debug/CHANGELOG.md +362 -0
  156. package/ngp/node_modules/debug/LICENSE +19 -0
  157. package/ngp/node_modules/debug/Makefile +50 -0
  158. package/ngp/node_modules/debug/README.md +312 -0
  159. package/ngp/node_modules/debug/component.json +19 -0
  160. package/ngp/node_modules/debug/karma.conf.js +70 -0
  161. package/ngp/node_modules/debug/node.js +1 -0
  162. package/ngp/node_modules/debug/package.json +49 -0
  163. package/ngp/node_modules/debug/src/browser.js +185 -0
  164. package/ngp/node_modules/debug/src/debug.js +202 -0
  165. package/ngp/node_modules/debug/src/index.js +10 -0
  166. package/ngp/node_modules/debug/src/inspector-log.js +15 -0
  167. package/ngp/node_modules/debug/src/node.js +248 -0
  168. package/ngp/node_modules/depd/History.md +103 -0
  169. package/ngp/node_modules/depd/LICENSE +22 -0
  170. package/ngp/node_modules/depd/Readme.md +280 -0
  171. package/ngp/node_modules/depd/index.js +538 -0
  172. package/ngp/node_modules/depd/lib/browser/index.js +77 -0
  173. package/ngp/node_modules/depd/package.json +45 -0
  174. package/ngp/node_modules/destroy/LICENSE +23 -0
  175. package/ngp/node_modules/destroy/README.md +63 -0
  176. package/ngp/node_modules/destroy/index.js +209 -0
  177. package/ngp/node_modules/destroy/package.json +48 -0
  178. package/ngp/node_modules/ee-first/LICENSE +22 -0
  179. package/ngp/node_modules/ee-first/README.md +80 -0
  180. package/ngp/node_modules/ee-first/index.js +95 -0
  181. package/ngp/node_modules/ee-first/package.json +29 -0
  182. package/ngp/node_modules/encodeurl/HISTORY.md +14 -0
  183. package/ngp/node_modules/encodeurl/LICENSE +22 -0
  184. package/ngp/node_modules/encodeurl/README.md +128 -0
  185. package/ngp/node_modules/encodeurl/index.js +60 -0
  186. package/ngp/node_modules/encodeurl/package.json +40 -0
  187. package/ngp/node_modules/escape-html/LICENSE +24 -0
  188. package/ngp/node_modules/escape-html/Readme.md +43 -0
  189. package/ngp/node_modules/escape-html/index.js +78 -0
  190. package/ngp/node_modules/escape-html/package.json +24 -0
  191. package/ngp/node_modules/etag/HISTORY.md +83 -0
  192. package/ngp/node_modules/etag/LICENSE +22 -0
  193. package/ngp/node_modules/etag/README.md +159 -0
  194. package/ngp/node_modules/etag/index.js +131 -0
  195. package/ngp/node_modules/etag/package.json +47 -0
  196. package/ngp/node_modules/express/History.md +3579 -0
  197. package/ngp/node_modules/express/LICENSE +24 -0
  198. package/ngp/node_modules/express/Readme.md +166 -0
  199. package/ngp/node_modules/express/index.js +11 -0
  200. package/ngp/node_modules/express/lib/application.js +661 -0
  201. package/ngp/node_modules/express/lib/express.js +116 -0
  202. package/ngp/node_modules/express/lib/middleware/init.js +43 -0
  203. package/ngp/node_modules/express/lib/middleware/query.js +47 -0
  204. package/ngp/node_modules/express/lib/request.js +525 -0
  205. package/ngp/node_modules/express/lib/response.js +1169 -0
  206. package/ngp/node_modules/express/lib/router/index.js +673 -0
  207. package/ngp/node_modules/express/lib/router/layer.js +181 -0
  208. package/ngp/node_modules/express/lib/router/route.js +225 -0
  209. package/ngp/node_modules/express/lib/utils.js +304 -0
  210. package/ngp/node_modules/express/lib/view.js +182 -0
  211. package/ngp/node_modules/express/node_modules/safe-buffer/LICENSE +21 -0
  212. package/ngp/node_modules/express/node_modules/safe-buffer/README.md +584 -0
  213. package/ngp/node_modules/express/node_modules/safe-buffer/index.d.ts +187 -0
  214. package/ngp/node_modules/express/node_modules/safe-buffer/index.js +65 -0
  215. package/ngp/node_modules/express/node_modules/safe-buffer/package.json +51 -0
  216. package/ngp/node_modules/express/package.json +99 -0
  217. package/ngp/node_modules/fill-range/LICENSE +21 -0
  218. package/ngp/node_modules/fill-range/README.md +237 -0
  219. package/ngp/node_modules/fill-range/index.js +249 -0
  220. package/ngp/node_modules/fill-range/package.json +69 -0
  221. package/ngp/node_modules/finalhandler/HISTORY.md +195 -0
  222. package/ngp/node_modules/finalhandler/LICENSE +22 -0
  223. package/ngp/node_modules/finalhandler/README.md +147 -0
  224. package/ngp/node_modules/finalhandler/SECURITY.md +25 -0
  225. package/ngp/node_modules/finalhandler/index.js +336 -0
  226. package/ngp/node_modules/finalhandler/package.json +46 -0
  227. package/ngp/node_modules/forwarded/HISTORY.md +21 -0
  228. package/ngp/node_modules/forwarded/LICENSE +22 -0
  229. package/ngp/node_modules/forwarded/README.md +57 -0
  230. package/ngp/node_modules/forwarded/index.js +90 -0
  231. package/ngp/node_modules/forwarded/package.json +45 -0
  232. package/ngp/node_modules/fresh/HISTORY.md +70 -0
  233. package/ngp/node_modules/fresh/LICENSE +23 -0
  234. package/ngp/node_modules/fresh/README.md +119 -0
  235. package/ngp/node_modules/fresh/index.js +137 -0
  236. package/ngp/node_modules/fresh/package.json +46 -0
  237. package/ngp/node_modules/function-bind/.editorconfig +20 -0
  238. package/ngp/node_modules/function-bind/.eslintrc +15 -0
  239. package/ngp/node_modules/function-bind/.jscs.json +176 -0
  240. package/ngp/node_modules/function-bind/.travis.yml +168 -0
  241. package/ngp/node_modules/function-bind/LICENSE +20 -0
  242. package/ngp/node_modules/function-bind/README.md +48 -0
  243. package/ngp/node_modules/function-bind/implementation.js +52 -0
  244. package/ngp/node_modules/function-bind/index.js +5 -0
  245. package/ngp/node_modules/function-bind/package.json +63 -0
  246. package/ngp/node_modules/function-bind/test/.eslintrc +9 -0
  247. package/ngp/node_modules/function-bind/test/index.js +252 -0
  248. package/ngp/node_modules/get-intrinsic/.eslintignore +1 -0
  249. package/ngp/node_modules/get-intrinsic/.eslintrc +43 -0
  250. package/ngp/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  251. package/ngp/node_modules/get-intrinsic/.nycrc +13 -0
  252. package/ngp/node_modules/get-intrinsic/CHANGELOG.md +64 -0
  253. package/ngp/node_modules/get-intrinsic/LICENSE +21 -0
  254. package/ngp/node_modules/get-intrinsic/README.md +65 -0
  255. package/ngp/node_modules/get-intrinsic/index.js +330 -0
  256. package/ngp/node_modules/get-intrinsic/package.json +78 -0
  257. package/ngp/node_modules/get-intrinsic/test/GetIntrinsic.js +260 -0
  258. package/ngp/node_modules/glob-parent/CHANGELOG.md +110 -0
  259. package/ngp/node_modules/glob-parent/LICENSE +15 -0
  260. package/ngp/node_modules/glob-parent/README.md +137 -0
  261. package/ngp/node_modules/glob-parent/index.js +42 -0
  262. package/ngp/node_modules/glob-parent/package.json +48 -0
  263. package/ngp/node_modules/has/LICENSE-MIT +22 -0
  264. package/ngp/node_modules/has/README.md +18 -0
  265. package/ngp/node_modules/has/package.json +48 -0
  266. package/ngp/node_modules/has/src/index.js +5 -0
  267. package/ngp/node_modules/has/test/index.js +10 -0
  268. package/ngp/node_modules/has-symbols/.eslintrc +11 -0
  269. package/ngp/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  270. package/ngp/node_modules/has-symbols/.nycrc +9 -0
  271. package/ngp/node_modules/has-symbols/CHANGELOG.md +75 -0
  272. package/ngp/node_modules/has-symbols/LICENSE +21 -0
  273. package/ngp/node_modules/has-symbols/README.md +46 -0
  274. package/ngp/node_modules/has-symbols/index.js +13 -0
  275. package/ngp/node_modules/has-symbols/package.json +101 -0
  276. package/ngp/node_modules/has-symbols/shams.js +42 -0
  277. package/ngp/node_modules/has-symbols/test/index.js +22 -0
  278. package/ngp/node_modules/has-symbols/test/shams/core-js.js +28 -0
  279. package/ngp/node_modules/has-symbols/test/shams/get-own-property-symbols.js +28 -0
  280. package/ngp/node_modules/has-symbols/test/tests.js +56 -0
  281. package/ngp/node_modules/http-errors/HISTORY.md +180 -0
  282. package/ngp/node_modules/http-errors/LICENSE +23 -0
  283. package/ngp/node_modules/http-errors/README.md +169 -0
  284. package/ngp/node_modules/http-errors/index.js +289 -0
  285. package/ngp/node_modules/http-errors/package.json +50 -0
  286. package/ngp/node_modules/iconv-lite/Changelog.md +184 -0
  287. package/ngp/node_modules/iconv-lite/LICENSE +21 -0
  288. package/ngp/node_modules/iconv-lite/README.md +166 -0
  289. package/ngp/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  290. package/ngp/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  291. package/ngp/node_modules/iconv-lite/encodings/index.js +23 -0
  292. package/ngp/node_modules/iconv-lite/encodings/internal.js +188 -0
  293. package/ngp/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  294. package/ngp/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  295. package/ngp/node_modules/iconv-lite/encodings/sbcs-data.js +179 -0
  296. package/ngp/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  297. package/ngp/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  298. package/ngp/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  299. package/ngp/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  300. package/ngp/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  301. package/ngp/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  302. package/ngp/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  303. package/ngp/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  304. package/ngp/node_modules/iconv-lite/encodings/utf16.js +177 -0
  305. package/ngp/node_modules/iconv-lite/encodings/utf32.js +281 -0
  306. package/ngp/node_modules/iconv-lite/encodings/utf7.js +290 -0
  307. package/ngp/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  308. package/ngp/node_modules/iconv-lite/lib/extend-node.js +217 -0
  309. package/ngp/node_modules/iconv-lite/lib/index.d.ts +41 -0
  310. package/ngp/node_modules/iconv-lite/lib/index.js +153 -0
  311. package/ngp/node_modules/iconv-lite/lib/streams.js +121 -0
  312. package/ngp/node_modules/iconv-lite/package.json +45 -0
  313. package/ngp/node_modules/inherits/LICENSE +16 -0
  314. package/ngp/node_modules/inherits/README.md +42 -0
  315. package/ngp/node_modules/inherits/inherits.js +9 -0
  316. package/ngp/node_modules/inherits/inherits_browser.js +27 -0
  317. package/ngp/node_modules/inherits/package.json +29 -0
  318. package/ngp/node_modules/ipaddr.js/LICENSE +19 -0
  319. package/ngp/node_modules/ipaddr.js/README.md +233 -0
  320. package/ngp/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  321. package/ngp/node_modules/ipaddr.js/lib/ipaddr.js +673 -0
  322. package/ngp/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
  323. package/ngp/node_modules/ipaddr.js/package.json +35 -0
  324. package/ngp/node_modules/is-binary-path/index.d.ts +17 -0
  325. package/ngp/node_modules/is-binary-path/index.js +7 -0
  326. package/ngp/node_modules/is-binary-path/license +9 -0
  327. package/ngp/node_modules/is-binary-path/package.json +40 -0
  328. package/ngp/node_modules/is-binary-path/readme.md +34 -0
  329. package/ngp/node_modules/is-extglob/LICENSE +21 -0
  330. package/ngp/node_modules/is-extglob/README.md +107 -0
  331. package/ngp/node_modules/is-extglob/index.js +20 -0
  332. package/ngp/node_modules/is-extglob/package.json +69 -0
  333. package/ngp/node_modules/is-glob/LICENSE +21 -0
  334. package/ngp/node_modules/is-glob/README.md +206 -0
  335. package/ngp/node_modules/is-glob/index.js +150 -0
  336. package/ngp/node_modules/is-glob/package.json +81 -0
  337. package/ngp/node_modules/is-number/LICENSE +21 -0
  338. package/ngp/node_modules/is-number/README.md +187 -0
  339. package/ngp/node_modules/is-number/index.js +18 -0
  340. package/ngp/node_modules/is-number/package.json +82 -0
  341. package/ngp/node_modules/media-typer/HISTORY.md +22 -0
  342. package/ngp/node_modules/media-typer/LICENSE +22 -0
  343. package/ngp/node_modules/media-typer/README.md +81 -0
  344. package/ngp/node_modules/media-typer/index.js +270 -0
  345. package/ngp/node_modules/media-typer/package.json +26 -0
  346. package/ngp/node_modules/merge-descriptors/HISTORY.md +21 -0
  347. package/ngp/node_modules/merge-descriptors/LICENSE +23 -0
  348. package/ngp/node_modules/merge-descriptors/README.md +48 -0
  349. package/ngp/node_modules/merge-descriptors/index.js +60 -0
  350. package/ngp/node_modules/merge-descriptors/package.json +32 -0
  351. package/ngp/node_modules/methods/HISTORY.md +29 -0
  352. package/ngp/node_modules/methods/LICENSE +24 -0
  353. package/ngp/node_modules/methods/README.md +51 -0
  354. package/ngp/node_modules/methods/index.js +69 -0
  355. package/ngp/node_modules/methods/package.json +36 -0
  356. package/ngp/node_modules/mime/CHANGELOG.md +164 -0
  357. package/ngp/node_modules/mime/LICENSE +21 -0
  358. package/ngp/node_modules/mime/README.md +90 -0
  359. package/ngp/node_modules/mime/cli.js +8 -0
  360. package/ngp/node_modules/mime/mime.js +108 -0
  361. package/ngp/node_modules/mime/package.json +44 -0
  362. package/ngp/node_modules/mime/src/build.js +53 -0
  363. package/ngp/node_modules/mime/src/test.js +60 -0
  364. package/ngp/node_modules/mime/types.json +1 -0
  365. package/ngp/node_modules/mime-db/HISTORY.md +507 -0
  366. package/ngp/node_modules/mime-db/LICENSE +23 -0
  367. package/ngp/node_modules/mime-db/README.md +100 -0
  368. package/ngp/node_modules/mime-db/db.json +8519 -0
  369. package/ngp/node_modules/mime-db/index.js +12 -0
  370. package/ngp/node_modules/mime-db/package.json +60 -0
  371. package/ngp/node_modules/mime-types/HISTORY.md +397 -0
  372. package/ngp/node_modules/mime-types/LICENSE +23 -0
  373. package/ngp/node_modules/mime-types/README.md +113 -0
  374. package/ngp/node_modules/mime-types/index.js +188 -0
  375. package/ngp/node_modules/mime-types/package.json +44 -0
  376. package/ngp/node_modules/ms/index.js +152 -0
  377. package/ngp/node_modules/ms/license.md +21 -0
  378. package/ngp/node_modules/ms/package.json +37 -0
  379. package/ngp/node_modules/ms/readme.md +51 -0
  380. package/ngp/node_modules/negotiator/HISTORY.md +108 -0
  381. package/ngp/node_modules/negotiator/LICENSE +24 -0
  382. package/ngp/node_modules/negotiator/README.md +203 -0
  383. package/ngp/node_modules/negotiator/index.js +82 -0
  384. package/ngp/node_modules/negotiator/lib/charset.js +169 -0
  385. package/ngp/node_modules/negotiator/lib/encoding.js +184 -0
  386. package/ngp/node_modules/negotiator/lib/language.js +179 -0
  387. package/ngp/node_modules/negotiator/lib/mediaType.js +294 -0
  388. package/ngp/node_modules/negotiator/package.json +42 -0
  389. package/ngp/node_modules/normalize-path/LICENSE +21 -0
  390. package/ngp/node_modules/normalize-path/README.md +127 -0
  391. package/ngp/node_modules/normalize-path/index.js +35 -0
  392. package/ngp/node_modules/normalize-path/package.json +77 -0
  393. package/ngp/node_modules/object-inspect/.eslintrc +53 -0
  394. package/ngp/node_modules/object-inspect/.github/FUNDING.yml +12 -0
  395. package/ngp/node_modules/object-inspect/.nycrc +13 -0
  396. package/ngp/node_modules/object-inspect/CHANGELOG.md +360 -0
  397. package/ngp/node_modules/object-inspect/LICENSE +21 -0
  398. package/ngp/node_modules/object-inspect/example/all.js +23 -0
  399. package/ngp/node_modules/object-inspect/example/circular.js +6 -0
  400. package/ngp/node_modules/object-inspect/example/fn.js +5 -0
  401. package/ngp/node_modules/object-inspect/example/inspect.js +10 -0
  402. package/ngp/node_modules/object-inspect/index.js +512 -0
  403. package/ngp/node_modules/object-inspect/package-support.json +20 -0
  404. package/ngp/node_modules/object-inspect/package.json +94 -0
  405. package/ngp/node_modules/object-inspect/readme.markdown +86 -0
  406. package/ngp/node_modules/object-inspect/test/bigint.js +58 -0
  407. package/ngp/node_modules/object-inspect/test/browser/dom.js +15 -0
  408. package/ngp/node_modules/object-inspect/test/circular.js +16 -0
  409. package/ngp/node_modules/object-inspect/test/deep.js +12 -0
  410. package/ngp/node_modules/object-inspect/test/element.js +53 -0
  411. package/ngp/node_modules/object-inspect/test/err.js +48 -0
  412. package/ngp/node_modules/object-inspect/test/fakes.js +29 -0
  413. package/ngp/node_modules/object-inspect/test/fn.js +76 -0
  414. package/ngp/node_modules/object-inspect/test/has.js +15 -0
  415. package/ngp/node_modules/object-inspect/test/holes.js +15 -0
  416. package/ngp/node_modules/object-inspect/test/indent-option.js +271 -0
  417. package/ngp/node_modules/object-inspect/test/inspect.js +139 -0
  418. package/ngp/node_modules/object-inspect/test/lowbyte.js +12 -0
  419. package/ngp/node_modules/object-inspect/test/number.js +58 -0
  420. package/ngp/node_modules/object-inspect/test/quoteStyle.js +17 -0
  421. package/ngp/node_modules/object-inspect/test/toStringTag.js +40 -0
  422. package/ngp/node_modules/object-inspect/test/undef.js +12 -0
  423. package/ngp/node_modules/object-inspect/test/values.js +211 -0
  424. package/ngp/node_modules/object-inspect/test-core-js.js +26 -0
  425. package/ngp/node_modules/object-inspect/util.inspect.js +1 -0
  426. package/ngp/node_modules/on-finished/HISTORY.md +98 -0
  427. package/ngp/node_modules/on-finished/LICENSE +23 -0
  428. package/ngp/node_modules/on-finished/README.md +162 -0
  429. package/ngp/node_modules/on-finished/index.js +234 -0
  430. package/ngp/node_modules/on-finished/package.json +39 -0
  431. package/ngp/node_modules/on-headers/HISTORY.md +21 -0
  432. package/ngp/node_modules/on-headers/LICENSE +22 -0
  433. package/ngp/node_modules/on-headers/README.md +81 -0
  434. package/ngp/node_modules/on-headers/index.js +132 -0
  435. package/ngp/node_modules/on-headers/package.json +42 -0
  436. package/ngp/node_modules/parseurl/HISTORY.md +58 -0
  437. package/ngp/node_modules/parseurl/LICENSE +24 -0
  438. package/ngp/node_modules/parseurl/README.md +133 -0
  439. package/ngp/node_modules/parseurl/index.js +158 -0
  440. package/ngp/node_modules/parseurl/package.json +40 -0
  441. package/ngp/node_modules/path-to-regexp/History.md +36 -0
  442. package/ngp/node_modules/path-to-regexp/LICENSE +21 -0
  443. package/ngp/node_modules/path-to-regexp/Readme.md +35 -0
  444. package/ngp/node_modules/path-to-regexp/index.js +129 -0
  445. package/ngp/node_modules/path-to-regexp/package.json +30 -0
  446. package/ngp/node_modules/picomatch/CHANGELOG.md +136 -0
  447. package/ngp/node_modules/picomatch/LICENSE +21 -0
  448. package/ngp/node_modules/picomatch/README.md +708 -0
  449. package/ngp/node_modules/picomatch/index.js +3 -0
  450. package/ngp/node_modules/picomatch/lib/constants.js +179 -0
  451. package/ngp/node_modules/picomatch/lib/parse.js +1091 -0
  452. package/ngp/node_modules/picomatch/lib/picomatch.js +342 -0
  453. package/ngp/node_modules/picomatch/lib/scan.js +391 -0
  454. package/ngp/node_modules/picomatch/lib/utils.js +64 -0
  455. package/ngp/node_modules/picomatch/package.json +81 -0
  456. package/ngp/node_modules/proxy-addr/HISTORY.md +161 -0
  457. package/ngp/node_modules/proxy-addr/LICENSE +22 -0
  458. package/ngp/node_modules/proxy-addr/README.md +139 -0
  459. package/ngp/node_modules/proxy-addr/index.js +327 -0
  460. package/ngp/node_modules/proxy-addr/package.json +47 -0
  461. package/ngp/node_modules/qs/.editorconfig +40 -0
  462. package/ngp/node_modules/qs/.eslintrc +38 -0
  463. package/ngp/node_modules/qs/.github/FUNDING.yml +12 -0
  464. package/ngp/node_modules/qs/.nycrc +13 -0
  465. package/ngp/node_modules/qs/CHANGELOG.md +388 -0
  466. package/ngp/node_modules/qs/LICENSE.md +29 -0
  467. package/ngp/node_modules/qs/README.md +623 -0
  468. package/ngp/node_modules/qs/dist/qs.js +2044 -0
  469. package/ngp/node_modules/qs/lib/formats.js +23 -0
  470. package/ngp/node_modules/qs/lib/index.js +11 -0
  471. package/ngp/node_modules/qs/lib/parse.js +263 -0
  472. package/ngp/node_modules/qs/lib/stringify.js +317 -0
  473. package/ngp/node_modules/qs/lib/utils.js +252 -0
  474. package/ngp/node_modules/qs/package.json +73 -0
  475. package/ngp/node_modules/qs/test/parse.js +841 -0
  476. package/ngp/node_modules/qs/test/stringify.js +865 -0
  477. package/ngp/node_modules/qs/test/utils.js +136 -0
  478. package/ngp/node_modules/range-parser/HISTORY.md +56 -0
  479. package/ngp/node_modules/range-parser/LICENSE +23 -0
  480. package/ngp/node_modules/range-parser/README.md +84 -0
  481. package/ngp/node_modules/range-parser/index.js +162 -0
  482. package/ngp/node_modules/range-parser/package.json +44 -0
  483. package/ngp/node_modules/raw-body/HISTORY.md +303 -0
  484. package/ngp/node_modules/raw-body/LICENSE +22 -0
  485. package/ngp/node_modules/raw-body/README.md +223 -0
  486. package/ngp/node_modules/raw-body/SECURITY.md +24 -0
  487. package/ngp/node_modules/raw-body/index.d.ts +87 -0
  488. package/ngp/node_modules/raw-body/index.js +329 -0
  489. package/ngp/node_modules/raw-body/node_modules/bytes/History.md +97 -0
  490. package/ngp/node_modules/raw-body/node_modules/bytes/LICENSE +23 -0
  491. package/ngp/node_modules/raw-body/node_modules/bytes/Readme.md +152 -0
  492. package/ngp/node_modules/raw-body/node_modules/bytes/index.js +170 -0
  493. package/ngp/node_modules/raw-body/node_modules/bytes/package.json +42 -0
  494. package/ngp/node_modules/raw-body/node_modules/iconv-lite/Changelog.md +162 -0
  495. package/ngp/node_modules/raw-body/node_modules/iconv-lite/LICENSE +21 -0
  496. package/ngp/node_modules/raw-body/node_modules/iconv-lite/README.md +156 -0
  497. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  498. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  499. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/index.js +22 -0
  500. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/internal.js +188 -0
  501. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  502. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  503. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/sbcs-data.js +174 -0
  504. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  505. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  506. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  507. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  508. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  509. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  510. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  511. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  512. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/utf16.js +177 -0
  513. package/ngp/node_modules/raw-body/node_modules/iconv-lite/encodings/utf7.js +290 -0
  514. package/ngp/node_modules/raw-body/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  515. package/ngp/node_modules/raw-body/node_modules/iconv-lite/lib/extend-node.js +217 -0
  516. package/ngp/node_modules/raw-body/node_modules/iconv-lite/lib/index.d.ts +24 -0
  517. package/ngp/node_modules/raw-body/node_modules/iconv-lite/lib/index.js +153 -0
  518. package/ngp/node_modules/raw-body/node_modules/iconv-lite/lib/streams.js +121 -0
  519. package/ngp/node_modules/raw-body/node_modules/iconv-lite/package.json +46 -0
  520. package/ngp/node_modules/raw-body/package.json +49 -0
  521. package/ngp/node_modules/readdirp/LICENSE +21 -0
  522. package/ngp/node_modules/readdirp/README.md +122 -0
  523. package/ngp/node_modules/readdirp/index.d.ts +43 -0
  524. package/ngp/node_modules/readdirp/index.js +287 -0
  525. package/ngp/node_modules/readdirp/package.json +122 -0
  526. package/ngp/node_modules/safe-buffer/LICENSE +21 -0
  527. package/ngp/node_modules/safe-buffer/README.md +584 -0
  528. package/ngp/node_modules/safe-buffer/index.d.ts +187 -0
  529. package/ngp/node_modules/safe-buffer/index.js +62 -0
  530. package/ngp/node_modules/safe-buffer/package.json +37 -0
  531. package/ngp/node_modules/safer-buffer/LICENSE +21 -0
  532. package/ngp/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  533. package/ngp/node_modules/safer-buffer/Readme.md +156 -0
  534. package/ngp/node_modules/safer-buffer/dangerous.js +58 -0
  535. package/ngp/node_modules/safer-buffer/package.json +34 -0
  536. package/ngp/node_modules/safer-buffer/safer.js +77 -0
  537. package/ngp/node_modules/safer-buffer/tests.js +406 -0
  538. package/ngp/node_modules/send/HISTORY.md +521 -0
  539. package/ngp/node_modules/send/LICENSE +23 -0
  540. package/ngp/node_modules/send/README.md +327 -0
  541. package/ngp/node_modules/send/SECURITY.md +24 -0
  542. package/ngp/node_modules/send/index.js +1143 -0
  543. package/ngp/node_modules/send/node_modules/ms/index.js +162 -0
  544. package/ngp/node_modules/send/node_modules/ms/license.md +21 -0
  545. package/ngp/node_modules/send/node_modules/ms/package.json +38 -0
  546. package/ngp/node_modules/send/node_modules/ms/readme.md +59 -0
  547. package/ngp/node_modules/send/package.json +62 -0
  548. package/ngp/node_modules/serve-static/HISTORY.md +471 -0
  549. package/ngp/node_modules/serve-static/LICENSE +25 -0
  550. package/ngp/node_modules/serve-static/README.md +257 -0
  551. package/ngp/node_modules/serve-static/index.js +210 -0
  552. package/ngp/node_modules/serve-static/package.json +42 -0
  553. package/ngp/node_modules/setprototypeof/LICENSE +13 -0
  554. package/ngp/node_modules/setprototypeof/README.md +31 -0
  555. package/ngp/node_modules/setprototypeof/index.d.ts +2 -0
  556. package/ngp/node_modules/setprototypeof/index.js +17 -0
  557. package/ngp/node_modules/setprototypeof/package.json +38 -0
  558. package/ngp/node_modules/setprototypeof/test/index.js +24 -0
  559. package/ngp/node_modules/side-channel/.eslintignore +1 -0
  560. package/ngp/node_modules/side-channel/.eslintrc +11 -0
  561. package/ngp/node_modules/side-channel/.github/FUNDING.yml +12 -0
  562. package/ngp/node_modules/side-channel/.nycrc +13 -0
  563. package/ngp/node_modules/side-channel/CHANGELOG.md +65 -0
  564. package/ngp/node_modules/side-channel/LICENSE +21 -0
  565. package/ngp/node_modules/side-channel/README.md +2 -0
  566. package/ngp/node_modules/side-channel/index.js +124 -0
  567. package/ngp/node_modules/side-channel/package.json +67 -0
  568. package/ngp/node_modules/side-channel/test/index.js +78 -0
  569. package/ngp/node_modules/statuses/HISTORY.md +82 -0
  570. package/ngp/node_modules/statuses/LICENSE +23 -0
  571. package/ngp/node_modules/statuses/README.md +136 -0
  572. package/ngp/node_modules/statuses/codes.json +65 -0
  573. package/ngp/node_modules/statuses/index.js +146 -0
  574. package/ngp/node_modules/statuses/package.json +49 -0
  575. package/ngp/node_modules/to-regex-range/LICENSE +21 -0
  576. package/ngp/node_modules/to-regex-range/README.md +305 -0
  577. package/ngp/node_modules/to-regex-range/index.js +288 -0
  578. package/ngp/node_modules/to-regex-range/package.json +88 -0
  579. package/ngp/node_modules/toidentifier/HISTORY.md +9 -0
  580. package/ngp/node_modules/toidentifier/LICENSE +21 -0
  581. package/ngp/node_modules/toidentifier/README.md +61 -0
  582. package/ngp/node_modules/toidentifier/index.js +32 -0
  583. package/ngp/node_modules/toidentifier/package.json +38 -0
  584. package/ngp/node_modules/type-is/HISTORY.md +259 -0
  585. package/ngp/node_modules/type-is/LICENSE +23 -0
  586. package/ngp/node_modules/type-is/README.md +170 -0
  587. package/ngp/node_modules/type-is/index.js +266 -0
  588. package/ngp/node_modules/type-is/package.json +45 -0
  589. package/ngp/node_modules/uglify-js/LICENSE +29 -0
  590. package/ngp/node_modules/uglify-js/README.md +1423 -0
  591. package/ngp/node_modules/uglify-js/bin/uglifyjs +603 -0
  592. package/ngp/node_modules/uglify-js/lib/ast.js +2132 -0
  593. package/ngp/node_modules/uglify-js/lib/compress.js +13762 -0
  594. package/ngp/node_modules/uglify-js/lib/minify.js +277 -0
  595. package/ngp/node_modules/uglify-js/lib/mozilla-ast.js +1274 -0
  596. package/ngp/node_modules/uglify-js/lib/output.js +1936 -0
  597. package/ngp/node_modules/uglify-js/lib/parse.js +2559 -0
  598. package/ngp/node_modules/uglify-js/lib/propmangle.js +259 -0
  599. package/ngp/node_modules/uglify-js/lib/scope.js +860 -0
  600. package/ngp/node_modules/uglify-js/lib/sourcemap.js +195 -0
  601. package/ngp/node_modules/uglify-js/lib/transform.js +250 -0
  602. package/ngp/node_modules/uglify-js/lib/utils.js +285 -0
  603. package/ngp/node_modules/uglify-js/package.json +56 -0
  604. package/ngp/node_modules/uglify-js/tools/domprops.html +456 -0
  605. package/ngp/node_modules/uglify-js/tools/domprops.json +8325 -0
  606. package/ngp/node_modules/uglify-js/tools/exports.js +8 -0
  607. package/ngp/node_modules/uglify-js/tools/node.js +110 -0
  608. package/ngp/node_modules/uglify-js/tools/tty.js +22 -0
  609. package/ngp/node_modules/unpipe/HISTORY.md +4 -0
  610. package/ngp/node_modules/unpipe/LICENSE +22 -0
  611. package/ngp/node_modules/unpipe/README.md +43 -0
  612. package/ngp/node_modules/unpipe/index.js +69 -0
  613. package/ngp/node_modules/unpipe/package.json +27 -0
  614. package/ngp/node_modules/utils-merge/LICENSE +20 -0
  615. package/ngp/node_modules/utils-merge/README.md +34 -0
  616. package/ngp/node_modules/utils-merge/index.js +23 -0
  617. package/ngp/node_modules/utils-merge/package.json +40 -0
  618. package/ngp/node_modules/vary/HISTORY.md +39 -0
  619. package/ngp/node_modules/vary/LICENSE +22 -0
  620. package/ngp/node_modules/vary/README.md +101 -0
  621. package/ngp/node_modules/vary/index.js +149 -0
  622. package/ngp/node_modules/vary/package.json +43 -0
  623. package/ngp/package-lock.json +1508 -0
  624. package/package.json +3 -2
  625. package/readme.md +0 -4
@@ -0,0 +1,234 @@
1
+ /*!
2
+ * on-finished
3
+ * Copyright(c) 2013 Jonathan Ong
4
+ * Copyright(c) 2014 Douglas Christopher Wilson
5
+ * MIT Licensed
6
+ */
7
+
8
+ 'use strict'
9
+
10
+ /**
11
+ * Module exports.
12
+ * @public
13
+ */
14
+
15
+ module.exports = onFinished
16
+ module.exports.isFinished = isFinished
17
+
18
+ /**
19
+ * Module dependencies.
20
+ * @private
21
+ */
22
+
23
+ var asyncHooks = tryRequireAsyncHooks()
24
+ var first = require('ee-first')
25
+
26
+ /**
27
+ * Variables.
28
+ * @private
29
+ */
30
+
31
+ /* istanbul ignore next */
32
+ var defer = typeof setImmediate === 'function'
33
+ ? setImmediate
34
+ : function (fn) { process.nextTick(fn.bind.apply(fn, arguments)) }
35
+
36
+ /**
37
+ * Invoke callback when the response has finished, useful for
38
+ * cleaning up resources afterwards.
39
+ *
40
+ * @param {object} msg
41
+ * @param {function} listener
42
+ * @return {object}
43
+ * @public
44
+ */
45
+
46
+ function onFinished (msg, listener) {
47
+ if (isFinished(msg) !== false) {
48
+ defer(listener, null, msg)
49
+ return msg
50
+ }
51
+
52
+ // attach the listener to the message
53
+ attachListener(msg, wrap(listener))
54
+
55
+ return msg
56
+ }
57
+
58
+ /**
59
+ * Determine if message is already finished.
60
+ *
61
+ * @param {object} msg
62
+ * @return {boolean}
63
+ * @public
64
+ */
65
+
66
+ function isFinished (msg) {
67
+ var socket = msg.socket
68
+
69
+ if (typeof msg.finished === 'boolean') {
70
+ // OutgoingMessage
71
+ return Boolean(msg.finished || (socket && !socket.writable))
72
+ }
73
+
74
+ if (typeof msg.complete === 'boolean') {
75
+ // IncomingMessage
76
+ return Boolean(msg.upgrade || !socket || !socket.readable || (msg.complete && !msg.readable))
77
+ }
78
+
79
+ // don't know
80
+ return undefined
81
+ }
82
+
83
+ /**
84
+ * Attach a finished listener to the message.
85
+ *
86
+ * @param {object} msg
87
+ * @param {function} callback
88
+ * @private
89
+ */
90
+
91
+ function attachFinishedListener (msg, callback) {
92
+ var eeMsg
93
+ var eeSocket
94
+ var finished = false
95
+
96
+ function onFinish (error) {
97
+ eeMsg.cancel()
98
+ eeSocket.cancel()
99
+
100
+ finished = true
101
+ callback(error)
102
+ }
103
+
104
+ // finished on first message event
105
+ eeMsg = eeSocket = first([[msg, 'end', 'finish']], onFinish)
106
+
107
+ function onSocket (socket) {
108
+ // remove listener
109
+ msg.removeListener('socket', onSocket)
110
+
111
+ if (finished) return
112
+ if (eeMsg !== eeSocket) return
113
+
114
+ // finished on first socket event
115
+ eeSocket = first([[socket, 'error', 'close']], onFinish)
116
+ }
117
+
118
+ if (msg.socket) {
119
+ // socket already assigned
120
+ onSocket(msg.socket)
121
+ return
122
+ }
123
+
124
+ // wait for socket to be assigned
125
+ msg.on('socket', onSocket)
126
+
127
+ if (msg.socket === undefined) {
128
+ // istanbul ignore next: node.js 0.8 patch
129
+ patchAssignSocket(msg, onSocket)
130
+ }
131
+ }
132
+
133
+ /**
134
+ * Attach the listener to the message.
135
+ *
136
+ * @param {object} msg
137
+ * @return {function}
138
+ * @private
139
+ */
140
+
141
+ function attachListener (msg, listener) {
142
+ var attached = msg.__onFinished
143
+
144
+ // create a private single listener with queue
145
+ if (!attached || !attached.queue) {
146
+ attached = msg.__onFinished = createListener(msg)
147
+ attachFinishedListener(msg, attached)
148
+ }
149
+
150
+ attached.queue.push(listener)
151
+ }
152
+
153
+ /**
154
+ * Create listener on message.
155
+ *
156
+ * @param {object} msg
157
+ * @return {function}
158
+ * @private
159
+ */
160
+
161
+ function createListener (msg) {
162
+ function listener (err) {
163
+ if (msg.__onFinished === listener) msg.__onFinished = null
164
+ if (!listener.queue) return
165
+
166
+ var queue = listener.queue
167
+ listener.queue = null
168
+
169
+ for (var i = 0; i < queue.length; i++) {
170
+ queue[i](err, msg)
171
+ }
172
+ }
173
+
174
+ listener.queue = []
175
+
176
+ return listener
177
+ }
178
+
179
+ /**
180
+ * Patch ServerResponse.prototype.assignSocket for node.js 0.8.
181
+ *
182
+ * @param {ServerResponse} res
183
+ * @param {function} callback
184
+ * @private
185
+ */
186
+
187
+ // istanbul ignore next: node.js 0.8 patch
188
+ function patchAssignSocket (res, callback) {
189
+ var assignSocket = res.assignSocket
190
+
191
+ if (typeof assignSocket !== 'function') return
192
+
193
+ // res.on('socket', callback) is broken in 0.8
194
+ res.assignSocket = function _assignSocket (socket) {
195
+ assignSocket.call(this, socket)
196
+ callback(socket)
197
+ }
198
+ }
199
+
200
+ /**
201
+ * Try to require async_hooks
202
+ * @private
203
+ */
204
+
205
+ function tryRequireAsyncHooks () {
206
+ try {
207
+ return require('async_hooks')
208
+ } catch (e) {
209
+ return {}
210
+ }
211
+ }
212
+
213
+ /**
214
+ * Wrap function with async resource, if possible.
215
+ * AsyncResource.bind static method backported.
216
+ * @private
217
+ */
218
+
219
+ function wrap (fn) {
220
+ var res
221
+
222
+ // create anonymous resource
223
+ if (asyncHooks.AsyncResource) {
224
+ res = new asyncHooks.AsyncResource(fn.name || 'bound-anonymous-fn')
225
+ }
226
+
227
+ // incompatible node.js
228
+ if (!res || !res.runInAsyncScope) {
229
+ return fn
230
+ }
231
+
232
+ // return bound function
233
+ return res.runInAsyncScope.bind(res, fn, null)
234
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "on-finished",
3
+ "description": "Execute a callback when a request closes, finishes, or errors",
4
+ "version": "2.4.1",
5
+ "contributors": [
6
+ "Douglas Christopher Wilson <doug@somethingdoug.com>",
7
+ "Jonathan Ong <me@jongleberry.com> (http://jongleberry.com)"
8
+ ],
9
+ "license": "MIT",
10
+ "repository": "jshttp/on-finished",
11
+ "dependencies": {
12
+ "ee-first": "1.1.1"
13
+ },
14
+ "devDependencies": {
15
+ "eslint": "7.32.0",
16
+ "eslint-config-standard": "14.1.1",
17
+ "eslint-plugin-import": "2.25.4",
18
+ "eslint-plugin-markdown": "2.2.1",
19
+ "eslint-plugin-node": "11.1.0",
20
+ "eslint-plugin-promise": "5.2.0",
21
+ "eslint-plugin-standard": "4.1.0",
22
+ "mocha": "9.2.1",
23
+ "nyc": "15.1.0"
24
+ },
25
+ "engines": {
26
+ "node": ">= 0.8"
27
+ },
28
+ "files": [
29
+ "HISTORY.md",
30
+ "LICENSE",
31
+ "index.js"
32
+ ],
33
+ "scripts": {
34
+ "lint": "eslint .",
35
+ "test": "mocha --reporter spec --bail --check-leaks test/",
36
+ "test-ci": "nyc --reporter=lcovonly --reporter=text npm test",
37
+ "test-cov": "nyc --reporter=html --reporter=text npm test"
38
+ }
39
+ }
@@ -0,0 +1,21 @@
1
+ 1.0.2 / 2019-02-21
2
+ ==================
3
+
4
+ * Fix `res.writeHead` patch missing return value
5
+
6
+ 1.0.1 / 2015-09-29
7
+ ==================
8
+
9
+ * perf: enable strict mode
10
+
11
+ 1.0.0 / 2014-08-10
12
+ ==================
13
+
14
+ * Honor `res.statusCode` change in `listener`
15
+ * Move to `jshttp` organization
16
+ * Prevent `arguments`-related de-opt
17
+
18
+ 0.0.0 / 2014-05-13
19
+ ==================
20
+
21
+ * Initial implementation
@@ -0,0 +1,22 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2014 Douglas Christopher Wilson
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ 'Software'), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,81 @@
1
+ # on-headers
2
+
3
+ [![NPM Version][npm-version-image]][npm-url]
4
+ [![NPM Downloads][npm-downloads-image]][npm-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
+ Execute a listener when a response is about to write headers.
10
+
11
+ ## Installation
12
+
13
+ This is a [Node.js](https://nodejs.org/en/) module available through the
14
+ [npm registry](https://www.npmjs.com/). Installation is done using the
15
+ [`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
16
+
17
+ ```sh
18
+ $ npm install on-headers
19
+ ```
20
+
21
+ ## API
22
+
23
+ <!-- eslint-disable no-unused-vars -->
24
+
25
+ ```js
26
+ var onHeaders = require('on-headers')
27
+ ```
28
+
29
+ ### onHeaders(res, listener)
30
+
31
+ This will add the listener `listener` to fire when headers are emitted for `res`.
32
+ The listener is passed the `response` object as it's context (`this`). Headers are
33
+ considered to be emitted only once, right before they are sent to the client.
34
+
35
+ When this is called multiple times on the same `res`, the `listener`s are fired
36
+ in the reverse order they were added.
37
+
38
+ ## Examples
39
+
40
+ ```js
41
+ var http = require('http')
42
+ var onHeaders = require('on-headers')
43
+
44
+ http
45
+ .createServer(onRequest)
46
+ .listen(3000)
47
+
48
+ function addPoweredBy () {
49
+ // set if not set by end of request
50
+ if (!this.getHeader('X-Powered-By')) {
51
+ this.setHeader('X-Powered-By', 'Node.js')
52
+ }
53
+ }
54
+
55
+ function onRequest (req, res) {
56
+ onHeaders(res, addPoweredBy)
57
+
58
+ res.setHeader('Content-Type', 'text/plain')
59
+ res.end('hello!')
60
+ }
61
+ ```
62
+
63
+ ## Testing
64
+
65
+ ```sh
66
+ $ npm test
67
+ ```
68
+
69
+ ## License
70
+
71
+ [MIT](LICENSE)
72
+
73
+ [coveralls-image]: https://badgen.net/coveralls/c/github/jshttp/on-headers/master
74
+ [coveralls-url]: https://coveralls.io/r/jshttp/on-headers?branch=master
75
+ [node-version-image]: https://badgen.net/npm/node/on-headers
76
+ [node-version-url]: https://nodejs.org/en/download
77
+ [npm-downloads-image]: https://badgen.net/npm/dm/on-headers
78
+ [npm-url]: https://npmjs.org/package/on-headers
79
+ [npm-version-image]: https://badgen.net/npm/v/on-headers
80
+ [travis-image]: https://badgen.net/travis/jshttp/on-headers/master
81
+ [travis-url]: https://travis-ci.org/jshttp/on-headers
@@ -0,0 +1,132 @@
1
+ /*!
2
+ * on-headers
3
+ * Copyright(c) 2014 Douglas Christopher Wilson
4
+ * MIT Licensed
5
+ */
6
+
7
+ 'use strict'
8
+
9
+ /**
10
+ * Module exports.
11
+ * @public
12
+ */
13
+
14
+ module.exports = onHeaders
15
+
16
+ /**
17
+ * Create a replacement writeHead method.
18
+ *
19
+ * @param {function} prevWriteHead
20
+ * @param {function} listener
21
+ * @private
22
+ */
23
+
24
+ function createWriteHead (prevWriteHead, listener) {
25
+ var fired = false
26
+
27
+ // return function with core name and argument list
28
+ return function writeHead (statusCode) {
29
+ // set headers from arguments
30
+ var args = setWriteHeadHeaders.apply(this, arguments)
31
+
32
+ // fire listener
33
+ if (!fired) {
34
+ fired = true
35
+ listener.call(this)
36
+
37
+ // pass-along an updated status code
38
+ if (typeof args[0] === 'number' && this.statusCode !== args[0]) {
39
+ args[0] = this.statusCode
40
+ args.length = 1
41
+ }
42
+ }
43
+
44
+ return prevWriteHead.apply(this, args)
45
+ }
46
+ }
47
+
48
+ /**
49
+ * Execute a listener when a response is about to write headers.
50
+ *
51
+ * @param {object} res
52
+ * @return {function} listener
53
+ * @public
54
+ */
55
+
56
+ function onHeaders (res, listener) {
57
+ if (!res) {
58
+ throw new TypeError('argument res is required')
59
+ }
60
+
61
+ if (typeof listener !== 'function') {
62
+ throw new TypeError('argument listener must be a function')
63
+ }
64
+
65
+ res.writeHead = createWriteHead(res.writeHead, listener)
66
+ }
67
+
68
+ /**
69
+ * Set headers contained in array on the response object.
70
+ *
71
+ * @param {object} res
72
+ * @param {array} headers
73
+ * @private
74
+ */
75
+
76
+ function setHeadersFromArray (res, headers) {
77
+ for (var i = 0; i < headers.length; i++) {
78
+ res.setHeader(headers[i][0], headers[i][1])
79
+ }
80
+ }
81
+
82
+ /**
83
+ * Set headers contained in object on the response object.
84
+ *
85
+ * @param {object} res
86
+ * @param {object} headers
87
+ * @private
88
+ */
89
+
90
+ function setHeadersFromObject (res, headers) {
91
+ var keys = Object.keys(headers)
92
+ for (var i = 0; i < keys.length; i++) {
93
+ var k = keys[i]
94
+ if (k) res.setHeader(k, headers[k])
95
+ }
96
+ }
97
+
98
+ /**
99
+ * Set headers and other properties on the response object.
100
+ *
101
+ * @param {number} statusCode
102
+ * @private
103
+ */
104
+
105
+ function setWriteHeadHeaders (statusCode) {
106
+ var length = arguments.length
107
+ var headerIndex = length > 1 && typeof arguments[1] === 'string'
108
+ ? 2
109
+ : 1
110
+
111
+ var headers = length >= headerIndex + 1
112
+ ? arguments[headerIndex]
113
+ : undefined
114
+
115
+ this.statusCode = statusCode
116
+
117
+ if (Array.isArray(headers)) {
118
+ // handle array case
119
+ setHeadersFromArray(this, headers)
120
+ } else if (headers) {
121
+ // handle object case
122
+ setHeadersFromObject(this, headers)
123
+ }
124
+
125
+ // copy leading arguments
126
+ var args = new Array(Math.min(length, headerIndex))
127
+ for (var i = 0; i < args.length; i++) {
128
+ args[i] = arguments[i]
129
+ }
130
+
131
+ return args
132
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "on-headers",
3
+ "description": "Execute a listener when a response is about to write headers",
4
+ "version": "1.0.2",
5
+ "author": "Douglas Christopher Wilson <doug@somethingdoug.com>",
6
+ "license": "MIT",
7
+ "keywords": [
8
+ "event",
9
+ "headers",
10
+ "http",
11
+ "onheaders"
12
+ ],
13
+ "repository": "jshttp/on-headers",
14
+ "devDependencies": {
15
+ "eslint": "5.14.1",
16
+ "eslint-config-standard": "12.0.0",
17
+ "eslint-plugin-import": "2.16.0",
18
+ "eslint-plugin-markdown": "1.0.0",
19
+ "eslint-plugin-node": "8.0.1",
20
+ "eslint-plugin-promise": "4.0.1",
21
+ "eslint-plugin-standard": "4.0.0",
22
+ "istanbul": "0.4.5",
23
+ "mocha": "6.0.1",
24
+ "supertest": "3.4.2"
25
+ },
26
+ "files": [
27
+ "LICENSE",
28
+ "HISTORY.md",
29
+ "README.md",
30
+ "index.js"
31
+ ],
32
+ "engines": {
33
+ "node": ">= 0.8"
34
+ },
35
+ "scripts": {
36
+ "lint": "eslint --plugin markdown --ext js,md .",
37
+ "test": "mocha --reporter spec --bail --check-leaks test/",
38
+ "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
39
+ "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/",
40
+ "version": "node scripts/version-history.js && git add HISTORY.md"
41
+ }
42
+ }
@@ -0,0 +1,58 @@
1
+ 1.3.3 / 2019-04-15
2
+ ==================
3
+
4
+ * Fix Node.js 0.8 return value inconsistencies
5
+
6
+ 1.3.2 / 2017-09-09
7
+ ==================
8
+
9
+ * perf: reduce overhead for full URLs
10
+ * perf: unroll the "fast-path" `RegExp`
11
+
12
+ 1.3.1 / 2016-01-17
13
+ ==================
14
+
15
+ * perf: enable strict mode
16
+
17
+ 1.3.0 / 2014-08-09
18
+ ==================
19
+
20
+ * Add `parseurl.original` for parsing `req.originalUrl` with fallback
21
+ * Return `undefined` if `req.url` is `undefined`
22
+
23
+ 1.2.0 / 2014-07-21
24
+ ==================
25
+
26
+ * Cache URLs based on original value
27
+ * Remove no-longer-needed URL mis-parse work-around
28
+ * Simplify the "fast-path" `RegExp`
29
+
30
+ 1.1.3 / 2014-07-08
31
+ ==================
32
+
33
+ * Fix typo
34
+
35
+ 1.1.2 / 2014-07-08
36
+ ==================
37
+
38
+ * Seriously fix Node.js 0.8 compatibility
39
+
40
+ 1.1.1 / 2014-07-08
41
+ ==================
42
+
43
+ * Fix Node.js 0.8 compatibility
44
+
45
+ 1.1.0 / 2014-07-08
46
+ ==================
47
+
48
+ * Incorporate URL href-only parse fast-path
49
+
50
+ 1.0.1 / 2014-03-08
51
+ ==================
52
+
53
+ * Add missing `require`
54
+
55
+ 1.0.0 / 2014-03-08
56
+ ==================
57
+
58
+ * Genesis from `connect`
@@ -0,0 +1,24 @@
1
+
2
+ (The MIT License)
3
+
4
+ Copyright (c) 2014 Jonathan Ong <me@jongleberry.com>
5
+ Copyright (c) 2014-2017 Douglas Christopher Wilson <doug@somethingdoug.com>
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining
8
+ a copy of this software and associated documentation files (the
9
+ 'Software'), to deal in the Software without restriction, including
10
+ without limitation the rights to use, copy, modify, merge, publish,
11
+ distribute, sublicense, and/or sell copies of the Software, and to
12
+ permit persons to whom the Software is furnished to do so, subject to
13
+ the following conditions:
14
+
15
+ The above copyright notice and this permission notice shall be
16
+ included in all copies or substantial portions of the Software.
17
+
18
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
19
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.