@felixdotgo/aidlc-kit 0.0.1

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 (93) hide show
  1. package/DEVELOPMENT.md +31 -0
  2. package/LICENSE +21 -0
  3. package/README.md +59 -0
  4. package/dist/assets/.agents/aidlc/conventions.md +68 -0
  5. package/dist/assets/.agents/aidlc/orchestrator.md +73 -0
  6. package/dist/assets/.agents/aidlc/phase-build.md +23 -0
  7. package/dist/assets/.agents/aidlc/phase-clarify.md +22 -0
  8. package/dist/assets/.agents/aidlc/phase-index.md +14 -0
  9. package/dist/assets/.agents/aidlc/phase-plan.md +21 -0
  10. package/dist/assets/.agents/aidlc/phase-wrap.md +16 -0
  11. package/dist/assets/.agents/aidlc/profiles/generic/profile.json +9 -0
  12. package/dist/assets/.agents/aidlc/profiles/git-submodules/profile.json +9 -0
  13. package/dist/assets/.agents/aidlc/profiles/single/profile.json +9 -0
  14. package/dist/assets/.agents/aidlc/profiles/workspace/profile.json +12 -0
  15. package/dist/assets/.agents/aidlc/rules/gate-check.md +16 -0
  16. package/dist/assets/.agents/aidlc/rules/stack-runtime.md +3 -0
  17. package/dist/assets/.agents/aidlc/schemas/adapter.schema.json +13 -0
  18. package/dist/assets/.agents/aidlc/schemas/config.schema.json +26 -0
  19. package/dist/assets/.agents/aidlc/schemas/manifest.schema.json +12 -0
  20. package/dist/assets/.agents/aidlc/schemas/profile.schema.json +12 -0
  21. package/dist/assets/.agents/aidlc/schemas/state.schema.json +108 -0
  22. package/dist/assets/.agents/aidlc/scripts/context.mjs +15 -0
  23. package/dist/assets/.agents/aidlc/scripts/gate-check.mjs +16 -0
  24. package/dist/assets/.agents/aidlc/scripts/gate-view.mjs +16 -0
  25. package/dist/assets/.agents/aidlc/scripts/lib/context-runtime.mjs +238 -0
  26. package/dist/assets/.agents/aidlc/scripts/lib/runtime.mjs +2 -0
  27. package/dist/assets/.agents/aidlc/scripts/lib/store.mjs +341 -0
  28. package/dist/assets/.agents/aidlc/scripts/render.mjs +24 -0
  29. package/dist/assets/.agents/aidlc/scripts/state.mjs +222 -0
  30. package/dist/assets/.agents/aidlc/scripts/task-next.mjs +27 -0
  31. package/dist/assets/.agents/aidlc/templates/design.md +15 -0
  32. package/dist/assets/.agents/aidlc/templates/intent.md +17 -0
  33. package/dist/assets/.agents/aidlc/templates/lesson.md +28 -0
  34. package/dist/assets/.agents/aidlc/templates/model-contract.md +41 -0
  35. package/dist/assets/.agents/aidlc/templates/workplan.md +9 -0
  36. package/dist/assets/.agents/skills/aidlc-build/SKILL.md +19 -0
  37. package/dist/assets/.agents/skills/aidlc-clarify/SKILL.md +17 -0
  38. package/dist/assets/.agents/skills/aidlc-index/SKILL.md +17 -0
  39. package/dist/assets/.agents/skills/aidlc-plan/SKILL.md +17 -0
  40. package/dist/assets/.agents/skills/aidlc-wrap/SKILL.md +17 -0
  41. package/dist/services/aidlc-coordination/Dockerfile +10 -0
  42. package/dist/services/aidlc-coordination/compose.yaml +25 -0
  43. package/dist/services/aidlc-coordination/package-lock.json +1154 -0
  44. package/dist/services/aidlc-coordination/package.json +20 -0
  45. package/dist/services/aidlc-coordination/src/coordination.mjs +68 -0
  46. package/dist/services/aidlc-coordination/src/lifecycle-core.mjs +341 -0
  47. package/dist/services/aidlc-coordination/src/providers.mjs +23 -0
  48. package/dist/services/aidlc-coordination/src/repository.mjs +203 -0
  49. package/dist/services/aidlc-coordination/src/server.mjs +49 -0
  50. package/dist/services/aidlc-coordination/test/repository.test.mjs +211 -0
  51. package/dist/src/adapters.d.ts +7 -0
  52. package/dist/src/adapters.js +86 -0
  53. package/dist/src/cli.d.ts +2 -0
  54. package/dist/src/cli.js +192 -0
  55. package/dist/src/context.d.ts +14 -0
  56. package/dist/src/context.js +90 -0
  57. package/dist/src/gate.d.ts +40 -0
  58. package/dist/src/gate.js +176 -0
  59. package/dist/src/installer.d.ts +11 -0
  60. package/dist/src/installer.js +173 -0
  61. package/dist/src/ledger.d.ts +22 -0
  62. package/dist/src/ledger.js +119 -0
  63. package/dist/src/legacy.d.ts +2 -0
  64. package/dist/src/legacy.js +37 -0
  65. package/dist/src/managed-content.d.ts +3 -0
  66. package/dist/src/managed-content.js +16 -0
  67. package/dist/src/mcp-setup.d.ts +20 -0
  68. package/dist/src/mcp-setup.js +31 -0
  69. package/dist/src/model.d.ts +249 -0
  70. package/dist/src/model.js +1 -0
  71. package/dist/src/profiles.d.ts +28 -0
  72. package/dist/src/profiles.js +216 -0
  73. package/dist/src/project-migration.d.ts +2 -0
  74. package/dist/src/project-migration.js +144 -0
  75. package/dist/src/project-path.d.ts +2 -0
  76. package/dist/src/project-path.js +20 -0
  77. package/dist/src/state.d.ts +110 -0
  78. package/dist/src/state.js +764 -0
  79. package/dist/src/tracker.d.ts +29 -0
  80. package/dist/src/tracker.js +41 -0
  81. package/dist/src/upgrade.d.ts +11 -0
  82. package/dist/src/upgrade.js +270 -0
  83. package/dist/src/workflow.d.ts +7 -0
  84. package/dist/src/workflow.js +46 -0
  85. package/docs/README.md +31 -0
  86. package/docs/architecture.md +72 -0
  87. package/docs/command-reference.md +110 -0
  88. package/docs/configuration.md +72 -0
  89. package/docs/coordination-service.md +42 -0
  90. package/docs/development.md +106 -0
  91. package/docs/operating-workflow.md +87 -0
  92. package/docs/testing-and-release.md +113 -0
  93. package/package.json +53 -0
