devlyn-cli 1.15.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/AGENTS.md +104 -0
  2. package/CLAUDE.md +135 -21
  3. package/README.md +43 -125
  4. package/benchmark/auto-resolve/BENCHMARK-DESIGN.md +272 -0
  5. package/benchmark/auto-resolve/README.md +114 -0
  6. package/benchmark/auto-resolve/RUBRIC.md +162 -0
  7. package/benchmark/auto-resolve/fixtures/F1-cli-trivial-flag/NOTES.md +30 -0
  8. package/benchmark/auto-resolve/fixtures/F1-cli-trivial-flag/expected.json +68 -0
  9. package/benchmark/auto-resolve/fixtures/F1-cli-trivial-flag/metadata.json +10 -0
  10. package/benchmark/auto-resolve/fixtures/F1-cli-trivial-flag/setup.sh +4 -0
  11. package/benchmark/auto-resolve/fixtures/F1-cli-trivial-flag/spec.md +45 -0
  12. package/benchmark/auto-resolve/fixtures/F1-cli-trivial-flag/task.txt +8 -0
  13. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/NOTES.md +54 -0
  14. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/expected-pair-plan-registry.json +170 -0
  15. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/expected.json +84 -0
  16. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/metadata.json +21 -0
  17. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/pair-plan.sample-fail.json +214 -0
  18. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/pair-plan.sample-pass.json +223 -0
  19. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/setup.sh +5 -0
  20. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/spec.md +56 -0
  21. package/benchmark/auto-resolve/fixtures/F2-cli-medium-subcommand/task.txt +14 -0
  22. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/NOTES.md +28 -0
  23. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/expected-pair-plan-registry.json +162 -0
  24. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/expected.json +65 -0
  25. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/metadata.json +19 -0
  26. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/setup.sh +4 -0
  27. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/spec.md +56 -0
  28. package/benchmark/auto-resolve/fixtures/F3-backend-contract-risk/task.txt +9 -0
  29. package/benchmark/auto-resolve/fixtures/F4-web-browser-design/NOTES.md +40 -0
  30. package/benchmark/auto-resolve/fixtures/F4-web-browser-design/expected.json +57 -0
  31. package/benchmark/auto-resolve/fixtures/F4-web-browser-design/metadata.json +10 -0
  32. package/benchmark/auto-resolve/fixtures/F4-web-browser-design/setup.sh +6 -0
  33. package/benchmark/auto-resolve/fixtures/F4-web-browser-design/spec.md +49 -0
  34. package/benchmark/auto-resolve/fixtures/F4-web-browser-design/task.txt +9 -0
  35. package/benchmark/auto-resolve/fixtures/F5-fix-loop-red-green/NOTES.md +38 -0
  36. package/benchmark/auto-resolve/fixtures/F5-fix-loop-red-green/expected.json +65 -0
  37. package/benchmark/auto-resolve/fixtures/F5-fix-loop-red-green/metadata.json +10 -0
  38. package/benchmark/auto-resolve/fixtures/F5-fix-loop-red-green/setup.sh +55 -0
  39. package/benchmark/auto-resolve/fixtures/F5-fix-loop-red-green/spec.md +49 -0
  40. package/benchmark/auto-resolve/fixtures/F5-fix-loop-red-green/task.txt +7 -0
  41. package/benchmark/auto-resolve/fixtures/F6-dep-audit-native-module/NOTES.md +38 -0
  42. package/benchmark/auto-resolve/fixtures/F6-dep-audit-native-module/expected.json +77 -0
  43. package/benchmark/auto-resolve/fixtures/F6-dep-audit-native-module/metadata.json +10 -0
  44. package/benchmark/auto-resolve/fixtures/F6-dep-audit-native-module/setup.sh +4 -0
  45. package/benchmark/auto-resolve/fixtures/F6-dep-audit-native-module/spec.md +49 -0
  46. package/benchmark/auto-resolve/fixtures/F6-dep-audit-native-module/task.txt +10 -0
  47. package/benchmark/auto-resolve/fixtures/F7-out-of-scope-trap/NOTES.md +50 -0
  48. package/benchmark/auto-resolve/fixtures/F7-out-of-scope-trap/expected.json +76 -0
  49. package/benchmark/auto-resolve/fixtures/F7-out-of-scope-trap/metadata.json +10 -0
  50. package/benchmark/auto-resolve/fixtures/F7-out-of-scope-trap/setup.sh +36 -0
  51. package/benchmark/auto-resolve/fixtures/F7-out-of-scope-trap/spec.md +46 -0
  52. package/benchmark/auto-resolve/fixtures/F7-out-of-scope-trap/task.txt +7 -0
  53. package/benchmark/auto-resolve/fixtures/F8-known-limit-ambiguous/NOTES.md +50 -0
  54. package/benchmark/auto-resolve/fixtures/F8-known-limit-ambiguous/expected.json +63 -0
  55. package/benchmark/auto-resolve/fixtures/F8-known-limit-ambiguous/metadata.json +10 -0
  56. package/benchmark/auto-resolve/fixtures/F8-known-limit-ambiguous/setup.sh +4 -0
  57. package/benchmark/auto-resolve/fixtures/F8-known-limit-ambiguous/spec.md +48 -0
  58. package/benchmark/auto-resolve/fixtures/F8-known-limit-ambiguous/task.txt +1 -0
  59. package/benchmark/auto-resolve/fixtures/F9-e2e-ideate-to-resolve/NOTES.md +93 -0
  60. package/benchmark/auto-resolve/fixtures/F9-e2e-ideate-to-resolve/expected.json +74 -0
  61. package/benchmark/auto-resolve/fixtures/F9-e2e-ideate-to-resolve/metadata.json +10 -0
  62. package/benchmark/auto-resolve/fixtures/F9-e2e-ideate-to-resolve/setup.sh +28 -0
  63. package/benchmark/auto-resolve/fixtures/F9-e2e-ideate-to-resolve/spec.md +62 -0
  64. package/benchmark/auto-resolve/fixtures/F9-e2e-ideate-to-resolve/task.txt +5 -0
  65. package/benchmark/auto-resolve/fixtures/SCHEMA.md +130 -0
  66. package/benchmark/auto-resolve/fixtures/test-repo/README.md +27 -0
  67. package/benchmark/auto-resolve/fixtures/test-repo/bin/cli.js +63 -0
  68. package/benchmark/auto-resolve/fixtures/test-repo/package-lock.json +823 -0
  69. package/benchmark/auto-resolve/fixtures/test-repo/package.json +22 -0
  70. package/benchmark/auto-resolve/fixtures/test-repo/playwright.config.js +17 -0
  71. package/benchmark/auto-resolve/fixtures/test-repo/server/index.js +37 -0
  72. package/benchmark/auto-resolve/fixtures/test-repo/tests/cli.test.js +25 -0
  73. package/benchmark/auto-resolve/fixtures/test-repo/tests/server.test.js +58 -0
  74. package/benchmark/auto-resolve/fixtures/test-repo/web/index.html +37 -0
  75. package/benchmark/auto-resolve/scripts/build-pair-eligible-manifest.py +174 -0
  76. package/benchmark/auto-resolve/scripts/check-f9-artifacts.py +256 -0
  77. package/benchmark/auto-resolve/scripts/compile-report.py +331 -0
  78. package/benchmark/auto-resolve/scripts/iter-0033c-compare.py +552 -0
  79. package/benchmark/auto-resolve/scripts/judge-opus-pass.sh +430 -0
  80. package/benchmark/auto-resolve/scripts/judge.sh +359 -0
  81. package/benchmark/auto-resolve/scripts/oracle-scope-tier-a.py +260 -0
  82. package/benchmark/auto-resolve/scripts/oracle-scope-tier-b.py +274 -0
  83. package/benchmark/auto-resolve/scripts/oracle-test-fidelity.py +328 -0
  84. package/benchmark/auto-resolve/scripts/pair-plan-idgen.py +401 -0
  85. package/benchmark/auto-resolve/scripts/pair-plan-lint.py +468 -0
  86. package/benchmark/auto-resolve/scripts/run-fixture.sh +691 -0
  87. package/benchmark/auto-resolve/scripts/run-iter-0033c.sh +234 -0
  88. package/benchmark/auto-resolve/scripts/run-suite.sh +214 -0
  89. package/benchmark/auto-resolve/scripts/ship-gate.py +222 -0
  90. package/bin/devlyn.js +175 -17
  91. package/config/skills/_shared/adapters/README.md +64 -0
  92. package/config/skills/_shared/adapters/gpt-5-5.md +29 -0
  93. package/config/skills/_shared/adapters/opus-4-7.md +29 -0
  94. package/config/skills/{devlyn:auto-resolve/scripts → _shared}/archive_run.py +26 -0
  95. package/config/skills/_shared/codex-config.md +54 -0
  96. package/config/skills/_shared/codex-monitored.sh +141 -0
  97. package/config/skills/_shared/engine-preflight.md +35 -0
  98. package/config/skills/_shared/expected.schema.json +93 -0
  99. package/config/skills/_shared/pair-plan-schema.md +298 -0
  100. package/config/skills/_shared/runtime-principles.md +110 -0
  101. package/config/skills/_shared/spec-verify-check.py +519 -0
  102. package/config/skills/devlyn:ideate/SKILL.md +99 -429
  103. package/config/skills/devlyn:ideate/references/elicitation.md +97 -0
  104. package/config/skills/devlyn:ideate/references/from-spec-mode.md +54 -0
  105. package/config/skills/devlyn:ideate/references/project-mode.md +76 -0
  106. package/config/skills/devlyn:ideate/references/spec-template.md +102 -0
  107. package/config/skills/devlyn:resolve/SKILL.md +172 -184
  108. package/config/skills/devlyn:resolve/references/free-form-mode.md +68 -0
  109. package/config/skills/devlyn:resolve/references/phases/build-gate.md +45 -0
  110. package/config/skills/devlyn:resolve/references/phases/cleanup.md +39 -0
  111. package/config/skills/devlyn:resolve/references/phases/implement.md +42 -0
  112. package/config/skills/devlyn:resolve/references/phases/plan.md +42 -0
  113. package/config/skills/devlyn:resolve/references/phases/verify.md +69 -0
  114. package/config/skills/devlyn:resolve/references/state-schema.md +106 -0
  115. package/{config/skills → optional-skills}/devlyn:design-system/SKILL.md +1 -0
  116. package/{config/skills → optional-skills}/devlyn:reap/SKILL.md +1 -0
  117. package/{config/skills → optional-skills}/devlyn:team-design-ui/SKILL.md +5 -0
  118. package/package.json +12 -2
  119. package/scripts/lint-skills.sh +431 -0
  120. package/config/skills/devlyn:auto-resolve/SKILL.md +0 -252
  121. package/config/skills/devlyn:auto-resolve/evals/evals.json +0 -21
  122. package/config/skills/devlyn:auto-resolve/evals/task-doctor-subcommand.md +0 -42
  123. package/config/skills/devlyn:auto-resolve/references/build-gate.md +0 -130
  124. package/config/skills/devlyn:auto-resolve/references/engine-routing.md +0 -82
  125. package/config/skills/devlyn:auto-resolve/references/findings-schema.md +0 -103
  126. package/config/skills/devlyn:auto-resolve/references/phases/phase-1-build.md +0 -54
  127. package/config/skills/devlyn:auto-resolve/references/phases/phase-2-evaluate.md +0 -45
  128. package/config/skills/devlyn:auto-resolve/references/phases/phase-3-critic.md +0 -84
  129. package/config/skills/devlyn:auto-resolve/references/pipeline-routing.md +0 -114
  130. package/config/skills/devlyn:auto-resolve/references/pipeline-state.md +0 -201
  131. package/config/skills/devlyn:auto-resolve/scripts/terminal_verdict.py +0 -96
  132. package/config/skills/devlyn:browser-validate/SKILL.md +0 -164
  133. package/config/skills/devlyn:browser-validate/references/flow-testing.md +0 -118
  134. package/config/skills/devlyn:browser-validate/references/tier1-chrome.md +0 -137
  135. package/config/skills/devlyn:browser-validate/references/tier2-playwright.md +0 -195
  136. package/config/skills/devlyn:browser-validate/references/tier3-curl.md +0 -57
  137. package/config/skills/devlyn:clean/SKILL.md +0 -285
  138. package/config/skills/devlyn:design-ui/SKILL.md +0 -351
  139. package/config/skills/devlyn:discover-product/SKILL.md +0 -124
  140. package/config/skills/devlyn:evaluate/SKILL.md +0 -564
  141. package/config/skills/devlyn:feature-spec/SKILL.md +0 -630
  142. package/config/skills/devlyn:ideate/references/challenge-rubric.md +0 -122
  143. package/config/skills/devlyn:ideate/references/codex-critic-template.md +0 -42
  144. package/config/skills/devlyn:ideate/references/templates/item-spec.md +0 -90
  145. package/config/skills/devlyn:implement-ui/SKILL.md +0 -466
  146. package/config/skills/devlyn:preflight/SKILL.md +0 -355
  147. package/config/skills/devlyn:preflight/references/auditors/browser-auditor.md +0 -32
  148. package/config/skills/devlyn:preflight/references/auditors/code-auditor.md +0 -86
  149. package/config/skills/devlyn:preflight/references/auditors/docs-auditor.md +0 -38
  150. package/config/skills/devlyn:product-spec/SKILL.md +0 -603
  151. package/config/skills/devlyn:recommend-features/SKILL.md +0 -286
  152. package/config/skills/devlyn:review/SKILL.md +0 -161
  153. package/config/skills/devlyn:team-resolve/SKILL.md +0 -631
  154. package/config/skills/devlyn:team-review/SKILL.md +0 -493
  155. package/config/skills/devlyn:update-docs/SKILL.md +0 -463
  156. package/config/skills/workflow-routing/SKILL.md +0 -73
  157. /package/{config/skills → optional-skills}/devlyn:reap/scripts/reap.sh +0 -0
  158. /package/{config/skills → optional-skills}/devlyn:reap/scripts/scan.sh +0 -0
