@jenga-ai/agent 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +3 -4
  2. package/agents/scrum-master.md +75 -0
  3. package/mcp/router/embedder.js +1 -1
  4. package/mcp/training_runner/index.js +239 -0
  5. package/mcp/training_runner/package-lock.json +1065 -0
  6. package/mcp/training_runner/package.json +15 -0
  7. package/package.json +14 -16
  8. package/skills/close-story/SKILL.md +203 -0
  9. package/skills/close-story/scripts/check-story-closeable.sh +195 -0
  10. package/skills/close-story/scripts/compute-scope-divergence.sh +128 -0
  11. package/skills/close-story/scripts/extract-diff-stats.sh +48 -0
  12. package/skills/close-story/scripts/extract-task-diff-stats.sh +97 -0
  13. package/skills/close-story/scripts/update-task-frontmatter.sh +103 -0
  14. package/skills/commit/SKILL.md +18 -0
  15. package/skills/distribute/CONFIG_SCHEMA.md +90 -0
  16. package/skills/distribute/SKILL.md +173 -0
  17. package/skills/distribute/scripts/check-version.sh +74 -0
  18. package/skills/distribute/scripts/commit-version-bump.sh +108 -0
  19. package/skills/distribute/scripts/distribute-changes.sh +381 -0
  20. package/skills/do/SKILL.md +314 -0
  21. package/skills/do/assets/intent-vs-diff-prompt.md +69 -0
  22. package/skills/doc/assets/path-objectives.yaml +13 -0
  23. package/skills/init/SKILL.md +4 -3
  24. package/skills/init/assets/strategy_stub_template.md +38 -0
  25. package/skills/init/scripts/init.sh +6 -1
  26. package/skills/jenga/SKILL.md +51 -2
  27. package/skills/strategy/SKILL.md +312 -0
  28. package/templates/SCRUM_BOARD_SCHEMA.md +49 -0
  29. package/skills/train/SKILL.md +0 -116
  30. package/skills/train/assets/dashboard-templates/classifiers.html +0 -106
  31. package/skills/train/assets/dashboard-templates/nlp.html +0 -102
  32. package/skills/train/assets/dashboard-templates/transformers.html +0 -98
  33. package/skills/train/assets/results-parsers/__init__.py +0 -9
  34. package/skills/train/assets/results-parsers/classifiers.py +0 -84
  35. package/skills/train/assets/results-parsers/nlp.py +0 -88
  36. package/skills/train/assets/results-parsers/reporter.py +0 -154
  37. package/skills/train/assets/results-parsers/transformers.py +0 -120
  38. package/skills/train/train_cli.py +0 -786
