supipowers 1.1.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (718) hide show
  1. package/README.md +83 -237
  2. package/bin/ctx-mode-wrapper.mjs +3 -3
  3. package/bin/install.ts +6 -1
  4. package/package.json +12 -23
  5. package/skills/planning/SKILL.md +2 -4
  6. package/skills/release/SKILL.md +5 -2
  7. package/src/bootstrap.ts +16 -33
  8. package/src/commands/commit.ts +44 -0
  9. package/src/commands/config.ts +0 -27
  10. package/src/commands/context.ts +117 -0
  11. package/src/commands/doctor.ts +1 -2
  12. package/src/commands/fix-pr.ts +16 -42
  13. package/src/commands/mcp.ts +121 -3
  14. package/src/commands/plan.ts +5 -1
  15. package/src/commands/release.ts +385 -48
  16. package/src/commands/review.ts +1 -1
  17. package/src/commands/status.ts +9 -26
  18. package/src/commands/supi.ts +2 -5
  19. package/src/config/defaults.ts +0 -19
  20. package/src/config/model-config.ts +0 -19
  21. package/src/context/analyzer.ts +316 -0
  22. package/src/deps/registry.ts +2 -4
  23. package/src/fix-pr/bot-detector.ts +41 -0
  24. package/src/fix-pr/scripts/fetch-pr-comments.sh +2 -2
  25. package/src/fix-pr/types.ts +1 -0
  26. package/src/git/commit-msg-hook.ts +21 -0
  27. package/src/git/commit-msg.ts +53 -0
  28. package/src/git/commit.ts +677 -0
  29. package/src/git/conventions.ts +215 -0
  30. package/src/git/status.ts +27 -0
  31. package/src/global.d.ts +5 -0
  32. package/src/index.ts +1 -7
  33. package/src/mcp/config.ts +80 -1
  34. package/src/mcp/docs.ts +1 -1
  35. package/src/mcp/types.ts +14 -0
  36. package/src/planning/approval-flow.ts +174 -0
  37. package/src/planning/plan-writer-prompt.ts +6 -5
  38. package/src/planning/prompt-builder.ts +4 -3
  39. package/src/platform/detect.ts +4 -6
  40. package/src/platform/omp.ts +16 -15
  41. package/src/platform/test-utils.ts +18 -17
  42. package/src/platform/types.ts +7 -6
  43. package/src/release/changelog.ts +30 -20
  44. package/src/release/commit-types.ts +35 -0
  45. package/src/release/executor.ts +65 -26
  46. package/src/release/prompt.ts +1 -1
  47. package/src/release/version.ts +27 -0
  48. package/src/storage/plans.ts +2 -12
  49. package/src/types.ts +7 -55
  50. package/bin/.omp/SYSTEM.md +0 -77
  51. package/bin/.omp/supipowers/sessions/events.db +0 -0
  52. package/bin/.omp/supipowers/sessions/events.db-shm +0 -0
  53. package/bin/.omp/supipowers/sessions/events.db-wal +0 -0
  54. package/src/commands/run.ts +0 -511
  55. package/src/orchestrator/agent-grid.ts +0 -439
  56. package/src/orchestrator/agent-prompts.ts +0 -290
  57. package/src/orchestrator/batch-scheduler.ts +0 -59
  58. package/src/orchestrator/conflict-resolver.ts +0 -39
  59. package/src/orchestrator/dispatcher.ts +0 -666
  60. package/src/orchestrator/progress-renderer.ts +0 -281
  61. package/src/orchestrator/prompts.ts +0 -149
  62. package/src/orchestrator/result-collector.ts +0 -72
  63. package/src/orchestrator/run-progress.ts +0 -95
  64. package/src/platform/pi.ts +0 -61
  65. package/src/storage/runs.ts +0 -126
  66. package/src/types/bun-sqlite.d.ts +0 -24
  67. package/src/visual/scripts/node_modules/.package-lock.json +0 -869
  68. package/src/visual/scripts/node_modules/accepts/HISTORY.md +0 -243
  69. package/src/visual/scripts/node_modules/accepts/LICENSE +0 -23
  70. package/src/visual/scripts/node_modules/accepts/README.md +0 -140
  71. package/src/visual/scripts/node_modules/accepts/index.js +0 -238
  72. package/src/visual/scripts/node_modules/accepts/package.json +0 -47
  73. package/src/visual/scripts/node_modules/array-flatten/LICENSE +0 -21
  74. package/src/visual/scripts/node_modules/array-flatten/README.md +0 -43
  75. package/src/visual/scripts/node_modules/array-flatten/array-flatten.js +0 -64
  76. package/src/visual/scripts/node_modules/array-flatten/package.json +0 -39
  77. package/src/visual/scripts/node_modules/body-parser/HISTORY.md +0 -680
  78. package/src/visual/scripts/node_modules/body-parser/LICENSE +0 -23
  79. package/src/visual/scripts/node_modules/body-parser/README.md +0 -476
  80. package/src/visual/scripts/node_modules/body-parser/index.js +0 -156
  81. package/src/visual/scripts/node_modules/body-parser/lib/read.js +0 -205
  82. package/src/visual/scripts/node_modules/body-parser/lib/types/json.js +0 -247
  83. package/src/visual/scripts/node_modules/body-parser/lib/types/raw.js +0 -101
  84. package/src/visual/scripts/node_modules/body-parser/lib/types/text.js +0 -121
  85. package/src/visual/scripts/node_modules/body-parser/lib/types/urlencoded.js +0 -300
  86. package/src/visual/scripts/node_modules/body-parser/package.json +0 -55
  87. package/src/visual/scripts/node_modules/bytes/History.md +0 -97
  88. package/src/visual/scripts/node_modules/bytes/LICENSE +0 -23
  89. package/src/visual/scripts/node_modules/bytes/Readme.md +0 -152
  90. package/src/visual/scripts/node_modules/bytes/index.js +0 -170
  91. package/src/visual/scripts/node_modules/bytes/package.json +0 -42
  92. package/src/visual/scripts/node_modules/call-bind-apply-helpers/.eslintrc +0 -17
  93. package/src/visual/scripts/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +0 -12
  94. package/src/visual/scripts/node_modules/call-bind-apply-helpers/.nycrc +0 -9
  95. package/src/visual/scripts/node_modules/call-bind-apply-helpers/CHANGELOG.md +0 -30
  96. package/src/visual/scripts/node_modules/call-bind-apply-helpers/LICENSE +0 -21
  97. package/src/visual/scripts/node_modules/call-bind-apply-helpers/README.md +0 -62
  98. package/src/visual/scripts/node_modules/call-bind-apply-helpers/actualApply.d.ts +0 -1
  99. package/src/visual/scripts/node_modules/call-bind-apply-helpers/actualApply.js +0 -10
  100. package/src/visual/scripts/node_modules/call-bind-apply-helpers/applyBind.d.ts +0 -19
  101. package/src/visual/scripts/node_modules/call-bind-apply-helpers/applyBind.js +0 -10
  102. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionApply.d.ts +0 -1
  103. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionApply.js +0 -4
  104. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionCall.d.ts +0 -1
  105. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionCall.js +0 -4
  106. package/src/visual/scripts/node_modules/call-bind-apply-helpers/index.d.ts +0 -64
  107. package/src/visual/scripts/node_modules/call-bind-apply-helpers/index.js +0 -15
  108. package/src/visual/scripts/node_modules/call-bind-apply-helpers/package.json +0 -85
  109. package/src/visual/scripts/node_modules/call-bind-apply-helpers/reflectApply.d.ts +0 -3
  110. package/src/visual/scripts/node_modules/call-bind-apply-helpers/reflectApply.js +0 -4
  111. package/src/visual/scripts/node_modules/call-bind-apply-helpers/test/index.js +0 -63
  112. package/src/visual/scripts/node_modules/call-bind-apply-helpers/tsconfig.json +0 -9
  113. package/src/visual/scripts/node_modules/call-bound/.eslintrc +0 -13
  114. package/src/visual/scripts/node_modules/call-bound/.github/FUNDING.yml +0 -12
  115. package/src/visual/scripts/node_modules/call-bound/.nycrc +0 -9
  116. package/src/visual/scripts/node_modules/call-bound/CHANGELOG.md +0 -42
  117. package/src/visual/scripts/node_modules/call-bound/LICENSE +0 -21
  118. package/src/visual/scripts/node_modules/call-bound/README.md +0 -53
  119. package/src/visual/scripts/node_modules/call-bound/index.d.ts +0 -94
  120. package/src/visual/scripts/node_modules/call-bound/index.js +0 -19
  121. package/src/visual/scripts/node_modules/call-bound/package.json +0 -99
  122. package/src/visual/scripts/node_modules/call-bound/test/index.js +0 -61
  123. package/src/visual/scripts/node_modules/call-bound/tsconfig.json +0 -10
  124. package/src/visual/scripts/node_modules/chokidar/LICENSE +0 -21
  125. package/src/visual/scripts/node_modules/chokidar/README.md +0 -305
  126. package/src/visual/scripts/node_modules/chokidar/esm/handler.d.ts +0 -90
  127. package/src/visual/scripts/node_modules/chokidar/esm/handler.js +0 -629
  128. package/src/visual/scripts/node_modules/chokidar/esm/index.d.ts +0 -215
  129. package/src/visual/scripts/node_modules/chokidar/esm/index.js +0 -798
  130. package/src/visual/scripts/node_modules/chokidar/esm/package.json +0 -1
  131. package/src/visual/scripts/node_modules/chokidar/handler.d.ts +0 -90
  132. package/src/visual/scripts/node_modules/chokidar/handler.js +0 -635
  133. package/src/visual/scripts/node_modules/chokidar/index.d.ts +0 -215
  134. package/src/visual/scripts/node_modules/chokidar/index.js +0 -804
  135. package/src/visual/scripts/node_modules/chokidar/package.json +0 -69
  136. package/src/visual/scripts/node_modules/content-disposition/HISTORY.md +0 -60
  137. package/src/visual/scripts/node_modules/content-disposition/LICENSE +0 -22
  138. package/src/visual/scripts/node_modules/content-disposition/README.md +0 -142
  139. package/src/visual/scripts/node_modules/content-disposition/index.js +0 -458
  140. package/src/visual/scripts/node_modules/content-disposition/package.json +0 -44
  141. package/src/visual/scripts/node_modules/content-type/HISTORY.md +0 -29
  142. package/src/visual/scripts/node_modules/content-type/LICENSE +0 -22
  143. package/src/visual/scripts/node_modules/content-type/README.md +0 -94
  144. package/src/visual/scripts/node_modules/content-type/index.js +0 -225
  145. package/src/visual/scripts/node_modules/content-type/package.json +0 -42
  146. package/src/visual/scripts/node_modules/cookie/LICENSE +0 -24
  147. package/src/visual/scripts/node_modules/cookie/README.md +0 -317
  148. package/src/visual/scripts/node_modules/cookie/SECURITY.md +0 -25
  149. package/src/visual/scripts/node_modules/cookie/index.js +0 -335
  150. package/src/visual/scripts/node_modules/cookie/package.json +0 -44
  151. package/src/visual/scripts/node_modules/cookie-signature/History.md +0 -42
  152. package/src/visual/scripts/node_modules/cookie-signature/Readme.md +0 -42
  153. package/src/visual/scripts/node_modules/cookie-signature/index.js +0 -51
  154. package/src/visual/scripts/node_modules/cookie-signature/package.json +0 -18
  155. package/src/visual/scripts/node_modules/debug/.coveralls.yml +0 -1
  156. package/src/visual/scripts/node_modules/debug/.eslintrc +0 -11
  157. package/src/visual/scripts/node_modules/debug/.travis.yml +0 -14
  158. package/src/visual/scripts/node_modules/debug/CHANGELOG.md +0 -362
  159. package/src/visual/scripts/node_modules/debug/LICENSE +0 -19
  160. package/src/visual/scripts/node_modules/debug/Makefile +0 -50
  161. package/src/visual/scripts/node_modules/debug/README.md +0 -312
  162. package/src/visual/scripts/node_modules/debug/component.json +0 -19
  163. package/src/visual/scripts/node_modules/debug/karma.conf.js +0 -70
  164. package/src/visual/scripts/node_modules/debug/node.js +0 -1
  165. package/src/visual/scripts/node_modules/debug/package.json +0 -49
  166. package/src/visual/scripts/node_modules/debug/src/browser.js +0 -185
  167. package/src/visual/scripts/node_modules/debug/src/debug.js +0 -202
  168. package/src/visual/scripts/node_modules/debug/src/index.js +0 -10
  169. package/src/visual/scripts/node_modules/debug/src/inspector-log.js +0 -15
  170. package/src/visual/scripts/node_modules/debug/src/node.js +0 -248
  171. package/src/visual/scripts/node_modules/depd/History.md +0 -103
  172. package/src/visual/scripts/node_modules/depd/LICENSE +0 -22
  173. package/src/visual/scripts/node_modules/depd/Readme.md +0 -280
  174. package/src/visual/scripts/node_modules/depd/index.js +0 -538
  175. package/src/visual/scripts/node_modules/depd/lib/browser/index.js +0 -77
  176. package/src/visual/scripts/node_modules/depd/package.json +0 -45
  177. package/src/visual/scripts/node_modules/destroy/LICENSE +0 -23
  178. package/src/visual/scripts/node_modules/destroy/README.md +0 -63
  179. package/src/visual/scripts/node_modules/destroy/index.js +0 -209
  180. package/src/visual/scripts/node_modules/destroy/package.json +0 -48
  181. package/src/visual/scripts/node_modules/dunder-proto/.eslintrc +0 -5
  182. package/src/visual/scripts/node_modules/dunder-proto/.github/FUNDING.yml +0 -12
  183. package/src/visual/scripts/node_modules/dunder-proto/.nycrc +0 -13
  184. package/src/visual/scripts/node_modules/dunder-proto/CHANGELOG.md +0 -24
  185. package/src/visual/scripts/node_modules/dunder-proto/LICENSE +0 -21
  186. package/src/visual/scripts/node_modules/dunder-proto/README.md +0 -54
  187. package/src/visual/scripts/node_modules/dunder-proto/get.d.ts +0 -5
  188. package/src/visual/scripts/node_modules/dunder-proto/get.js +0 -30
  189. package/src/visual/scripts/node_modules/dunder-proto/package.json +0 -76
  190. package/src/visual/scripts/node_modules/dunder-proto/set.d.ts +0 -5
  191. package/src/visual/scripts/node_modules/dunder-proto/set.js +0 -35
  192. package/src/visual/scripts/node_modules/dunder-proto/test/get.js +0 -34
  193. package/src/visual/scripts/node_modules/dunder-proto/test/index.js +0 -4
  194. package/src/visual/scripts/node_modules/dunder-proto/test/set.js +0 -50
  195. package/src/visual/scripts/node_modules/dunder-proto/tsconfig.json +0 -9
  196. package/src/visual/scripts/node_modules/ee-first/LICENSE +0 -22
  197. package/src/visual/scripts/node_modules/ee-first/README.md +0 -80
  198. package/src/visual/scripts/node_modules/ee-first/index.js +0 -95
  199. package/src/visual/scripts/node_modules/ee-first/package.json +0 -29
  200. package/src/visual/scripts/node_modules/encodeurl/LICENSE +0 -22
  201. package/src/visual/scripts/node_modules/encodeurl/README.md +0 -109
  202. package/src/visual/scripts/node_modules/encodeurl/index.js +0 -60
  203. package/src/visual/scripts/node_modules/encodeurl/package.json +0 -40
  204. package/src/visual/scripts/node_modules/es-define-property/.eslintrc +0 -13
  205. package/src/visual/scripts/node_modules/es-define-property/.github/FUNDING.yml +0 -12
  206. package/src/visual/scripts/node_modules/es-define-property/.nycrc +0 -9
  207. package/src/visual/scripts/node_modules/es-define-property/CHANGELOG.md +0 -29
  208. package/src/visual/scripts/node_modules/es-define-property/LICENSE +0 -21
  209. package/src/visual/scripts/node_modules/es-define-property/README.md +0 -49
  210. package/src/visual/scripts/node_modules/es-define-property/index.d.ts +0 -3
  211. package/src/visual/scripts/node_modules/es-define-property/index.js +0 -14
  212. package/src/visual/scripts/node_modules/es-define-property/package.json +0 -81
  213. package/src/visual/scripts/node_modules/es-define-property/test/index.js +0 -56
  214. package/src/visual/scripts/node_modules/es-define-property/tsconfig.json +0 -10
  215. package/src/visual/scripts/node_modules/es-errors/.eslintrc +0 -5
  216. package/src/visual/scripts/node_modules/es-errors/.github/FUNDING.yml +0 -12
  217. package/src/visual/scripts/node_modules/es-errors/CHANGELOG.md +0 -40
  218. package/src/visual/scripts/node_modules/es-errors/LICENSE +0 -21
  219. package/src/visual/scripts/node_modules/es-errors/README.md +0 -55
  220. package/src/visual/scripts/node_modules/es-errors/eval.d.ts +0 -3
  221. package/src/visual/scripts/node_modules/es-errors/eval.js +0 -4
  222. package/src/visual/scripts/node_modules/es-errors/index.d.ts +0 -3
  223. package/src/visual/scripts/node_modules/es-errors/index.js +0 -4
  224. package/src/visual/scripts/node_modules/es-errors/package.json +0 -80
  225. package/src/visual/scripts/node_modules/es-errors/range.d.ts +0 -3
  226. package/src/visual/scripts/node_modules/es-errors/range.js +0 -4
  227. package/src/visual/scripts/node_modules/es-errors/ref.d.ts +0 -3
  228. package/src/visual/scripts/node_modules/es-errors/ref.js +0 -4
  229. package/src/visual/scripts/node_modules/es-errors/syntax.d.ts +0 -3
  230. package/src/visual/scripts/node_modules/es-errors/syntax.js +0 -4
  231. package/src/visual/scripts/node_modules/es-errors/test/index.js +0 -19
  232. package/src/visual/scripts/node_modules/es-errors/tsconfig.json +0 -49
  233. package/src/visual/scripts/node_modules/es-errors/type.d.ts +0 -3
  234. package/src/visual/scripts/node_modules/es-errors/type.js +0 -4
  235. package/src/visual/scripts/node_modules/es-errors/uri.d.ts +0 -3
  236. package/src/visual/scripts/node_modules/es-errors/uri.js +0 -4
  237. package/src/visual/scripts/node_modules/es-object-atoms/.eslintrc +0 -16
  238. package/src/visual/scripts/node_modules/es-object-atoms/.github/FUNDING.yml +0 -12
  239. package/src/visual/scripts/node_modules/es-object-atoms/CHANGELOG.md +0 -37
  240. package/src/visual/scripts/node_modules/es-object-atoms/LICENSE +0 -21
  241. package/src/visual/scripts/node_modules/es-object-atoms/README.md +0 -63
  242. package/src/visual/scripts/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +0 -3
  243. package/src/visual/scripts/node_modules/es-object-atoms/RequireObjectCoercible.js +0 -11
  244. package/src/visual/scripts/node_modules/es-object-atoms/ToObject.d.ts +0 -7
  245. package/src/visual/scripts/node_modules/es-object-atoms/ToObject.js +0 -10
  246. package/src/visual/scripts/node_modules/es-object-atoms/index.d.ts +0 -3
  247. package/src/visual/scripts/node_modules/es-object-atoms/index.js +0 -4
  248. package/src/visual/scripts/node_modules/es-object-atoms/isObject.d.ts +0 -3
  249. package/src/visual/scripts/node_modules/es-object-atoms/isObject.js +0 -6
  250. package/src/visual/scripts/node_modules/es-object-atoms/package.json +0 -80
  251. package/src/visual/scripts/node_modules/es-object-atoms/test/index.js +0 -38
  252. package/src/visual/scripts/node_modules/es-object-atoms/tsconfig.json +0 -6
  253. package/src/visual/scripts/node_modules/escape-html/LICENSE +0 -24
  254. package/src/visual/scripts/node_modules/escape-html/Readme.md +0 -43
  255. package/src/visual/scripts/node_modules/escape-html/index.js +0 -78
  256. package/src/visual/scripts/node_modules/escape-html/package.json +0 -24
  257. package/src/visual/scripts/node_modules/etag/HISTORY.md +0 -83
  258. package/src/visual/scripts/node_modules/etag/LICENSE +0 -22
  259. package/src/visual/scripts/node_modules/etag/README.md +0 -159
  260. package/src/visual/scripts/node_modules/etag/index.js +0 -131
  261. package/src/visual/scripts/node_modules/etag/package.json +0 -47
  262. package/src/visual/scripts/node_modules/express/History.md +0 -3667
  263. package/src/visual/scripts/node_modules/express/LICENSE +0 -24
  264. package/src/visual/scripts/node_modules/express/Readme.md +0 -260
  265. package/src/visual/scripts/node_modules/express/index.js +0 -11
  266. package/src/visual/scripts/node_modules/express/lib/application.js +0 -661
  267. package/src/visual/scripts/node_modules/express/lib/express.js +0 -116
  268. package/src/visual/scripts/node_modules/express/lib/middleware/init.js +0 -43
  269. package/src/visual/scripts/node_modules/express/lib/middleware/query.js +0 -47
  270. package/src/visual/scripts/node_modules/express/lib/request.js +0 -525
  271. package/src/visual/scripts/node_modules/express/lib/response.js +0 -1179
  272. package/src/visual/scripts/node_modules/express/lib/router/index.js +0 -673
  273. package/src/visual/scripts/node_modules/express/lib/router/layer.js +0 -181
  274. package/src/visual/scripts/node_modules/express/lib/router/route.js +0 -230
  275. package/src/visual/scripts/node_modules/express/lib/utils.js +0 -303
  276. package/src/visual/scripts/node_modules/express/lib/view.js +0 -182
  277. package/src/visual/scripts/node_modules/express/package.json +0 -102
  278. package/src/visual/scripts/node_modules/finalhandler/HISTORY.md +0 -216
  279. package/src/visual/scripts/node_modules/finalhandler/LICENSE +0 -22
  280. package/src/visual/scripts/node_modules/finalhandler/README.md +0 -147
  281. package/src/visual/scripts/node_modules/finalhandler/SECURITY.md +0 -25
  282. package/src/visual/scripts/node_modules/finalhandler/index.js +0 -341
  283. package/src/visual/scripts/node_modules/finalhandler/package.json +0 -47
  284. package/src/visual/scripts/node_modules/forwarded/HISTORY.md +0 -21
  285. package/src/visual/scripts/node_modules/forwarded/LICENSE +0 -22
  286. package/src/visual/scripts/node_modules/forwarded/README.md +0 -57
  287. package/src/visual/scripts/node_modules/forwarded/index.js +0 -90
  288. package/src/visual/scripts/node_modules/forwarded/package.json +0 -45
  289. package/src/visual/scripts/node_modules/fresh/HISTORY.md +0 -70
  290. package/src/visual/scripts/node_modules/fresh/LICENSE +0 -23
  291. package/src/visual/scripts/node_modules/fresh/README.md +0 -119
  292. package/src/visual/scripts/node_modules/fresh/index.js +0 -137
  293. package/src/visual/scripts/node_modules/fresh/package.json +0 -46
  294. package/src/visual/scripts/node_modules/function-bind/.eslintrc +0 -21
  295. package/src/visual/scripts/node_modules/function-bind/.github/FUNDING.yml +0 -12
  296. package/src/visual/scripts/node_modules/function-bind/.github/SECURITY.md +0 -3
  297. package/src/visual/scripts/node_modules/function-bind/.nycrc +0 -13
  298. package/src/visual/scripts/node_modules/function-bind/CHANGELOG.md +0 -136
  299. package/src/visual/scripts/node_modules/function-bind/LICENSE +0 -20
  300. package/src/visual/scripts/node_modules/function-bind/README.md +0 -46
  301. package/src/visual/scripts/node_modules/function-bind/implementation.js +0 -84
  302. package/src/visual/scripts/node_modules/function-bind/index.js +0 -5
  303. package/src/visual/scripts/node_modules/function-bind/package.json +0 -87
  304. package/src/visual/scripts/node_modules/function-bind/test/.eslintrc +0 -9
  305. package/src/visual/scripts/node_modules/function-bind/test/index.js +0 -252
  306. package/src/visual/scripts/node_modules/get-intrinsic/.eslintrc +0 -42
  307. package/src/visual/scripts/node_modules/get-intrinsic/.github/FUNDING.yml +0 -12
  308. package/src/visual/scripts/node_modules/get-intrinsic/.nycrc +0 -9
  309. package/src/visual/scripts/node_modules/get-intrinsic/CHANGELOG.md +0 -186
  310. package/src/visual/scripts/node_modules/get-intrinsic/LICENSE +0 -21
  311. package/src/visual/scripts/node_modules/get-intrinsic/README.md +0 -71
  312. package/src/visual/scripts/node_modules/get-intrinsic/index.js +0 -378
  313. package/src/visual/scripts/node_modules/get-intrinsic/package.json +0 -97
  314. package/src/visual/scripts/node_modules/get-intrinsic/test/GetIntrinsic.js +0 -274
  315. package/src/visual/scripts/node_modules/get-proto/.eslintrc +0 -10
  316. package/src/visual/scripts/node_modules/get-proto/.github/FUNDING.yml +0 -12
  317. package/src/visual/scripts/node_modules/get-proto/.nycrc +0 -9
  318. package/src/visual/scripts/node_modules/get-proto/CHANGELOG.md +0 -21
  319. package/src/visual/scripts/node_modules/get-proto/LICENSE +0 -21
  320. package/src/visual/scripts/node_modules/get-proto/Object.getPrototypeOf.d.ts +0 -5
  321. package/src/visual/scripts/node_modules/get-proto/Object.getPrototypeOf.js +0 -6
  322. package/src/visual/scripts/node_modules/get-proto/README.md +0 -50
  323. package/src/visual/scripts/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +0 -3
  324. package/src/visual/scripts/node_modules/get-proto/Reflect.getPrototypeOf.js +0 -4
  325. package/src/visual/scripts/node_modules/get-proto/index.d.ts +0 -5
  326. package/src/visual/scripts/node_modules/get-proto/index.js +0 -27
  327. package/src/visual/scripts/node_modules/get-proto/package.json +0 -81
  328. package/src/visual/scripts/node_modules/get-proto/test/index.js +0 -68
  329. package/src/visual/scripts/node_modules/get-proto/tsconfig.json +0 -9
  330. package/src/visual/scripts/node_modules/gopd/.eslintrc +0 -16
  331. package/src/visual/scripts/node_modules/gopd/.github/FUNDING.yml +0 -12
  332. package/src/visual/scripts/node_modules/gopd/CHANGELOG.md +0 -45
  333. package/src/visual/scripts/node_modules/gopd/LICENSE +0 -21
  334. package/src/visual/scripts/node_modules/gopd/README.md +0 -40
  335. package/src/visual/scripts/node_modules/gopd/gOPD.d.ts +0 -1
  336. package/src/visual/scripts/node_modules/gopd/gOPD.js +0 -4
  337. package/src/visual/scripts/node_modules/gopd/index.d.ts +0 -5
  338. package/src/visual/scripts/node_modules/gopd/index.js +0 -15
  339. package/src/visual/scripts/node_modules/gopd/package.json +0 -77
  340. package/src/visual/scripts/node_modules/gopd/test/index.js +0 -36
  341. package/src/visual/scripts/node_modules/gopd/tsconfig.json +0 -9
  342. package/src/visual/scripts/node_modules/has-symbols/.eslintrc +0 -11
  343. package/src/visual/scripts/node_modules/has-symbols/.github/FUNDING.yml +0 -12
  344. package/src/visual/scripts/node_modules/has-symbols/.nycrc +0 -9
  345. package/src/visual/scripts/node_modules/has-symbols/CHANGELOG.md +0 -91
  346. package/src/visual/scripts/node_modules/has-symbols/LICENSE +0 -21
  347. package/src/visual/scripts/node_modules/has-symbols/README.md +0 -46
  348. package/src/visual/scripts/node_modules/has-symbols/index.d.ts +0 -3
  349. package/src/visual/scripts/node_modules/has-symbols/index.js +0 -14
  350. package/src/visual/scripts/node_modules/has-symbols/package.json +0 -111
  351. package/src/visual/scripts/node_modules/has-symbols/shams.d.ts +0 -3
  352. package/src/visual/scripts/node_modules/has-symbols/shams.js +0 -45
  353. package/src/visual/scripts/node_modules/has-symbols/test/index.js +0 -22
  354. package/src/visual/scripts/node_modules/has-symbols/test/shams/core-js.js +0 -29
  355. package/src/visual/scripts/node_modules/has-symbols/test/shams/get-own-property-symbols.js +0 -29
  356. package/src/visual/scripts/node_modules/has-symbols/test/tests.js +0 -58
  357. package/src/visual/scripts/node_modules/has-symbols/tsconfig.json +0 -10
  358. package/src/visual/scripts/node_modules/hasown/.eslintrc +0 -5
  359. package/src/visual/scripts/node_modules/hasown/.github/FUNDING.yml +0 -12
  360. package/src/visual/scripts/node_modules/hasown/.nycrc +0 -13
  361. package/src/visual/scripts/node_modules/hasown/CHANGELOG.md +0 -40
  362. package/src/visual/scripts/node_modules/hasown/LICENSE +0 -21
  363. package/src/visual/scripts/node_modules/hasown/README.md +0 -40
  364. package/src/visual/scripts/node_modules/hasown/index.d.ts +0 -3
  365. package/src/visual/scripts/node_modules/hasown/index.js +0 -8
  366. package/src/visual/scripts/node_modules/hasown/package.json +0 -92
  367. package/src/visual/scripts/node_modules/hasown/tsconfig.json +0 -6
  368. package/src/visual/scripts/node_modules/http-errors/HISTORY.md +0 -186
  369. package/src/visual/scripts/node_modules/http-errors/LICENSE +0 -23
  370. package/src/visual/scripts/node_modules/http-errors/README.md +0 -169
  371. package/src/visual/scripts/node_modules/http-errors/index.js +0 -290
  372. package/src/visual/scripts/node_modules/http-errors/package.json +0 -54
  373. package/src/visual/scripts/node_modules/iconv-lite/Changelog.md +0 -162
  374. package/src/visual/scripts/node_modules/iconv-lite/LICENSE +0 -21
  375. package/src/visual/scripts/node_modules/iconv-lite/README.md +0 -156
  376. package/src/visual/scripts/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -555
  377. package/src/visual/scripts/node_modules/iconv-lite/encodings/dbcs-data.js +0 -176
  378. package/src/visual/scripts/node_modules/iconv-lite/encodings/index.js +0 -22
  379. package/src/visual/scripts/node_modules/iconv-lite/encodings/internal.js +0 -188
  380. package/src/visual/scripts/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -72
  381. package/src/visual/scripts/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
  382. package/src/visual/scripts/node_modules/iconv-lite/encodings/sbcs-data.js +0 -174
  383. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
  384. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
  385. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
  386. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
  387. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
  388. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
  389. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -55
  390. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
  391. package/src/visual/scripts/node_modules/iconv-lite/encodings/utf16.js +0 -177
  392. package/src/visual/scripts/node_modules/iconv-lite/encodings/utf7.js +0 -290
  393. package/src/visual/scripts/node_modules/iconv-lite/lib/bom-handling.js +0 -52
  394. package/src/visual/scripts/node_modules/iconv-lite/lib/extend-node.js +0 -217
  395. package/src/visual/scripts/node_modules/iconv-lite/lib/index.d.ts +0 -24
  396. package/src/visual/scripts/node_modules/iconv-lite/lib/index.js +0 -153
  397. package/src/visual/scripts/node_modules/iconv-lite/lib/streams.js +0 -121
  398. package/src/visual/scripts/node_modules/iconv-lite/package.json +0 -46
  399. package/src/visual/scripts/node_modules/inherits/LICENSE +0 -16
  400. package/src/visual/scripts/node_modules/inherits/README.md +0 -42
  401. package/src/visual/scripts/node_modules/inherits/inherits.js +0 -9
  402. package/src/visual/scripts/node_modules/inherits/inherits_browser.js +0 -27
  403. package/src/visual/scripts/node_modules/inherits/package.json +0 -29
  404. package/src/visual/scripts/node_modules/ipaddr.js/LICENSE +0 -19
  405. package/src/visual/scripts/node_modules/ipaddr.js/README.md +0 -233
  406. package/src/visual/scripts/node_modules/ipaddr.js/ipaddr.min.js +0 -1
  407. package/src/visual/scripts/node_modules/ipaddr.js/lib/ipaddr.js +0 -673
  408. package/src/visual/scripts/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +0 -68
  409. package/src/visual/scripts/node_modules/ipaddr.js/package.json +0 -35
  410. package/src/visual/scripts/node_modules/math-intrinsics/.eslintrc +0 -16
  411. package/src/visual/scripts/node_modules/math-intrinsics/.github/FUNDING.yml +0 -12
  412. package/src/visual/scripts/node_modules/math-intrinsics/CHANGELOG.md +0 -24
  413. package/src/visual/scripts/node_modules/math-intrinsics/LICENSE +0 -21
  414. package/src/visual/scripts/node_modules/math-intrinsics/README.md +0 -50
  415. package/src/visual/scripts/node_modules/math-intrinsics/abs.d.ts +0 -1
  416. package/src/visual/scripts/node_modules/math-intrinsics/abs.js +0 -4
  417. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +0 -3
  418. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxArrayLength.js +0 -4
  419. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +0 -3
  420. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxSafeInteger.js +0 -5
  421. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxValue.d.ts +0 -3
  422. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxValue.js +0 -5
  423. package/src/visual/scripts/node_modules/math-intrinsics/floor.d.ts +0 -1
  424. package/src/visual/scripts/node_modules/math-intrinsics/floor.js +0 -4
  425. package/src/visual/scripts/node_modules/math-intrinsics/isFinite.d.ts +0 -3
  426. package/src/visual/scripts/node_modules/math-intrinsics/isFinite.js +0 -12
  427. package/src/visual/scripts/node_modules/math-intrinsics/isInteger.d.ts +0 -3
  428. package/src/visual/scripts/node_modules/math-intrinsics/isInteger.js +0 -16
  429. package/src/visual/scripts/node_modules/math-intrinsics/isNaN.d.ts +0 -1
  430. package/src/visual/scripts/node_modules/math-intrinsics/isNaN.js +0 -6
  431. package/src/visual/scripts/node_modules/math-intrinsics/isNegativeZero.d.ts +0 -3
  432. package/src/visual/scripts/node_modules/math-intrinsics/isNegativeZero.js +0 -6
  433. package/src/visual/scripts/node_modules/math-intrinsics/max.d.ts +0 -1
  434. package/src/visual/scripts/node_modules/math-intrinsics/max.js +0 -4
  435. package/src/visual/scripts/node_modules/math-intrinsics/min.d.ts +0 -1
  436. package/src/visual/scripts/node_modules/math-intrinsics/min.js +0 -4
  437. package/src/visual/scripts/node_modules/math-intrinsics/mod.d.ts +0 -3
  438. package/src/visual/scripts/node_modules/math-intrinsics/mod.js +0 -9
  439. package/src/visual/scripts/node_modules/math-intrinsics/package.json +0 -86
  440. package/src/visual/scripts/node_modules/math-intrinsics/pow.d.ts +0 -1
  441. package/src/visual/scripts/node_modules/math-intrinsics/pow.js +0 -4
  442. package/src/visual/scripts/node_modules/math-intrinsics/round.d.ts +0 -1
  443. package/src/visual/scripts/node_modules/math-intrinsics/round.js +0 -4
  444. package/src/visual/scripts/node_modules/math-intrinsics/sign.d.ts +0 -3
  445. package/src/visual/scripts/node_modules/math-intrinsics/sign.js +0 -11
  446. package/src/visual/scripts/node_modules/math-intrinsics/test/index.js +0 -192
  447. package/src/visual/scripts/node_modules/math-intrinsics/tsconfig.json +0 -3
  448. package/src/visual/scripts/node_modules/media-typer/HISTORY.md +0 -22
  449. package/src/visual/scripts/node_modules/media-typer/LICENSE +0 -22
  450. package/src/visual/scripts/node_modules/media-typer/README.md +0 -81
  451. package/src/visual/scripts/node_modules/media-typer/index.js +0 -270
  452. package/src/visual/scripts/node_modules/media-typer/package.json +0 -26
  453. package/src/visual/scripts/node_modules/merge-descriptors/HISTORY.md +0 -21
  454. package/src/visual/scripts/node_modules/merge-descriptors/LICENSE +0 -23
  455. package/src/visual/scripts/node_modules/merge-descriptors/README.md +0 -49
  456. package/src/visual/scripts/node_modules/merge-descriptors/index.js +0 -60
  457. package/src/visual/scripts/node_modules/merge-descriptors/package.json +0 -39
  458. package/src/visual/scripts/node_modules/methods/HISTORY.md +0 -29
  459. package/src/visual/scripts/node_modules/methods/LICENSE +0 -24
  460. package/src/visual/scripts/node_modules/methods/README.md +0 -51
  461. package/src/visual/scripts/node_modules/methods/index.js +0 -69
  462. package/src/visual/scripts/node_modules/methods/package.json +0 -36
  463. package/src/visual/scripts/node_modules/mime/CHANGELOG.md +0 -164
  464. package/src/visual/scripts/node_modules/mime/LICENSE +0 -21
  465. package/src/visual/scripts/node_modules/mime/README.md +0 -90
  466. package/src/visual/scripts/node_modules/mime/cli.js +0 -8
  467. package/src/visual/scripts/node_modules/mime/mime.js +0 -108
  468. package/src/visual/scripts/node_modules/mime/package.json +0 -44
  469. package/src/visual/scripts/node_modules/mime/src/build.js +0 -53
  470. package/src/visual/scripts/node_modules/mime/src/test.js +0 -60
  471. package/src/visual/scripts/node_modules/mime/types.json +0 -1
  472. package/src/visual/scripts/node_modules/mime-db/HISTORY.md +0 -507
  473. package/src/visual/scripts/node_modules/mime-db/LICENSE +0 -23
  474. package/src/visual/scripts/node_modules/mime-db/README.md +0 -100
  475. package/src/visual/scripts/node_modules/mime-db/db.json +0 -8519
  476. package/src/visual/scripts/node_modules/mime-db/index.js +0 -12
  477. package/src/visual/scripts/node_modules/mime-db/package.json +0 -60
  478. package/src/visual/scripts/node_modules/mime-types/HISTORY.md +0 -397
  479. package/src/visual/scripts/node_modules/mime-types/LICENSE +0 -23
  480. package/src/visual/scripts/node_modules/mime-types/README.md +0 -113
  481. package/src/visual/scripts/node_modules/mime-types/index.js +0 -188
  482. package/src/visual/scripts/node_modules/mime-types/package.json +0 -44
  483. package/src/visual/scripts/node_modules/ms/index.js +0 -152
  484. package/src/visual/scripts/node_modules/ms/license.md +0 -21
  485. package/src/visual/scripts/node_modules/ms/package.json +0 -37
  486. package/src/visual/scripts/node_modules/ms/readme.md +0 -51
  487. package/src/visual/scripts/node_modules/negotiator/HISTORY.md +0 -108
  488. package/src/visual/scripts/node_modules/negotiator/LICENSE +0 -24
  489. package/src/visual/scripts/node_modules/negotiator/README.md +0 -203
  490. package/src/visual/scripts/node_modules/negotiator/index.js +0 -82
  491. package/src/visual/scripts/node_modules/negotiator/lib/charset.js +0 -169
  492. package/src/visual/scripts/node_modules/negotiator/lib/encoding.js +0 -184
  493. package/src/visual/scripts/node_modules/negotiator/lib/language.js +0 -179
  494. package/src/visual/scripts/node_modules/negotiator/lib/mediaType.js +0 -294
  495. package/src/visual/scripts/node_modules/negotiator/package.json +0 -42
  496. package/src/visual/scripts/node_modules/object-inspect/.eslintrc +0 -53
  497. package/src/visual/scripts/node_modules/object-inspect/.github/FUNDING.yml +0 -12
  498. package/src/visual/scripts/node_modules/object-inspect/.nycrc +0 -13
  499. package/src/visual/scripts/node_modules/object-inspect/CHANGELOG.md +0 -424
  500. package/src/visual/scripts/node_modules/object-inspect/LICENSE +0 -21
  501. package/src/visual/scripts/node_modules/object-inspect/example/all.js +0 -23
  502. package/src/visual/scripts/node_modules/object-inspect/example/circular.js +0 -6
  503. package/src/visual/scripts/node_modules/object-inspect/example/fn.js +0 -5
  504. package/src/visual/scripts/node_modules/object-inspect/example/inspect.js +0 -10
  505. package/src/visual/scripts/node_modules/object-inspect/index.js +0 -544
  506. package/src/visual/scripts/node_modules/object-inspect/package-support.json +0 -20
  507. package/src/visual/scripts/node_modules/object-inspect/package.json +0 -105
  508. package/src/visual/scripts/node_modules/object-inspect/readme.markdown +0 -84
  509. package/src/visual/scripts/node_modules/object-inspect/test/bigint.js +0 -58
  510. package/src/visual/scripts/node_modules/object-inspect/test/browser/dom.js +0 -15
  511. package/src/visual/scripts/node_modules/object-inspect/test/circular.js +0 -16
  512. package/src/visual/scripts/node_modules/object-inspect/test/deep.js +0 -12
  513. package/src/visual/scripts/node_modules/object-inspect/test/element.js +0 -53
  514. package/src/visual/scripts/node_modules/object-inspect/test/err.js +0 -48
  515. package/src/visual/scripts/node_modules/object-inspect/test/fakes.js +0 -29
  516. package/src/visual/scripts/node_modules/object-inspect/test/fn.js +0 -76
  517. package/src/visual/scripts/node_modules/object-inspect/test/global.js +0 -17
  518. package/src/visual/scripts/node_modules/object-inspect/test/has.js +0 -15
  519. package/src/visual/scripts/node_modules/object-inspect/test/holes.js +0 -15
  520. package/src/visual/scripts/node_modules/object-inspect/test/indent-option.js +0 -271
  521. package/src/visual/scripts/node_modules/object-inspect/test/inspect.js +0 -139
  522. package/src/visual/scripts/node_modules/object-inspect/test/lowbyte.js +0 -12
  523. package/src/visual/scripts/node_modules/object-inspect/test/number.js +0 -58
  524. package/src/visual/scripts/node_modules/object-inspect/test/quoteStyle.js +0 -26
  525. package/src/visual/scripts/node_modules/object-inspect/test/toStringTag.js +0 -40
  526. package/src/visual/scripts/node_modules/object-inspect/test/undef.js +0 -12
  527. package/src/visual/scripts/node_modules/object-inspect/test/values.js +0 -261
  528. package/src/visual/scripts/node_modules/object-inspect/test-core-js.js +0 -26
  529. package/src/visual/scripts/node_modules/object-inspect/util.inspect.js +0 -1
  530. package/src/visual/scripts/node_modules/on-finished/HISTORY.md +0 -98
  531. package/src/visual/scripts/node_modules/on-finished/LICENSE +0 -23
  532. package/src/visual/scripts/node_modules/on-finished/README.md +0 -162
  533. package/src/visual/scripts/node_modules/on-finished/index.js +0 -234
  534. package/src/visual/scripts/node_modules/on-finished/package.json +0 -39
  535. package/src/visual/scripts/node_modules/parseurl/HISTORY.md +0 -58
  536. package/src/visual/scripts/node_modules/parseurl/LICENSE +0 -24
  537. package/src/visual/scripts/node_modules/parseurl/README.md +0 -133
  538. package/src/visual/scripts/node_modules/parseurl/index.js +0 -158
  539. package/src/visual/scripts/node_modules/parseurl/package.json +0 -40
  540. package/src/visual/scripts/node_modules/path-to-regexp/LICENSE +0 -21
  541. package/src/visual/scripts/node_modules/path-to-regexp/Readme.md +0 -35
  542. package/src/visual/scripts/node_modules/path-to-regexp/index.js +0 -156
  543. package/src/visual/scripts/node_modules/path-to-regexp/package.json +0 -30
  544. package/src/visual/scripts/node_modules/proxy-addr/HISTORY.md +0 -161
  545. package/src/visual/scripts/node_modules/proxy-addr/LICENSE +0 -22
  546. package/src/visual/scripts/node_modules/proxy-addr/README.md +0 -139
  547. package/src/visual/scripts/node_modules/proxy-addr/index.js +0 -327
  548. package/src/visual/scripts/node_modules/proxy-addr/package.json +0 -47
  549. package/src/visual/scripts/node_modules/qs/.editorconfig +0 -46
  550. package/src/visual/scripts/node_modules/qs/.github/FUNDING.yml +0 -12
  551. package/src/visual/scripts/node_modules/qs/.github/SECURITY.md +0 -11
  552. package/src/visual/scripts/node_modules/qs/.github/THREAT_MODEL.md +0 -78
  553. package/src/visual/scripts/node_modules/qs/.nycrc +0 -13
  554. package/src/visual/scripts/node_modules/qs/CHANGELOG.md +0 -644
  555. package/src/visual/scripts/node_modules/qs/LICENSE.md +0 -29
  556. package/src/visual/scripts/node_modules/qs/README.md +0 -740
  557. package/src/visual/scripts/node_modules/qs/dist/qs.js +0 -141
  558. package/src/visual/scripts/node_modules/qs/eslint.config.mjs +0 -56
  559. package/src/visual/scripts/node_modules/qs/lib/formats.js +0 -23
  560. package/src/visual/scripts/node_modules/qs/lib/index.js +0 -11
  561. package/src/visual/scripts/node_modules/qs/lib/parse.js +0 -371
  562. package/src/visual/scripts/node_modules/qs/lib/stringify.js +0 -356
  563. package/src/visual/scripts/node_modules/qs/lib/utils.js +0 -340
  564. package/src/visual/scripts/node_modules/qs/package.json +0 -94
  565. package/src/visual/scripts/node_modules/qs/test/empty-keys-cases.js +0 -267
  566. package/src/visual/scripts/node_modules/qs/test/parse.js +0 -1512
  567. package/src/visual/scripts/node_modules/qs/test/stringify.js +0 -1310
  568. package/src/visual/scripts/node_modules/qs/test/utils.js +0 -397
  569. package/src/visual/scripts/node_modules/range-parser/HISTORY.md +0 -56
  570. package/src/visual/scripts/node_modules/range-parser/LICENSE +0 -23
  571. package/src/visual/scripts/node_modules/range-parser/README.md +0 -84
  572. package/src/visual/scripts/node_modules/range-parser/index.js +0 -162
  573. package/src/visual/scripts/node_modules/range-parser/package.json +0 -44
  574. package/src/visual/scripts/node_modules/raw-body/LICENSE +0 -22
  575. package/src/visual/scripts/node_modules/raw-body/README.md +0 -223
  576. package/src/visual/scripts/node_modules/raw-body/index.d.ts +0 -87
  577. package/src/visual/scripts/node_modules/raw-body/index.js +0 -336
  578. package/src/visual/scripts/node_modules/raw-body/package.json +0 -47
  579. package/src/visual/scripts/node_modules/readdirp/LICENSE +0 -21
  580. package/src/visual/scripts/node_modules/readdirp/README.md +0 -120
  581. package/src/visual/scripts/node_modules/readdirp/esm/index.d.ts +0 -108
  582. package/src/visual/scripts/node_modules/readdirp/esm/index.js +0 -257
  583. package/src/visual/scripts/node_modules/readdirp/esm/package.json +0 -1
  584. package/src/visual/scripts/node_modules/readdirp/index.d.ts +0 -108
  585. package/src/visual/scripts/node_modules/readdirp/index.js +0 -263
  586. package/src/visual/scripts/node_modules/readdirp/package.json +0 -70
  587. package/src/visual/scripts/node_modules/safe-buffer/LICENSE +0 -21
  588. package/src/visual/scripts/node_modules/safe-buffer/README.md +0 -584
  589. package/src/visual/scripts/node_modules/safe-buffer/index.d.ts +0 -187
  590. package/src/visual/scripts/node_modules/safe-buffer/index.js +0 -65
  591. package/src/visual/scripts/node_modules/safe-buffer/package.json +0 -51
  592. package/src/visual/scripts/node_modules/safer-buffer/LICENSE +0 -21
  593. package/src/visual/scripts/node_modules/safer-buffer/Porting-Buffer.md +0 -268
  594. package/src/visual/scripts/node_modules/safer-buffer/Readme.md +0 -156
  595. package/src/visual/scripts/node_modules/safer-buffer/dangerous.js +0 -58
  596. package/src/visual/scripts/node_modules/safer-buffer/package.json +0 -34
  597. package/src/visual/scripts/node_modules/safer-buffer/safer.js +0 -77
  598. package/src/visual/scripts/node_modules/safer-buffer/tests.js +0 -406
  599. package/src/visual/scripts/node_modules/send/HISTORY.md +0 -538
  600. package/src/visual/scripts/node_modules/send/LICENSE +0 -23
  601. package/src/visual/scripts/node_modules/send/README.md +0 -327
  602. package/src/visual/scripts/node_modules/send/SECURITY.md +0 -24
  603. package/src/visual/scripts/node_modules/send/index.js +0 -1142
  604. package/src/visual/scripts/node_modules/send/node_modules/ms/index.js +0 -162
  605. package/src/visual/scripts/node_modules/send/node_modules/ms/license.md +0 -21
  606. package/src/visual/scripts/node_modules/send/node_modules/ms/package.json +0 -38
  607. package/src/visual/scripts/node_modules/send/node_modules/ms/readme.md +0 -59
  608. package/src/visual/scripts/node_modules/send/package.json +0 -62
  609. package/src/visual/scripts/node_modules/serve-static/HISTORY.md +0 -493
  610. package/src/visual/scripts/node_modules/serve-static/LICENSE +0 -25
  611. package/src/visual/scripts/node_modules/serve-static/README.md +0 -257
  612. package/src/visual/scripts/node_modules/serve-static/index.js +0 -209
  613. package/src/visual/scripts/node_modules/serve-static/package.json +0 -42
  614. package/src/visual/scripts/node_modules/setprototypeof/LICENSE +0 -13
  615. package/src/visual/scripts/node_modules/setprototypeof/README.md +0 -31
  616. package/src/visual/scripts/node_modules/setprototypeof/index.d.ts +0 -2
  617. package/src/visual/scripts/node_modules/setprototypeof/index.js +0 -17
  618. package/src/visual/scripts/node_modules/setprototypeof/package.json +0 -38
  619. package/src/visual/scripts/node_modules/setprototypeof/test/index.js +0 -24
  620. package/src/visual/scripts/node_modules/side-channel/.editorconfig +0 -9
  621. package/src/visual/scripts/node_modules/side-channel/.eslintrc +0 -12
  622. package/src/visual/scripts/node_modules/side-channel/.github/FUNDING.yml +0 -12
  623. package/src/visual/scripts/node_modules/side-channel/.nycrc +0 -13
  624. package/src/visual/scripts/node_modules/side-channel/CHANGELOG.md +0 -110
  625. package/src/visual/scripts/node_modules/side-channel/LICENSE +0 -21
  626. package/src/visual/scripts/node_modules/side-channel/README.md +0 -61
  627. package/src/visual/scripts/node_modules/side-channel/index.d.ts +0 -14
  628. package/src/visual/scripts/node_modules/side-channel/index.js +0 -43
  629. package/src/visual/scripts/node_modules/side-channel/package.json +0 -85
  630. package/src/visual/scripts/node_modules/side-channel/test/index.js +0 -104
  631. package/src/visual/scripts/node_modules/side-channel/tsconfig.json +0 -9
  632. package/src/visual/scripts/node_modules/side-channel-list/.editorconfig +0 -9
  633. package/src/visual/scripts/node_modules/side-channel-list/.eslintrc +0 -11
  634. package/src/visual/scripts/node_modules/side-channel-list/.github/FUNDING.yml +0 -12
  635. package/src/visual/scripts/node_modules/side-channel-list/.nycrc +0 -13
  636. package/src/visual/scripts/node_modules/side-channel-list/CHANGELOG.md +0 -15
  637. package/src/visual/scripts/node_modules/side-channel-list/LICENSE +0 -21
  638. package/src/visual/scripts/node_modules/side-channel-list/README.md +0 -62
  639. package/src/visual/scripts/node_modules/side-channel-list/index.d.ts +0 -13
  640. package/src/visual/scripts/node_modules/side-channel-list/index.js +0 -113
  641. package/src/visual/scripts/node_modules/side-channel-list/list.d.ts +0 -14
  642. package/src/visual/scripts/node_modules/side-channel-list/package.json +0 -77
  643. package/src/visual/scripts/node_modules/side-channel-list/test/index.js +0 -104
  644. package/src/visual/scripts/node_modules/side-channel-list/tsconfig.json +0 -9
  645. package/src/visual/scripts/node_modules/side-channel-map/.editorconfig +0 -9
  646. package/src/visual/scripts/node_modules/side-channel-map/.eslintrc +0 -11
  647. package/src/visual/scripts/node_modules/side-channel-map/.github/FUNDING.yml +0 -12
  648. package/src/visual/scripts/node_modules/side-channel-map/.nycrc +0 -13
  649. package/src/visual/scripts/node_modules/side-channel-map/CHANGELOG.md +0 -22
  650. package/src/visual/scripts/node_modules/side-channel-map/LICENSE +0 -21
  651. package/src/visual/scripts/node_modules/side-channel-map/README.md +0 -62
  652. package/src/visual/scripts/node_modules/side-channel-map/index.d.ts +0 -15
  653. package/src/visual/scripts/node_modules/side-channel-map/index.js +0 -68
  654. package/src/visual/scripts/node_modules/side-channel-map/package.json +0 -80
  655. package/src/visual/scripts/node_modules/side-channel-map/test/index.js +0 -114
  656. package/src/visual/scripts/node_modules/side-channel-map/tsconfig.json +0 -9
  657. package/src/visual/scripts/node_modules/side-channel-weakmap/.editorconfig +0 -9
  658. package/src/visual/scripts/node_modules/side-channel-weakmap/.eslintrc +0 -12
  659. package/src/visual/scripts/node_modules/side-channel-weakmap/.github/FUNDING.yml +0 -12
  660. package/src/visual/scripts/node_modules/side-channel-weakmap/.nycrc +0 -13
  661. package/src/visual/scripts/node_modules/side-channel-weakmap/CHANGELOG.md +0 -28
  662. package/src/visual/scripts/node_modules/side-channel-weakmap/LICENSE +0 -21
  663. package/src/visual/scripts/node_modules/side-channel-weakmap/README.md +0 -62
  664. package/src/visual/scripts/node_modules/side-channel-weakmap/index.d.ts +0 -15
  665. package/src/visual/scripts/node_modules/side-channel-weakmap/index.js +0 -84
  666. package/src/visual/scripts/node_modules/side-channel-weakmap/package.json +0 -87
  667. package/src/visual/scripts/node_modules/side-channel-weakmap/test/index.js +0 -114
  668. package/src/visual/scripts/node_modules/side-channel-weakmap/tsconfig.json +0 -9
  669. package/src/visual/scripts/node_modules/statuses/HISTORY.md +0 -87
  670. package/src/visual/scripts/node_modules/statuses/LICENSE +0 -23
  671. package/src/visual/scripts/node_modules/statuses/README.md +0 -139
  672. package/src/visual/scripts/node_modules/statuses/codes.json +0 -65
  673. package/src/visual/scripts/node_modules/statuses/index.js +0 -146
  674. package/src/visual/scripts/node_modules/statuses/package.json +0 -49
  675. package/src/visual/scripts/node_modules/toidentifier/HISTORY.md +0 -9
  676. package/src/visual/scripts/node_modules/toidentifier/LICENSE +0 -21
  677. package/src/visual/scripts/node_modules/toidentifier/README.md +0 -61
  678. package/src/visual/scripts/node_modules/toidentifier/index.js +0 -32
  679. package/src/visual/scripts/node_modules/toidentifier/package.json +0 -38
  680. package/src/visual/scripts/node_modules/type-is/HISTORY.md +0 -259
  681. package/src/visual/scripts/node_modules/type-is/LICENSE +0 -23
  682. package/src/visual/scripts/node_modules/type-is/README.md +0 -170
  683. package/src/visual/scripts/node_modules/type-is/index.js +0 -266
  684. package/src/visual/scripts/node_modules/type-is/package.json +0 -45
  685. package/src/visual/scripts/node_modules/unpipe/HISTORY.md +0 -4
  686. package/src/visual/scripts/node_modules/unpipe/LICENSE +0 -22
  687. package/src/visual/scripts/node_modules/unpipe/README.md +0 -43
  688. package/src/visual/scripts/node_modules/unpipe/index.js +0 -69
  689. package/src/visual/scripts/node_modules/unpipe/package.json +0 -27
  690. package/src/visual/scripts/node_modules/utils-merge/LICENSE +0 -20
  691. package/src/visual/scripts/node_modules/utils-merge/README.md +0 -34
  692. package/src/visual/scripts/node_modules/utils-merge/index.js +0 -23
  693. package/src/visual/scripts/node_modules/utils-merge/package.json +0 -40
  694. package/src/visual/scripts/node_modules/vary/HISTORY.md +0 -39
  695. package/src/visual/scripts/node_modules/vary/LICENSE +0 -22
  696. package/src/visual/scripts/node_modules/vary/README.md +0 -101
  697. package/src/visual/scripts/node_modules/vary/index.js +0 -149
  698. package/src/visual/scripts/node_modules/vary/package.json +0 -43
  699. package/src/visual/scripts/node_modules/ws/LICENSE +0 -20
  700. package/src/visual/scripts/node_modules/ws/README.md +0 -548
  701. package/src/visual/scripts/node_modules/ws/browser.js +0 -8
  702. package/src/visual/scripts/node_modules/ws/index.js +0 -22
  703. package/src/visual/scripts/node_modules/ws/lib/buffer-util.js +0 -131
  704. package/src/visual/scripts/node_modules/ws/lib/constants.js +0 -19
  705. package/src/visual/scripts/node_modules/ws/lib/event-target.js +0 -292
  706. package/src/visual/scripts/node_modules/ws/lib/extension.js +0 -203
  707. package/src/visual/scripts/node_modules/ws/lib/limiter.js +0 -55
  708. package/src/visual/scripts/node_modules/ws/lib/permessage-deflate.js +0 -528
  709. package/src/visual/scripts/node_modules/ws/lib/receiver.js +0 -706
  710. package/src/visual/scripts/node_modules/ws/lib/sender.js +0 -602
  711. package/src/visual/scripts/node_modules/ws/lib/stream.js +0 -161
  712. package/src/visual/scripts/node_modules/ws/lib/subprotocol.js +0 -62
  713. package/src/visual/scripts/node_modules/ws/lib/validation.js +0 -152
  714. package/src/visual/scripts/node_modules/ws/lib/websocket-server.js +0 -554
  715. package/src/visual/scripts/node_modules/ws/lib/websocket.js +0 -1393
  716. package/src/visual/scripts/node_modules/ws/package.json +0 -70
  717. package/src/visual/scripts/node_modules/ws/wrapper.mjs +0 -21
  718. package/src/visual/scripts/package-lock.json +0 -878