@@ -0,0 +1,823 @@
1
+ {
2
+ "name": "bench-test-repo",
3
+ "version": "0.1.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "bench-test-repo",
9
+ "version": "0.1.0",
10
+ "dependencies": {
11
+ "express": "4.19.2"
12
+ },
13
+ "bin": {
14
+ "bench-cli": "bin/cli.js"
15
+ },
16
+ "devDependencies": {},
17
+ "engines": {
18
+ "node": ">=18.0.0"
19
+ }
20
+ },
21
+ "node_modules/accepts": {
22
+ "version": "1.3.8",
23
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
24
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
25
+ "license": "MIT",
26
+ "dependencies": {
27
+ "mime-types": "~2.1.34",
28
+ "negotiator": "0.6.3"
29
+ },
30
+ "engines": {
31
+ "node": ">= 0.6"
32
+ }
33
+ },
34
+ "node_modules/array-flatten": {
35
+ "version": "1.1.1",
36
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
37
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
38
+ "license": "MIT"
39
+ },
40
+ "node_modules/body-parser": {
41
+ "version": "1.20.2",
42
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz",
43
+ "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==",
44
+ "license": "MIT",
45
+ "dependencies": {
46
+ "bytes": "3.1.2",
47
+ "content-type": "~1.0.5",
48
+ "debug": "2.6.9",
49
+ "depd": "2.0.0",
50
+ "destroy": "1.2.0",
51
+ "http-errors": "2.0.0",
52
+ "iconv-lite": "0.4.24",
53
+ "on-finished": "2.4.1",
54
+ "qs": "6.11.0",
55
+ "raw-body": "2.5.2",
56
+ "type-is": "~1.6.18",
57
+ "unpipe": "1.0.0"
58
+ },
59
+ "engines": {
60
+ "node": ">= 0.8",
61
+ "npm": "1.2.8000 || >= 1.4.16"
62
+ }
63
+ },
64
+ "node_modules/bytes": {
65
+ "version": "3.1.2",
66
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
67
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
68
+ "license": "MIT",
69
+ "engines": {
70
+ "node": ">= 0.8"
71
+ }
72
+ },
73
+ "node_modules/call-bind-apply-helpers": {
74
+ "version": "1.0.2",
75
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
76
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
77
+ "license": "MIT",
78
+ "dependencies": {
79
+ "es-errors": "^1.3.0",
80
+ "function-bind": "^1.1.2"
81
+ },
82
+ "engines": {
83
+ "node": ">= 0.4"
84
+ }
85
+ },
86
+ "node_modules/call-bound": {
87
+ "version": "1.0.4",
88
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
89
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
90
+ "license": "MIT",
91
+ "dependencies": {
92
+ "call-bind-apply-helpers": "^1.0.2",
93
+ "get-intrinsic": "^1.3.0"
94
+ },
95
+ "engines": {
96
+ "node": ">= 0.4"
97
+ },
98
+ "funding": {
99
+ "url": "https://github.com/sponsors/ljharb"
100
+ }
101
+ },
102
+ "node_modules/content-disposition": {
103
+ "version": "0.5.4",
104
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
105
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
106
+ "license": "MIT",
107
+ "dependencies": {
108
+ "safe-buffer": "5.2.1"
109
+ },
110
+ "engines": {
111
+ "node": ">= 0.6"
112
+ }
113
+ },
114
+ "node_modules/content-type": {
115
+ "version": "1.0.5",
116
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
117
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
118
+ "license": "MIT",
119
+ "engines": {
120
+ "node": ">= 0.6"
121
+ }
122
+ },
123
+ "node_modules/cookie": {
124
+ "version": "0.6.0",
125
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
126
+ "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==",
127
+ "license": "MIT",
128
+ "engines": {
129
+ "node": ">= 0.6"
130
+ }
131
+ },
132
+ "node_modules/cookie-signature": {
133
+ "version": "1.0.6",
134
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
135
+ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
136
+ "license": "MIT"
137
+ },
138
+ "node_modules/debug": {
139
+ "version": "2.6.9",
140
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
141
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
142
+ "license": "MIT",
143
+ "dependencies": {
144
+ "ms": "2.0.0"
145
+ }
146
+ },
147
+ "node_modules/depd": {
148
+ "version": "2.0.0",
149
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
150
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
151
+ "license": "MIT",
152
+ "engines": {
153
+ "node": ">= 0.8"
154
+ }
155
+ },
156
+ "node_modules/destroy": {
157
+ "version": "1.2.0",
158
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
159
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
160
+ "license": "MIT",
161
+ "engines": {
162
+ "node": ">= 0.8",
163
+ "npm": "1.2.8000 || >= 1.4.16"
164
+ }
165
+ },
166
+ "node_modules/dunder-proto": {
167
+ "version": "1.0.1",
168
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
169
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
170
+ "license": "MIT",
171
+ "dependencies": {
172
+ "call-bind-apply-helpers": "^1.0.1",
173
+ "es-errors": "^1.3.0",
174
+ "gopd": "^1.2.0"
175
+ },
176
+ "engines": {
177
+ "node": ">= 0.4"
178
+ }
179
+ },
180
+ "node_modules/ee-first": {
181
+ "version": "1.1.1",
182
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
183
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
184
+ "license": "MIT"
185
+ },
186
+ "node_modules/encodeurl": {
187
+ "version": "1.0.2",
188
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
189
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
190
+ "license": "MIT",
191
+ "engines": {
192
+ "node": ">= 0.8"
193
+ }
194
+ },
195
+ "node_modules/es-define-property": {
196
+ "version": "1.0.1",
197
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
198
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
199
+ "license": "MIT",
200
+ "engines": {
201
+ "node": ">= 0.4"
202
+ }
203
+ },
204
+ "node_modules/es-errors": {
205
+ "version": "1.3.0",
206
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
207
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
208
+ "license": "MIT",
209
+ "engines": {
210
+ "node": ">= 0.4"
211
+ }
212
+ },
213
+ "node_modules/es-object-atoms": {
214
+ "version": "1.1.1",
215
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
216
+ "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
217
+ "license": "MIT",
218
+ "dependencies": {
219
+ "es-errors": "^1.3.0"
220
+ },
221
+ "engines": {
222
+ "node": ">= 0.4"
223
+ }
224
+ },
225
+ "node_modules/escape-html": {
226
+ "version": "1.0.3",
227
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
228
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
229
+ "license": "MIT"
230
+ },
231
+ "node_modules/etag": {
232
+ "version": "1.8.1",
233
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
234
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
235
+ "license": "MIT",
236
+ "engines": {
237
+ "node": ">= 0.6"
238
+ }
239
+ },
240
+ "node_modules/express": {
241
+ "version": "4.19.2",
242
+ "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz",
243
+ "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==",
244
+ "license": "MIT",
245
+ "dependencies": {
246
+ "accepts": "~1.3.8",
247
+ "array-flatten": "1.1.1",
248
+ "body-parser": "1.20.2",
249
+ "content-disposition": "0.5.4",
250
+ "content-type": "~1.0.4",
251
+ "cookie": "0.6.0",
252
+ "cookie-signature": "1.0.6",
253
+ "debug": "2.6.9",
254
+ "depd": "2.0.0",
255
+ "encodeurl": "~1.0.2",
256
+ "escape-html": "~1.0.3",
257
+ "etag": "~1.8.1",
258
+ "finalhandler": "1.2.0",
259
+ "fresh": "0.5.2",
260
+ "http-errors": "2.0.0",
261
+ "merge-descriptors": "1.0.1",
262
+ "methods": "~1.1.2",
263
+ "on-finished": "2.4.1",
264
+ "parseurl": "~1.3.3",
265
+ "path-to-regexp": "0.1.7",
266
+ "proxy-addr": "~2.0.7",
267
+ "qs": "6.11.0",
268
+ "range-parser": "~1.2.1",
269
+ "safe-buffer": "5.2.1",
270
+ "send": "0.18.0",
271
+ "serve-static": "1.15.0",
272
+ "setprototypeof": "1.2.0",
273
+ "statuses": "2.0.1",
274
+ "type-is": "~1.6.18",
275
+ "utils-merge": "1.0.1",
276
+ "vary": "~1.1.2"
277
+ },
278
+ "engines": {
279
+ "node": ">= 0.10.0"
280
+ }
281
+ },
282
+ "node_modules/finalhandler": {
283
+ "version": "1.2.0",
284
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
285
+ "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
286
+ "license": "MIT",
287
+ "dependencies": {
288
+ "debug": "2.6.9",
289
+ "encodeurl": "~1.0.2",
290
+ "escape-html": "~1.0.3",
291
+ "on-finished": "2.4.1",
292
+ "parseurl": "~1.3.3",
293
+ "statuses": "2.0.1",
294
+ "unpipe": "~1.0.0"
295
+ },
296
+ "engines": {
297
+ "node": ">= 0.8"
298
+ }
299
+ },
300
+ "node_modules/forwarded": {
301
+ "version": "0.2.0",
302
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
303
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
304
+ "license": "MIT",
305
+ "engines": {
306
+ "node": ">= 0.6"
307
+ }
308
+ },
309
+ "node_modules/fresh": {
310
+ "version": "0.5.2",
311
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
312
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
313
+ "license": "MIT",
314
+ "engines": {
315
+ "node": ">= 0.6"
316
+ }
317
+ },
318
+ "node_modules/function-bind": {
319
+ "version": "1.1.2",
320
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
321
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
322
+ "license": "MIT",
323
+ "funding": {
324
+ "url": "https://github.com/sponsors/ljharb"
325
+ }
326
+ },
327
+ "node_modules/get-intrinsic": {
328
+ "version": "1.3.0",
329
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
330
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
331
+ "license": "MIT",
332
+ "dependencies": {
333
+ "call-bind-apply-helpers": "^1.0.2",
334
+ "es-define-property": "^1.0.1",
335
+ "es-errors": "^1.3.0",
336
+ "es-object-atoms": "^1.1.1",
337
+ "function-bind": "^1.1.2",
338
+ "get-proto": "^1.0.1",
339
+ "gopd": "^1.2.0",
340
+ "has-symbols": "^1.1.0",
341
+ "hasown": "^2.0.2",
342
+ "math-intrinsics": "^1.1.0"
343
+ },
344
+ "engines": {
345
+ "node": ">= 0.4"
346
+ },
347
+ "funding": {
348
+ "url": "https://github.com/sponsors/ljharb"
349
+ }
350
+ },
351
+ "node_modules/get-proto": {
352
+ "version": "1.0.1",
353
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
354
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
355
+ "license": "MIT",
356
+ "dependencies": {
357
+ "dunder-proto": "^1.0.1",
358
+ "es-object-atoms": "^1.0.0"
359
+ },
360
+ "engines": {
361
+ "node": ">= 0.4"
362
+ }
363
+ },
364
+ "node_modules/gopd": {
365
+ "version": "1.2.0",
366
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
367
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
368
+ "license": "MIT",
369
+ "engines": {
370
+ "node": ">= 0.4"
371
+ },
372
+ "funding": {
373
+ "url": "https://github.com/sponsors/ljharb"
374
+ }
375
+ },
376
+ "node_modules/has-symbols": {
377
+ "version": "1.1.0",
378
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
379
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
380
+ "license": "MIT",
381
+ "engines": {
382
+ "node": ">= 0.4"
383
+ },
384
+ "funding": {
385
+ "url": "https://github.com/sponsors/ljharb"
386
+ }
387
+ },
388
+ "node_modules/hasown": {
389
+ "version": "2.0.3",
390
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz",
391
+ "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==",
392
+ "license": "MIT",
393
+ "dependencies": {
394
+ "function-bind": "^1.1.2"
395
+ },
396
+ "engines": {
397
+ "node": ">= 0.4"
398
+ }
399
+ },
400
+ "node_modules/http-errors": {
401
+ "version": "2.0.0",
402
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
403
+ "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
404
+ "license": "MIT",
405
+ "dependencies": {
406
+ "depd": "2.0.0",
407
+ "inherits": "2.0.4",
408
+ "setprototypeof": "1.2.0",
409
+ "statuses": "2.0.1",
410
+ "toidentifier": "1.0.1"
411
+ },
412
+ "engines": {
413
+ "node": ">= 0.8"
414
+ }
415
+ },
416
+ "node_modules/iconv-lite": {
417
+ "version": "0.4.24",
418
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
419
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
420
+ "license": "MIT",
421
+ "dependencies": {
422
+ "safer-buffer": ">= 2.1.2 < 3"
423
+ },
424
+ "engines": {
425
+ "node": ">=0.10.0"
426
+ }
427
+ },
428
+ "node_modules/inherits": {
429
+ "version": "2.0.4",
430
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
431
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
432
+ "license": "ISC"
433
+ },
434
+ "node_modules/ipaddr.js": {
435
+ "version": "1.9.1",
436
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
437
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
438
+ "license": "MIT",
439
+ "engines": {
440
+ "node": ">= 0.10"
441
+ }
442
+ },
443
+ "node_modules/math-intrinsics": {
444
+ "version": "1.1.0",
445
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
446
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
447
+ "license": "MIT",
448
+ "engines": {
449
+ "node": ">= 0.4"
450
+ }
451
+ },
452
+ "node_modules/media-typer": {
453
+ "version": "0.3.0",
454
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
455
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
456
+ "license": "MIT",
457
+ "engines": {
458
+ "node": ">= 0.6"
459
+ }
460
+ },
461
+ "node_modules/merge-descriptors": {
462
+ "version": "1.0.1",
463
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
464
+ "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==",
465
+ "license": "MIT"
466
+ },
467
+ "node_modules/methods": {
468
+ "version": "1.1.2",
469
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
470
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
471
+ "license": "MIT",
472
+ "engines": {
473
+ "node": ">= 0.6"
474
+ }
475
+ },
476
+ "node_modules/mime": {
477
+ "version": "1.6.0",
478
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
479
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
480
+ "license": "MIT",
481
+ "bin": {
482
+ "mime": "cli.js"
483
+ },
484
+ "engines": {
485
+ "node": ">=4"
486
+ }
487
+ },
488
+ "node_modules/mime-db": {
489
+ "version": "1.52.0",
490
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
491
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
492
+ "license": "MIT",
493
+ "engines": {
494
+ "node": ">= 0.6"
495
+ }
496
+ },
497
+ "node_modules/mime-types": {
498
+ "version": "2.1.35",
499
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
500
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
501
+ "license": "MIT",
502
+ "dependencies": {
503
+ "mime-db": "1.52.0"
504
+ },
505
+ "engines": {
506
+ "node": ">= 0.6"
507
+ }
508
+ },
509
+ "node_modules/ms": {
510
+ "version": "2.0.0",
511
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
512
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
513
+ "license": "MIT"
514
+ },
515
+ "node_modules/negotiator": {
516
+ "version": "0.6.3",
517
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
518
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
519
+ "license": "MIT",
520
+ "engines": {
521
+ "node": ">= 0.6"
522
+ }
523
+ },
524
+ "node_modules/object-inspect": {
525
+ "version": "1.13.4",
526
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
527
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
528
+ "license": "MIT",
529
+ "engines": {
530
+ "node": ">= 0.4"
531
+ },
532
+ "funding": {
533
+ "url": "https://github.com/sponsors/ljharb"
534
+ }
535
+ },
536
+ "node_modules/on-finished": {
537
+ "version": "2.4.1",
538
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
539
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
540
+ "license": "MIT",
541
+ "dependencies": {
542
+ "ee-first": "1.1.1"
543
+ },
544
+ "engines": {
545
+ "node": ">= 0.8"
546
+ }
547
+ },
548
+ "node_modules/parseurl": {
549
+ "version": "1.3.3",
550
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
551
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
552
+ "license": "MIT",
553
+ "engines": {
554
+ "node": ">= 0.8"
555
+ }
556
+ },
557
+ "node_modules/path-to-regexp": {
558
+ "version": "0.1.7",
559
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
560
+ "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
561
+ "license": "MIT"
562
+ },
563
+ "node_modules/proxy-addr": {
564
+ "version": "2.0.7",
565
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
566
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
567
+ "license": "MIT",
568
+ "dependencies": {
569
+ "forwarded": "0.2.0",
570
+ "ipaddr.js": "1.9.1"
571
+ },
572
+ "engines": {
573
+ "node": ">= 0.10"
574
+ }
575
+ },
576
+ "node_modules/qs": {
577
+ "version": "6.11.0",
578
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
579
+ "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
580
+ "license": "BSD-3-Clause",
581
+ "dependencies": {
582
+ "side-channel": "^1.0.4"
583
+ },
584
+ "engines": {
585
+ "node": ">=0.6"
586
+ },
587
+ "funding": {
588
+ "url": "https://github.com/sponsors/ljharb"
589
+ }
590
+ },
591
+ "node_modules/range-parser": {
592
+ "version": "1.2.1",
593
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
594
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
595
+ "license": "MIT",
596
+ "engines": {
597
+ "node": ">= 0.6"
598
+ }
599
+ },
600
+ "node_modules/raw-body": {
601
+ "version": "2.5.2",
602
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
603
+ "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
604
+ "license": "MIT",
605
+ "dependencies": {
606
+ "bytes": "3.1.2",
607
+ "http-errors": "2.0.0",
608
+ "iconv-lite": "0.4.24",
609
+ "unpipe": "1.0.0"
610
+ },
611
+ "engines": {
612
+ "node": ">= 0.8"
613
+ }
614
+ },
615
+ "node_modules/safe-buffer": {
616
+ "version": "5.2.1",
617
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
618
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
619
+ "funding": [
620
+ {
621
+ "type": "github",
622
+ "url": "https://github.com/sponsors/feross"
623
+ },
624
+ {
625
+ "type": "patreon",
626
+ "url": "https://www.patreon.com/feross"
627
+ },
628
+ {
629
+ "type": "consulting",
630
+ "url": "https://feross.org/support"
631
+ }
632
+ ],
633
+ "license": "MIT"
634
+ },
635
+ "node_modules/safer-buffer": {
636
+ "version": "2.1.2",
637
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
638
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
639
+ "license": "MIT"
640
+ },
641
+ "node_modules/send": {
642
+ "version": "0.18.0",
643
+ "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
644
+ "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
645
+ "license": "MIT",
646
+ "dependencies": {
647
+ "debug": "2.6.9",
648
+ "depd": "2.0.0",
649
+ "destroy": "1.2.0",
650
+ "encodeurl": "~1.0.2",
651
+ "escape-html": "~1.0.3",
652
+ "etag": "~1.8.1",
653
+ "fresh": "0.5.2",
654
+ "http-errors": "2.0.0",
655
+ "mime": "1.6.0",
656
+ "ms": "2.1.3",
657
+ "on-finished": "2.4.1",
658
+ "range-parser": "~1.2.1",
659
+ "statuses": "2.0.1"
660
+ },
661
+ "engines": {
662
+ "node": ">= 0.8.0"
663
+ }
664
+ },
665
+ "node_modules/send/node_modules/ms": {
666
+ "version": "2.1.3",
667
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
668
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
669
+ "license": "MIT"
670
+ },
671
+ "node_modules/serve-static": {
672
+ "version": "1.15.0",
673
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
674
+ "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
675
+ "license": "MIT",
676
+ "dependencies": {
677
+ "encodeurl": "~1.0.2",
678
+ "escape-html": "~1.0.3",
679
+ "parseurl": "~1.3.3",
680
+ "send": "0.18.0"
681
+ },
682
+ "engines": {
683
+ "node": ">= 0.8.0"
684
+ }
685
+ },
686
+ "node_modules/setprototypeof": {
687
+ "version": "1.2.0",
688
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
689
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
690
+ "license": "ISC"
691
+ },
692
+ "node_modules/side-channel": {
693
+ "version": "1.1.0",
694
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
695
+ "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
696
+ "license": "MIT",
697
+ "dependencies": {
698
+ "es-errors": "^1.3.0",
699
+ "object-inspect": "^1.13.3",
700
+ "side-channel-list": "^1.0.0",
701
+ "side-channel-map": "^1.0.1",
702
+ "side-channel-weakmap": "^1.0.2"
703
+ },
704
+ "engines": {
705
+ "node": ">= 0.4"
706
+ },
707
+ "funding": {
708
+ "url": "https://github.com/sponsors/ljharb"
709
+ }
710
+ },
711
+ "node_modules/side-channel-list": {
712
+ "version": "1.0.1",
713
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
714
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
715
+ "license": "MIT",
716
+ "dependencies": {
717
+ "es-errors": "^1.3.0",
718
+ "object-inspect": "^1.13.4"
719
+ },
720
+ "engines": {
721
+ "node": ">= 0.4"
722
+ },
723
+ "funding": {
724
+ "url": "https://github.com/sponsors/ljharb"
725
+ }
726
+ },
727
+ "node_modules/side-channel-map": {
728
+ "version": "1.0.1",
729
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
730
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
731
+ "license": "MIT",
732
+ "dependencies": {
733
+ "call-bound": "^1.0.2",
734
+ "es-errors": "^1.3.0",
735
+ "get-intrinsic": "^1.2.5",
736
+ "object-inspect": "^1.13.3"
737
+ },
738
+ "engines": {
739
+ "node": ">= 0.4"
740
+ },
741
+ "funding": {
742
+ "url": "https://github.com/sponsors/ljharb"
743
+ }
744
+ },
745
+ "node_modules/side-channel-weakmap": {
746
+ "version": "1.0.2",
747
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
748
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
749
+ "license": "MIT",
750
+ "dependencies": {
751
+ "call-bound": "^1.0.2",
752
+ "es-errors": "^1.3.0",
753
+ "get-intrinsic": "^1.2.5",
754
+ "object-inspect": "^1.13.3",
755
+ "side-channel-map": "^1.0.1"
756
+ },
757
+ "engines": {
758
+ "node": ">= 0.4"
759
+ },
760
+ "funding": {
761
+ "url": "https://github.com/sponsors/ljharb"
762
+ }
763
+ },
764
+ "node_modules/statuses": {
765
+ "version": "2.0.1",
766
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
767
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
768
+ "license": "MIT",
769
+ "engines": {
770
+ "node": ">= 0.8"
771
+ }
772
+ },
773
+ "node_modules/toidentifier": {
774
+ "version": "1.0.1",
775
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
776
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
777
+ "license": "MIT",
778
+ "engines": {
779
+ "node": ">=0.6"
780
+ }
781
+ },
782
+ "node_modules/type-is": {
783
+ "version": "1.6.18",
784
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
785
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
786
+ "license": "MIT",
787
+ "dependencies": {
788
+ "media-typer": "0.3.0",
789
+ "mime-types": "~2.1.24"
790
+ },
791
+ "engines": {
792
+ "node": ">= 0.6"
793
+ }
794
+ },
795
+ "node_modules/unpipe": {
796
+ "version": "1.0.0",
797
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
798
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
799
+ "license": "MIT",
800
+ "engines": {
801
+ "node": ">= 0.8"
802
+ }
803
+ },
804
+ "node_modules/utils-merge": {
805
+ "version": "1.0.1",
806
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
807
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
808
+ "license": "MIT",
809
+ "engines": {
810
+ "node": ">= 0.4.0"
811
+ }
812
+ },
813
+ "node_modules/vary": {
814
+ "version": "1.1.2",
815
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
816
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
817
+ "license": "MIT",
818
+ "engines": {
819
+ "node": ">= 0.8"
820
+ }
821
+ }
822
+ }
823
+ }