@@ -0,0 +1,1065 @@
1
+ {
2
+ "name": "training-runner-mcp-server",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "training-runner-mcp-server",
9
+ "version": "1.0.0",
10
+ "dependencies": {
11
+ "@modelcontextprotocol/sdk": "^1.10.1",
12
+ "js-yaml": "^4.1.0",
13
+ "zod": "^3.23.8"
14
+ }
15
+ },
16
+ "node_modules/@hono/node-server": {
17
+ "version": "1.19.14",
18
+ "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.14.tgz",
19
+ "integrity": "sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw==",
20
+ "engines": {
21
+ "node": ">=18.14.1"
22
+ },
23
+ "peerDependencies": {
24
+ "hono": "^4"
25
+ }
26
+ },
27
+ "node_modules/@modelcontextprotocol/sdk": {
28
+ "version": "1.29.0",
29
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz",
30
+ "integrity": "sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ==",
31
+ "dependencies": {
32
+ "@hono/node-server": "^1.19.9",
33
+ "ajv": "^8.17.1",
34
+ "ajv-formats": "^3.0.1",
35
+ "content-type": "^1.0.5",
36
+ "cors": "^2.8.5",
37
+ "cross-spawn": "^7.0.5",
38
+ "eventsource": "^3.0.2",
39
+ "eventsource-parser": "^3.0.0",
40
+ "express": "^5.2.1",
41
+ "express-rate-limit": "^8.2.1",
42
+ "hono": "^4.11.4",
43
+ "jose": "^6.1.3",
44
+ "json-schema-typed": "^8.0.2",
45
+ "pkce-challenge": "^5.0.0",
46
+ "raw-body": "^3.0.0",
47
+ "zod": "^3.25 || ^4.0",
48
+ "zod-to-json-schema": "^3.25.1"
49
+ },
50
+ "engines": {
51
+ "node": ">=18"
52
+ },
53
+ "peerDependencies": {
54
+ "@cfworker/json-schema": "^4.1.1",
55
+ "zod": "^3.25 || ^4.0"
56
+ },
57
+ "peerDependenciesMeta": {
58
+ "@cfworker/json-schema": {
59
+ "optional": true
60
+ },
61
+ "zod": {
62
+ "optional": false
63
+ }
64
+ }
65
+ },
66
+ "node_modules/accepts": {
67
+ "version": "2.0.0",
68
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
69
+ "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==",
70
+ "dependencies": {
71
+ "mime-types": "^3.0.0",
72
+ "negotiator": "^1.0.0"
73
+ },
74
+ "engines": {
75
+ "node": ">= 0.6"
76
+ }
77
+ },
78
+ "node_modules/ajv": {
79
+ "version": "8.20.0",
80
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
81
+ "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
82
+ "dependencies": {
83
+ "fast-deep-equal": "^3.1.3",
84
+ "fast-uri": "^3.0.1",
85
+ "json-schema-traverse": "^1.0.0",
86
+ "require-from-string": "^2.0.2"
87
+ },
88
+ "funding": {
89
+ "type": "github",
90
+ "url": "https://github.com/sponsors/epoberezkin"
91
+ }
92
+ },
93
+ "node_modules/ajv-formats": {
94
+ "version": "3.0.1",
95
+ "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
96
+ "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
97
+ "dependencies": {
98
+ "ajv": "^8.0.0"
99
+ },
100
+ "peerDependencies": {
101
+ "ajv": "^8.0.0"
102
+ },
103
+ "peerDependenciesMeta": {
104
+ "ajv": {
105
+ "optional": true
106
+ }
107
+ }
108
+ },
109
+ "node_modules/argparse": {
110
+ "version": "2.0.1",
111
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
112
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
113
+ },
114
+ "node_modules/body-parser": {
115
+ "version": "2.2.2",
116
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.2.tgz",
117
+ "integrity": "sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA==",
118
+ "dependencies": {
119
+ "bytes": "^3.1.2",
120
+ "content-type": "^1.0.5",
121
+ "debug": "^4.4.3",
122
+ "http-errors": "^2.0.0",
123
+ "iconv-lite": "^0.7.0",
124
+ "on-finished": "^2.4.1",
125
+ "qs": "^6.14.1",
126
+ "raw-body": "^3.0.1",
127
+ "type-is": "^2.0.1"
128
+ },
129
+ "engines": {
130
+ "node": ">=18"
131
+ },
132
+ "funding": {
133
+ "type": "opencollective",
134
+ "url": "https://opencollective.com/express"
135
+ }
136
+ },
137
+ "node_modules/bytes": {
138
+ "version": "3.1.2",
139
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
140
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
141
+ "engines": {
142
+ "node": ">= 0.8"
143
+ }
144
+ },
145
+ "node_modules/call-bind-apply-helpers": {
146
+ "version": "1.0.2",
147
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
148
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
149
+ "dependencies": {
150
+ "es-errors": "^1.3.0",
151
+ "function-bind": "^1.1.2"
152
+ },
153
+ "engines": {
154
+ "node": ">= 0.4"
155
+ }
156
+ },
157
+ "node_modules/call-bound": {
158
+ "version": "1.0.4",
159
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
160
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
161
+ "dependencies": {
162
+ "call-bind-apply-helpers": "^1.0.2",
163
+ "get-intrinsic": "^1.3.0"
164
+ },
165
+ "engines": {
166
+ "node": ">= 0.4"
167
+ },
168
+ "funding": {
169
+ "url": "https://github.com/sponsors/ljharb"
170
+ }
171
+ },
172
+ "node_modules/content-disposition": {
173
+ "version": "1.1.0",
174
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz",
175
+ "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==",
176
+ "engines": {
177
+ "node": ">=18"
178
+ },
179
+ "funding": {
180
+ "type": "opencollective",
181
+ "url": "https://opencollective.com/express"
182
+ }
183
+ },
184
+ "node_modules/content-type": {
185
+ "version": "1.0.5",
186
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
187
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
188
+ "engines": {
189
+ "node": ">= 0.6"
190
+ }
191
+ },
192
+ "node_modules/cookie": {
193
+ "version": "0.7.2",
194
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
195
+ "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
196
+ "engines": {
197
+ "node": ">= 0.6"
198
+ }
199
+ },
200
+ "node_modules/cookie-signature": {
201
+ "version": "1.2.2",
202
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz",
203
+ "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==",
204
+ "engines": {
205
+ "node": ">=6.6.0"
206
+ }
207
+ },
208
+ "node_modules/cors": {
209
+ "version": "2.8.6",
210
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
211
+ "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
212
+ "dependencies": {
213
+ "object-assign": "^4",
214
+ "vary": "^1"
215
+ },
216
+ "engines": {
217
+ "node": ">= 0.10"
218
+ },
219
+ "funding": {
220
+ "type": "opencollective",
221
+ "url": "https://opencollective.com/express"
222
+ }
223
+ },
224
+ "node_modules/cross-spawn": {
225
+ "version": "7.0.6",
226
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
227
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
228
+ "dependencies": {
229
+ "path-key": "^3.1.0",
230
+ "shebang-command": "^2.0.0",
231
+ "which": "^2.0.1"
232
+ },
233
+ "engines": {
234
+ "node": ">= 8"
235
+ }
236
+ },
237
+ "node_modules/debug": {
238
+ "version": "4.4.3",
239
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
240
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
241
+ "dependencies": {
242
+ "ms": "^2.1.3"
243
+ },
244
+ "engines": {
245
+ "node": ">=6.0"
246
+ },
247
+ "peerDependenciesMeta": {
248
+ "supports-color": {
249
+ "optional": true
250
+ }
251
+ }
252
+ },
253
+ "node_modules/depd": {
254
+ "version": "2.0.0",
255
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
256
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
257
+ "engines": {
258
+ "node": ">= 0.8"
259
+ }
260
+ },
261
+ "node_modules/dunder-proto": {
262
+ "version": "1.0.1",
263
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
264
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
265
+ "dependencies": {
266
+ "call-bind-apply-helpers": "^1.0.1",
267
+ "es-errors": "^1.3.0",
268
+ "gopd": "^1.2.0"
269
+ },
270
+ "engines": {
271
+ "node": ">= 0.4"
272
+ }
273
+ },
274
+ "node_modules/ee-first": {
275
+ "version": "1.1.1",
276
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
277
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
278
+ },
279
+ "node_modules/encodeurl": {
280
+ "version": "2.0.0",
281
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
282
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
283
+ "engines": {
284
+ "node": ">= 0.8"
285
+ }
286
+ },
287
+ "node_modules/es-define-property": {
288
+ "version": "1.0.1",
289
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
290
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
291
+ "engines": {
292
+ "node": ">= 0.4"
293
+ }
294
+ },
295
+ "node_modules/es-errors": {
296
+ "version": "1.3.0",
297
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
298
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
299
+ "engines": {
300
+ "node": ">= 0.4"
301
+ }
302
+ },
303
+ "node_modules/es-object-atoms": {
304
+ "version": "1.1.1",
305
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
306
+ "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
307
+ "dependencies": {
308
+ "es-errors": "^1.3.0"
309
+ },
310
+ "engines": {
311
+ "node": ">= 0.4"
312
+ }
313
+ },
314
+ "node_modules/escape-html": {
315
+ "version": "1.0.3",
316
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
317
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
318
+ },
319
+ "node_modules/etag": {
320
+ "version": "1.8.1",
321
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
322
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
323
+ "engines": {
324
+ "node": ">= 0.6"
325
+ }
326
+ },
327
+ "node_modules/eventsource": {
328
+ "version": "3.0.7",
329
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz",
330
+ "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==",
331
+ "dependencies": {
332
+ "eventsource-parser": "^3.0.1"
333
+ },
334
+ "engines": {
335
+ "node": ">=18.0.0"
336
+ }
337
+ },
338
+ "node_modules/eventsource-parser": {
339
+ "version": "3.0.8",
340
+ "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.8.tgz",
341
+ "integrity": "sha512-70QWGkr4snxr0OXLRWsFLeRBIRPuQOvt4s8QYjmUlmlkyTZkRqS7EDVRZtzU3TiyDbXSzaOeF0XUKy8PchzukQ==",
342
+ "engines": {
343
+ "node": ">=18.0.0"
344
+ }
345
+ },
346
+ "node_modules/express": {
347
+ "version": "5.2.1",
348
+ "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz",
349
+ "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==",
350
+ "dependencies": {
351
+ "accepts": "^2.0.0",
352
+ "body-parser": "^2.2.1",
353
+ "content-disposition": "^1.0.0",
354
+ "content-type": "^1.0.5",
355
+ "cookie": "^0.7.1",
356
+ "cookie-signature": "^1.2.1",
357
+ "debug": "^4.4.0",
358
+ "depd": "^2.0.0",
359
+ "encodeurl": "^2.0.0",
360
+ "escape-html": "^1.0.3",
361
+ "etag": "^1.8.1",
362
+ "finalhandler": "^2.1.0",
363
+ "fresh": "^2.0.0",
364
+ "http-errors": "^2.0.0",
365
+ "merge-descriptors": "^2.0.0",
366
+ "mime-types": "^3.0.0",
367
+ "on-finished": "^2.4.1",
368
+ "once": "^1.4.0",
369
+ "parseurl": "^1.3.3",
370
+ "proxy-addr": "^2.0.7",
371
+ "qs": "^6.14.0",
372
+ "range-parser": "^1.2.1",
373
+ "router": "^2.2.0",
374
+ "send": "^1.1.0",
375
+ "serve-static": "^2.2.0",
376
+ "statuses": "^2.0.1",
377
+ "type-is": "^2.0.1",
378
+ "vary": "^1.1.2"
379
+ },
380
+ "engines": {
381
+ "node": ">= 18"
382
+ },
383
+ "funding": {
384
+ "type": "opencollective",
385
+ "url": "https://opencollective.com/express"
386
+ }
387
+ },
388
+ "node_modules/express-rate-limit": {
389
+ "version": "8.5.0",
390
+ "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.5.0.tgz",
391
+ "integrity": "sha512-XKhFohWaSBdVJNTi5TaHziqnPkv04I9UQV6q1Wy7Ui6GGQZVW12ojDFwqer14EvCXxjvPG0CyWXx7cAXpALB4Q==",
392
+ "dependencies": {
393
+ "ip-address": "10.1.0"
394
+ },
395
+ "engines": {
396
+ "node": ">= 16"
397
+ },
398
+ "funding": {
399
+ "url": "https://github.com/sponsors/express-rate-limit"
400
+ },
401
+ "peerDependencies": {
402
+ "express": ">= 4.11"
403
+ }
404
+ },
405
+ "node_modules/fast-deep-equal": {
406
+ "version": "3.1.3",
407
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
408
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
409
+ },
410
+ "node_modules/fast-uri": {
411
+ "version": "3.1.1",
412
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.1.tgz",
413
+ "integrity": "sha512-h2r7rcm6Ee/J8o0LD5djLuFVcfbZxhvho4vvsbeV0aMvXjUgqv4YpxpkEx0d68l6+IleVfLAdVEfhR7QNMkGHQ==",
414
+ "funding": [
415
+ {
416
+ "type": "github",
417
+ "url": "https://github.com/sponsors/fastify"
418
+ },
419
+ {
420
+ "type": "opencollective",
421
+ "url": "https://opencollective.com/fastify"
422
+ }
423
+ ]
424
+ },
425
+ "node_modules/finalhandler": {
426
+ "version": "2.1.1",
427
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz",
428
+ "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==",
429
+ "dependencies": {
430
+ "debug": "^4.4.0",
431
+ "encodeurl": "^2.0.0",
432
+ "escape-html": "^1.0.3",
433
+ "on-finished": "^2.4.1",
434
+ "parseurl": "^1.3.3",
435
+ "statuses": "^2.0.1"
436
+ },
437
+ "engines": {
438
+ "node": ">= 18.0.0"
439
+ },
440
+ "funding": {
441
+ "type": "opencollective",
442
+ "url": "https://opencollective.com/express"
443
+ }
444
+ },
445
+ "node_modules/forwarded": {
446
+ "version": "0.2.0",
447
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
448
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
449
+ "engines": {
450
+ "node": ">= 0.6"
451
+ }
452
+ },
453
+ "node_modules/fresh": {
454
+ "version": "2.0.0",
455
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz",
456
+ "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==",
457
+ "engines": {
458
+ "node": ">= 0.8"
459
+ }
460
+ },
461
+ "node_modules/function-bind": {
462
+ "version": "1.1.2",
463
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
464
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
465
+ "funding": {
466
+ "url": "https://github.com/sponsors/ljharb"
467
+ }
468
+ },
469
+ "node_modules/get-intrinsic": {
470
+ "version": "1.3.0",
471
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
472
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
473
+ "dependencies": {
474
+ "call-bind-apply-helpers": "^1.0.2",
475
+ "es-define-property": "^1.0.1",
476
+ "es-errors": "^1.3.0",
477
+ "es-object-atoms": "^1.1.1",
478
+ "function-bind": "^1.1.2",
479
+ "get-proto": "^1.0.1",
480
+ "gopd": "^1.2.0",
481
+ "has-symbols": "^1.1.0",
482
+ "hasown": "^2.0.2",
483
+ "math-intrinsics": "^1.1.0"
484
+ },
485
+ "engines": {
486
+ "node": ">= 0.4"
487
+ },
488
+ "funding": {
489
+ "url": "https://github.com/sponsors/ljharb"
490
+ }
491
+ },
492
+ "node_modules/get-proto": {
493
+ "version": "1.0.1",
494
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
495
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
496
+ "dependencies": {
497
+ "dunder-proto": "^1.0.1",
498
+ "es-object-atoms": "^1.0.0"
499
+ },
500
+ "engines": {
501
+ "node": ">= 0.4"
502
+ }
503
+ },
504
+ "node_modules/gopd": {
505
+ "version": "1.2.0",
506
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
507
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
508
+ "engines": {
509
+ "node": ">= 0.4"
510
+ },
511
+ "funding": {
512
+ "url": "https://github.com/sponsors/ljharb"
513
+ }
514
+ },
515
+ "node_modules/has-symbols": {
516
+ "version": "1.1.0",
517
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
518
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
519
+ "engines": {
520
+ "node": ">= 0.4"
521
+ },
522
+ "funding": {
523
+ "url": "https://github.com/sponsors/ljharb"
524
+ }
525
+ },
526
+ "node_modules/hasown": {
527
+ "version": "2.0.3",
528
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz",
529
+ "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==",
530
+ "dependencies": {
531
+ "function-bind": "^1.1.2"
532
+ },
533
+ "engines": {
534
+ "node": ">= 0.4"
535
+ }
536
+ },
537
+ "node_modules/hono": {
538
+ "version": "4.12.16",
539
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.16.tgz",
540
+ "integrity": "sha512-jN0ZewiNAWSe5khM3EyCmBb250+b40wWbwNILNfEvq84VREWwOIkuUsFONk/3i3nqkz7Oe1PcpM2mwQEK2L9Kg==",
541
+ "engines": {
542
+ "node": ">=16.9.0"
543
+ }
544
+ },
545
+ "node_modules/http-errors": {
546
+ "version": "2.0.1",
547
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
548
+ "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
549
+ "dependencies": {
550
+ "depd": "~2.0.0",
551
+ "inherits": "~2.0.4",
552
+ "setprototypeof": "~1.2.0",
553
+ "statuses": "~2.0.2",
554
+ "toidentifier": "~1.0.1"
555
+ },
556
+ "engines": {
557
+ "node": ">= 0.8"
558
+ },
559
+ "funding": {
560
+ "type": "opencollective",
561
+ "url": "https://opencollective.com/express"
562
+ }
563
+ },
564
+ "node_modules/iconv-lite": {
565
+ "version": "0.7.2",
566
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz",
567
+ "integrity": "sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==",
568
+ "dependencies": {
569
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
570
+ },
571
+ "engines": {
572
+ "node": ">=0.10.0"
573
+ },
574
+ "funding": {
575
+ "type": "opencollective",
576
+ "url": "https://opencollective.com/express"
577
+ }
578
+ },
579
+ "node_modules/inherits": {
580
+ "version": "2.0.4",
581
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
582
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
583
+ },
584
+ "node_modules/ip-address": {
585
+ "version": "10.1.0",
586
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz",
587
+ "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==",
588
+ "engines": {
589
+ "node": ">= 12"
590
+ }
591
+ },
592
+ "node_modules/ipaddr.js": {
593
+ "version": "1.9.1",
594
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
595
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
596
+ "engines": {
597
+ "node": ">= 0.10"
598
+ }
599
+ },
600
+ "node_modules/is-promise": {
601
+ "version": "4.0.0",
602
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
603
+ "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ=="
604
+ },
605
+ "node_modules/isexe": {
606
+ "version": "2.0.0",
607
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
608
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
609
+ },
610
+ "node_modules/jose": {
611
+ "version": "6.2.3",
612
+ "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.3.tgz",
613
+ "integrity": "sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw==",
614
+ "funding": {
615
+ "url": "https://github.com/sponsors/panva"
616
+ }
617
+ },
618
+ "node_modules/js-yaml": {
619
+ "version": "4.1.1",
620
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
621
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
622
+ "dependencies": {
623
+ "argparse": "^2.0.1"
624
+ },
625
+ "bin": {
626
+ "js-yaml": "bin/js-yaml.js"
627
+ }
628
+ },
629
+ "node_modules/json-schema-traverse": {
630
+ "version": "1.0.0",
631
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
632
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
633
+ },
634
+ "node_modules/json-schema-typed": {
635
+ "version": "8.0.2",
636
+ "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz",
637
+ "integrity": "sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA=="
638
+ },
639
+ "node_modules/math-intrinsics": {
640
+ "version": "1.1.0",
641
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
642
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
643
+ "engines": {
644
+ "node": ">= 0.4"
645
+ }
646
+ },
647
+ "node_modules/media-typer": {
648
+ "version": "1.1.0",
649
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz",
650
+ "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==",
651
+ "engines": {
652
+ "node": ">= 0.8"
653
+ }
654
+ },
655
+ "node_modules/merge-descriptors": {
656
+ "version": "2.0.0",
657
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz",
658
+ "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==",
659
+ "engines": {
660
+ "node": ">=18"
661
+ },
662
+ "funding": {
663
+ "url": "https://github.com/sponsors/sindresorhus"
664
+ }
665
+ },
666
+ "node_modules/mime-db": {
667
+ "version": "1.54.0",
668
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
669
+ "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
670
+ "engines": {
671
+ "node": ">= 0.6"
672
+ }
673
+ },
674
+ "node_modules/mime-types": {
675
+ "version": "3.0.2",
676
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz",
677
+ "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==",
678
+ "dependencies": {
679
+ "mime-db": "^1.54.0"
680
+ },
681
+ "engines": {
682
+ "node": ">=18"
683
+ },
684
+ "funding": {
685
+ "type": "opencollective",
686
+ "url": "https://opencollective.com/express"
687
+ }
688
+ },
689
+ "node_modules/ms": {
690
+ "version": "2.1.3",
691
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
692
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
693
+ },
694
+ "node_modules/negotiator": {
695
+ "version": "1.0.0",
696
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz",
697
+ "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==",
698
+ "engines": {
699
+ "node": ">= 0.6"
700
+ }
701
+ },
702
+ "node_modules/object-assign": {
703
+ "version": "4.1.1",
704
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
705
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
706
+ "engines": {
707
+ "node": ">=0.10.0"
708
+ }
709
+ },
710
+ "node_modules/object-inspect": {
711
+ "version": "1.13.4",
712
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
713
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
714
+ "engines": {
715
+ "node": ">= 0.4"
716
+ },
717
+ "funding": {
718
+ "url": "https://github.com/sponsors/ljharb"
719
+ }
720
+ },
721
+ "node_modules/on-finished": {
722
+ "version": "2.4.1",
723
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
724
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
725
+ "dependencies": {
726
+ "ee-first": "1.1.1"
727
+ },
728
+ "engines": {
729
+ "node": ">= 0.8"
730
+ }
731
+ },
732
+ "node_modules/once": {
733
+ "version": "1.4.0",
734
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
735
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
736
+ "dependencies": {
737
+ "wrappy": "1"
738
+ }
739
+ },
740
+ "node_modules/parseurl": {
741
+ "version": "1.3.3",
742
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
743
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
744
+ "engines": {
745
+ "node": ">= 0.8"
746
+ }
747
+ },
748
+ "node_modules/path-key": {
749
+ "version": "3.1.1",
750
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
751
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
752
+ "engines": {
753
+ "node": ">=8"
754
+ }
755
+ },
756
+ "node_modules/path-to-regexp": {
757
+ "version": "8.4.2",
758
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
759
+ "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
760
+ "funding": {
761
+ "type": "opencollective",
762
+ "url": "https://opencollective.com/express"
763
+ }
764
+ },
765
+ "node_modules/pkce-challenge": {
766
+ "version": "5.0.1",
767
+ "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz",
768
+ "integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==",
769
+ "engines": {
770
+ "node": ">=16.20.0"
771
+ }
772
+ },
773
+ "node_modules/proxy-addr": {
774
+ "version": "2.0.7",
775
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
776
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
777
+ "dependencies": {
778
+ "forwarded": "0.2.0",
779
+ "ipaddr.js": "1.9.1"
780
+ },
781
+ "engines": {
782
+ "node": ">= 0.10"
783
+ }
784
+ },
785
+ "node_modules/qs": {
786
+ "version": "6.15.1",
787
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.1.tgz",
788
+ "integrity": "sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==",
789
+ "dependencies": {
790
+ "side-channel": "^1.1.0"
791
+ },
792
+ "engines": {
793
+ "node": ">=0.6"
794
+ },
795
+ "funding": {
796
+ "url": "https://github.com/sponsors/ljharb"
797
+ }
798
+ },
799
+ "node_modules/range-parser": {
800
+ "version": "1.2.1",
801
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
802
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
803
+ "engines": {
804
+ "node": ">= 0.6"
805
+ }
806
+ },
807
+ "node_modules/raw-body": {
808
+ "version": "3.0.2",
809
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz",
810
+ "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==",
811
+ "dependencies": {
812
+ "bytes": "~3.1.2",
813
+ "http-errors": "~2.0.1",
814
+ "iconv-lite": "~0.7.0",
815
+ "unpipe": "~1.0.0"
816
+ },
817
+ "engines": {
818
+ "node": ">= 0.10"
819
+ }
820
+ },
821
+ "node_modules/require-from-string": {
822
+ "version": "2.0.2",
823
+ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
824
+ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
825
+ "engines": {
826
+ "node": ">=0.10.0"
827
+ }
828
+ },
829
+ "node_modules/router": {
830
+ "version": "2.2.0",
831
+ "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz",
832
+ "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==",
833
+ "dependencies": {
834
+ "debug": "^4.4.0",
835
+ "depd": "^2.0.0",
836
+ "is-promise": "^4.0.0",
837
+ "parseurl": "^1.3.3",
838
+ "path-to-regexp": "^8.0.0"
839
+ },
840
+ "engines": {
841
+ "node": ">= 18"
842
+ }
843
+ },
844
+ "node_modules/safer-buffer": {
845
+ "version": "2.1.2",
846
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
847
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
848
+ },
849
+ "node_modules/send": {
850
+ "version": "1.2.1",
851
+ "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz",
852
+ "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==",
853
+ "dependencies": {
854
+ "debug": "^4.4.3",
855
+ "encodeurl": "^2.0.0",
856
+ "escape-html": "^1.0.3",
857
+ "etag": "^1.8.1",
858
+ "fresh": "^2.0.0",
859
+ "http-errors": "^2.0.1",
860
+ "mime-types": "^3.0.2",
861
+ "ms": "^2.1.3",
862
+ "on-finished": "^2.4.1",
863
+ "range-parser": "^1.2.1",
864
+ "statuses": "^2.0.2"
865
+ },
866
+ "engines": {
867
+ "node": ">= 18"
868
+ },
869
+ "funding": {
870
+ "type": "opencollective",
871
+ "url": "https://opencollective.com/express"
872
+ }
873
+ },
874
+ "node_modules/serve-static": {
875
+ "version": "2.2.1",
876
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz",
877
+ "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==",
878
+ "dependencies": {
879
+ "encodeurl": "^2.0.0",
880
+ "escape-html": "^1.0.3",
881
+ "parseurl": "^1.3.3",
882
+ "send": "^1.2.0"
883
+ },
884
+ "engines": {
885
+ "node": ">= 18"
886
+ },
887
+ "funding": {
888
+ "type": "opencollective",
889
+ "url": "https://opencollective.com/express"
890
+ }
891
+ },
892
+ "node_modules/setprototypeof": {
893
+ "version": "1.2.0",
894
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
895
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
896
+ },
897
+ "node_modules/shebang-command": {
898
+ "version": "2.0.0",
899
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
900
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
901
+ "dependencies": {
902
+ "shebang-regex": "^3.0.0"
903
+ },
904
+ "engines": {
905
+ "node": ">=8"
906
+ }
907
+ },
908
+ "node_modules/shebang-regex": {
909
+ "version": "3.0.0",
910
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
911
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
912
+ "engines": {
913
+ "node": ">=8"
914
+ }
915
+ },
916
+ "node_modules/side-channel": {
917
+ "version": "1.1.0",
918
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
919
+ "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
920
+ "dependencies": {
921
+ "es-errors": "^1.3.0",
922
+ "object-inspect": "^1.13.3",
923
+ "side-channel-list": "^1.0.0",
924
+ "side-channel-map": "^1.0.1",
925
+ "side-channel-weakmap": "^1.0.2"
926
+ },
927
+ "engines": {
928
+ "node": ">= 0.4"
929
+ },
930
+ "funding": {
931
+ "url": "https://github.com/sponsors/ljharb"
932
+ }
933
+ },
934
+ "node_modules/side-channel-list": {
935
+ "version": "1.0.1",
936
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
937
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
938
+ "dependencies": {
939
+ "es-errors": "^1.3.0",
940
+ "object-inspect": "^1.13.4"
941
+ },
942
+ "engines": {
943
+ "node": ">= 0.4"
944
+ },
945
+ "funding": {
946
+ "url": "https://github.com/sponsors/ljharb"
947
+ }
948
+ },
949
+ "node_modules/side-channel-map": {
950
+ "version": "1.0.1",
951
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
952
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
953
+ "dependencies": {
954
+ "call-bound": "^1.0.2",
955
+ "es-errors": "^1.3.0",
956
+ "get-intrinsic": "^1.2.5",
957
+ "object-inspect": "^1.13.3"
958
+ },
959
+ "engines": {
960
+ "node": ">= 0.4"
961
+ },
962
+ "funding": {
963
+ "url": "https://github.com/sponsors/ljharb"
964
+ }
965
+ },
966
+ "node_modules/side-channel-weakmap": {
967
+ "version": "1.0.2",
968
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
969
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
970
+ "dependencies": {
971
+ "call-bound": "^1.0.2",
972
+ "es-errors": "^1.3.0",
973
+ "get-intrinsic": "^1.2.5",
974
+ "object-inspect": "^1.13.3",
975
+ "side-channel-map": "^1.0.1"
976
+ },
977
+ "engines": {
978
+ "node": ">= 0.4"
979
+ },
980
+ "funding": {
981
+ "url": "https://github.com/sponsors/ljharb"
982
+ }
983
+ },
984
+ "node_modules/statuses": {
985
+ "version": "2.0.2",
986
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
987
+ "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
988
+ "engines": {
989
+ "node": ">= 0.8"
990
+ }
991
+ },
992
+ "node_modules/toidentifier": {
993
+ "version": "1.0.1",
994
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
995
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
996
+ "engines": {
997
+ "node": ">=0.6"
998
+ }
999
+ },
1000
+ "node_modules/type-is": {
1001
+ "version": "2.0.1",
1002
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz",
1003
+ "integrity": "sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==",
1004
+ "dependencies": {
1005
+ "content-type": "^1.0.5",
1006
+ "media-typer": "^1.1.0",
1007
+ "mime-types": "^3.0.0"
1008
+ },
1009
+ "engines": {
1010
+ "node": ">= 0.6"
1011
+ }
1012
+ },
1013
+ "node_modules/unpipe": {
1014
+ "version": "1.0.0",
1015
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
1016
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
1017
+ "engines": {
1018
+ "node": ">= 0.8"
1019
+ }
1020
+ },
1021
+ "node_modules/vary": {
1022
+ "version": "1.1.2",
1023
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1024
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
1025
+ "engines": {
1026
+ "node": ">= 0.8"
1027
+ }
1028
+ },
1029
+ "node_modules/which": {
1030
+ "version": "2.0.2",
1031
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1032
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1033
+ "dependencies": {
1034
+ "isexe": "^2.0.0"
1035
+ },
1036
+ "bin": {
1037
+ "node-which": "bin/node-which"
1038
+ },
1039
+ "engines": {
1040
+ "node": ">= 8"
1041
+ }
1042
+ },
1043
+ "node_modules/wrappy": {
1044
+ "version": "1.0.2",
1045
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1046
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
1047
+ },
1048
+ "node_modules/zod": {
1049
+ "version": "3.25.76",
1050
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz",
1051
+ "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==",
1052
+ "funding": {
1053
+ "url": "https://github.com/sponsors/colinhacks"
1054
+ }
1055
+ },
1056
+ "node_modules/zod-to-json-schema": {
1057
+ "version": "3.25.2",
1058
+ "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz",
1059
+ "integrity": "sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==",
1060
+ "peerDependencies": {
1061
+ "zod": "^3.25.28 || ^4"
1062
+ }
1063
+ }
1064
+ }
1065
+ }