@@ -0,0 +1,1154 @@
1
+ {
2
+ "name": "aidlc-coordination",
3
+ "lockfileVersion": 3,
4
+ "requires": true,
5
+ "packages": {
6
+ "": {
7
+ "dependencies": {
8
+ "@modelcontextprotocol/express": "^2.0.0",
9
+ "@modelcontextprotocol/node": "^2.0.0",
10
+ "@modelcontextprotocol/server": "^2.0.0",
11
+ "better-sqlite3": "^13.0.3",
12
+ "express": "^5.2.1",
13
+ "pg": "^8.23.0",
14
+ "zod": "^4.4.3"
15
+ }
16
+ },
17
+ "node_modules/@hono/node-server": {
18
+ "version": "1.19.17",
19
+ "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.17.tgz",
20
+ "integrity": "sha512-dSneS5qhiauZWGDCeK4o695Xd9nUNjviSZCMQrj10eetr8Uln1ucn6bbphOM6UynAMMtNIzZNSpL9vnASJwrPQ==",
21
+ "license": "MIT",
22
+ "engines": {
23
+ "node": ">=18.14.1"
24
+ },
25
+ "peerDependencies": {
26
+ "hono": "^4"
27
+ }
28
+ },
29
+ "node_modules/@modelcontextprotocol/core": {
30
+ "version": "2.0.0",
31
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/core/-/core-2.0.0.tgz",
32
+ "integrity": "sha512-pJCEwGG7Lfr/+PQp9ZTwKXNeO5wzbfKL7H3MYpCorM4oFBoQrdjnBgEoqG+RjhsvS1FKrDbKux+M1HhlnGWqcA==",
33
+ "license": "MIT",
34
+ "dependencies": {
35
+ "zod": "^4.2.0"
36
+ },
37
+ "engines": {
38
+ "node": ">=20"
39
+ }
40
+ },
41
+ "node_modules/@modelcontextprotocol/express": {
42
+ "version": "2.0.0",
43
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/express/-/express-2.0.0.tgz",
44
+ "integrity": "sha512-Snlr8j9FR9LcVvEJPF7qJ7d5zTL4Bes2dk7RcacN9eSZ7OLohwxqhEvWu1+UxELyScgLbLLOdeVEGdwKI1iwVQ==",
45
+ "license": "MIT",
46
+ "dependencies": {
47
+ "cors": "^2.8.5"
48
+ },
49
+ "engines": {
50
+ "node": ">=20"
51
+ },
52
+ "peerDependencies": {
53
+ "@modelcontextprotocol/server": "^2.0.0",
54
+ "express": "^4.18.0 || ^5.0.0"
55
+ }
56
+ },
57
+ "node_modules/@modelcontextprotocol/node": {
58
+ "version": "2.0.0",
59
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/node/-/node-2.0.0.tgz",
60
+ "integrity": "sha512-Y4hAC2XdGDUdDOCbLDOCA4+aL3NUldjsOWlDL/YwpAxrPhRm1xHd7lZ+mLacvZ9t3PaH28wgNoaLQGrIk1P2pg==",
61
+ "license": "MIT",
62
+ "dependencies": {
63
+ "@hono/node-server": "^1.19.9"
64
+ },
65
+ "engines": {
66
+ "node": ">=20"
67
+ },
68
+ "peerDependencies": {
69
+ "@modelcontextprotocol/server": "^2.0.0",
70
+ "hono": "^4.11.4"
71
+ },
72
+ "peerDependenciesMeta": {
73
+ "hono": {
74
+ "optional": true
75
+ }
76
+ }
77
+ },
78
+ "node_modules/@modelcontextprotocol/server": {
79
+ "version": "2.0.0",
80
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/server/-/server-2.0.0.tgz",
81
+ "integrity": "sha512-YhHWdHfpFMQfd0prsEnxKeS3Qz3ytIGmsS0sth4KDjnacIT7hxk6hXHkJ9KysxlkvTM+WZAtQbbcUhdoP4Hvtw==",
82
+ "license": "MIT",
83
+ "dependencies": {
84
+ "@modelcontextprotocol/core": "2.0.0",
85
+ "zod": "^4.2.0"
86
+ },
87
+ "engines": {
88
+ "node": ">=20"
89
+ }
90
+ },
91
+ "node_modules/accepts": {
92
+ "version": "2.0.0",
93
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
94
+ "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==",
95
+ "license": "MIT",
96
+ "dependencies": {
97
+ "mime-types": "^3.0.0",
98
+ "negotiator": "^1.0.0"
99
+ },
100
+ "engines": {
101
+ "node": ">= 0.6"
102
+ }
103
+ },
104
+ "node_modules/better-sqlite3": {
105
+ "version": "13.0.3",
106
+ "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-13.0.3.tgz",
107
+ "integrity": "sha512-RbOBxmLBG8uvFUc15X9+9SFemKcQ0WBuISBVkpuiaUB2qblC8UWlHEjdWVoZ8AdhSwmoEgsiXKfopX0CQxaACQ==",
108
+ "license": "MIT",
109
+ "dependencies": {
110
+ "node-addon-api": "^8.0.0"
111
+ },
112
+ "engines": {
113
+ "node": ">=22"
114
+ }
115
+ },
116
+ "node_modules/body-parser": {
117
+ "version": "2.3.0",
118
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.3.0.tgz",
119
+ "integrity": "sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==",
120
+ "license": "MIT",
121
+ "dependencies": {
122
+ "bytes": "^3.1.2",
123
+ "content-type": "^2.0.0",
124
+ "debug": "^4.4.3",
125
+ "http-errors": "^2.0.1",
126
+ "iconv-lite": "^0.7.2",
127
+ "on-finished": "^2.4.1",
128
+ "qs": "^6.15.2",
129
+ "raw-body": "^3.0.2",
130
+ "type-is": "^2.1.0"
131
+ },
132
+ "engines": {
133
+ "node": ">=18"
134
+ },
135
+ "funding": {
136
+ "type": "opencollective",
137
+ "url": "https://opencollective.com/express"
138
+ }
139
+ },
140
+ "node_modules/body-parser/node_modules/content-type": {
141
+ "version": "2.1.0",
142
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
143
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
144
+ "license": "MIT",
145
+ "engines": {
146
+ "node": ">=18"
147
+ },
148
+ "funding": {
149
+ "type": "opencollective",
150
+ "url": "https://opencollective.com/express"
151
+ }
152
+ },
153
+ "node_modules/bytes": {
154
+ "version": "3.1.2",
155
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
156
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
157
+ "license": "MIT",
158
+ "engines": {
159
+ "node": ">= 0.8"
160
+ }
161
+ },
162
+ "node_modules/call-bind-apply-helpers": {
163
+ "version": "1.0.2",
164
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
165
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
166
+ "license": "MIT",
167
+ "dependencies": {
168
+ "es-errors": "^1.3.0",
169
+ "function-bind": "^1.1.2"
170
+ },
171
+ "engines": {
172
+ "node": ">= 0.4"
173
+ }
174
+ },
175
+ "node_modules/call-bound": {
176
+ "version": "1.0.4",
177
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
178
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
179
+ "license": "MIT",
180
+ "dependencies": {
181
+ "call-bind-apply-helpers": "^1.0.2",
182
+ "get-intrinsic": "^1.3.0"
183
+ },
184
+ "engines": {
185
+ "node": ">= 0.4"
186
+ },
187
+ "funding": {
188
+ "url": "https://github.com/sponsors/ljharb"
189
+ }
190
+ },
191
+ "node_modules/content-disposition": {
192
+ "version": "1.1.0",
193
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz",
194
+ "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==",
195
+ "license": "MIT",
196
+ "engines": {
197
+ "node": ">=18"
198
+ },
199
+ "funding": {
200
+ "type": "opencollective",
201
+ "url": "https://opencollective.com/express"
202
+ }
203
+ },
204
+ "node_modules/content-type": {
205
+ "version": "1.0.5",
206
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
207
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
208
+ "license": "MIT",
209
+ "engines": {
210
+ "node": ">= 0.6"
211
+ }
212
+ },
213
+ "node_modules/cookie": {
214
+ "version": "0.7.2",
215
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
216
+ "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
217
+ "license": "MIT",
218
+ "engines": {
219
+ "node": ">= 0.6"
220
+ }
221
+ },
222
+ "node_modules/cookie-signature": {
223
+ "version": "1.2.2",
224
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz",
225
+ "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==",
226
+ "license": "MIT",
227
+ "engines": {
228
+ "node": ">=6.6.0"
229
+ }
230
+ },
231
+ "node_modules/cors": {
232
+ "version": "2.8.6",
233
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
234
+ "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
235
+ "license": "MIT",
236
+ "dependencies": {
237
+ "object-assign": "^4",
238
+ "vary": "^1"
239
+ },
240
+ "engines": {
241
+ "node": ">= 0.10"
242
+ },
243
+ "funding": {
244
+ "type": "opencollective",
245
+ "url": "https://opencollective.com/express"
246
+ }
247
+ },
248
+ "node_modules/debug": {
249
+ "version": "4.4.3",
250
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
251
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
252
+ "license": "MIT",
253
+ "dependencies": {
254
+ "ms": "^2.1.3"
255
+ },
256
+ "engines": {
257
+ "node": ">=6.0"
258
+ },
259
+ "peerDependenciesMeta": {
260
+ "supports-color": {
261
+ "optional": true
262
+ }
263
+ }
264
+ },
265
+ "node_modules/depd": {
266
+ "version": "2.0.0",
267
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
268
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
269
+ "license": "MIT",
270
+ "engines": {
271
+ "node": ">= 0.8"
272
+ }
273
+ },
274
+ "node_modules/dunder-proto": {
275
+ "version": "1.0.1",
276
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
277
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
278
+ "license": "MIT",
279
+ "dependencies": {
280
+ "call-bind-apply-helpers": "^1.0.1",
281
+ "es-errors": "^1.3.0",
282
+ "gopd": "^1.2.0"
283
+ },
284
+ "engines": {
285
+ "node": ">= 0.4"
286
+ }
287
+ },
288
+ "node_modules/ee-first": {
289
+ "version": "1.1.1",
290
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
291
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
292
+ "license": "MIT"
293
+ },
294
+ "node_modules/encodeurl": {
295
+ "version": "2.0.0",
296
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
297
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
298
+ "license": "MIT",
299
+ "engines": {
300
+ "node": ">= 0.8"
301
+ }
302
+ },
303
+ "node_modules/es-define-property": {
304
+ "version": "1.0.1",
305
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
306
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
307
+ "license": "MIT",
308
+ "engines": {
309
+ "node": ">= 0.4"
310
+ }
311
+ },
312
+ "node_modules/es-errors": {
313
+ "version": "1.3.0",
314
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
315
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
316
+ "license": "MIT",
317
+ "engines": {
318
+ "node": ">= 0.4"
319
+ }
320
+ },
321
+ "node_modules/es-object-atoms": {
322
+ "version": "1.1.2",
323
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz",
324
+ "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==",
325
+ "license": "MIT",
326
+ "dependencies": {
327
+ "es-errors": "^1.3.0"
328
+ },
329
+ "engines": {
330
+ "node": ">= 0.4"
331
+ }
332
+ },
333
+ "node_modules/escape-html": {
334
+ "version": "1.0.3",
335
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
336
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
337
+ "license": "MIT"
338
+ },
339
+ "node_modules/etag": {
340
+ "version": "1.8.1",
341
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
342
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
343
+ "license": "MIT",
344
+ "engines": {
345
+ "node": ">= 0.6"
346
+ }
347
+ },
348
+ "node_modules/express": {
349
+ "version": "5.2.1",
350
+ "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz",
351
+ "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==",
352
+ "license": "MIT",
353
+ "dependencies": {
354
+ "accepts": "^2.0.0",
355
+ "body-parser": "^2.2.1",
356
+ "content-disposition": "^1.0.0",
357
+ "content-type": "^1.0.5",
358
+ "cookie": "^0.7.1",
359
+ "cookie-signature": "^1.2.1",
360
+ "debug": "^4.4.0",
361
+ "depd": "^2.0.0",
362
+ "encodeurl": "^2.0.0",
363
+ "escape-html": "^1.0.3",
364
+ "etag": "^1.8.1",
365
+ "finalhandler": "^2.1.0",
366
+ "fresh": "^2.0.0",
367
+ "http-errors": "^2.0.0",
368
+ "merge-descriptors": "^2.0.0",
369
+ "mime-types": "^3.0.0",
370
+ "on-finished": "^2.4.1",
371
+ "once": "^1.4.0",
372
+ "parseurl": "^1.3.3",
373
+ "proxy-addr": "^2.0.7",
374
+ "qs": "^6.14.0",
375
+ "range-parser": "^1.2.1",
376
+ "router": "^2.2.0",
377
+ "send": "^1.1.0",
378
+ "serve-static": "^2.2.0",
379
+ "statuses": "^2.0.1",
380
+ "type-is": "^2.0.1",
381
+ "vary": "^1.1.2"
382
+ },
383
+ "engines": {
384
+ "node": ">= 18"
385
+ },
386
+ "funding": {
387
+ "type": "opencollective",
388
+ "url": "https://opencollective.com/express"
389
+ }
390
+ },
391
+ "node_modules/finalhandler": {
392
+ "version": "2.1.1",
393
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz",
394
+ "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==",
395
+ "license": "MIT",
396
+ "dependencies": {
397
+ "debug": "^4.4.0",
398
+ "encodeurl": "^2.0.0",
399
+ "escape-html": "^1.0.3",
400
+ "on-finished": "^2.4.1",
401
+ "parseurl": "^1.3.3",
402
+ "statuses": "^2.0.1"
403
+ },
404
+ "engines": {
405
+ "node": ">= 18.0.0"
406
+ },
407
+ "funding": {
408
+ "type": "opencollective",
409
+ "url": "https://opencollective.com/express"
410
+ }
411
+ },
412
+ "node_modules/forwarded": {
413
+ "version": "0.2.0",
414
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
415
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
416
+ "license": "MIT",
417
+ "engines": {
418
+ "node": ">= 0.6"
419
+ }
420
+ },
421
+ "node_modules/fresh": {
422
+ "version": "2.0.0",
423
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz",
424
+ "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==",
425
+ "license": "MIT",
426
+ "engines": {
427
+ "node": ">= 0.8"
428
+ }
429
+ },
430
+ "node_modules/function-bind": {
431
+ "version": "1.1.2",
432
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
433
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
434
+ "license": "MIT",
435
+ "funding": {
436
+ "url": "https://github.com/sponsors/ljharb"
437
+ }
438
+ },
439
+ "node_modules/get-intrinsic": {
440
+ "version": "1.3.0",
441
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
442
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
443
+ "license": "MIT",
444
+ "dependencies": {
445
+ "call-bind-apply-helpers": "^1.0.2",
446
+ "es-define-property": "^1.0.1",
447
+ "es-errors": "^1.3.0",
448
+ "es-object-atoms": "^1.1.1",
449
+ "function-bind": "^1.1.2",
450
+ "get-proto": "^1.0.1",
451
+ "gopd": "^1.2.0",
452
+ "has-symbols": "^1.1.0",
453
+ "hasown": "^2.0.2",
454
+ "math-intrinsics": "^1.1.0"
455
+ },
456
+ "engines": {
457
+ "node": ">= 0.4"
458
+ },
459
+ "funding": {
460
+ "url": "https://github.com/sponsors/ljharb"
461
+ }
462
+ },
463
+ "node_modules/get-proto": {
464
+ "version": "1.0.1",
465
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
466
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
467
+ "license": "MIT",
468
+ "dependencies": {
469
+ "dunder-proto": "^1.0.1",
470
+ "es-object-atoms": "^1.0.0"
471
+ },
472
+ "engines": {
473
+ "node": ">= 0.4"
474
+ }
475
+ },
476
+ "node_modules/gopd": {
477
+ "version": "1.2.0",
478
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
479
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
480
+ "license": "MIT",
481
+ "engines": {
482
+ "node": ">= 0.4"
483
+ },
484
+ "funding": {
485
+ "url": "https://github.com/sponsors/ljharb"
486
+ }
487
+ },
488
+ "node_modules/has-symbols": {
489
+ "version": "1.1.0",
490
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
491
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
492
+ "license": "MIT",
493
+ "engines": {
494
+ "node": ">= 0.4"
495
+ },
496
+ "funding": {
497
+ "url": "https://github.com/sponsors/ljharb"
498
+ }
499
+ },
500
+ "node_modules/hasown": {
501
+ "version": "2.0.4",
502
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz",
503
+ "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==",
504
+ "license": "MIT",
505
+ "dependencies": {
506
+ "function-bind": "^1.1.2"
507
+ },
508
+ "engines": {
509
+ "node": ">= 0.4"
510
+ }
511
+ },
512
+ "node_modules/hono": {
513
+ "version": "4.13.3",
514
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.3.tgz",
515
+ "integrity": "sha512-r8AO2mYHoLxSHkgafNeC/BXyb2vWRxD3jem4Ts+ptav8oTG5FIRifAjuJEmZI4bSvvc2ns0GxmIYiZnHqN3mMw==",
516
+ "license": "MIT",
517
+ "peer": true,
518
+ "engines": {
519
+ "node": ">=16.9.0"
520
+ }
521
+ },
522
+ "node_modules/http-errors": {
523
+ "version": "2.0.1",
524
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
525
+ "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
526
+ "license": "MIT",
527
+ "dependencies": {
528
+ "depd": "~2.0.0",
529
+ "inherits": "~2.0.4",
530
+ "setprototypeof": "~1.2.0",
531
+ "statuses": "~2.0.2",
532
+ "toidentifier": "~1.0.1"
533
+ },
534
+ "engines": {
535
+ "node": ">= 0.8"
536
+ },
537
+ "funding": {
538
+ "type": "opencollective",
539
+ "url": "https://opencollective.com/express"
540
+ }
541
+ },
542
+ "node_modules/iconv-lite": {
543
+ "version": "0.7.3",
544
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.3.tgz",
545
+ "integrity": "sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==",
546
+ "license": "MIT",
547
+ "dependencies": {
548
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
549
+ },
550
+ "engines": {
551
+ "node": ">=0.10.0"
552
+ },
553
+ "funding": {
554
+ "type": "opencollective",
555
+ "url": "https://opencollective.com/express"
556
+ }
557
+ },
558
+ "node_modules/inherits": {
559
+ "version": "2.0.4",
560
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
561
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
562
+ "license": "ISC"
563
+ },
564
+ "node_modules/ipaddr.js": {
565
+ "version": "1.9.1",
566
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
567
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
568
+ "license": "MIT",
569
+ "engines": {
570
+ "node": ">= 0.10"
571
+ }
572
+ },
573
+ "node_modules/is-promise": {
574
+ "version": "4.0.0",
575
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
576
+ "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
577
+ "license": "MIT"
578
+ },
579
+ "node_modules/math-intrinsics": {
580
+ "version": "1.1.0",
581
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
582
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
583
+ "license": "MIT",
584
+ "engines": {
585
+ "node": ">= 0.4"
586
+ }
587
+ },
588
+ "node_modules/media-typer": {
589
+ "version": "1.1.1",
590
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.1.tgz",
591
+ "integrity": "sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==",
592
+ "license": "MIT",
593
+ "engines": {
594
+ "node": ">= 0.8"
595
+ },
596
+ "funding": {
597
+ "type": "opencollective",
598
+ "url": "https://opencollective.com/express"
599
+ }
600
+ },
601
+ "node_modules/merge-descriptors": {
602
+ "version": "2.0.0",
603
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz",
604
+ "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==",
605
+ "license": "MIT",
606
+ "engines": {
607
+ "node": ">=18"
608
+ },
609
+ "funding": {
610
+ "url": "https://github.com/sponsors/sindresorhus"
611
+ }
612
+ },
613
+ "node_modules/mime-db": {
614
+ "version": "1.54.0",
615
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
616
+ "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
617
+ "license": "MIT",
618
+ "engines": {
619
+ "node": ">= 0.6"
620
+ }
621
+ },
622
+ "node_modules/mime-types": {
623
+ "version": "3.0.2",
624
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz",
625
+ "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==",
626
+ "license": "MIT",
627
+ "dependencies": {
628
+ "mime-db": "^1.54.0"
629
+ },
630
+ "engines": {
631
+ "node": ">=18"
632
+ },
633
+ "funding": {
634
+ "type": "opencollective",
635
+ "url": "https://opencollective.com/express"
636
+ }
637
+ },
638
+ "node_modules/ms": {
639
+ "version": "2.1.3",
640
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
641
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
642
+ "license": "MIT"
643
+ },
644
+ "node_modules/negotiator": {
645
+ "version": "1.0.0",
646
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz",
647
+ "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==",
648
+ "license": "MIT",
649
+ "engines": {
650
+ "node": ">= 0.6"
651
+ }
652
+ },
653
+ "node_modules/node-addon-api": {
654
+ "version": "8.9.2",
655
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-8.9.2.tgz",
656
+ "integrity": "sha512-VijLXbi3UACN69I0JVXJsX4tjACjNoQDgv2gTF6sx2wWEi8tkSg2eX8p5gSIFi8z2+DL3oHmY6OyKce38SDolg==",
657
+ "license": "MIT",
658
+ "engines": {
659
+ "node": "^18 || ^20 || >= 21"
660
+ }
661
+ },
662
+ "node_modules/object-assign": {
663
+ "version": "4.1.1",
664
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
665
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
666
+ "license": "MIT",
667
+ "engines": {
668
+ "node": ">=0.10.0"
669
+ }
670
+ },
671
+ "node_modules/object-inspect": {
672
+ "version": "1.13.4",
673
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
674
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
675
+ "license": "MIT",
676
+ "engines": {
677
+ "node": ">= 0.4"
678
+ },
679
+ "funding": {
680
+ "url": "https://github.com/sponsors/ljharb"
681
+ }
682
+ },
683
+ "node_modules/on-finished": {
684
+ "version": "2.4.1",
685
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
686
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
687
+ "license": "MIT",
688
+ "dependencies": {
689
+ "ee-first": "1.1.1"
690
+ },
691
+ "engines": {
692
+ "node": ">= 0.8"
693
+ }
694
+ },
695
+ "node_modules/once": {
696
+ "version": "1.4.0",
697
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
698
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
699
+ "license": "ISC",
700
+ "dependencies": {
701
+ "wrappy": "1"
702
+ }
703
+ },
704
+ "node_modules/parseurl": {
705
+ "version": "1.3.3",
706
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
707
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
708
+ "license": "MIT",
709
+ "engines": {
710
+ "node": ">= 0.8"
711
+ }
712
+ },
713
+ "node_modules/path-to-regexp": {
714
+ "version": "8.4.2",
715
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
716
+ "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
717
+ "license": "MIT",
718
+ "funding": {
719
+ "type": "opencollective",
720
+ "url": "https://opencollective.com/express"
721
+ }
722
+ },
723
+ "node_modules/pg": {
724
+ "version": "8.23.0",
725
+ "resolved": "https://registry.npmjs.org/pg/-/pg-8.23.0.tgz",
726
+ "integrity": "sha512-Ip2EQCngowJLGOfCwkFhPXU7/ljlhn6Rxlmy4XYfL2Y+vyRM59+8uR2xqRWKdYmbXmxCFOAmKxBuSUCdF34qLg==",
727
+ "license": "MIT",
728
+ "dependencies": {
729
+ "pg-connection-string": "^2.14.0",
730
+ "pg-pool": "^3.14.0",
731
+ "pg-protocol": "^1.16.0",
732
+ "pg-types": "2.2.0",
733
+ "pgpass": "1.0.5"
734
+ },
735
+ "engines": {
736
+ "node": ">= 16.0.0"
737
+ },
738
+ "optionalDependencies": {
739
+ "pg-cloudflare": "^1.4.0"
740
+ },
741
+ "peerDependencies": {
742
+ "pg-native": ">=3.0.1"
743
+ },
744
+ "peerDependenciesMeta": {
745
+ "pg-native": {
746
+ "optional": true
747
+ }
748
+ }
749
+ },
750
+ "node_modules/pg-cloudflare": {
751
+ "version": "1.4.0",
752
+ "resolved": "https://registry.npmjs.org/pg-cloudflare/-/pg-cloudflare-1.4.0.tgz",
753
+ "integrity": "sha512-Vo7z/6rrQYxpNRylp4Tlob2elzbh+N/MOQbxFVWCxS7oEx6jF53GTJFxK2WWpKuBRkmiin4Mt+xofFDjx09R0A==",
754
+ "license": "MIT",
755
+ "optional": true
756
+ },
757
+ "node_modules/pg-connection-string": {
758
+ "version": "2.14.0",
759
+ "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.14.0.tgz",
760
+ "integrity": "sha512-XwWDGcLRGCXAR8F/AM5bG7Q+A3Wm2s6QeEjlOKZLlH3UYcguiqCWKyWXVag5TLTIjR7oOJUY8kcADaZgWPyLeg==",
761
+ "license": "MIT"
762
+ },
763
+ "node_modules/pg-int8": {
764
+ "version": "1.0.1",
765
+ "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz",
766
+ "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==",
767
+ "license": "ISC",
768
+ "engines": {
769
+ "node": ">=4.0.0"
770
+ }
771
+ },
772
+ "node_modules/pg-pool": {
773
+ "version": "3.14.0",
774
+ "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.14.0.tgz",
775
+ "integrity": "sha512-gKtPkFdQPU3DksooVLi9LsjZxrsBUZIpa+7aVx+LV5pNh0KzP4Zleud2po+ConrxbuXGBJ6Hfer6hdgpIBpBaw==",
776
+ "license": "MIT",
777
+ "peerDependencies": {
778
+ "pg": ">=8.0"
779
+ }
780
+ },
781
+ "node_modules/pg-protocol": {
782
+ "version": "1.16.0",
783
+ "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.16.0.tgz",
784
+ "integrity": "sha512-sILXutLVjCLjcDuOmvhX5e2Z4cS5qG/6Bu3VkpFwdf/633ElGLpEh9bgmuI5I4sqKqkifQiGyiCcx1HdtrK7tg==",
785
+ "license": "MIT"
786
+ },
787
+ "node_modules/pg-types": {
788
+ "version": "2.2.0",
789
+ "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz",
790
+ "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==",
791
+ "license": "MIT",
792
+ "dependencies": {
793
+ "pg-int8": "1.0.1",
794
+ "postgres-array": "~2.0.0",
795
+ "postgres-bytea": "~1.0.0",
796
+ "postgres-date": "~1.0.4",
797
+ "postgres-interval": "^1.1.0"
798
+ },
799
+ "engines": {
800
+ "node": ">=4"
801
+ }
802
+ },
803
+ "node_modules/pgpass": {
804
+ "version": "1.0.5",
805
+ "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz",
806
+ "integrity": "sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==",
807
+ "license": "MIT",
808
+ "dependencies": {
809
+ "split2": "^4.1.0"
810
+ }
811
+ },
812
+ "node_modules/postgres-array": {
813
+ "version": "2.0.0",
814
+ "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz",
815
+ "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==",
816
+ "license": "MIT",
817
+ "engines": {
818
+ "node": ">=4"
819
+ }
820
+ },
821
+ "node_modules/postgres-bytea": {
822
+ "version": "1.0.1",
823
+ "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.1.tgz",
824
+ "integrity": "sha512-5+5HqXnsZPE65IJZSMkZtURARZelel2oXUEO8rH83VS/hxH5vv1uHquPg5wZs8yMAfdv971IU+kcPUczi7NVBQ==",
825
+ "license": "MIT",
826
+ "engines": {
827
+ "node": ">=0.10.0"
828
+ }
829
+ },
830
+ "node_modules/postgres-date": {
831
+ "version": "1.0.7",
832
+ "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz",
833
+ "integrity": "sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==",
834
+ "license": "MIT",
835
+ "engines": {
836
+ "node": ">=0.10.0"
837
+ }
838
+ },
839
+ "node_modules/postgres-interval": {
840
+ "version": "1.2.0",
841
+ "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz",
842
+ "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==",
843
+ "license": "MIT",
844
+ "dependencies": {
845
+ "xtend": "^4.0.0"
846
+ },
847
+ "engines": {
848
+ "node": ">=0.10.0"
849
+ }
850
+ },
851
+ "node_modules/proxy-addr": {
852
+ "version": "2.0.7",
853
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
854
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
855
+ "license": "MIT",
856
+ "dependencies": {
857
+ "forwarded": "0.2.0",
858
+ "ipaddr.js": "1.9.1"
859
+ },
860
+ "engines": {
861
+ "node": ">= 0.10"
862
+ }
863
+ },
864
+ "node_modules/qs": {
865
+ "version": "6.15.3",
866
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz",
867
+ "integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==",
868
+ "license": "BSD-3-Clause",
869
+ "dependencies": {
870
+ "es-define-property": "^1.0.1",
871
+ "side-channel": "^1.1.1"
872
+ },
873
+ "engines": {
874
+ "node": ">=0.6"
875
+ },
876
+ "funding": {
877
+ "url": "https://github.com/sponsors/ljharb"
878
+ }
879
+ },
880
+ "node_modules/range-parser": {
881
+ "version": "1.3.0",
882
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.3.0.tgz",
883
+ "integrity": "sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==",
884
+ "license": "MIT",
885
+ "engines": {
886
+ "node": ">= 0.6"
887
+ },
888
+ "funding": {
889
+ "type": "opencollective",
890
+ "url": "https://opencollective.com/express"
891
+ }
892
+ },
893
+ "node_modules/raw-body": {
894
+ "version": "3.0.2",
895
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz",
896
+ "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==",
897
+ "license": "MIT",
898
+ "dependencies": {
899
+ "bytes": "~3.1.2",
900
+ "http-errors": "~2.0.1",
901
+ "iconv-lite": "~0.7.0",
902
+ "unpipe": "~1.0.0"
903
+ },
904
+ "engines": {
905
+ "node": ">= 0.10"
906
+ }
907
+ },
908
+ "node_modules/router": {
909
+ "version": "2.2.0",
910
+ "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz",
911
+ "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==",
912
+ "license": "MIT",
913
+ "dependencies": {
914
+ "debug": "^4.4.0",
915
+ "depd": "^2.0.0",
916
+ "is-promise": "^4.0.0",
917
+ "parseurl": "^1.3.3",
918
+ "path-to-regexp": "^8.0.0"
919
+ },
920
+ "engines": {
921
+ "node": ">= 18"
922
+ }
923
+ },
924
+ "node_modules/safer-buffer": {
925
+ "version": "2.1.2",
926
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
927
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
928
+ "license": "MIT"
929
+ },
930
+ "node_modules/send": {
931
+ "version": "1.2.1",
932
+ "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz",
933
+ "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==",
934
+ "license": "MIT",
935
+ "dependencies": {
936
+ "debug": "^4.4.3",
937
+ "encodeurl": "^2.0.0",
938
+ "escape-html": "^1.0.3",
939
+ "etag": "^1.8.1",
940
+ "fresh": "^2.0.0",
941
+ "http-errors": "^2.0.1",
942
+ "mime-types": "^3.0.2",
943
+ "ms": "^2.1.3",
944
+ "on-finished": "^2.4.1",
945
+ "range-parser": "^1.2.1",
946
+ "statuses": "^2.0.2"
947
+ },
948
+ "engines": {
949
+ "node": ">= 18"
950
+ },
951
+ "funding": {
952
+ "type": "opencollective",
953
+ "url": "https://opencollective.com/express"
954
+ }
955
+ },
956
+ "node_modules/serve-static": {
957
+ "version": "2.2.1",
958
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz",
959
+ "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==",
960
+ "license": "MIT",
961
+ "dependencies": {
962
+ "encodeurl": "^2.0.0",
963
+ "escape-html": "^1.0.3",
964
+ "parseurl": "^1.3.3",
965
+ "send": "^1.2.0"
966
+ },
967
+ "engines": {
968
+ "node": ">= 18"
969
+ },
970
+ "funding": {
971
+ "type": "opencollective",
972
+ "url": "https://opencollective.com/express"
973
+ }
974
+ },
975
+ "node_modules/setprototypeof": {
976
+ "version": "1.2.0",
977
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
978
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
979
+ "license": "ISC"
980
+ },
981
+ "node_modules/side-channel": {
982
+ "version": "1.1.1",
983
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz",
984
+ "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==",
985
+ "license": "MIT",
986
+ "dependencies": {
987
+ "es-errors": "^1.3.0",
988
+ "object-inspect": "^1.13.4",
989
+ "side-channel-list": "^1.0.1",
990
+ "side-channel-map": "^1.0.1",
991
+ "side-channel-weakmap": "^1.0.2"
992
+ },
993
+ "engines": {
994
+ "node": ">= 0.4"
995
+ },
996
+ "funding": {
997
+ "url": "https://github.com/sponsors/ljharb"
998
+ }
999
+ },
1000
+ "node_modules/side-channel-list": {
1001
+ "version": "1.0.1",
1002
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
1003
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
1004
+ "license": "MIT",
1005
+ "dependencies": {
1006
+ "es-errors": "^1.3.0",
1007
+ "object-inspect": "^1.13.4"
1008
+ },
1009
+ "engines": {
1010
+ "node": ">= 0.4"
1011
+ },
1012
+ "funding": {
1013
+ "url": "https://github.com/sponsors/ljharb"
1014
+ }
1015
+ },
1016
+ "node_modules/side-channel-map": {
1017
+ "version": "1.0.1",
1018
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
1019
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
1020
+ "license": "MIT",
1021
+ "dependencies": {
1022
+ "call-bound": "^1.0.2",
1023
+ "es-errors": "^1.3.0",
1024
+ "get-intrinsic": "^1.2.5",
1025
+ "object-inspect": "^1.13.3"
1026
+ },
1027
+ "engines": {
1028
+ "node": ">= 0.4"
1029
+ },
1030
+ "funding": {
1031
+ "url": "https://github.com/sponsors/ljharb"
1032
+ }
1033
+ },
1034
+ "node_modules/side-channel-weakmap": {
1035
+ "version": "1.0.2",
1036
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
1037
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
1038
+ "license": "MIT",
1039
+ "dependencies": {
1040
+ "call-bound": "^1.0.2",
1041
+ "es-errors": "^1.3.0",
1042
+ "get-intrinsic": "^1.2.5",
1043
+ "object-inspect": "^1.13.3",
1044
+ "side-channel-map": "^1.0.1"
1045
+ },
1046
+ "engines": {
1047
+ "node": ">= 0.4"
1048
+ },
1049
+ "funding": {
1050
+ "url": "https://github.com/sponsors/ljharb"
1051
+ }
1052
+ },
1053
+ "node_modules/split2": {
1054
+ "version": "4.2.0",
1055
+ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
1056
+ "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
1057
+ "license": "ISC",
1058
+ "engines": {
1059
+ "node": ">= 10.x"
1060
+ }
1061
+ },
1062
+ "node_modules/statuses": {
1063
+ "version": "2.0.2",
1064
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
1065
+ "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
1066
+ "license": "MIT",
1067
+ "engines": {
1068
+ "node": ">= 0.8"
1069
+ }
1070
+ },
1071
+ "node_modules/toidentifier": {
1072
+ "version": "1.0.1",
1073
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
1074
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
1075
+ "license": "MIT",
1076
+ "engines": {
1077
+ "node": ">=0.6"
1078
+ }
1079
+ },
1080
+ "node_modules/type-is": {
1081
+ "version": "2.1.0",
1082
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.1.0.tgz",
1083
+ "integrity": "sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==",
1084
+ "license": "MIT",
1085
+ "dependencies": {
1086
+ "content-type": "^2.0.0",
1087
+ "media-typer": "^1.1.0",
1088
+ "mime-types": "^3.0.0"
1089
+ },
1090
+ "engines": {
1091
+ "node": ">= 18"
1092
+ },
1093
+ "funding": {
1094
+ "type": "opencollective",
1095
+ "url": "https://opencollective.com/express"
1096
+ }
1097
+ },
1098
+ "node_modules/type-is/node_modules/content-type": {
1099
+ "version": "2.1.0",
1100
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
1101
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
1102
+ "license": "MIT",
1103
+ "engines": {
1104
+ "node": ">=18"
1105
+ },
1106
+ "funding": {
1107
+ "type": "opencollective",
1108
+ "url": "https://opencollective.com/express"
1109
+ }
1110
+ },
1111
+ "node_modules/unpipe": {
1112
+ "version": "1.0.0",
1113
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
1114
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
1115
+ "license": "MIT",
1116
+ "engines": {
1117
+ "node": ">= 0.8"
1118
+ }
1119
+ },
1120
+ "node_modules/vary": {
1121
+ "version": "1.1.2",
1122
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1123
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
1124
+ "license": "MIT",
1125
+ "engines": {
1126
+ "node": ">= 0.8"
1127
+ }
1128
+ },
1129
+ "node_modules/wrappy": {
1130
+ "version": "1.0.2",
1131
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1132
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
1133
+ "license": "ISC"
1134
+ },
1135
+ "node_modules/xtend": {
1136
+ "version": "4.0.2",
1137
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
1138
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
1139
+ "license": "MIT",
1140
+ "engines": {
1141
+ "node": ">=0.4"
1142
+ }
1143
+ },
1144
+ "node_modules/zod": {
1145
+ "version": "4.4.3",
1146
+ "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz",
1147
+ "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==",
1148
+ "license": "MIT",
1149
+ "funding": {
1150
+ "url": "https://github.com/sponsors/colinhacks"
1151
+ }
1152
+ }
1153
+ }
1154
+ }