@@ -1,1142 +0,0 @@
1
- /*!
2
- * send
3
- * Copyright(c) 2012 TJ Holowaychuk
4
- * Copyright(c) 2014-2022 Douglas Christopher Wilson
5
- * MIT Licensed
6
- */
7
-
8
- 'use strict'
9
-
10
- /**
11
- * Module dependencies.
12
- * @private
13
- */
14
-
15
- var createError = require('http-errors')
16
- var debug = require('debug')('send')
17
- var deprecate = require('depd')('send')
18
- var destroy = require('destroy')
19
- var encodeUrl = require('encodeurl')
20
- var escapeHtml = require('escape-html')
21
- var etag = require('etag')
22
- var fresh = require('fresh')
23
- var fs = require('fs')
24
- var mime = require('mime')
25
- var ms = require('ms')
26
- var onFinished = require('on-finished')
27
- var parseRange = require('range-parser')
28
- var path = require('path')
29
- var statuses = require('statuses')
30
- var Stream = require('stream')
31
- var util = require('util')
32
-
33
- /**
34
- * Path function references.
35
- * @private
36
- */
37
-
38
- var extname = path.extname
39
- var join = path.join
40
- var normalize = path.normalize
41
- var resolve = path.resolve
42
- var sep = path.sep
43
-
44
- /**
45
- * Regular expression for identifying a bytes Range header.
46
- * @private
47
- */
48
-
49
- var BYTES_RANGE_REGEXP = /^ *bytes=/
50
-
51
- /**
52
- * Maximum value allowed for the max age.
53
- * @private
54
- */
55
-
56
- var MAX_MAXAGE = 60 * 60 * 24 * 365 * 1000 // 1 year
57
-
58
- /**
59
- * Regular expression to match a path with a directory up component.
60
- * @private
61
- */
62
-
63
- var UP_PATH_REGEXP = /(?:^|[\\/])\.\.(?:[\\/]|$)/
64
-
65
- /**
66
- * Module exports.
67
- * @public
68
- */
69
-
70
- module.exports = send
71
- module.exports.mime = mime
72
-
73
- /**
74
- * Return a `SendStream` for `req` and `path`.
75
- *
76
- * @param {object} req
77
- * @param {string} path
78
- * @param {object} [options]
79
- * @return {SendStream}
80
- * @public
81
- */
82
-
83
- function send (req, path, options) {
84
- return new SendStream(req, path, options)
85
- }
86
-
87
- /**
88
- * Initialize a `SendStream` with the given `path`.
89
- *
90
- * @param {Request} req
91
- * @param {String} path
92
- * @param {object} [options]
93
- * @private
94
- */
95
-
96
- function SendStream (req, path, options) {
97
- Stream.call(this)
98
-
99
- var opts = options || {}
100
-
101
- this.options = opts
102
- this.path = path
103
- this.req = req
104
-
105
- this._acceptRanges = opts.acceptRanges !== undefined
106
- ? Boolean(opts.acceptRanges)
107
- : true
108
-
109
- this._cacheControl = opts.cacheControl !== undefined
110
- ? Boolean(opts.cacheControl)
111
- : true
112
-
113
- this._etag = opts.etag !== undefined
114
- ? Boolean(opts.etag)
115
- : true
116
-
117
- this._dotfiles = opts.dotfiles !== undefined
118
- ? opts.dotfiles
119
- : 'ignore'
120
-
121
- if (this._dotfiles !== 'ignore' && this._dotfiles !== 'allow' && this._dotfiles !== 'deny') {
122
- throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"')
123
- }
124
-
125
- this._hidden = Boolean(opts.hidden)
126
-
127
- if (opts.hidden !== undefined) {
128
- deprecate('hidden: use dotfiles: \'' + (this._hidden ? 'allow' : 'ignore') + '\' instead')
129
- }
130
-
131
- // legacy support
132
- if (opts.dotfiles === undefined) {
133
- this._dotfiles = undefined
134
- }
135
-
136
- this._extensions = opts.extensions !== undefined
137
- ? normalizeList(opts.extensions, 'extensions option')
138
- : []
139
-
140
- this._immutable = opts.immutable !== undefined
141
- ? Boolean(opts.immutable)
142
- : false
143
-
144
- this._index = opts.index !== undefined
145
- ? normalizeList(opts.index, 'index option')
146
- : ['index.html']
147
-
148
- this._lastModified = opts.lastModified !== undefined
149
- ? Boolean(opts.lastModified)
150
- : true
151
-
152
- this._maxage = opts.maxAge || opts.maxage
153
- this._maxage = typeof this._maxage === 'string'
154
- ? ms(this._maxage)
155
- : Number(this._maxage)
156
- this._maxage = !isNaN(this._maxage)
157
- ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE)
158
- : 0
159
-
160
- this._root = opts.root
161
- ? resolve(opts.root)
162
- : null
163
-
164
- if (!this._root && opts.from) {
165
- this.from(opts.from)
166
- }
167
- }
168
-
169
- /**
170
- * Inherits from `Stream`.
171
- */
172
-
173
- util.inherits(SendStream, Stream)
174
-
175
- /**
176
- * Enable or disable etag generation.
177
- *
178
- * @param {Boolean} val
179
- * @return {SendStream}
180
- * @api public
181
- */
182
-
183
- SendStream.prototype.etag = deprecate.function(function etag (val) {
184
- this._etag = Boolean(val)
185
- debug('etag %s', this._etag)
186
- return this
187
- }, 'send.etag: pass etag as option')
188
-
189
- /**
190
- * Enable or disable "hidden" (dot) files.
191
- *
192
- * @param {Boolean} path
193
- * @return {SendStream}
194
- * @api public
195
- */
196
-
197
- SendStream.prototype.hidden = deprecate.function(function hidden (val) {
198
- this._hidden = Boolean(val)
199
- this._dotfiles = undefined
200
- debug('hidden %s', this._hidden)
201
- return this
202
- }, 'send.hidden: use dotfiles option')
203
-
204
- /**
205
- * Set index `paths`, set to a falsy
206
- * value to disable index support.
207
- *
208
- * @param {String|Boolean|Array} paths
209
- * @return {SendStream}
210
- * @api public
211
- */
212
-
213
- SendStream.prototype.index = deprecate.function(function index (paths) {
214
- var index = !paths ? [] : normalizeList(paths, 'paths argument')
215
- debug('index %o', paths)
216
- this._index = index
217
- return this
218
- }, 'send.index: pass index as option')
219
-
220
- /**
221
- * Set root `path`.
222
- *
223
- * @param {String} path
224
- * @return {SendStream}
225
- * @api public
226
- */
227
-
228
- SendStream.prototype.root = function root (path) {
229
- this._root = resolve(String(path))
230
- debug('root %s', this._root)
231
- return this
232
- }
233
-
234
- SendStream.prototype.from = deprecate.function(SendStream.prototype.root,
235
- 'send.from: pass root as option')
236
-
237
- SendStream.prototype.root = deprecate.function(SendStream.prototype.root,
238
- 'send.root: pass root as option')
239
-
240
- /**
241
- * Set max-age to `maxAge`.
242
- *
243
- * @param {Number} maxAge
244
- * @return {SendStream}
245
- * @api public
246
- */
247
-
248
- SendStream.prototype.maxage = deprecate.function(function maxage (maxAge) {
249
- this._maxage = typeof maxAge === 'string'
250
- ? ms(maxAge)
251
- : Number(maxAge)
252
- this._maxage = !isNaN(this._maxage)
253
- ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE)
254
- : 0
255
- debug('max-age %d', this._maxage)
256
- return this
257
- }, 'send.maxage: pass maxAge as option')
258
-
259
- /**
260
- * Emit error with `status`.
261
- *
262
- * @param {number} status
263
- * @param {Error} [err]
264
- * @private
265
- */
266
-
267
- SendStream.prototype.error = function error (status, err) {
268
- // emit if listeners instead of responding
269
- if (hasListeners(this, 'error')) {
270
- return this.emit('error', createHttpError(status, err))
271
- }
272
-
273
- var res = this.res
274
- var msg = statuses.message[status] || String(status)
275
- var doc = createHtmlDocument('Error', escapeHtml(msg))
276
-
277
- // clear existing headers
278
- clearHeaders(res)
279
-
280
- // add error headers
281
- if (err && err.headers) {
282
- setHeaders(res, err.headers)
283
- }
284
-
285
- // send basic response
286
- res.statusCode = status
287
- res.setHeader('Content-Type', 'text/html; charset=UTF-8')
288
- res.setHeader('Content-Length', Buffer.byteLength(doc))
289
- res.setHeader('Content-Security-Policy', "default-src 'none'")
290
- res.setHeader('X-Content-Type-Options', 'nosniff')
291
- res.end(doc)
292
- }
293
-
294
- /**
295
- * Check if the pathname ends with "/".
296
- *
297
- * @return {boolean}
298
- * @private
299
- */
300
-
301
- SendStream.prototype.hasTrailingSlash = function hasTrailingSlash () {
302
- return this.path[this.path.length - 1] === '/'
303
- }
304
-
305
- /**
306
- * Check if this is a conditional GET request.
307
- *
308
- * @return {Boolean}
309
- * @api private
310
- */
311
-
312
- SendStream.prototype.isConditionalGET = function isConditionalGET () {
313
- return this.req.headers['if-match'] ||
314
- this.req.headers['if-unmodified-since'] ||
315
- this.req.headers['if-none-match'] ||
316
- this.req.headers['if-modified-since']
317
- }
318
-
319
- /**
320
- * Check if the request preconditions failed.
321
- *
322
- * @return {boolean}
323
- * @private
324
- */
325
-
326
- SendStream.prototype.isPreconditionFailure = function isPreconditionFailure () {
327
- var req = this.req
328
- var res = this.res
329
-
330
- // if-match
331
- var match = req.headers['if-match']
332
- if (match) {
333
- var etag = res.getHeader('ETag')
334
- return !etag || (match !== '*' && parseTokenList(match).every(function (match) {
335
- return match !== etag && match !== 'W/' + etag && 'W/' + match !== etag
336
- }))
337
- }
338
-
339
- // if-unmodified-since
340
- var unmodifiedSince = parseHttpDate(req.headers['if-unmodified-since'])
341
- if (!isNaN(unmodifiedSince)) {
342
- var lastModified = parseHttpDate(res.getHeader('Last-Modified'))
343
- return isNaN(lastModified) || lastModified > unmodifiedSince
344
- }
345
-
346
- return false
347
- }
348
-
349
- /**
350
- * Strip various content header fields for a change in entity.
351
- *
352
- * @private
353
- */
354
-
355
- SendStream.prototype.removeContentHeaderFields = function removeContentHeaderFields () {
356
- var res = this.res
357
-
358
- res.removeHeader('Content-Encoding')
359
- res.removeHeader('Content-Language')
360
- res.removeHeader('Content-Length')
361
- res.removeHeader('Content-Range')
362
- res.removeHeader('Content-Type')
363
- }
364
-
365
- /**
366
- * Respond with 304 not modified.
367
- *
368
- * @api private
369
- */
370
-
371
- SendStream.prototype.notModified = function notModified () {
372
- var res = this.res
373
- debug('not modified')
374
- this.removeContentHeaderFields()
375
- res.statusCode = 304
376
- res.end()
377
- }
378
-
379
- /**
380
- * Raise error that headers already sent.
381
- *
382
- * @api private
383
- */
384
-
385
- SendStream.prototype.headersAlreadySent = function headersAlreadySent () {
386
- var err = new Error('Can\'t set headers after they are sent.')
387
- debug('headers already sent')
388
- this.error(500, err)
389
- }
390
-
391
- /**
392
- * Check if the request is cacheable, aka
393
- * responded with 2xx or 304 (see RFC 2616 section 14.2{5,6}).
394
- *
395
- * @return {Boolean}
396
- * @api private
397
- */
398
-
399
- SendStream.prototype.isCachable = function isCachable () {
400
- var statusCode = this.res.statusCode
401
- return (statusCode >= 200 && statusCode < 300) ||
402
- statusCode === 304
403
- }
404
-
405
- /**
406
- * Handle stat() error.
407
- *
408
- * @param {Error} error
409
- * @private
410
- */
411
-
412
- SendStream.prototype.onStatError = function onStatError (error) {
413
- switch (error.code) {
414
- case 'ENAMETOOLONG':
415
- case 'ENOENT':
416
- case 'ENOTDIR':
417
- this.error(404, error)
418
- break
419
- default:
420
- this.error(500, error)
421
- break
422
- }
423
- }
424
-
425
- /**
426
- * Check if the cache is fresh.
427
- *
428
- * @return {Boolean}
429
- * @api private
430
- */
431
-
432
- SendStream.prototype.isFresh = function isFresh () {
433
- return fresh(this.req.headers, {
434
- etag: this.res.getHeader('ETag'),
435
- 'last-modified': this.res.getHeader('Last-Modified')
436
- })
437
- }
438
-
439
- /**
440
- * Check if the range is fresh.
441
- *
442
- * @return {Boolean}
443
- * @api private
444
- */
445
-
446
- SendStream.prototype.isRangeFresh = function isRangeFresh () {
447
- var ifRange = this.req.headers['if-range']
448
-
449
- if (!ifRange) {
450
- return true
451
- }
452
-
453
- // if-range as etag
454
- if (ifRange.indexOf('"') !== -1) {
455
- var etag = this.res.getHeader('ETag')
456
- return Boolean(etag && ifRange.indexOf(etag) !== -1)
457
- }
458
-
459
- // if-range as modified date
460
- var lastModified = this.res.getHeader('Last-Modified')
461
- return parseHttpDate(lastModified) <= parseHttpDate(ifRange)
462
- }
463
-
464
- /**
465
- * Redirect to path.
466
- *
467
- * @param {string} path
468
- * @private
469
- */
470
-
471
- SendStream.prototype.redirect = function redirect (path) {
472
- var res = this.res
473
-
474
- if (hasListeners(this, 'directory')) {
475
- this.emit('directory', res, path)
476
- return
477
- }
478
-
479
- if (this.hasTrailingSlash()) {
480
- this.error(403)
481
- return
482
- }
483
-
484
- var loc = encodeUrl(collapseLeadingSlashes(this.path + '/'))
485
- var doc = createHtmlDocument('Redirecting', 'Redirecting to ' + escapeHtml(loc))
486
-
487
- // redirect
488
- res.statusCode = 301
489
- res.setHeader('Content-Type', 'text/html; charset=UTF-8')
490
- res.setHeader('Content-Length', Buffer.byteLength(doc))
491
- res.setHeader('Content-Security-Policy', "default-src 'none'")
492
- res.setHeader('X-Content-Type-Options', 'nosniff')
493
- res.setHeader('Location', loc)
494
- res.end(doc)
495
- }
496
-
497
- /**
498
- * Pipe to `res.
499
- *
500
- * @param {Stream} res
501
- * @return {Stream} res
502
- * @api public
503
- */
504
-
505
- SendStream.prototype.pipe = function pipe (res) {
506
- // root path
507
- var root = this._root
508
-
509
- // references
510
- this.res = res
511
-
512
- // decode the path
513
- var path = decode(this.path)
514
- if (path === -1) {
515
- this.error(400)
516
- return res
517
- }
518
-
519
- // null byte(s)
520
- if (~path.indexOf('\0')) {
521
- this.error(400)
522
- return res
523
- }
524
-
525
- var parts
526
- if (root !== null) {
527
- // normalize
528
- if (path) {
529
- path = normalize('.' + sep + path)
530
- }
531
-
532
- // malicious path
533
- if (UP_PATH_REGEXP.test(path)) {
534
- debug('malicious path "%s"', path)
535
- this.error(403)
536
- return res
537
- }
538
-
539
- // explode path parts
540
- parts = path.split(sep)
541
-
542
- // join / normalize from optional root dir
543
- path = normalize(join(root, path))
544
- } else {
545
- // ".." is malicious without "root"
546
- if (UP_PATH_REGEXP.test(path)) {
547
- debug('malicious path "%s"', path)
548
- this.error(403)
549
- return res
550
- }
551
-
552
- // explode path parts
553
- parts = normalize(path).split(sep)
554
-
555
- // resolve the path
556
- path = resolve(path)
557
- }
558
-
559
- // dotfile handling
560
- if (containsDotFile(parts)) {
561
- var access = this._dotfiles
562
-
563
- // legacy support
564
- if (access === undefined) {
565
- access = parts[parts.length - 1][0] === '.'
566
- ? (this._hidden ? 'allow' : 'ignore')
567
- : 'allow'
568
- }
569
-
570
- debug('%s dotfile "%s"', access, path)
571
- switch (access) {
572
- case 'allow':
573
- break
574
- case 'deny':
575
- this.error(403)
576
- return res
577
- case 'ignore':
578
- default:
579
- this.error(404)
580
- return res
581
- }
582
- }
583
-
584
- // index file support
585
- if (this._index.length && this.hasTrailingSlash()) {
586
- this.sendIndex(path)
587
- return res
588
- }
589
-
590
- this.sendFile(path)
591
- return res
592
- }
593
-
594
- /**
595
- * Transfer `path`.
596
- *
597
- * @param {String} path
598
- * @api public
599
- */
600
-
601
- SendStream.prototype.send = function send (path, stat) {
602
- var len = stat.size
603
- var options = this.options
604
- var opts = {}
605
- var res = this.res
606
- var req = this.req
607
- var ranges = req.headers.range
608
- var offset = options.start || 0
609
-
610
- if (headersSent(res)) {
611
- // impossible to send now
612
- this.headersAlreadySent()
613
- return
614
- }
615
-
616
- debug('pipe "%s"', path)
617
-
618
- // set header fields
619
- this.setHeader(path, stat)
620
-
621
- // set content-type
622
- this.type(path)
623
-
624
- // conditional GET support
625
- if (this.isConditionalGET()) {
626
- if (this.isPreconditionFailure()) {
627
- this.error(412)
628
- return
629
- }
630
-
631
- if (this.isCachable() && this.isFresh()) {
632
- this.notModified()
633
- return
634
- }
635
- }
636
-
637
- // adjust len to start/end options
638
- len = Math.max(0, len - offset)
639
- if (options.end !== undefined) {
640
- var bytes = options.end - offset + 1
641
- if (len > bytes) len = bytes
642
- }
643
-
644
- // Range support
645
- if (this._acceptRanges && BYTES_RANGE_REGEXP.test(ranges)) {
646
- // parse
647
- ranges = parseRange(len, ranges, {
648
- combine: true
649
- })
650
-
651
- // If-Range support
652
- if (!this.isRangeFresh()) {
653
- debug('range stale')
654
- ranges = -2
655
- }
656
-
657
- // unsatisfiable
658
- if (ranges === -1) {
659
- debug('range unsatisfiable')
660
-
661
- // Content-Range
662
- res.setHeader('Content-Range', contentRange('bytes', len))
663
-
664
- // 416 Requested Range Not Satisfiable
665
- return this.error(416, {
666
- headers: { 'Content-Range': res.getHeader('Content-Range') }
667
- })
668
- }
669
-
670
- // valid (syntactically invalid/multiple ranges are treated as a regular response)
671
- if (ranges !== -2 && ranges.length === 1) {
672
- debug('range %j', ranges)
673
-
674
- // Content-Range
675
- res.statusCode = 206
676
- res.setHeader('Content-Range', contentRange('bytes', len, ranges[0]))
677
-
678
- // adjust for requested range
679
- offset += ranges[0].start
680
- len = ranges[0].end - ranges[0].start + 1
681
- }
682
- }
683
-
684
- // clone options
685
- for (var prop in options) {
686
- opts[prop] = options[prop]
687
- }
688
-
689
- // set read options
690
- opts.start = offset
691
- opts.end = Math.max(offset, offset + len - 1)
692
-
693
- // content-length
694
- res.setHeader('Content-Length', len)
695
-
696
- // HEAD support
697
- if (req.method === 'HEAD') {
698
- res.end()
699
- return
700
- }
701
-
702
- this.stream(path, opts)
703
- }
704
-
705
- /**
706
- * Transfer file for `path`.
707
- *
708
- * @param {String} path
709
- * @api private
710
- */
711
- SendStream.prototype.sendFile = function sendFile (path) {
712
- var i = 0
713
- var self = this
714
-
715
- debug('stat "%s"', path)
716
- fs.stat(path, function onstat (err, stat) {
717
- if (err && err.code === 'ENOENT' && !extname(path) && path[path.length - 1] !== sep) {
718
- // not found, check extensions
719
- return next(err)
720
- }
721
- if (err) return self.onStatError(err)
722
- if (stat.isDirectory()) return self.redirect(path)
723
- self.emit('file', path, stat)
724
- self.send(path, stat)
725
- })
726
-
727
- function next (err) {
728
- if (self._extensions.length <= i) {
729
- return err
730
- ? self.onStatError(err)
731
- : self.error(404)
732
- }
733
-
734
- var p = path + '.' + self._extensions[i++]
735
-
736
- debug('stat "%s"', p)
737
- fs.stat(p, function (err, stat) {
738
- if (err) return next(err)
739
- if (stat.isDirectory()) return next()
740
- self.emit('file', p, stat)
741
- self.send(p, stat)
742
- })
743
- }
744
- }
745
-
746
- /**
747
- * Transfer index for `path`.
748
- *
749
- * @param {String} path
750
- * @api private
751
- */
752
- SendStream.prototype.sendIndex = function sendIndex (path) {
753
- var i = -1
754
- var self = this
755
-
756
- function next (err) {
757
- if (++i >= self._index.length) {
758
- if (err) return self.onStatError(err)
759
- return self.error(404)
760
- }
761
-
762
- var p = join(path, self._index[i])
763
-
764
- debug('stat "%s"', p)
765
- fs.stat(p, function (err, stat) {
766
- if (err) return next(err)
767
- if (stat.isDirectory()) return next()
768
- self.emit('file', p, stat)
769
- self.send(p, stat)
770
- })
771
- }
772
-
773
- next()
774
- }
775
-
776
- /**
777
- * Stream `path` to the response.
778
- *
779
- * @param {String} path
780
- * @param {Object} options
781
- * @api private
782
- */
783
-
784
- SendStream.prototype.stream = function stream (path, options) {
785
- var self = this
786
- var res = this.res
787
-
788
- // pipe
789
- var stream = fs.createReadStream(path, options)
790
- this.emit('stream', stream)
791
- stream.pipe(res)
792
-
793
- // cleanup
794
- function cleanup () {
795
- destroy(stream, true)
796
- }
797
-
798
- // response finished, cleanup
799
- onFinished(res, cleanup)
800
-
801
- // error handling
802
- stream.on('error', function onerror (err) {
803
- // clean up stream early
804
- cleanup()
805
-
806
- // error
807
- self.onStatError(err)
808
- })
809
-
810
- // end
811
- stream.on('end', function onend () {
812
- self.emit('end')
813
- })
814
- }
815
-
816
- /**
817
- * Set content-type based on `path`
818
- * if it hasn't been explicitly set.
819
- *
820
- * @param {String} path
821
- * @api private
822
- */
823
-
824
- SendStream.prototype.type = function type (path) {
825
- var res = this.res
826
-
827
- if (res.getHeader('Content-Type')) return
828
-
829
- var type = mime.lookup(path)
830
-
831
- if (!type) {
832
- debug('no content-type')
833
- return
834
- }
835
-
836
- var charset = mime.charsets.lookup(type)
837
-
838
- debug('content-type %s', type)
839
- res.setHeader('Content-Type', type + (charset ? '; charset=' + charset : ''))
840
- }
841
-
842
- /**
843
- * Set response header fields, most
844
- * fields may be pre-defined.
845
- *
846
- * @param {String} path
847
- * @param {Object} stat
848
- * @api private
849
- */
850
-
851
- SendStream.prototype.setHeader = function setHeader (path, stat) {
852
- var res = this.res
853
-
854
- this.emit('headers', res, path, stat)
855
-
856
- if (this._acceptRanges && !res.getHeader('Accept-Ranges')) {
857
- debug('accept ranges')
858
- res.setHeader('Accept-Ranges', 'bytes')
859
- }
860
-
861
- if (this._cacheControl && !res.getHeader('Cache-Control')) {
862
- var cacheControl = 'public, max-age=' + Math.floor(this._maxage / 1000)
863
-
864
- if (this._immutable) {
865
- cacheControl += ', immutable'
866
- }
867
-
868
- debug('cache-control %s', cacheControl)
869
- res.setHeader('Cache-Control', cacheControl)
870
- }
871
-
872
- if (this._lastModified && !res.getHeader('Last-Modified')) {
873
- var modified = stat.mtime.toUTCString()
874
- debug('modified %s', modified)
875
- res.setHeader('Last-Modified', modified)
876
- }
877
-
878
- if (this._etag && !res.getHeader('ETag')) {
879
- var val = etag(stat)
880
- debug('etag %s', val)
881
- res.setHeader('ETag', val)
882
- }
883
- }
884
-
885
- /**
886
- * Clear all headers from a response.
887
- *
888
- * @param {object} res
889
- * @private
890
- */
891
-
892
- function clearHeaders (res) {
893
- var headers = getHeaderNames(res)
894
-
895
- for (var i = 0; i < headers.length; i++) {
896
- res.removeHeader(headers[i])
897
- }
898
- }
899
-
900
- /**
901
- * Collapse all leading slashes into a single slash
902
- *
903
- * @param {string} str
904
- * @private
905
- */
906
- function collapseLeadingSlashes (str) {
907
- for (var i = 0; i < str.length; i++) {
908
- if (str[i] !== '/') {
909
- break
910
- }
911
- }
912
-
913
- return i > 1
914
- ? '/' + str.substr(i)
915
- : str
916
- }
917
-
918
- /**
919
- * Determine if path parts contain a dotfile.
920
- *
921
- * @api private
922
- */
923
-
924
- function containsDotFile (parts) {
925
- for (var i = 0; i < parts.length; i++) {
926
- var part = parts[i]
927
- if (part.length > 1 && part[0] === '.') {
928
- return true
929
- }
930
- }
931
-
932
- return false
933
- }
934
-
935
- /**
936
- * Create a Content-Range header.
937
- *
938
- * @param {string} type
939
- * @param {number} size
940
- * @param {array} [range]
941
- */
942
-
943
- function contentRange (type, size, range) {
944
- return type + ' ' + (range ? range.start + '-' + range.end : '*') + '/' + size
945
- }
946
-
947
- /**
948
- * Create a minimal HTML document.
949
- *
950
- * @param {string} title
951
- * @param {string} body
952
- * @private
953
- */
954
-
955
- function createHtmlDocument (title, body) {
956
- return '<!DOCTYPE html>\n' +
957
- '<html lang="en">\n' +
958
- '<head>\n' +
959
- '<meta charset="utf-8">\n' +
960
- '<title>' + title + '</title>\n' +
961
- '</head>\n' +
962
- '<body>\n' +
963
- '<pre>' + body + '</pre>\n' +
964
- '</body>\n' +
965
- '</html>\n'
966
- }
967
-
968
- /**
969
- * Create a HttpError object from simple arguments.
970
- *
971
- * @param {number} status
972
- * @param {Error|object} err
973
- * @private
974
- */
975
-
976
- function createHttpError (status, err) {
977
- if (!err) {
978
- return createError(status)
979
- }
980
-
981
- return err instanceof Error
982
- ? createError(status, err, { expose: false })
983
- : createError(status, err)
984
- }
985
-
986
- /**
987
- * decodeURIComponent.
988
- *
989
- * Allows V8 to only deoptimize this fn instead of all
990
- * of send().
991
- *
992
- * @param {String} path
993
- * @api private
994
- */
995
-
996
- function decode (path) {
997
- try {
998
- return decodeURIComponent(path)
999
- } catch (err) {
1000
- return -1
1001
- }
1002
- }
1003
-
1004
- /**
1005
- * Get the header names on a respnse.
1006
- *
1007
- * @param {object} res
1008
- * @returns {array[string]}
1009
- * @private
1010
- */
1011
-
1012
- function getHeaderNames (res) {
1013
- return typeof res.getHeaderNames !== 'function'
1014
- ? Object.keys(res._headers || {})
1015
- : res.getHeaderNames()
1016
- }
1017
-
1018
- /**
1019
- * Determine if emitter has listeners of a given type.
1020
- *
1021
- * The way to do this check is done three different ways in Node.js >= 0.8
1022
- * so this consolidates them into a minimal set using instance methods.
1023
- *
1024
- * @param {EventEmitter} emitter
1025
- * @param {string} type
1026
- * @returns {boolean}
1027
- * @private
1028
- */
1029
-
1030
- function hasListeners (emitter, type) {
1031
- var count = typeof emitter.listenerCount !== 'function'
1032
- ? emitter.listeners(type).length
1033
- : emitter.listenerCount(type)
1034
-
1035
- return count > 0
1036
- }
1037
-
1038
- /**
1039
- * Determine if the response headers have been sent.
1040
- *
1041
- * @param {object} res
1042
- * @returns {boolean}
1043
- * @private
1044
- */
1045
-
1046
- function headersSent (res) {
1047
- return typeof res.headersSent !== 'boolean'
1048
- ? Boolean(res._header)
1049
- : res.headersSent
1050
- }
1051
-
1052
- /**
1053
- * Normalize the index option into an array.
1054
- *
1055
- * @param {boolean|string|array} val
1056
- * @param {string} name
1057
- * @private
1058
- */
1059
-
1060
- function normalizeList (val, name) {
1061
- var list = [].concat(val || [])
1062
-
1063
- for (var i = 0; i < list.length; i++) {
1064
- if (typeof list[i] !== 'string') {
1065
- throw new TypeError(name + ' must be array of strings or false')
1066
- }
1067
- }
1068
-
1069
- return list
1070
- }
1071
-
1072
- /**
1073
- * Parse an HTTP Date into a number.
1074
- *
1075
- * @param {string} date
1076
- * @private
1077
- */
1078
-
1079
- function parseHttpDate (date) {
1080
- var timestamp = date && Date.parse(date)
1081
-
1082
- return typeof timestamp === 'number'
1083
- ? timestamp
1084
- : NaN
1085
- }
1086
-
1087
- /**
1088
- * Parse a HTTP token list.
1089
- *
1090
- * @param {string} str
1091
- * @private
1092
- */
1093
-
1094
- function parseTokenList (str) {
1095
- var end = 0
1096
- var list = []
1097
- var start = 0
1098
-
1099
- // gather tokens
1100
- for (var i = 0, len = str.length; i < len; i++) {
1101
- switch (str.charCodeAt(i)) {
1102
- case 0x20: /* */
1103
- if (start === end) {
1104
- start = end = i + 1
1105
- }
1106
- break
1107
- case 0x2c: /* , */
1108
- if (start !== end) {
1109
- list.push(str.substring(start, end))
1110
- }
1111
- start = end = i + 1
1112
- break
1113
- default:
1114
- end = i + 1
1115
- break
1116
- }
1117
- }
1118
-
1119
- // final token
1120
- if (start !== end) {
1121
- list.push(str.substring(start, end))
1122
- }
1123
-
1124
- return list
1125
- }
1126
-
1127
- /**
1128
- * Set an object of headers on a response.
1129
- *
1130
- * @param {object} res
1131
- * @param {object} headers
1132
- * @private
1133
- */
1134
-
1135
- function setHeaders (res, headers) {
1136
- var keys = Object.keys(headers)
1137
-
1138
- for (var i = 0; i < keys.length; i++) {
1139
- var key = keys[i]
1140
- res.setHeader(key, headers[key])
1141
- }
1142
- }