mcp-server-framework 1.0.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 (673) hide show
  1. package/CHANGELOG.md +174 -0
  2. package/LICENSE-GPL.md +219 -0
  3. package/LICENSE.md +187 -0
  4. package/README.md +439 -0
  5. package/build/config/config-cache.d.ts +120 -0
  6. package/build/config/config-cache.d.ts.map +1 -0
  7. package/build/config/config-cache.js +310 -0
  8. package/build/config/config-cache.js.map +1 -0
  9. package/build/config/env.d.ts +476 -0
  10. package/build/config/env.d.ts.map +1 -0
  11. package/build/config/env.js +441 -0
  12. package/build/config/env.js.map +1 -0
  13. package/build/config/extensions.d.ts +107 -0
  14. package/build/config/extensions.d.ts.map +1 -0
  15. package/build/config/extensions.js +152 -0
  16. package/build/config/extensions.js.map +1 -0
  17. package/build/config/file/index.d.ts +8 -0
  18. package/build/config/file/index.d.ts.map +1 -0
  19. package/build/config/file/index.js +10 -0
  20. package/build/config/file/index.js.map +1 -0
  21. package/build/config/file/loader.d.ts +31 -0
  22. package/build/config/file/loader.d.ts.map +1 -0
  23. package/build/config/file/loader.js +313 -0
  24. package/build/config/file/loader.js.map +1 -0
  25. package/build/config/file/schema.d.ts +583 -0
  26. package/build/config/file/schema.d.ts.map +1 -0
  27. package/build/config/file/schema.js +388 -0
  28. package/build/config/file/schema.js.map +1 -0
  29. package/build/config/index.d.ts +15 -0
  30. package/build/config/index.d.ts.map +1 -0
  31. package/build/config/index.js +27 -0
  32. package/build/config/index.js.map +1 -0
  33. package/build/config/startup-warnings.d.ts +46 -0
  34. package/build/config/startup-warnings.d.ts.map +1 -0
  35. package/build/config/startup-warnings.js +61 -0
  36. package/build/config/startup-warnings.js.map +1 -0
  37. package/build/connection/connection-state.d.ts +196 -0
  38. package/build/connection/connection-state.d.ts.map +1 -0
  39. package/build/connection/connection-state.js +426 -0
  40. package/build/connection/connection-state.js.map +1 -0
  41. package/build/connection/core/base.d.ts +43 -0
  42. package/build/connection/core/base.d.ts.map +1 -0
  43. package/build/connection/core/base.js +82 -0
  44. package/build/connection/core/base.js.map +1 -0
  45. package/build/connection/core/constants.d.ts +121 -0
  46. package/build/connection/core/constants.d.ts.map +1 -0
  47. package/build/connection/core/constants.js +151 -0
  48. package/build/connection/core/constants.js.map +1 -0
  49. package/build/connection/core/index.d.ts +13 -0
  50. package/build/connection/core/index.d.ts.map +1 -0
  51. package/build/connection/core/index.js +14 -0
  52. package/build/connection/core/index.js.map +1 -0
  53. package/build/connection/core/types.d.ts +102 -0
  54. package/build/connection/core/types.d.ts.map +1 -0
  55. package/build/connection/core/types.js +31 -0
  56. package/build/connection/core/types.js.map +1 -0
  57. package/build/connection/index.d.ts +19 -0
  58. package/build/connection/index.d.ts.map +1 -0
  59. package/build/connection/index.js +22 -0
  60. package/build/connection/index.js.map +1 -0
  61. package/build/connection/types.d.ts +125 -0
  62. package/build/connection/types.d.ts.map +1 -0
  63. package/build/connection/types.js +39 -0
  64. package/build/connection/types.js.map +1 -0
  65. package/build/errors/categories/auth.d.ts +59 -0
  66. package/build/errors/categories/auth.d.ts.map +1 -0
  67. package/build/errors/categories/auth.js +111 -0
  68. package/build/errors/categories/auth.js.map +1 -0
  69. package/build/errors/categories/connection.d.ts +70 -0
  70. package/build/errors/categories/connection.d.ts.map +1 -0
  71. package/build/errors/categories/connection.js +120 -0
  72. package/build/errors/categories/connection.js.map +1 -0
  73. package/build/errors/categories/index.d.ts +14 -0
  74. package/build/errors/categories/index.d.ts.map +1 -0
  75. package/build/errors/categories/index.js +20 -0
  76. package/build/errors/categories/index.js.map +1 -0
  77. package/build/errors/categories/operation.d.ts +83 -0
  78. package/build/errors/categories/operation.d.ts.map +1 -0
  79. package/build/errors/categories/operation.js +149 -0
  80. package/build/errors/categories/operation.js.map +1 -0
  81. package/build/errors/categories/protocol.d.ts +68 -0
  82. package/build/errors/categories/protocol.d.ts.map +1 -0
  83. package/build/errors/categories/protocol.js +135 -0
  84. package/build/errors/categories/protocol.js.map +1 -0
  85. package/build/errors/categories/session.d.ts +50 -0
  86. package/build/errors/categories/session.d.ts.map +1 -0
  87. package/build/errors/categories/session.js +97 -0
  88. package/build/errors/categories/session.js.map +1 -0
  89. package/build/errors/categories/system.d.ts +95 -0
  90. package/build/errors/categories/system.d.ts.map +1 -0
  91. package/build/errors/categories/system.js +190 -0
  92. package/build/errors/categories/system.js.map +1 -0
  93. package/build/errors/categories/transport.d.ts +70 -0
  94. package/build/errors/categories/transport.d.ts.map +1 -0
  95. package/build/errors/categories/transport.js +148 -0
  96. package/build/errors/categories/transport.js.map +1 -0
  97. package/build/errors/categories/validation.d.ts +140 -0
  98. package/build/errors/categories/validation.d.ts.map +1 -0
  99. package/build/errors/categories/validation.js +311 -0
  100. package/build/errors/categories/validation.js.map +1 -0
  101. package/build/errors/core/base.d.ts +103 -0
  102. package/build/errors/core/base.d.ts.map +1 -0
  103. package/build/errors/core/base.js +219 -0
  104. package/build/errors/core/base.js.map +1 -0
  105. package/build/errors/core/constants.d.ts +40 -0
  106. package/build/errors/core/constants.d.ts.map +1 -0
  107. package/build/errors/core/constants.js +49 -0
  108. package/build/errors/core/constants.js.map +1 -0
  109. package/build/errors/core/error-codes.d.ts +72 -0
  110. package/build/errors/core/error-codes.d.ts.map +1 -0
  111. package/build/errors/core/error-codes.js +88 -0
  112. package/build/errors/core/error-codes.js.map +1 -0
  113. package/build/errors/core/http.d.ts +69 -0
  114. package/build/errors/core/http.d.ts.map +1 -0
  115. package/build/errors/core/http.js +106 -0
  116. package/build/errors/core/http.js.map +1 -0
  117. package/build/errors/core/index.d.ts +23 -0
  118. package/build/errors/core/index.d.ts.map +1 -0
  119. package/build/errors/core/index.js +41 -0
  120. package/build/errors/core/index.js.map +1 -0
  121. package/build/errors/core/json-rpc.d.ts +69 -0
  122. package/build/errors/core/json-rpc.d.ts.map +1 -0
  123. package/build/errors/core/json-rpc.js +79 -0
  124. package/build/errors/core/json-rpc.js.map +1 -0
  125. package/build/errors/core/messages.d.ts +51 -0
  126. package/build/errors/core/messages.d.ts.map +1 -0
  127. package/build/errors/core/messages.js +59 -0
  128. package/build/errors/core/messages.js.map +1 -0
  129. package/build/errors/core/types.d.ts +80 -0
  130. package/build/errors/core/types.d.ts.map +1 -0
  131. package/build/errors/core/types.js +10 -0
  132. package/build/errors/core/types.js.map +1 -0
  133. package/build/errors/factory.d.ts +199 -0
  134. package/build/errors/factory.d.ts.map +1 -0
  135. package/build/errors/factory.js +244 -0
  136. package/build/errors/factory.js.map +1 -0
  137. package/build/errors/index.d.ts +35 -0
  138. package/build/errors/index.d.ts.map +1 -0
  139. package/build/errors/index.js +67 -0
  140. package/build/errors/index.js.map +1 -0
  141. package/build/index.d.ts +93 -0
  142. package/build/index.d.ts.map +1 -0
  143. package/build/index.js +107 -0
  144. package/build/index.js.map +1 -0
  145. package/build/logger/core/constants.d.ts +143 -0
  146. package/build/logger/core/constants.d.ts.map +1 -0
  147. package/build/logger/core/constants.js +206 -0
  148. package/build/logger/core/constants.js.map +1 -0
  149. package/build/logger/core/context.d.ts +170 -0
  150. package/build/logger/core/context.d.ts.map +1 -0
  151. package/build/logger/core/context.js +237 -0
  152. package/build/logger/core/context.js.map +1 -0
  153. package/build/logger/core/errors.d.ts +101 -0
  154. package/build/logger/core/errors.d.ts.map +1 -0
  155. package/build/logger/core/errors.js +128 -0
  156. package/build/logger/core/errors.js.map +1 -0
  157. package/build/logger/core/format.d.ts +40 -0
  158. package/build/logger/core/format.d.ts.map +1 -0
  159. package/build/logger/core/format.js +47 -0
  160. package/build/logger/core/format.js.map +1 -0
  161. package/build/logger/core/index.d.ts +19 -0
  162. package/build/logger/core/index.d.ts.map +1 -0
  163. package/build/logger/core/index.js +47 -0
  164. package/build/logger/core/index.js.map +1 -0
  165. package/build/logger/core/trace-context.d.ts +51 -0
  166. package/build/logger/core/trace-context.d.ts.map +1 -0
  167. package/build/logger/core/trace-context.js +42 -0
  168. package/build/logger/core/trace-context.js.map +1 -0
  169. package/build/logger/core/types.d.ts +233 -0
  170. package/build/logger/core/types.d.ts.map +1 -0
  171. package/build/logger/core/types.js +10 -0
  172. package/build/logger/core/types.js.map +1 -0
  173. package/build/logger/factory.d.ts +150 -0
  174. package/build/logger/factory.d.ts.map +1 -0
  175. package/build/logger/factory.js +236 -0
  176. package/build/logger/factory.js.map +1 -0
  177. package/build/logger/formatters/index.d.ts +12 -0
  178. package/build/logger/formatters/index.d.ts.map +1 -0
  179. package/build/logger/formatters/index.js +15 -0
  180. package/build/logger/formatters/index.js.map +1 -0
  181. package/build/logger/formatters/json-formatter.d.ts +54 -0
  182. package/build/logger/formatters/json-formatter.d.ts.map +1 -0
  183. package/build/logger/formatters/json-formatter.js +80 -0
  184. package/build/logger/formatters/json-formatter.js.map +1 -0
  185. package/build/logger/formatters/schema.d.ts +230 -0
  186. package/build/logger/formatters/schema.d.ts.map +1 -0
  187. package/build/logger/formatters/schema.js +278 -0
  188. package/build/logger/formatters/schema.js.map +1 -0
  189. package/build/logger/formatters/text-formatter.d.ts +50 -0
  190. package/build/logger/formatters/text-formatter.d.ts.map +1 -0
  191. package/build/logger/formatters/text-formatter.js +93 -0
  192. package/build/logger/formatters/text-formatter.js.map +1 -0
  193. package/build/logger/index.d.ts +39 -0
  194. package/build/logger/index.d.ts.map +1 -0
  195. package/build/logger/index.js +43 -0
  196. package/build/logger/index.js.map +1 -0
  197. package/build/logger/logger.d.ts +278 -0
  198. package/build/logger/logger.d.ts.map +1 -0
  199. package/build/logger/logger.js +459 -0
  200. package/build/logger/logger.js.map +1 -0
  201. package/build/logger/mcp-logger.d.ts +177 -0
  202. package/build/logger/mcp-logger.d.ts.map +1 -0
  203. package/build/logger/mcp-logger.js +294 -0
  204. package/build/logger/mcp-logger.js.map +1 -0
  205. package/build/logger/scrubbing/index.d.ts +14 -0
  206. package/build/logger/scrubbing/index.d.ts.map +1 -0
  207. package/build/logger/scrubbing/index.js +16 -0
  208. package/build/logger/scrubbing/index.js.map +1 -0
  209. package/build/logger/scrubbing/injection-guard.d.ts +69 -0
  210. package/build/logger/scrubbing/injection-guard.d.ts.map +1 -0
  211. package/build/logger/scrubbing/injection-guard.js +102 -0
  212. package/build/logger/scrubbing/injection-guard.js.map +1 -0
  213. package/build/logger/scrubbing/secret-scrubber.d.ts +72 -0
  214. package/build/logger/scrubbing/secret-scrubber.d.ts.map +1 -0
  215. package/build/logger/scrubbing/secret-scrubber.js +177 -0
  216. package/build/logger/scrubbing/secret-scrubber.js.map +1 -0
  217. package/build/logger/writers/base-writer.d.ts +45 -0
  218. package/build/logger/writers/base-writer.d.ts.map +1 -0
  219. package/build/logger/writers/base-writer.js +41 -0
  220. package/build/logger/writers/base-writer.js.map +1 -0
  221. package/build/logger/writers/composite-writer.d.ts +83 -0
  222. package/build/logger/writers/composite-writer.d.ts.map +1 -0
  223. package/build/logger/writers/composite-writer.js +121 -0
  224. package/build/logger/writers/composite-writer.js.map +1 -0
  225. package/build/logger/writers/console-writer.d.ts +59 -0
  226. package/build/logger/writers/console-writer.d.ts.map +1 -0
  227. package/build/logger/writers/console-writer.js +73 -0
  228. package/build/logger/writers/console-writer.js.map +1 -0
  229. package/build/logger/writers/file-writer.d.ts +160 -0
  230. package/build/logger/writers/file-writer.d.ts.map +1 -0
  231. package/build/logger/writers/file-writer.js +345 -0
  232. package/build/logger/writers/file-writer.js.map +1 -0
  233. package/build/logger/writers/index.d.ts +15 -0
  234. package/build/logger/writers/index.d.ts.map +1 -0
  235. package/build/logger/writers/index.js +19 -0
  236. package/build/logger/writers/index.js.map +1 -0
  237. package/build/mcp/capabilities/apps/define-app.d.ts +68 -0
  238. package/build/mcp/capabilities/apps/define-app.d.ts.map +1 -0
  239. package/build/mcp/capabilities/apps/define-app.js +127 -0
  240. package/build/mcp/capabilities/apps/define-app.js.map +1 -0
  241. package/build/mcp/capabilities/apps/index.d.ts +10 -0
  242. package/build/mcp/capabilities/apps/index.d.ts.map +1 -0
  243. package/build/mcp/capabilities/apps/index.js +10 -0
  244. package/build/mcp/capabilities/apps/index.js.map +1 -0
  245. package/build/mcp/capabilities/capabilities.d.ts +24 -0
  246. package/build/mcp/capabilities/capabilities.d.ts.map +1 -0
  247. package/build/mcp/capabilities/capabilities.js +50 -0
  248. package/build/mcp/capabilities/capabilities.js.map +1 -0
  249. package/build/mcp/capabilities/index.d.ts +17 -0
  250. package/build/mcp/capabilities/index.d.ts.map +1 -0
  251. package/build/mcp/capabilities/index.js +20 -0
  252. package/build/mcp/capabilities/index.js.map +1 -0
  253. package/build/mcp/capabilities/prompts/define-prompt.d.ts +95 -0
  254. package/build/mcp/capabilities/prompts/define-prompt.d.ts.map +1 -0
  255. package/build/mcp/capabilities/prompts/define-prompt.js +109 -0
  256. package/build/mcp/capabilities/prompts/define-prompt.js.map +1 -0
  257. package/build/mcp/capabilities/prompts/index.d.ts +10 -0
  258. package/build/mcp/capabilities/prompts/index.d.ts.map +1 -0
  259. package/build/mcp/capabilities/prompts/index.js +10 -0
  260. package/build/mcp/capabilities/prompts/index.js.map +1 -0
  261. package/build/mcp/capabilities/registry/base-registry.d.ts +95 -0
  262. package/build/mcp/capabilities/registry/base-registry.d.ts.map +1 -0
  263. package/build/mcp/capabilities/registry/base-registry.js +149 -0
  264. package/build/mcp/capabilities/registry/base-registry.js.map +1 -0
  265. package/build/mcp/capabilities/registry/index.d.ts +16 -0
  266. package/build/mcp/capabilities/registry/index.d.ts.map +1 -0
  267. package/build/mcp/capabilities/registry/index.js +34 -0
  268. package/build/mcp/capabilities/registry/index.js.map +1 -0
  269. package/build/mcp/capabilities/registry/prompt-registry.d.ts +116 -0
  270. package/build/mcp/capabilities/registry/prompt-registry.d.ts.map +1 -0
  271. package/build/mcp/capabilities/registry/prompt-registry.js +232 -0
  272. package/build/mcp/capabilities/registry/prompt-registry.js.map +1 -0
  273. package/build/mcp/capabilities/registry/reset.d.ts +30 -0
  274. package/build/mcp/capabilities/registry/reset.d.ts.map +1 -0
  275. package/build/mcp/capabilities/registry/reset.js +48 -0
  276. package/build/mcp/capabilities/registry/reset.js.map +1 -0
  277. package/build/mcp/capabilities/registry/resource-registry.d.ts +152 -0
  278. package/build/mcp/capabilities/registry/resource-registry.d.ts.map +1 -0
  279. package/build/mcp/capabilities/registry/resource-registry.js +430 -0
  280. package/build/mcp/capabilities/registry/resource-registry.js.map +1 -0
  281. package/build/mcp/capabilities/registry/scope-enforcement.d.ts +48 -0
  282. package/build/mcp/capabilities/registry/scope-enforcement.d.ts.map +1 -0
  283. package/build/mcp/capabilities/registry/scope-enforcement.js +62 -0
  284. package/build/mcp/capabilities/registry/scope-enforcement.js.map +1 -0
  285. package/build/mcp/capabilities/registry/task-tool-registry.d.ts +96 -0
  286. package/build/mcp/capabilities/registry/task-tool-registry.d.ts.map +1 -0
  287. package/build/mcp/capabilities/registry/task-tool-registry.js +190 -0
  288. package/build/mcp/capabilities/registry/task-tool-registry.js.map +1 -0
  289. package/build/mcp/capabilities/registry/tool-registry.d.ts +100 -0
  290. package/build/mcp/capabilities/registry/tool-registry.d.ts.map +1 -0
  291. package/build/mcp/capabilities/registry/tool-registry.js +242 -0
  292. package/build/mcp/capabilities/registry/tool-registry.js.map +1 -0
  293. package/build/mcp/capabilities/resources/define-resource.d.ts +103 -0
  294. package/build/mcp/capabilities/resources/define-resource.d.ts.map +1 -0
  295. package/build/mcp/capabilities/resources/define-resource.js +137 -0
  296. package/build/mcp/capabilities/resources/define-resource.js.map +1 -0
  297. package/build/mcp/capabilities/resources/index.d.ts +10 -0
  298. package/build/mcp/capabilities/resources/index.d.ts.map +1 -0
  299. package/build/mcp/capabilities/resources/index.js +10 -0
  300. package/build/mcp/capabilities/resources/index.js.map +1 -0
  301. package/build/mcp/capabilities/server-capabilities.d.ts +33 -0
  302. package/build/mcp/capabilities/server-capabilities.d.ts.map +1 -0
  303. package/build/mcp/capabilities/server-capabilities.js +16 -0
  304. package/build/mcp/capabilities/server-capabilities.js.map +1 -0
  305. package/build/mcp/capabilities/tasks/define-task.d.ts +75 -0
  306. package/build/mcp/capabilities/tasks/define-task.d.ts.map +1 -0
  307. package/build/mcp/capabilities/tasks/define-task.js +93 -0
  308. package/build/mcp/capabilities/tasks/define-task.js.map +1 -0
  309. package/build/mcp/capabilities/tasks/index.d.ts +11 -0
  310. package/build/mcp/capabilities/tasks/index.d.ts.map +1 -0
  311. package/build/mcp/capabilities/tasks/index.js +11 -0
  312. package/build/mcp/capabilities/tasks/index.js.map +1 -0
  313. package/build/mcp/capabilities/tools/define-tool.d.ts +62 -0
  314. package/build/mcp/capabilities/tools/define-tool.d.ts.map +1 -0
  315. package/build/mcp/capabilities/tools/define-tool.js +73 -0
  316. package/build/mcp/capabilities/tools/define-tool.js.map +1 -0
  317. package/build/mcp/capabilities/tools/index.d.ts +10 -0
  318. package/build/mcp/capabilities/tools/index.d.ts.map +1 -0
  319. package/build/mcp/capabilities/tools/index.js +10 -0
  320. package/build/mcp/capabilities/tools/index.js.map +1 -0
  321. package/build/mcp/handlers/index.d.ts +19 -0
  322. package/build/mcp/handlers/index.d.ts.map +1 -0
  323. package/build/mcp/handlers/index.js +26 -0
  324. package/build/mcp/handlers/index.js.map +1 -0
  325. package/build/mcp/handlers/ping.d.ts +27 -0
  326. package/build/mcp/handlers/ping.d.ts.map +1 -0
  327. package/build/mcp/handlers/ping.js +61 -0
  328. package/build/mcp/handlers/ping.js.map +1 -0
  329. package/build/mcp/handlers/progress.d.ts +41 -0
  330. package/build/mcp/handlers/progress.d.ts.map +1 -0
  331. package/build/mcp/handlers/progress.js +79 -0
  332. package/build/mcp/handlers/progress.js.map +1 -0
  333. package/build/mcp/index.d.ts +28 -0
  334. package/build/mcp/index.d.ts.map +1 -0
  335. package/build/mcp/index.js +34 -0
  336. package/build/mcp/index.js.map +1 -0
  337. package/build/mcp/responses/helpers.d.ts +146 -0
  338. package/build/mcp/responses/helpers.d.ts.map +1 -0
  339. package/build/mcp/responses/helpers.js +197 -0
  340. package/build/mcp/responses/helpers.js.map +1 -0
  341. package/build/mcp/responses/index.d.ts +9 -0
  342. package/build/mcp/responses/index.d.ts.map +1 -0
  343. package/build/mcp/responses/index.js +12 -0
  344. package/build/mcp/responses/index.js.map +1 -0
  345. package/build/mcp/types/context.d.ts +371 -0
  346. package/build/mcp/types/context.d.ts.map +1 -0
  347. package/build/mcp/types/context.js +17 -0
  348. package/build/mcp/types/context.js.map +1 -0
  349. package/build/mcp/types/definition.d.ts +727 -0
  350. package/build/mcp/types/definition.d.ts.map +1 -0
  351. package/build/mcp/types/definition.js +29 -0
  352. package/build/mcp/types/definition.js.map +1 -0
  353. package/build/mcp/types/handler.d.ts +58 -0
  354. package/build/mcp/types/handler.d.ts.map +1 -0
  355. package/build/mcp/types/handler.js +10 -0
  356. package/build/mcp/types/handler.js.map +1 -0
  357. package/build/mcp/types/index.d.ts +21 -0
  358. package/build/mcp/types/index.d.ts.map +1 -0
  359. package/build/mcp/types/index.js +18 -0
  360. package/build/mcp/types/index.js.map +1 -0
  361. package/build/mcp/types/response.d.ts +79 -0
  362. package/build/mcp/types/response.d.ts.map +1 -0
  363. package/build/mcp/types/response.js +10 -0
  364. package/build/mcp/types/response.js.map +1 -0
  365. package/build/server/auth/auth-context.d.ts +52 -0
  366. package/build/server/auth/auth-context.d.ts.map +1 -0
  367. package/build/server/auth/auth-context.js +45 -0
  368. package/build/server/auth/auth-context.js.map +1 -0
  369. package/build/server/auth/guards.d.ts +72 -0
  370. package/build/server/auth/guards.d.ts.map +1 -0
  371. package/build/server/auth/guards.js +103 -0
  372. package/build/server/auth/guards.js.map +1 -0
  373. package/build/server/auth/index.d.ts +21 -0
  374. package/build/server/auth/index.d.ts.map +1 -0
  375. package/build/server/auth/index.js +20 -0
  376. package/build/server/auth/index.js.map +1 -0
  377. package/build/server/auth/oidc-discovery.d.ts +68 -0
  378. package/build/server/auth/oidc-discovery.d.ts.map +1 -0
  379. package/build/server/auth/oidc-discovery.js +234 -0
  380. package/build/server/auth/oidc-discovery.js.map +1 -0
  381. package/build/server/auth/oidc-provider.d.ts +96 -0
  382. package/build/server/auth/oidc-provider.d.ts.map +1 -0
  383. package/build/server/auth/oidc-provider.js +126 -0
  384. package/build/server/auth/oidc-provider.js.map +1 -0
  385. package/build/server/auth/types.d.ts +204 -0
  386. package/build/server/auth/types.d.ts.map +1 -0
  387. package/build/server/auth/types.js +29 -0
  388. package/build/server/auth/types.js.map +1 -0
  389. package/build/server/auth/upstream-provider.d.ts +161 -0
  390. package/build/server/auth/upstream-provider.d.ts.map +1 -0
  391. package/build/server/auth/upstream-provider.js +411 -0
  392. package/build/server/auth/upstream-provider.js.map +1 -0
  393. package/build/server/builder/constants.d.ts +45 -0
  394. package/build/server/builder/constants.d.ts.map +1 -0
  395. package/build/server/builder/constants.js +54 -0
  396. package/build/server/builder/constants.js.map +1 -0
  397. package/build/server/builder/index.d.ts +24 -0
  398. package/build/server/builder/index.d.ts.map +1 -0
  399. package/build/server/builder/index.js +25 -0
  400. package/build/server/builder/index.js.map +1 -0
  401. package/build/server/builder/primitive-collector.d.ts +24 -0
  402. package/build/server/builder/primitive-collector.d.ts.map +1 -0
  403. package/build/server/builder/primitive-collector.js +89 -0
  404. package/build/server/builder/primitive-collector.js.map +1 -0
  405. package/build/server/builder/server-builder.d.ts +53 -0
  406. package/build/server/builder/server-builder.d.ts.map +1 -0
  407. package/build/server/builder/server-builder.js +132 -0
  408. package/build/server/builder/server-builder.js.map +1 -0
  409. package/build/server/builder/types.d.ts +93 -0
  410. package/build/server/builder/types.d.ts.map +1 -0
  411. package/build/server/builder/types.js +25 -0
  412. package/build/server/builder/types.js.map +1 -0
  413. package/build/server/builder/validation.d.ts +36 -0
  414. package/build/server/builder/validation.d.ts.map +1 -0
  415. package/build/server/builder/validation.js +44 -0
  416. package/build/server/builder/validation.js.map +1 -0
  417. package/build/server/create-server.d.ts +57 -0
  418. package/build/server/create-server.d.ts.map +1 -0
  419. package/build/server/create-server.js +104 -0
  420. package/build/server/create-server.js.map +1 -0
  421. package/build/server/http/express-app.d.ts +103 -0
  422. package/build/server/http/express-app.d.ts.map +1 -0
  423. package/build/server/http/express-app.js +391 -0
  424. package/build/server/http/express-app.js.map +1 -0
  425. package/build/server/http/http-server.d.ts +67 -0
  426. package/build/server/http/http-server.d.ts.map +1 -0
  427. package/build/server/http/http-server.js +188 -0
  428. package/build/server/http/http-server.js.map +1 -0
  429. package/build/server/http/http-transport.d.ts +33 -0
  430. package/build/server/http/http-transport.d.ts.map +1 -0
  431. package/build/server/http/http-transport.js +84 -0
  432. package/build/server/http/http-transport.js.map +1 -0
  433. package/build/server/http/index.d.ts +15 -0
  434. package/build/server/http/index.d.ts.map +1 -0
  435. package/build/server/http/index.js +11 -0
  436. package/build/server/http/index.js.map +1 -0
  437. package/build/server/index.d.ts +25 -0
  438. package/build/server/index.d.ts.map +1 -0
  439. package/build/server/index.js +41 -0
  440. package/build/server/index.js.map +1 -0
  441. package/build/server/lifecycle.d.ts +114 -0
  442. package/build/server/lifecycle.d.ts.map +1 -0
  443. package/build/server/lifecycle.js +30 -0
  444. package/build/server/lifecycle.js.map +1 -0
  445. package/build/server/middleware/bearer-auth.d.ts +43 -0
  446. package/build/server/middleware/bearer-auth.d.ts.map +1 -0
  447. package/build/server/middleware/bearer-auth.js +75 -0
  448. package/build/server/middleware/bearer-auth.js.map +1 -0
  449. package/build/server/middleware/custom-header-auth.d.ts +40 -0
  450. package/build/server/middleware/custom-header-auth.d.ts.map +1 -0
  451. package/build/server/middleware/custom-header-auth.js +90 -0
  452. package/build/server/middleware/custom-header-auth.js.map +1 -0
  453. package/build/server/middleware/dns-rebinding.d.ts +25 -0
  454. package/build/server/middleware/dns-rebinding.d.ts.map +1 -0
  455. package/build/server/middleware/dns-rebinding.js +94 -0
  456. package/build/server/middleware/dns-rebinding.js.map +1 -0
  457. package/build/server/middleware/index.d.ts +69 -0
  458. package/build/server/middleware/index.d.ts.map +1 -0
  459. package/build/server/middleware/index.js +68 -0
  460. package/build/server/middleware/index.js.map +1 -0
  461. package/build/server/middleware/logging.d.ts +21 -0
  462. package/build/server/middleware/logging.d.ts.map +1 -0
  463. package/build/server/middleware/logging.js +36 -0
  464. package/build/server/middleware/logging.js.map +1 -0
  465. package/build/server/middleware/oauth-router.d.ts +50 -0
  466. package/build/server/middleware/oauth-router.d.ts.map +1 -0
  467. package/build/server/middleware/oauth-router.js +53 -0
  468. package/build/server/middleware/oauth-router.js.map +1 -0
  469. package/build/server/middleware/protocol-version.d.ts +13 -0
  470. package/build/server/middleware/protocol-version.d.ts.map +1 -0
  471. package/build/server/middleware/protocol-version.js +48 -0
  472. package/build/server/middleware/protocol-version.js.map +1 -0
  473. package/build/server/middleware/rate-limit.d.ts +47 -0
  474. package/build/server/middleware/rate-limit.d.ts.map +1 -0
  475. package/build/server/middleware/rate-limit.js +109 -0
  476. package/build/server/middleware/rate-limit.js.map +1 -0
  477. package/build/server/middleware/trust-proxy.d.ts +37 -0
  478. package/build/server/middleware/trust-proxy.d.ts.map +1 -0
  479. package/build/server/middleware/trust-proxy.js +154 -0
  480. package/build/server/middleware/trust-proxy.js.map +1 -0
  481. package/build/server/option-overrides.d.ts +25 -0
  482. package/build/server/option-overrides.d.ts.map +1 -0
  483. package/build/server/option-overrides.js +85 -0
  484. package/build/server/option-overrides.js.map +1 -0
  485. package/build/server/routes/health.d.ts +87 -0
  486. package/build/server/routes/health.d.ts.map +1 -0
  487. package/build/server/routes/health.js +183 -0
  488. package/build/server/routes/health.js.map +1 -0
  489. package/build/server/routes/index.d.ts +16 -0
  490. package/build/server/routes/index.d.ts.map +1 -0
  491. package/build/server/routes/index.js +18 -0
  492. package/build/server/routes/index.js.map +1 -0
  493. package/build/server/routes/metrics.d.ts +40 -0
  494. package/build/server/routes/metrics.d.ts.map +1 -0
  495. package/build/server/routes/metrics.js +81 -0
  496. package/build/server/routes/metrics.js.map +1 -0
  497. package/build/server/routes/oauth-router.d.ts +50 -0
  498. package/build/server/routes/oauth-router.d.ts.map +1 -0
  499. package/build/server/routes/oauth-router.js +53 -0
  500. package/build/server/routes/oauth-router.js.map +1 -0
  501. package/build/server/routes/readiness-status.d.ts +25 -0
  502. package/build/server/routes/readiness-status.d.ts.map +1 -0
  503. package/build/server/routes/readiness-status.js +27 -0
  504. package/build/server/routes/readiness-status.js.map +1 -0
  505. package/build/server/routes/sse-router.d.ts +43 -0
  506. package/build/server/routes/sse-router.d.ts.map +1 -0
  507. package/build/server/routes/sse-router.js +92 -0
  508. package/build/server/routes/sse-router.js.map +1 -0
  509. package/build/server/routes/streamable-http-router.d.ts +36 -0
  510. package/build/server/routes/streamable-http-router.d.ts.map +1 -0
  511. package/build/server/routes/streamable-http-router.js +59 -0
  512. package/build/server/routes/streamable-http-router.js.map +1 -0
  513. package/build/server/server-instance.d.ts +185 -0
  514. package/build/server/server-instance.d.ts.map +1 -0
  515. package/build/server/server-instance.js +615 -0
  516. package/build/server/server-instance.js.map +1 -0
  517. package/build/server/server-options.d.ts +411 -0
  518. package/build/server/server-options.d.ts.map +1 -0
  519. package/build/server/server-options.js +17 -0
  520. package/build/server/server-options.js.map +1 -0
  521. package/build/server/session/in-memory-store.d.ts +128 -0
  522. package/build/server/session/in-memory-store.d.ts.map +1 -0
  523. package/build/server/session/in-memory-store.js +312 -0
  524. package/build/server/session/in-memory-store.js.map +1 -0
  525. package/build/server/session/index.d.ts +43 -0
  526. package/build/server/session/index.d.ts.map +1 -0
  527. package/build/server/session/index.js +47 -0
  528. package/build/server/session/index.js.map +1 -0
  529. package/build/server/session/mcp-session.d.ts +210 -0
  530. package/build/server/session/mcp-session.d.ts.map +1 -0
  531. package/build/server/session/mcp-session.js +428 -0
  532. package/build/server/session/mcp-session.js.map +1 -0
  533. package/build/server/session/session-factory.d.ts +119 -0
  534. package/build/server/session/session-factory.d.ts.map +1 -0
  535. package/build/server/session/session-factory.js +131 -0
  536. package/build/server/session/session-factory.js.map +1 -0
  537. package/build/server/session/session-housekeeper.d.ts +100 -0
  538. package/build/server/session/session-housekeeper.d.ts.map +1 -0
  539. package/build/server/session/session-housekeeper.js +217 -0
  540. package/build/server/session/session-housekeeper.js.map +1 -0
  541. package/build/server/session/session-manager.d.ts +227 -0
  542. package/build/server/session/session-manager.d.ts.map +1 -0
  543. package/build/server/session/session-manager.js +282 -0
  544. package/build/server/session/session-manager.js.map +1 -0
  545. package/build/server/session/session-store.d.ts +95 -0
  546. package/build/server/session/session-store.d.ts.map +1 -0
  547. package/build/server/session/session-store.js +13 -0
  548. package/build/server/session/session-store.js.map +1 -0
  549. package/build/server/session/session.d.ts +132 -0
  550. package/build/server/session/session.d.ts.map +1 -0
  551. package/build/server/session/session.js +61 -0
  552. package/build/server/session/session.js.map +1 -0
  553. package/build/server/transport/constants.d.ts +85 -0
  554. package/build/server/transport/constants.d.ts.map +1 -0
  555. package/build/server/transport/constants.js +103 -0
  556. package/build/server/transport/constants.js.map +1 -0
  557. package/build/server/transport/index.d.ts +21 -0
  558. package/build/server/transport/index.d.ts.map +1 -0
  559. package/build/server/transport/index.js +28 -0
  560. package/build/server/transport/index.js.map +1 -0
  561. package/build/server/transport/sse/handler.d.ts +46 -0
  562. package/build/server/transport/sse/handler.d.ts.map +1 -0
  563. package/build/server/transport/sse/handler.js +189 -0
  564. package/build/server/transport/sse/handler.js.map +1 -0
  565. package/build/server/transport/sse/index.d.ts +15 -0
  566. package/build/server/transport/sse/index.d.ts.map +1 -0
  567. package/build/server/transport/sse/index.js +14 -0
  568. package/build/server/transport/sse/index.js.map +1 -0
  569. package/build/server/transport/sse/transport.d.ts +94 -0
  570. package/build/server/transport/sse/transport.d.ts.map +1 -0
  571. package/build/server/transport/sse/transport.js +175 -0
  572. package/build/server/transport/sse/transport.js.map +1 -0
  573. package/build/server/transport/stdio-transport.d.ts +23 -0
  574. package/build/server/transport/stdio-transport.d.ts.map +1 -0
  575. package/build/server/transport/stdio-transport.js +59 -0
  576. package/build/server/transport/stdio-transport.js.map +1 -0
  577. package/build/server/transport/streamable-http/index.d.ts +9 -0
  578. package/build/server/transport/streamable-http/index.d.ts.map +1 -0
  579. package/build/server/transport/streamable-http/index.js +9 -0
  580. package/build/server/transport/streamable-http/index.js.map +1 -0
  581. package/build/server/transport/streamable-http/stateful-handler.d.ts +41 -0
  582. package/build/server/transport/streamable-http/stateful-handler.d.ts.map +1 -0
  583. package/build/server/transport/streamable-http/stateful-handler.js +264 -0
  584. package/build/server/transport/streamable-http/stateful-handler.js.map +1 -0
  585. package/build/server/transport/streamable-http/stateless-handler.d.ts +28 -0
  586. package/build/server/transport/streamable-http/stateless-handler.d.ts.map +1 -0
  587. package/build/server/transport/streamable-http/stateless-handler.js +81 -0
  588. package/build/server/transport/streamable-http/stateless-handler.js.map +1 -0
  589. package/build/server/transport/streamable-http/transport.d.ts +110 -0
  590. package/build/server/transport/streamable-http/transport.d.ts.map +1 -0
  591. package/build/server/transport/streamable-http/transport.js +118 -0
  592. package/build/server/transport/streamable-http/transport.js.map +1 -0
  593. package/build/server/transport/transport-context.d.ts +67 -0
  594. package/build/server/transport/transport-context.d.ts.map +1 -0
  595. package/build/server/transport/transport-context.js +38 -0
  596. package/build/server/transport/transport-context.js.map +1 -0
  597. package/build/server/transport/types.d.ts +56 -0
  598. package/build/server/transport/types.d.ts.map +1 -0
  599. package/build/server/transport/types.js +11 -0
  600. package/build/server/transport/types.js.map +1 -0
  601. package/build/server/transport-options.d.ts +248 -0
  602. package/build/server/transport-options.d.ts.map +1 -0
  603. package/build/server/transport-options.js +18 -0
  604. package/build/server/transport-options.js.map +1 -0
  605. package/build/server/types.d.ts +172 -0
  606. package/build/server/types.d.ts.map +1 -0
  607. package/build/server/types.js +9 -0
  608. package/build/server/types.js.map +1 -0
  609. package/build/telemetry/connection-telemetry-bridge.d.ts +30 -0
  610. package/build/telemetry/connection-telemetry-bridge.d.ts.map +1 -0
  611. package/build/telemetry/connection-telemetry-bridge.js +54 -0
  612. package/build/telemetry/connection-telemetry-bridge.js.map +1 -0
  613. package/build/telemetry/core/config.d.ts +38 -0
  614. package/build/telemetry/core/config.d.ts.map +1 -0
  615. package/build/telemetry/core/config.js +54 -0
  616. package/build/telemetry/core/config.js.map +1 -0
  617. package/build/telemetry/core/constants.d.ts +183 -0
  618. package/build/telemetry/core/constants.d.ts.map +1 -0
  619. package/build/telemetry/core/constants.js +207 -0
  620. package/build/telemetry/core/constants.js.map +1 -0
  621. package/build/telemetry/core/diag-logger.d.ts +35 -0
  622. package/build/telemetry/core/diag-logger.d.ts.map +1 -0
  623. package/build/telemetry/core/diag-logger.js +54 -0
  624. package/build/telemetry/core/diag-logger.js.map +1 -0
  625. package/build/telemetry/core/index.d.ts +12 -0
  626. package/build/telemetry/core/index.d.ts.map +1 -0
  627. package/build/telemetry/core/index.js +32 -0
  628. package/build/telemetry/core/index.js.map +1 -0
  629. package/build/telemetry/core/types.d.ts +106 -0
  630. package/build/telemetry/core/types.d.ts.map +1 -0
  631. package/build/telemetry/core/types.js +10 -0
  632. package/build/telemetry/core/types.js.map +1 -0
  633. package/build/telemetry/index.d.ts +59 -0
  634. package/build/telemetry/index.d.ts.map +1 -0
  635. package/build/telemetry/index.js +79 -0
  636. package/build/telemetry/index.js.map +1 -0
  637. package/build/telemetry/metrics.d.ts +127 -0
  638. package/build/telemetry/metrics.d.ts.map +1 -0
  639. package/build/telemetry/metrics.js +337 -0
  640. package/build/telemetry/metrics.js.map +1 -0
  641. package/build/telemetry/sdk.d.ts +110 -0
  642. package/build/telemetry/sdk.d.ts.map +1 -0
  643. package/build/telemetry/sdk.js +547 -0
  644. package/build/telemetry/sdk.js.map +1 -0
  645. package/build/telemetry/tracing.d.ts +78 -0
  646. package/build/telemetry/tracing.d.ts.map +1 -0
  647. package/build/telemetry/tracing.js +257 -0
  648. package/build/telemetry/tracing.js.map +1 -0
  649. package/build/utils/env-helpers.d.ts +46 -0
  650. package/build/utils/env-helpers.d.ts.map +1 -0
  651. package/build/utils/env-helpers.js +54 -0
  652. package/build/utils/env-helpers.js.map +1 -0
  653. package/build/utils/index.d.ts +14 -0
  654. package/build/utils/index.d.ts.map +1 -0
  655. package/build/utils/index.js +19 -0
  656. package/build/utils/index.js.map +1 -0
  657. package/build/utils/sensitive-keys.d.ts +48 -0
  658. package/build/utils/sensitive-keys.d.ts.map +1 -0
  659. package/build/utils/sensitive-keys.js +131 -0
  660. package/build/utils/sensitive-keys.js.map +1 -0
  661. package/build/utils/string-helpers.d.ts +126 -0
  662. package/build/utils/string-helpers.d.ts.map +1 -0
  663. package/build/utils/string-helpers.js +189 -0
  664. package/build/utils/string-helpers.js.map +1 -0
  665. package/build/utils/validation.d.ts +84 -0
  666. package/build/utils/validation.d.ts.map +1 -0
  667. package/build/utils/validation.js +111 -0
  668. package/build/utils/validation.js.map +1 -0
  669. package/build/utils/zod-helpers.d.ts +92 -0
  670. package/build/utils/zod-helpers.d.ts.map +1 -0
  671. package/build/utils/zod-helpers.js +120 -0
  672. package/build/utils/zod-helpers.js.map +1 -0
  673. package/package.json +133 -0
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Operation Error Classes
3
+ *
4
+ * Errors related to operation execution:
5
+ * - OperationError: Generic operation failures
6
+ * - OperationCancelledError: Request cancellation
7
+ *
8
+ * @module errors/categories/operation
9
+ */
10
+ import { AppError } from "../core/index.js";
11
+ import type { BaseErrorOptions } from "../core/index.js";
12
+ /**
13
+ * Error for failed operations.
14
+ *
15
+ * Use this for operations that fail due to business logic
16
+ * or external factors (not validation or internal errors).
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * throw new OperationError('Failed to process request', {
21
+ * operation: 'processData',
22
+ * context: { dataId: '123' }
23
+ * });
24
+ *
25
+ * // Using factory methods
26
+ * throw OperationError.failed('processData', 'timeout exceeded');
27
+ * ```
28
+ */
29
+ export declare class OperationError extends AppError {
30
+ /** The operation that failed */
31
+ readonly operation?: string | undefined;
32
+ constructor(message: string, options?: Omit<BaseErrorOptions, "code"> & {
33
+ operation?: string | undefined;
34
+ });
35
+ /**
36
+ * Create an OperationError for a failed operation.
37
+ */
38
+ static failed(operation: string, reason?: string): OperationError;
39
+ /**
40
+ * Create an OperationError for a timeout.
41
+ */
42
+ static timeout(operation: string, timeoutMs: number): OperationError;
43
+ /**
44
+ * Create an OperationError for an unavailable operation.
45
+ */
46
+ static unavailable(operation: string): OperationError;
47
+ }
48
+ /**
49
+ * Error thrown when an operation is cancelled.
50
+ *
51
+ * Used primarily with AbortSignal/AbortController for
52
+ * cancellable operations.
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * signal.addEventListener('abort', () => {
57
+ * throw new OperationCancelledError('User cancelled the request', requestId);
58
+ * });
59
+ *
60
+ * // Check if error is cancellation
61
+ * if (error instanceof OperationCancelledError) {
62
+ * // Handle gracefully
63
+ * }
64
+ * ```
65
+ */
66
+ export declare class OperationCancelledError extends AppError {
67
+ /** The ID of the cancelled request */
68
+ readonly requestId?: string | number | undefined;
69
+ /** The reason for cancellation */
70
+ readonly cancelReason?: string | undefined;
71
+ constructor(message: string, requestId?: string | number, options?: Omit<BaseErrorOptions, "code"> & {
72
+ cancelReason?: string | undefined;
73
+ });
74
+ /**
75
+ * Create from a cancelled request.
76
+ */
77
+ static fromRequest(requestId: string | number, reason?: string): OperationCancelledError;
78
+ /**
79
+ * Create from an AbortSignal.
80
+ */
81
+ static fromAbortSignal(signal: AbortSignal, requestId?: string | number): OperationCancelledError;
82
+ }
83
+ //# sourceMappingURL=operation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../src/errors/categories/operation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,QAAQ,EAAc,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAMzD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,gCAAgC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG;QACxC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC3B;IAqBR;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc;IASjE;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc;IASpE;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc;CAOtD;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,uBAAwB,SAAQ,QAAQ;IACnD,sCAAsC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAEjD,kCAAkC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGzC,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAC3B,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG;QACxC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC9B;IAuBR;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,uBAAuB;IAQxF;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,uBAAuB;CAQlG"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Operation Error Classes
3
+ *
4
+ * Errors related to operation execution:
5
+ * - OperationError: Generic operation failures
6
+ * - OperationCancelledError: Request cancellation
7
+ *
8
+ * @module errors/categories/operation
9
+ */
10
+ import { ErrorCode } from "@modelcontextprotocol/sdk/types.js";
11
+ import { AppError, ErrorCodes } from "../core/index.js";
12
+ // ============================================================================
13
+ // Operation Error
14
+ // ============================================================================
15
+ /**
16
+ * Error for failed operations.
17
+ *
18
+ * Use this for operations that fail due to business logic
19
+ * or external factors (not validation or internal errors).
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * throw new OperationError('Failed to process request', {
24
+ * operation: 'processData',
25
+ * context: { dataId: '123' }
26
+ * });
27
+ *
28
+ * // Using factory methods
29
+ * throw OperationError.failed('processData', 'timeout exceeded');
30
+ * ```
31
+ */
32
+ export class OperationError extends AppError {
33
+ /** The operation that failed */
34
+ operation;
35
+ constructor(message, options = {}) {
36
+ super(message, {
37
+ code: ErrorCodes.OPERATION_ERROR,
38
+ statusCode: options.statusCode || 500,
39
+ mcpCode: ErrorCode.InternalError,
40
+ cause: options.cause,
41
+ recoveryHint: options.recoveryHint,
42
+ context: {
43
+ ...options.context,
44
+ operation: options.operation,
45
+ },
46
+ });
47
+ this.operation = options.operation;
48
+ }
49
+ // ─────────────────────────────────────────────────────────────────────────
50
+ // Factory Methods
51
+ // ─────────────────────────────────────────────────────────────────────────
52
+ /**
53
+ * Create an OperationError for a failed operation.
54
+ */
55
+ static failed(operation, reason) {
56
+ const message = reason ? `Operation '${operation}' failed: ${reason}` : `Operation '${operation}' failed`;
57
+ return new OperationError(message, {
58
+ operation,
59
+ recoveryHint: reason ? `Operation failed: ${reason}. Please try again.` : "Please try the operation again.",
60
+ });
61
+ }
62
+ /**
63
+ * Create an OperationError for a timeout.
64
+ */
65
+ static timeout(operation, timeoutMs) {
66
+ return new OperationError(`Operation '${operation}' timed out after ${timeoutMs}ms`, {
67
+ operation,
68
+ statusCode: 504,
69
+ context: { timeoutMs },
70
+ recoveryHint: `Operation '${operation}' timed out after ${timeoutMs}ms. Try again or increase timeout.`,
71
+ });
72
+ }
73
+ /**
74
+ * Create an OperationError for an unavailable operation.
75
+ */
76
+ static unavailable(operation) {
77
+ return new OperationError(`Operation '${operation}' is currently unavailable`, {
78
+ operation,
79
+ statusCode: 503,
80
+ recoveryHint: `Operation '${operation}' is currently unavailable. Please try again later.`,
81
+ });
82
+ }
83
+ }
84
+ // ============================================================================
85
+ // Operation Cancelled Error
86
+ // ============================================================================
87
+ /**
88
+ * Error thrown when an operation is cancelled.
89
+ *
90
+ * Used primarily with AbortSignal/AbortController for
91
+ * cancellable operations.
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * signal.addEventListener('abort', () => {
96
+ * throw new OperationCancelledError('User cancelled the request', requestId);
97
+ * });
98
+ *
99
+ * // Check if error is cancellation
100
+ * if (error instanceof OperationCancelledError) {
101
+ * // Handle gracefully
102
+ * }
103
+ * ```
104
+ */
105
+ export class OperationCancelledError extends AppError {
106
+ /** The ID of the cancelled request */
107
+ requestId;
108
+ /** The reason for cancellation */
109
+ cancelReason;
110
+ constructor(message, requestId, options = {}) {
111
+ super(message, {
112
+ code: ErrorCodes.OPERATION_CANCELLED,
113
+ statusCode: 499, // Client Closed Request
114
+ mcpCode: ErrorCode.InternalError,
115
+ cause: options.cause,
116
+ recoveryHint: options.recoveryHint || "The operation was cancelled. You may retry if needed.",
117
+ context: {
118
+ ...options.context,
119
+ requestId,
120
+ cancelReason: options.cancelReason,
121
+ },
122
+ });
123
+ this.requestId = requestId;
124
+ this.cancelReason = options.cancelReason;
125
+ }
126
+ // ─────────────────────────────────────────────────────────────────────────
127
+ // Factory Methods
128
+ // ─────────────────────────────────────────────────────────────────────────
129
+ /**
130
+ * Create from a cancelled request.
131
+ */
132
+ static fromRequest(requestId, reason) {
133
+ const message = reason ? `Request ${requestId} was cancelled: ${reason}` : `Request ${requestId} was cancelled`;
134
+ return new OperationCancelledError(message, requestId, {
135
+ cancelReason: reason,
136
+ });
137
+ }
138
+ /**
139
+ * Create from an AbortSignal.
140
+ */
141
+ static fromAbortSignal(signal, requestId) {
142
+ const reason = signal.reason instanceof Error ? signal.reason.message : String(signal.reason || "Aborted");
143
+ return new OperationCancelledError(`Operation aborted: ${reason}`, requestId, {
144
+ cancelReason: reason,
145
+ cause: signal.reason instanceof Error ? signal.reason : undefined,
146
+ });
147
+ }
148
+ }
149
+ //# sourceMappingURL=operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../../src/errors/categories/operation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * MCP Protocol Error
3
+ *
4
+ * Error for MCP protocol violations (invalid JSON-RPC, missing method, etc.)
5
+ *
6
+ * @module errors/categories/protocol
7
+ */
8
+ import { AppError } from "../core/index.js";
9
+ import type { BaseErrorOptions } from "../core/index.js";
10
+ /**
11
+ * Error thrown for MCP protocol violations.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * throw McpProtocolError.invalidJson();
16
+ * throw McpProtocolError.invalidRequest('Missing required field');
17
+ * ```
18
+ */
19
+ export declare class McpProtocolError extends AppError {
20
+ /** JSON-RPC error code */
21
+ readonly jsonRpcCode: number;
22
+ constructor(message: string, jsonRpcCode?: number, options?: Omit<BaseErrorOptions, "code">);
23
+ /**
24
+ * Create a generic invalid request error.
25
+ */
26
+ static invalidRequest(reason: string): McpProtocolError;
27
+ /**
28
+ * Create a method not found error.
29
+ */
30
+ static methodNotFound(method: string): McpProtocolError;
31
+ /**
32
+ * Create an invalid params error.
33
+ */
34
+ static invalidParams(reason: string): McpProtocolError;
35
+ /**
36
+ * Create a parse error.
37
+ */
38
+ static parseError(reason: string): McpProtocolError;
39
+ /**
40
+ * Create an error for invalid JSON.
41
+ */
42
+ static invalidJson(): McpProtocolError;
43
+ /**
44
+ * Create an error for invalid JSON-RPC version.
45
+ */
46
+ static invalidJsonRpc(): McpProtocolError;
47
+ /**
48
+ * Create an error for missing method field.
49
+ */
50
+ static missingMethod(): McpProtocolError;
51
+ /**
52
+ * Create an error for invalid batch request.
53
+ */
54
+ static invalidBatch(): McpProtocolError;
55
+ /**
56
+ * Create an error for invalid content type.
57
+ */
58
+ static invalidContentType(): McpProtocolError;
59
+ /**
60
+ * Create an error for missing Accept header.
61
+ */
62
+ static missingAccept(): McpProtocolError;
63
+ /**
64
+ * Create an error for cancelled request.
65
+ */
66
+ static requestCancelled(): McpProtocolError;
67
+ }
68
+ //# sourceMappingURL=protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/errors/categories/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,QAAQ,EAA4C,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAMzD;;;;;;;;GAQG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,0BAA0B;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAM;IAoB/F;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAMvD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAOvD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAMtD;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAUnD;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,gBAAgB;IAMtC;;OAEG;IACH,MAAM,CAAC,cAAc,IAAI,gBAAgB;IAMzC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,gBAAgB;IAMxC;;OAEG;IACH,MAAM,CAAC,YAAY,IAAI,gBAAgB;IAMvC;;OAEG;IACH,MAAM,CAAC,kBAAkB,IAAI,gBAAgB;IAM7C;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,gBAAgB;IAMxC;;OAEG;IACH,MAAM,CAAC,gBAAgB,IAAI,gBAAgB;CAK5C"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * MCP Protocol Error
3
+ *
4
+ * Error for MCP protocol violations (invalid JSON-RPC, missing method, etc.)
5
+ *
6
+ * @module errors/categories/protocol
7
+ */
8
+ import { ErrorCode } from "@modelcontextprotocol/sdk/types.js";
9
+ import { AppError, ErrorCodes, HttpStatus, JsonRpcErrorCode } from "../core/index.js";
10
+ // ============================================================================
11
+ // MCP Protocol Error
12
+ // ============================================================================
13
+ /**
14
+ * Error thrown for MCP protocol violations.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * throw McpProtocolError.invalidJson();
19
+ * throw McpProtocolError.invalidRequest('Missing required field');
20
+ * ```
21
+ */
22
+ export class McpProtocolError extends AppError {
23
+ /** JSON-RPC error code */
24
+ jsonRpcCode;
25
+ constructor(message, jsonRpcCode, options = {}) {
26
+ super(message, {
27
+ code: ErrorCodes.INVALID_REQUEST,
28
+ statusCode: HttpStatus.BAD_REQUEST,
29
+ mcpCode: ErrorCode.InvalidRequest,
30
+ cause: options.cause,
31
+ recoveryHint: options.recoveryHint,
32
+ context: {
33
+ ...options.context,
34
+ jsonRpcCode: jsonRpcCode ?? JsonRpcErrorCode.INVALID_REQUEST,
35
+ },
36
+ });
37
+ this.jsonRpcCode = jsonRpcCode ?? JsonRpcErrorCode.INVALID_REQUEST;
38
+ }
39
+ // ─────────────────────────────────────────────────────────────────────────
40
+ // Generic Factory Methods
41
+ // ─────────────────────────────────────────────────────────────────────────
42
+ /**
43
+ * Create a generic invalid request error.
44
+ */
45
+ static invalidRequest(reason) {
46
+ return new McpProtocolError(`Invalid request: ${reason}`, JsonRpcErrorCode.INVALID_REQUEST, {
47
+ recoveryHint: "Check the request format and required fields.",
48
+ });
49
+ }
50
+ /**
51
+ * Create a method not found error.
52
+ */
53
+ static methodNotFound(method) {
54
+ return new McpProtocolError(`Method not found: ${method}`, JsonRpcErrorCode.METHOD_NOT_FOUND, {
55
+ context: { method },
56
+ recoveryHint: `The method '${method}' does not exist. Check the method name.`,
57
+ });
58
+ }
59
+ /**
60
+ * Create an invalid params error.
61
+ */
62
+ static invalidParams(reason) {
63
+ return new McpProtocolError(`Invalid params: ${reason}`, JsonRpcErrorCode.INVALID_PARAMS, {
64
+ recoveryHint: "Check the method parameters against the expected schema.",
65
+ });
66
+ }
67
+ /**
68
+ * Create a parse error.
69
+ */
70
+ static parseError(reason) {
71
+ return new McpProtocolError(`Parse error: ${reason}`, JsonRpcErrorCode.PARSE_ERROR, {
72
+ recoveryHint: "Ensure the request body contains valid JSON syntax.",
73
+ });
74
+ }
75
+ // ─────────────────────────────────────────────────────────────────────────
76
+ // Specific Factory Methods
77
+ // ─────────────────────────────────────────────────────────────────────────
78
+ /**
79
+ * Create an error for invalid JSON.
80
+ */
81
+ static invalidJson() {
82
+ return new McpProtocolError("Invalid JSON", JsonRpcErrorCode.PARSE_ERROR, {
83
+ recoveryHint: "Ensure the request body contains valid JSON syntax.",
84
+ });
85
+ }
86
+ /**
87
+ * Create an error for invalid JSON-RPC version.
88
+ */
89
+ static invalidJsonRpc() {
90
+ return new McpProtocolError("Invalid JSON-RPC version", JsonRpcErrorCode.INVALID_REQUEST, {
91
+ recoveryHint: 'Ensure the request includes "jsonrpc": "2.0" field.',
92
+ });
93
+ }
94
+ /**
95
+ * Create an error for missing method field.
96
+ */
97
+ static missingMethod() {
98
+ return new McpProtocolError("Missing method field", JsonRpcErrorCode.INVALID_REQUEST, {
99
+ recoveryHint: 'Include a "method" field in the JSON-RPC request.',
100
+ });
101
+ }
102
+ /**
103
+ * Create an error for invalid batch request.
104
+ */
105
+ static invalidBatch() {
106
+ return new McpProtocolError("Invalid batch request: array must not be empty", JsonRpcErrorCode.INVALID_REQUEST, {
107
+ recoveryHint: "Batch requests must be a non-empty JSON array.",
108
+ });
109
+ }
110
+ /**
111
+ * Create an error for invalid content type.
112
+ */
113
+ static invalidContentType() {
114
+ return new McpProtocolError("Content-Type must be application/json", JsonRpcErrorCode.INVALID_REQUEST, {
115
+ recoveryHint: 'Set Content-Type header to "application/json".',
116
+ });
117
+ }
118
+ /**
119
+ * Create an error for missing Accept header.
120
+ */
121
+ static missingAccept() {
122
+ return new McpProtocolError("Missing Accept header", JsonRpcErrorCode.INVALID_REQUEST, {
123
+ recoveryHint: "Include an Accept header with supported content types.",
124
+ });
125
+ }
126
+ /**
127
+ * Create an error for cancelled request.
128
+ */
129
+ static requestCancelled() {
130
+ return new McpProtocolError("Request was cancelled", JsonRpcErrorCode.REQUEST_CANCELLED, {
131
+ recoveryHint: "The request was cancelled. Retry the operation if needed.",
132
+ });
133
+ }
134
+ }
135
+ //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/errors/categories/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Session Error
3
+ *
4
+ * Error for MCP session management issues (not found, expired, limit reached).
5
+ *
6
+ * @module errors/categories/session
7
+ */
8
+ import { AppError } from "../core/index.js";
9
+ import type { BaseErrorOptions } from "../core/index.js";
10
+ /**
11
+ * Error thrown for session management issues.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * throw SessionError.required();
16
+ * throw SessionError.sessionNotFound('sess-123');
17
+ * ```
18
+ */
19
+ export declare class SessionError extends AppError {
20
+ /** The session ID if applicable */
21
+ readonly sessionId?: string | undefined;
22
+ constructor(message: string, options?: Omit<BaseErrorOptions, "code"> & {
23
+ sessionId?: string | undefined;
24
+ });
25
+ /**
26
+ * Create an error for missing session ID.
27
+ */
28
+ static required(): SessionError;
29
+ /**
30
+ * Create an error for session not found (with ID).
31
+ */
32
+ static sessionNotFound(sessionId: string): SessionError;
33
+ /**
34
+ * Create an error for expired session.
35
+ */
36
+ static expired(): SessionError;
37
+ /**
38
+ * Create an error for expired session (with ID).
39
+ */
40
+ static sessionExpired(sessionId: string): SessionError;
41
+ /**
42
+ * Create an error for session limit reached.
43
+ */
44
+ static sessionLimitReached(maxSessions: number): SessionError;
45
+ /**
46
+ * Create an error for invalid session state.
47
+ */
48
+ static invalidState(sessionId: string, currentState: string, expectedState: string): SessionError;
49
+ }
50
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/errors/categories/session.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,QAAQ,EAA0B,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAMzD;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,QAAQ;IACxC,mCAAmC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG;QACxC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC3B;IAqBR;;OAEG;IACH,MAAM,CAAC,QAAQ,IAAI,YAAY;IAM/B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY;IAOvD;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,YAAY;IAM9B;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY;IAOtD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY;IAQ7D;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,YAAY;CAUlG"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Session Error
3
+ *
4
+ * Error for MCP session management issues (not found, expired, limit reached).
5
+ *
6
+ * @module errors/categories/session
7
+ */
8
+ import { ErrorCode } from "@modelcontextprotocol/sdk/types.js";
9
+ import { AppError, ErrorCodes, HttpStatus } from "../core/index.js";
10
+ // ============================================================================
11
+ // Session Error
12
+ // ============================================================================
13
+ /**
14
+ * Error thrown for session management issues.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * throw SessionError.required();
19
+ * throw SessionError.sessionNotFound('sess-123');
20
+ * ```
21
+ */
22
+ export class SessionError extends AppError {
23
+ /** The session ID if applicable */
24
+ sessionId;
25
+ constructor(message, options = {}) {
26
+ super(message, {
27
+ code: ErrorCodes.INVALID_REQUEST,
28
+ statusCode: options.statusCode ?? HttpStatus.BAD_REQUEST,
29
+ mcpCode: ErrorCode.InvalidRequest,
30
+ cause: options.cause,
31
+ context: {
32
+ ...options.context,
33
+ sessionId: options.sessionId,
34
+ },
35
+ recoveryHint: options.recoveryHint,
36
+ });
37
+ this.sessionId = options.sessionId;
38
+ }
39
+ // ─────────────────────────────────────────────────────────────────────────
40
+ // Factory Methods
41
+ // ─────────────────────────────────────────────────────────────────────────
42
+ /**
43
+ * Create an error for missing session ID.
44
+ */
45
+ static required() {
46
+ return new SessionError("Mcp-Session-Id header required", {
47
+ recoveryHint: "Include the Mcp-Session-Id header in your request.",
48
+ });
49
+ }
50
+ /**
51
+ * Create an error for session not found (with ID).
52
+ */
53
+ static sessionNotFound(sessionId) {
54
+ return new SessionError(`Session '${sessionId}' not found`, {
55
+ sessionId,
56
+ recoveryHint: "Start a new session by connecting to the SSE endpoint.",
57
+ });
58
+ }
59
+ /**
60
+ * Create an error for expired session.
61
+ */
62
+ static expired() {
63
+ return new SessionError("Session has expired. Please re-initialize.", {
64
+ recoveryHint: "Your session has expired. Reconnect to establish a new session.",
65
+ });
66
+ }
67
+ /**
68
+ * Create an error for expired session (with ID).
69
+ */
70
+ static sessionExpired(sessionId) {
71
+ return new SessionError(`Session '${sessionId}' has expired`, {
72
+ sessionId,
73
+ recoveryHint: "Your session has expired. Reconnect to establish a new session.",
74
+ });
75
+ }
76
+ /**
77
+ * Create an error for session limit reached.
78
+ */
79
+ static sessionLimitReached(maxSessions) {
80
+ return new SessionError(`Session limit reached: maximum ${maxSessions} sessions allowed`, {
81
+ statusCode: HttpStatus.SERVICE_UNAVAILABLE,
82
+ context: { maxSessions },
83
+ recoveryHint: "Wait a moment and try again, or close unused sessions.",
84
+ });
85
+ }
86
+ /**
87
+ * Create an error for invalid session state.
88
+ */
89
+ static invalidState(sessionId, currentState, expectedState) {
90
+ return new SessionError(`Session '${sessionId}' is in invalid state '${currentState}', expected '${expectedState}'`, {
91
+ sessionId,
92
+ context: { currentState, expectedState },
93
+ recoveryHint: `Session is in '${currentState}' state but needs to be '${expectedState}'.`,
94
+ });
95
+ }
96
+ }
97
+ //# sourceMappingURL=session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/errors/categories/session.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGpE,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E;;;;;;;;GAQG;AACH,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,mCAAmC;IAC1B,SAAS,CAAsB;IAExC,YACE,OAAe,EACf,UAEI,EAAE;QAEN,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,UAAU,CAAC,eAAe;YAChC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC,WAAW;YACxD,OAAO,EAAE,SAAS,CAAC,cAAc;YACjC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE;gBACP,GAAG,OAAO,CAAC,OAAO;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B;YACD,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACrC,CAAC;IAED,4EAA4E;IAC5E,kBAAkB;IAClB,4EAA4E;IAE5E;;OAEG;IACH,MAAM,CAAC,QAAQ;QACb,OAAO,IAAI,YAAY,CAAC,gCAAgC,EAAE;YACxD,YAAY,EAAE,oDAAoD;SACnE,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,SAAiB;QACtC,OAAO,IAAI,YAAY,CAAC,YAAY,SAAS,aAAa,EAAE;YAC1D,SAAS;YACT,YAAY,EAAE,wDAAwD;SACvE,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,YAAY,CAAC,4CAA4C,EAAE;YACpE,YAAY,EAAE,iEAAiE;SAChF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,SAAiB;QACrC,OAAO,IAAI,YAAY,CAAC,YAAY,SAAS,eAAe,EAAE;YAC5D,SAAS;YACT,YAAY,EAAE,iEAAiE;SAChF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,WAAmB;QAC5C,OAAO,IAAI,YAAY,CAAC,kCAAkC,WAAW,mBAAmB,EAAE;YACxF,UAAU,EAAE,UAAU,CAAC,mBAAmB;YAC1C,OAAO,EAAE,EAAE,WAAW,EAAE;YACxB,YAAY,EAAE,wDAAwD;SACvE,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,SAAiB,EAAE,YAAoB,EAAE,aAAqB;QAChF,OAAO,IAAI,YAAY,CACrB,YAAY,SAAS,0BAA0B,YAAY,gBAAgB,aAAa,GAAG,EAC3F;YACE,SAAS;YACT,OAAO,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE;YACxC,YAAY,EAAE,kBAAkB,YAAY,4BAA4B,aAAa,IAAI;SAC1F,CACF,CAAC;IACJ,CAAC;CACF"}