@toa.io/extensions.exposition 1.0.0-alpha.282 → 1.0.0-alpha.284

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 (667) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/components/exposition.octets/manifest.toa.yaml +11 -0
  3. package/components/exposition.octets/types/index.d.ts +3 -0
  4. package/components/exposition.octets/types/toa.d.ts +41 -0
  5. package/components/identity.bans/operations/transit.js +1 -1
  6. package/components/identity.bans/tsconfig.json +1 -1
  7. package/components/identity.bans/tsconfig.tsbuildinfo +1 -1
  8. package/components/identity.bans/types/index.d.ts +3 -0
  9. package/components/identity.bans/types/toa.d.ts +34 -0
  10. package/components/identity.basic/manifest.toa.yaml +13 -2
  11. package/components/identity.basic/operations/add.js +1 -1
  12. package/components/identity.basic/operations/authenticate.js +1 -1
  13. package/components/identity.basic/operations/check.js +1 -1
  14. package/components/identity.basic/operations/delete.js +1 -1
  15. package/components/identity.basic/operations/incept.js +18 -2
  16. package/components/identity.basic/operations/info.js +1 -1
  17. package/components/identity.basic/operations/lib/credentials.js +1 -1
  18. package/components/identity.basic/operations/transit.js +3 -2
  19. package/components/identity.basic/source/add.ts +3 -3
  20. package/components/identity.basic/source/authenticate.ts +2 -2
  21. package/components/identity.basic/source/check.ts +1 -1
  22. package/components/identity.basic/source/delete.ts +2 -2
  23. package/components/identity.basic/source/incept.ts +31 -3
  24. package/components/identity.basic/source/info.ts +1 -1
  25. package/components/identity.basic/source/transit.ts +6 -4
  26. package/components/identity.basic/tsconfig.json +1 -1
  27. package/components/identity.basic/tsconfig.tsbuildinfo +1 -1
  28. package/components/identity.basic/types/index.d.ts +22 -0
  29. package/components/identity.basic/types/toa.d.ts +121 -0
  30. package/components/identity.clients/manifest.toa.yaml +243 -0
  31. package/components/identity.clients/operations/describe.js +44 -0
  32. package/components/identity.clients/operations/lib/Context.js +2 -0
  33. package/components/identity.clients/operations/lib/Entity.js +2 -0
  34. package/components/identity.clients/operations/lib/canonical.js +24 -0
  35. package/components/identity.clients/operations/lib/cimd.js +86 -0
  36. package/components/identity.clients/operations/lib/errors.js +5 -0
  37. package/components/identity.clients/operations/lib/index.js +7 -0
  38. package/components/identity.clients/operations/lib/redirect.js +32 -0
  39. package/components/identity.clients/operations/register.js +84 -0
  40. package/components/identity.clients/source/describe.ts +65 -0
  41. package/components/identity.clients/source/lib/Context.ts +38 -0
  42. package/components/identity.clients/source/lib/Entity.ts +31 -0
  43. package/components/identity.clients/source/lib/canonical.test.ts +43 -0
  44. package/components/identity.clients/source/lib/canonical.ts +27 -0
  45. package/components/identity.clients/source/lib/cimd.test.ts +120 -0
  46. package/components/identity.clients/source/lib/cimd.ts +107 -0
  47. package/components/identity.clients/source/lib/errors.ts +4 -0
  48. package/components/identity.clients/source/lib/index.ts +6 -0
  49. package/components/identity.clients/source/lib/redirect.test.ts +41 -0
  50. package/components/identity.clients/source/lib/redirect.ts +35 -0
  51. package/components/identity.clients/source/register.ts +125 -0
  52. package/components/identity.clients/tsconfig.json +10 -0
  53. package/components/identity.clients/tsconfig.tsbuildinfo +1 -0
  54. package/components/identity.clients/types/index.d.ts +3 -0
  55. package/components/identity.clients/types/toa.d.ts +109 -0
  56. package/components/identity.credentials/operations/list.js +1 -1
  57. package/components/identity.credentials/source/list.ts +2 -1
  58. package/components/identity.credentials/tsconfig.json +4 -2
  59. package/components/identity.credentials/tsconfig.tsbuildinfo +1 -1
  60. package/components/identity.credentials/types/index.d.ts +3 -0
  61. package/components/identity.credentials/types/toa.d.ts +30 -0
  62. package/components/identity.federation/manifest.toa.yaml +37 -1
  63. package/components/identity.federation/operations/authenticate.js +7 -3
  64. package/components/identity.federation/operations/create.js +1 -1
  65. package/components/identity.federation/operations/decode.js +1 -1
  66. package/components/identity.federation/operations/delete.js +1 -1
  67. package/components/identity.federation/operations/incept.js +6 -2
  68. package/components/identity.federation/operations/lib/Configuration.js +1 -1
  69. package/components/identity.federation/operations/lib/Ctx.js +1 -1
  70. package/components/identity.federation/operations/lib/Payload.js +1 -1
  71. package/components/identity.federation/operations/lib/decode.js +23 -9
  72. package/components/identity.federation/operations/lib/discovery.js +1 -1
  73. package/components/identity.federation/operations/lib/errors.js +5 -1
  74. package/components/identity.federation/operations/lib/exchange.js +12 -7
  75. package/components/identity.federation/operations/lib/index.js +2 -1
  76. package/components/identity.federation/operations/lib/jose.js +1 -1
  77. package/components/identity.federation/operations/lib/principal.js +14 -0
  78. package/components/identity.federation/operations/lib/resolve.js +1 -1
  79. package/components/identity.federation/operations/list.js +1 -1
  80. package/components/identity.federation/operations/types/Scheme.js +1 -1
  81. package/components/identity.federation/operations/types/configuration.js +1 -1
  82. package/components/identity.federation/operations/types/context.js +1 -1
  83. package/components/identity.federation/operations/types/entity.js +1 -1
  84. package/components/identity.federation/operations/types/index.js +1 -1
  85. package/components/identity.federation/source/authenticate.ts +9 -3
  86. package/components/identity.federation/source/incept.ts +7 -1
  87. package/components/identity.federation/source/lib/Ctx.ts +2 -2
  88. package/components/identity.federation/source/lib/decode.ts +25 -9
  89. package/components/identity.federation/source/lib/errors.ts +5 -0
  90. package/components/identity.federation/source/lib/exchange.ts +11 -7
  91. package/components/identity.federation/source/lib/index.ts +1 -0
  92. package/components/identity.federation/source/lib/principal.ts +17 -0
  93. package/components/identity.federation/source/types/configuration.ts +1 -1
  94. package/components/identity.federation/source/types/context.ts +6 -2
  95. package/components/identity.federation/tsconfig.json +4 -2
  96. package/components/identity.federation/tsconfig.tsbuildinfo +1 -1
  97. package/components/identity.federation/types/index.d.ts +3 -0
  98. package/components/identity.federation/types/toa.d.ts +127 -0
  99. package/components/identity.grants/manifest.toa.yaml +245 -0
  100. package/components/identity.grants/operations/authorize.js +54 -0
  101. package/components/identity.grants/operations/exchange.js +89 -0
  102. package/components/identity.grants/operations/lib/code.js +30 -0
  103. package/components/identity.grants/operations/lib/identify.js +15 -0
  104. package/components/identity.grants/operations/lib/index.js +3 -0
  105. package/components/identity.grants/operations/list.js +18 -0
  106. package/components/identity.grants/operations/revoke.js +25 -0
  107. package/components/identity.grants/source/authorize.ts +90 -0
  108. package/components/identity.grants/source/exchange.ts +130 -0
  109. package/components/identity.grants/source/lib/code.ts +39 -0
  110. package/components/identity.grants/source/lib/identify.ts +16 -0
  111. package/components/identity.grants/source/lib/index.ts +3 -0
  112. package/components/identity.grants/source/list.ts +28 -0
  113. package/components/identity.grants/source/revoke.ts +38 -0
  114. package/components/identity.grants/tsconfig.json +10 -0
  115. package/components/identity.grants/tsconfig.tsbuildinfo +1 -0
  116. package/components/identity.grants/types/index.d.ts +60 -0
  117. package/components/identity.grants/types/toa.d.ts +108 -0
  118. package/components/identity.keys/manifest.toa.yaml +1 -0
  119. package/components/identity.keys/operations/create.js +1 -1
  120. package/components/identity.keys/operations/disable.js +1 -1
  121. package/components/identity.keys/operations/revoke.js +1 -1
  122. package/components/identity.keys/source/create.ts +1 -1
  123. package/components/identity.keys/source/revoke.ts +1 -1
  124. package/components/identity.keys/tsconfig.json +1 -1
  125. package/components/identity.keys/tsconfig.tsbuildinfo +1 -1
  126. package/components/identity.keys/types/index.d.ts +3 -0
  127. package/components/identity.keys/types/toa.d.ts +47 -0
  128. package/components/identity.otp/operations/authenticate.js +1 -1
  129. package/components/identity.otp/operations/issue.js +1 -1
  130. package/components/identity.otp/operations/lib/Context.js +1 -1
  131. package/components/identity.otp/operations/lib/Entity.js +1 -1
  132. package/components/identity.otp/operations/lib/index.js +1 -1
  133. package/components/identity.otp/source/lib/Context.ts +4 -2
  134. package/components/identity.otp/tsconfig.json +1 -1
  135. package/components/identity.otp/tsconfig.tsbuildinfo +1 -1
  136. package/components/identity.otp/types/index.d.ts +3 -0
  137. package/components/identity.otp/types/toa.d.ts +56 -0
  138. package/components/identity.passkeys/manifest.toa.yaml +3 -0
  139. package/components/identity.passkeys/operations/authenticate.js +1 -1
  140. package/components/identity.passkeys/operations/challenge.js +1 -1
  141. package/components/identity.passkeys/operations/create.js +1 -1
  142. package/components/identity.passkeys/operations/delete.js +1 -1
  143. package/components/identity.passkeys/operations/lib/const.js +1 -1
  144. package/components/identity.passkeys/operations/list.js +1 -1
  145. package/components/identity.passkeys/operations/types/Configuration.js +1 -1
  146. package/components/identity.passkeys/operations/types/Context.js +1 -1
  147. package/components/identity.passkeys/operations/types/Passkey.js +1 -1
  148. package/components/identity.passkeys/operations/types/index.js +1 -1
  149. package/components/identity.passkeys/operations/use.js +1 -1
  150. package/components/identity.passkeys/source/authenticate.ts +1 -1
  151. package/components/identity.passkeys/source/challenge.ts +1 -1
  152. package/components/identity.passkeys/source/create.ts +1 -1
  153. package/components/identity.passkeys/source/types/Context.ts +2 -1
  154. package/components/identity.passkeys/source/use.ts +1 -1
  155. package/components/identity.passkeys/tsconfig.json +1 -1
  156. package/components/identity.passkeys/tsconfig.tsbuildinfo +1 -1
  157. package/components/identity.passkeys/types/index.d.ts +3 -0
  158. package/components/identity.passkeys/types/toa.d.ts +120 -0
  159. package/components/identity.roles/operations/grant.js +1 -1
  160. package/components/identity.roles/operations/lib/Entity.js +1 -1
  161. package/components/identity.roles/operations/list.js +1 -1
  162. package/components/identity.roles/operations/principal.js +29 -5
  163. package/components/identity.roles/source/principal.ts +33 -5
  164. package/components/identity.roles/tsconfig.json +1 -1
  165. package/components/identity.roles/tsconfig.tsbuildinfo +1 -1
  166. package/components/identity.roles/types/index.d.ts +3 -0
  167. package/components/identity.roles/types/toa.d.ts +43 -0
  168. package/components/identity.tokens/manifest.toa.yaml +34 -3
  169. package/components/identity.tokens/operations/authenticate.js +9 -1
  170. package/components/identity.tokens/operations/decrypt.js +3 -3
  171. package/components/identity.tokens/operations/encrypt.js +1 -1
  172. package/components/identity.tokens/operations/issue.js +3 -2
  173. package/components/identity.tokens/operations/lib/form.js +24 -0
  174. package/components/identity.tokens/operations/lib/index.js +2 -2
  175. package/components/identity.tokens/operations/lib/jose.js +1 -1
  176. package/components/identity.tokens/operations/lib/key.js +1 -1
  177. package/components/identity.tokens/operations/lib/pad.js +1 -1
  178. package/components/identity.tokens/operations/revoke.js +1 -1
  179. package/components/identity.tokens/source/authenticate.test.ts +8 -5
  180. package/components/identity.tokens/source/authenticate.ts +12 -1
  181. package/components/identity.tokens/source/decrypt.test.ts +1 -1
  182. package/components/identity.tokens/source/decrypt.ts +4 -3
  183. package/components/identity.tokens/source/encrypt.test.ts +1 -1
  184. package/components/identity.tokens/source/encrypt.ts +2 -1
  185. package/components/identity.tokens/source/issue.test.ts +71 -0
  186. package/components/identity.tokens/source/issue.ts +4 -2
  187. package/components/identity.tokens/source/lib/form.test.ts +25 -0
  188. package/components/identity.tokens/source/lib/form.ts +31 -0
  189. package/components/identity.tokens/source/lib/index.ts +2 -1
  190. package/components/identity.tokens/tsconfig.json +1 -1
  191. package/components/identity.tokens/tsconfig.tsbuildinfo +1 -1
  192. package/components/identity.tokens/types/index.d.ts +61 -0
  193. package/components/identity.tokens/types/toa.d.ts +113 -0
  194. package/documentation/access.md +13 -0
  195. package/documentation/cache.md +10 -1
  196. package/documentation/components.md +3 -0
  197. package/documentation/consent.md +101 -0
  198. package/documentation/identity.md +3 -1
  199. package/documentation/introspection.md +13 -5
  200. package/documentation/io.md +42 -2
  201. package/documentation/map.md +8 -0
  202. package/documentation/mcp.md +180 -0
  203. package/documentation/oauth.md +180 -0
  204. package/documentation/protocol.md +4 -0
  205. package/documentation/rpc.md +140 -0
  206. package/documentation/tree.md +3 -0
  207. package/features/auth.bearer.feature +120 -0
  208. package/features/cache.feature +46 -0
  209. package/features/identity.basic.feature +44 -0
  210. package/features/identity.federation.feature +2 -5
  211. package/features/introspection.feature +333 -0
  212. package/features/mcp.feature +687 -0
  213. package/features/oauth.clients.feature +195 -0
  214. package/features/oauth.discovery.feature +164 -0
  215. package/features/oauth.grants.feature +299 -0
  216. package/features/octets.cloudinary.feature +1 -0
  217. package/features/rpc.feature +429 -0
  218. package/features/steps/Cloudinary.ts +13 -0
  219. package/features/steps/Components.ts +0 -4
  220. package/features/steps/Gateway.ts +23 -2
  221. package/features/steps/Parameters.ts +22 -7
  222. package/features/steps/Realtime.ts +3 -0
  223. package/features/steps/components/echo/manifest.toa.yaml +3 -0
  224. package/features/steps/components/octets.tester/manifest.toa.yaml +2 -0
  225. package/features/steps/components/octets.tester/operations/redirect.js +6 -1
  226. package/features/steps/components/pots/manifest.toa.yaml +2 -0
  227. package/features/steps/components/users/manifest.toa.yaml +1 -0
  228. package/package.json +8 -6
  229. package/readme.md +6 -0
  230. package/schemas/annotation.cos.yaml +63 -0
  231. package/schemas/call.cos.yaml +18 -0
  232. package/source/Annotation.ts +54 -0
  233. package/source/Directive.test.ts +15 -15
  234. package/source/Directive.ts +77 -9
  235. package/source/Endpoint.test.ts +67 -0
  236. package/source/Endpoint.ts +31 -11
  237. package/source/Factory.ts +6 -2
  238. package/source/Gateway.ts +73 -11
  239. package/source/HTTP/Context.ts +7 -0
  240. package/source/HTTP/Server.ts +15 -5
  241. package/source/HTTP/exceptions.ts +2 -2
  242. package/source/HTTP/formats/form.ts +21 -0
  243. package/source/HTTP/formats/index.ts +17 -2
  244. package/source/HTTP/messages.test.ts +25 -1
  245. package/source/HTTP/messages.ts +20 -4
  246. package/source/Interception.ts +8 -2
  247. package/source/Introspection.ts +102 -0
  248. package/source/MCP/Server.ts +275 -0
  249. package/source/MCP/discover.ts +52 -0
  250. package/source/MCP/errors.ts +81 -0
  251. package/source/MCP/index.ts +1 -0
  252. package/source/MCP/schema.test.ts +85 -0
  253. package/source/MCP/schema.ts +87 -0
  254. package/source/MCP/tools.ts +156 -0
  255. package/source/MCP/types.ts +81 -0
  256. package/source/Query.ts +48 -8
  257. package/source/RPC/Context.ts +78 -0
  258. package/source/RPC/Dispatcher.ts +130 -0
  259. package/source/RPC/errors.test.ts +52 -0
  260. package/source/RPC/errors.ts +83 -0
  261. package/source/RPC/index.ts +1 -0
  262. package/source/RPC/names.test.ts +122 -0
  263. package/source/RPC/names.ts +182 -0
  264. package/source/RPC/types.ts +34 -0
  265. package/source/RTD/Directives.ts +52 -2
  266. package/source/RTD/Endpoint.ts +2 -1
  267. package/source/RTD/Method.ts +14 -11
  268. package/source/RTD/Node.ts +38 -7
  269. package/source/RTD/Route.ts +30 -3
  270. package/source/RTD/Tree.ts +37 -1
  271. package/source/RTD/expiration.test.ts +1 -1
  272. package/source/RTD/walk.test.ts +110 -0
  273. package/source/const.ts +15 -0
  274. package/source/deployment.ts +11 -1
  275. package/source/directives/auth/Anonymous.test.ts +38 -0
  276. package/source/directives/auth/Anonymous.ts +12 -0
  277. package/source/directives/auth/Anyone.ts +4 -0
  278. package/source/directives/auth/Authorization.ts +108 -22
  279. package/source/directives/auth/Delegate.test.ts +36 -0
  280. package/source/directives/auth/Delegate.ts +14 -0
  281. package/source/directives/auth/Echo.ts +5 -0
  282. package/source/directives/auth/Incept.ts +16 -10
  283. package/source/directives/auth/Role.ts +13 -0
  284. package/source/directives/auth/Rule.ts +29 -0
  285. package/source/directives/auth/Scheme.ts +5 -0
  286. package/source/directives/auth/schemes.test.ts +8 -4
  287. package/source/directives/auth/schemes.ts +22 -9
  288. package/source/directives/auth/types.ts +26 -2
  289. package/source/directives/cache/Cache.ts +14 -5
  290. package/source/directives/cache/Control.ts +0 -3
  291. package/source/directives/dev/Development.ts +1 -1
  292. package/source/directives/flow/Fetch.ts +1 -1
  293. package/source/directives/flow/Flow.ts +1 -1
  294. package/source/directives/index.ts +5 -2
  295. package/source/directives/io/Directive.ts +1 -1
  296. package/source/directives/io/IO.ts +34 -3
  297. package/source/directives/io/Input.ts +3 -2
  298. package/source/directives/io/Output.ts +10 -4
  299. package/source/directives/io/Status.test.ts +84 -0
  300. package/source/directives/io/Status.ts +46 -0
  301. package/source/directives/io/Throttle.ts +1 -1
  302. package/source/directives/io/lib/throttle/Quotas.ts +2 -2
  303. package/source/directives/map/Headers.ts +11 -0
  304. package/source/directives/map/Map.ts +10 -1
  305. package/source/directives/map/Mapping.ts +23 -0
  306. package/source/directives/map/Segments.ts +12 -0
  307. package/source/directives/mcp/MCP.ts +33 -0
  308. package/source/directives/mcp/Tool.test.ts +66 -0
  309. package/source/directives/mcp/Tool.ts +28 -0
  310. package/source/directives/mcp/index.ts +6 -0
  311. package/source/directives/oauth/Discovery.ts +70 -0
  312. package/source/directives/oauth/documents.ts +113 -0
  313. package/source/directives/oauth/index.ts +3 -0
  314. package/source/directives/octets/Delete.ts +1 -1
  315. package/source/directives/octets/Get.ts +1 -1
  316. package/source/directives/octets/Octets.ts +1 -1
  317. package/source/directives/octets/Workflow.ts +1 -1
  318. package/source/directives/octets/workflows/Execution.ts +1 -1
  319. package/source/directives/require/Directive.ts +1 -1
  320. package/source/directives/require/Headers.ts +1 -1
  321. package/source/directives/require/Require.ts +2 -2
  322. package/source/index.ts +6 -0
  323. package/source/octets.d.ts +17 -0
  324. package/source/schemas.ts +2 -0
  325. package/source/userland.ts +47 -0
  326. package/transpiled/Annotation.d.ts +41 -0
  327. package/transpiled/Directive.d.ts +18 -1
  328. package/transpiled/Directive.js +50 -6
  329. package/transpiled/Directive.js.map +1 -1
  330. package/transpiled/Endpoint.d.ts +9 -0
  331. package/transpiled/Endpoint.js +27 -11
  332. package/transpiled/Endpoint.js.map +1 -1
  333. package/transpiled/Factory.js +6 -2
  334. package/transpiled/Factory.js.map +1 -1
  335. package/transpiled/Gateway.d.ts +19 -2
  336. package/transpiled/Gateway.js +51 -9
  337. package/transpiled/Gateway.js.map +1 -1
  338. package/transpiled/HTTP/Context.d.ts +6 -0
  339. package/transpiled/HTTP/Context.js +6 -0
  340. package/transpiled/HTTP/Context.js.map +1 -1
  341. package/transpiled/HTTP/Server.d.ts +8 -1
  342. package/transpiled/HTTP/Server.js +4 -3
  343. package/transpiled/HTTP/Server.js.map +1 -1
  344. package/transpiled/HTTP/exceptions.d.ts +1 -1
  345. package/transpiled/HTTP/exceptions.js +2 -2
  346. package/transpiled/HTTP/exceptions.js.map +1 -1
  347. package/transpiled/HTTP/formats/form.d.ts +9 -0
  348. package/transpiled/HTTP/formats/form.js +18 -0
  349. package/transpiled/HTTP/formats/form.js.map +1 -0
  350. package/transpiled/HTTP/formats/index.d.ts +10 -2
  351. package/transpiled/HTTP/formats/index.js +10 -0
  352. package/transpiled/HTTP/formats/index.js.map +1 -1
  353. package/transpiled/HTTP/messages.d.ts +12 -0
  354. package/transpiled/HTTP/messages.js +12 -4
  355. package/transpiled/HTTP/messages.js.map +1 -1
  356. package/transpiled/Interception.d.ts +4 -1
  357. package/transpiled/Interception.js +4 -2
  358. package/transpiled/Interception.js.map +1 -1
  359. package/transpiled/Introspection.d.ts +40 -0
  360. package/transpiled/Introspection.js +50 -1
  361. package/transpiled/Introspection.js.map +1 -1
  362. package/transpiled/MCP/Server.d.ts +41 -0
  363. package/transpiled/MCP/Server.js +180 -0
  364. package/transpiled/MCP/Server.js.map +1 -0
  365. package/transpiled/MCP/discover.d.ts +13 -0
  366. package/transpiled/MCP/discover.js +29 -0
  367. package/transpiled/MCP/discover.js.map +1 -0
  368. package/transpiled/MCP/errors.d.ts +24 -0
  369. package/transpiled/MCP/errors.js +67 -0
  370. package/transpiled/MCP/errors.js.map +1 -0
  371. package/transpiled/MCP/index.d.ts +1 -0
  372. package/transpiled/MCP/index.js +2 -0
  373. package/transpiled/MCP/index.js.map +1 -0
  374. package/transpiled/MCP/schema.d.ts +18 -0
  375. package/transpiled/MCP/schema.js +64 -0
  376. package/transpiled/MCP/schema.js.map +1 -0
  377. package/transpiled/MCP/tools.d.ts +31 -0
  378. package/transpiled/MCP/tools.js +121 -0
  379. package/transpiled/MCP/tools.js.map +1 -0
  380. package/transpiled/MCP/types.d.ts +64 -0
  381. package/transpiled/MCP/types.js +13 -0
  382. package/transpiled/MCP/types.js.map +1 -0
  383. package/transpiled/Query.d.ts +7 -0
  384. package/transpiled/Query.js +38 -7
  385. package/transpiled/Query.js.map +1 -1
  386. package/transpiled/RPC/Context.d.ts +11 -0
  387. package/transpiled/RPC/Context.js +63 -0
  388. package/transpiled/RPC/Context.js.map +1 -0
  389. package/transpiled/RPC/Dispatcher.d.ts +19 -0
  390. package/transpiled/RPC/Dispatcher.js +100 -0
  391. package/transpiled/RPC/Dispatcher.js.map +1 -0
  392. package/transpiled/RPC/errors.d.ts +18 -0
  393. package/transpiled/RPC/errors.js +67 -0
  394. package/transpiled/RPC/errors.js.map +1 -0
  395. package/transpiled/RPC/index.d.ts +1 -0
  396. package/transpiled/RPC/index.js +2 -0
  397. package/transpiled/RPC/index.js.map +1 -0
  398. package/transpiled/RPC/names.d.ts +30 -0
  399. package/transpiled/RPC/names.js +121 -0
  400. package/transpiled/RPC/names.js.map +1 -0
  401. package/transpiled/RPC/types.d.ts +27 -0
  402. package/transpiled/RPC/types.js +8 -0
  403. package/transpiled/RPC/types.js.map +1 -0
  404. package/transpiled/RTD/Directives.d.ts +41 -2
  405. package/transpiled/RTD/Endpoint.d.ts +2 -1
  406. package/transpiled/RTD/Method.d.ts +8 -3
  407. package/transpiled/RTD/Method.js +12 -10
  408. package/transpiled/RTD/Method.js.map +1 -1
  409. package/transpiled/RTD/Node.d.ts +20 -2
  410. package/transpiled/RTD/Node.js +22 -4
  411. package/transpiled/RTD/Node.js.map +1 -1
  412. package/transpiled/RTD/Route.d.ts +2 -1
  413. package/transpiled/RTD/Route.js +27 -2
  414. package/transpiled/RTD/Route.js.map +1 -1
  415. package/transpiled/RTD/Tree.d.ts +3 -1
  416. package/transpiled/RTD/Tree.js +26 -0
  417. package/transpiled/RTD/Tree.js.map +1 -1
  418. package/transpiled/const.d.ts +12 -0
  419. package/transpiled/const.js +12 -0
  420. package/transpiled/const.js.map +1 -1
  421. package/transpiled/deployment.js +6 -0
  422. package/transpiled/deployment.js.map +1 -1
  423. package/transpiled/directives/auth/Anonymous.d.ts +6 -0
  424. package/transpiled/directives/auth/Anonymous.js +10 -0
  425. package/transpiled/directives/auth/Anonymous.js.map +1 -1
  426. package/transpiled/directives/auth/Anyone.d.ts +1 -0
  427. package/transpiled/directives/auth/Anyone.js +3 -0
  428. package/transpiled/directives/auth/Anyone.js.map +1 -1
  429. package/transpiled/directives/auth/Authorization.d.ts +28 -2
  430. package/transpiled/directives/auth/Authorization.js +87 -19
  431. package/transpiled/directives/auth/Authorization.js.map +1 -1
  432. package/transpiled/directives/auth/Delegate.d.ts +5 -0
  433. package/transpiled/directives/auth/Delegate.js +10 -0
  434. package/transpiled/directives/auth/Delegate.js.map +1 -1
  435. package/transpiled/directives/auth/Echo.d.ts +2 -0
  436. package/transpiled/directives/auth/Echo.js +4 -0
  437. package/transpiled/directives/auth/Echo.js.map +1 -1
  438. package/transpiled/directives/auth/Incept.d.ts +1 -1
  439. package/transpiled/directives/auth/Incept.js +13 -8
  440. package/transpiled/directives/auth/Incept.js.map +1 -1
  441. package/transpiled/directives/auth/Role.d.ts +2 -0
  442. package/transpiled/directives/auth/Role.js +9 -0
  443. package/transpiled/directives/auth/Role.js.map +1 -1
  444. package/transpiled/directives/auth/Rule.d.ts +5 -0
  445. package/transpiled/directives/auth/Rule.js +20 -0
  446. package/transpiled/directives/auth/Rule.js.map +1 -1
  447. package/transpiled/directives/auth/Scheme.d.ts +2 -0
  448. package/transpiled/directives/auth/Scheme.js +4 -0
  449. package/transpiled/directives/auth/Scheme.js.map +1 -1
  450. package/transpiled/directives/auth/schemes.d.ts +16 -4
  451. package/transpiled/directives/auth/schemes.js +20 -8
  452. package/transpiled/directives/auth/schemes.js.map +1 -1
  453. package/transpiled/directives/auth/types.d.ts +20 -2
  454. package/transpiled/directives/cache/Cache.d.ts +1 -1
  455. package/transpiled/directives/cache/Cache.js +10 -3
  456. package/transpiled/directives/cache/Cache.js.map +1 -1
  457. package/transpiled/directives/cache/Control.js +0 -2
  458. package/transpiled/directives/cache/Control.js.map +1 -1
  459. package/transpiled/directives/dev/Development.d.ts +1 -1
  460. package/transpiled/directives/dev/Development.js +1 -1
  461. package/transpiled/directives/dev/Development.js.map +1 -1
  462. package/transpiled/directives/flow/Flow.d.ts +1 -1
  463. package/transpiled/directives/flow/Flow.js +1 -1
  464. package/transpiled/directives/flow/Flow.js.map +1 -1
  465. package/transpiled/directives/index.js +4 -2
  466. package/transpiled/directives/index.js.map +1 -1
  467. package/transpiled/directives/io/Directive.d.ts +1 -1
  468. package/transpiled/directives/io/IO.d.ts +7 -1
  469. package/transpiled/directives/io/IO.js +25 -3
  470. package/transpiled/directives/io/IO.js.map +1 -1
  471. package/transpiled/directives/io/Input.d.ts +3 -2
  472. package/transpiled/directives/io/Input.js +2 -1
  473. package/transpiled/directives/io/Input.js.map +1 -1
  474. package/transpiled/directives/io/Output.d.ts +5 -3
  475. package/transpiled/directives/io/Output.js +8 -3
  476. package/transpiled/directives/io/Output.js.map +1 -1
  477. package/transpiled/directives/io/Status.d.ts +19 -0
  478. package/transpiled/directives/io/Status.js +34 -0
  479. package/transpiled/directives/io/Status.js.map +1 -0
  480. package/transpiled/directives/io/Throttle.d.ts +1 -1
  481. package/transpiled/directives/io/Throttle.js +1 -1
  482. package/transpiled/directives/io/Throttle.js.map +1 -1
  483. package/transpiled/directives/io/lib/throttle/Quotas.d.ts +1 -1
  484. package/transpiled/directives/io/lib/throttle/Quotas.js +2 -2
  485. package/transpiled/directives/io/lib/throttle/Quotas.js.map +1 -1
  486. package/transpiled/directives/map/Headers.d.ts +2 -0
  487. package/transpiled/directives/map/Headers.js +8 -0
  488. package/transpiled/directives/map/Headers.js.map +1 -1
  489. package/transpiled/directives/map/Map.d.ts +3 -1
  490. package/transpiled/directives/map/Map.js +7 -1
  491. package/transpiled/directives/map/Map.js.map +1 -1
  492. package/transpiled/directives/map/Mapping.d.ts +13 -0
  493. package/transpiled/directives/map/Mapping.js +20 -0
  494. package/transpiled/directives/map/Mapping.js.map +1 -1
  495. package/transpiled/directives/map/Segments.d.ts +3 -0
  496. package/transpiled/directives/map/Segments.js +9 -0
  497. package/transpiled/directives/map/Segments.js.map +1 -1
  498. package/transpiled/directives/mcp/MCP.d.ts +15 -0
  499. package/transpiled/directives/mcp/MCP.js +23 -0
  500. package/transpiled/directives/mcp/MCP.js.map +1 -0
  501. package/transpiled/directives/mcp/Tool.d.ts +13 -0
  502. package/transpiled/directives/mcp/Tool.js +23 -0
  503. package/transpiled/directives/mcp/Tool.js.map +1 -0
  504. package/transpiled/directives/mcp/index.d.ts +4 -0
  505. package/transpiled/directives/mcp/index.js +4 -0
  506. package/transpiled/directives/mcp/index.js.map +1 -0
  507. package/transpiled/directives/oauth/Discovery.d.ts +23 -0
  508. package/transpiled/directives/oauth/Discovery.js +55 -0
  509. package/transpiled/directives/oauth/Discovery.js.map +1 -0
  510. package/transpiled/directives/oauth/documents.d.ts +9 -0
  511. package/transpiled/directives/oauth/documents.js +82 -0
  512. package/transpiled/directives/oauth/documents.js.map +1 -0
  513. package/transpiled/directives/oauth/index.d.ts +2 -0
  514. package/transpiled/directives/oauth/index.js +3 -0
  515. package/transpiled/directives/oauth/index.js.map +1 -0
  516. package/transpiled/directives/octets/Octets.d.ts +1 -1
  517. package/transpiled/directives/octets/Octets.js +1 -1
  518. package/transpiled/directives/octets/Octets.js.map +1 -1
  519. package/transpiled/directives/require/Directive.d.ts +1 -1
  520. package/transpiled/directives/require/Headers.d.ts +1 -1
  521. package/transpiled/directives/require/Headers.js +1 -1
  522. package/transpiled/directives/require/Headers.js.map +1 -1
  523. package/transpiled/directives/require/Require.d.ts +1 -1
  524. package/transpiled/directives/require/Require.js +2 -2
  525. package/transpiled/directives/require/Require.js.map +1 -1
  526. package/transpiled/index.d.ts +2 -0
  527. package/transpiled/schemas.d.ts +2 -0
  528. package/transpiled/schemas.js +1 -0
  529. package/transpiled/schemas.js.map +1 -1
  530. package/transpiled/userland.d.ts +39 -0
  531. package/transpiled/userland.js +7 -0
  532. package/transpiled/userland.js.map +1 -0
  533. package/tsconfig.tsbuildinfo +1 -1
  534. package/components/identity.bans/operations/transit.d.ts +0 -14
  535. package/components/identity.bans/operations/transit.js.map +0 -1
  536. package/components/identity.basic/operations/add.d.ts +0 -3
  537. package/components/identity.basic/operations/add.js.map +0 -1
  538. package/components/identity.basic/operations/authenticate.d.ts +0 -13
  539. package/components/identity.basic/operations/authenticate.js.map +0 -1
  540. package/components/identity.basic/operations/check.d.ts +0 -7
  541. package/components/identity.basic/operations/check.js.map +0 -1
  542. package/components/identity.basic/operations/delete.d.ts +0 -7
  543. package/components/identity.basic/operations/delete.js.map +0 -1
  544. package/components/identity.basic/operations/incept.d.ts +0 -12
  545. package/components/identity.basic/operations/incept.js.map +0 -1
  546. package/components/identity.basic/operations/info.d.ts +0 -10
  547. package/components/identity.basic/operations/info.js.map +0 -1
  548. package/components/identity.basic/operations/lib/credentials.d.ts +0 -5
  549. package/components/identity.basic/operations/lib/credentials.js.map +0 -1
  550. package/components/identity.basic/operations/transit.d.ts +0 -14
  551. package/components/identity.basic/operations/transit.js.map +0 -1
  552. package/components/identity.basic/operations/types.d.ts +0 -61
  553. package/components/identity.basic/operations/types.js +0 -2
  554. package/components/identity.basic/operations/types.js.map +0 -1
  555. package/components/identity.basic/source/types.ts +0 -69
  556. package/components/identity.credentials/operations/list.d.ts +0 -51
  557. package/components/identity.credentials/operations/list.js.map +0 -1
  558. package/components/identity.federation/operations/authenticate.d.ts +0 -16
  559. package/components/identity.federation/operations/authenticate.js.map +0 -1
  560. package/components/identity.federation/operations/create.d.ts +0 -8
  561. package/components/identity.federation/operations/create.js.map +0 -1
  562. package/components/identity.federation/operations/decode.d.ts +0 -3
  563. package/components/identity.federation/operations/decode.js.map +0 -1
  564. package/components/identity.federation/operations/delete.d.ts +0 -8
  565. package/components/identity.federation/operations/delete.js.map +0 -1
  566. package/components/identity.federation/operations/incept.d.ts +0 -11
  567. package/components/identity.federation/operations/incept.js.map +0 -1
  568. package/components/identity.federation/operations/lib/Configuration.d.ts +0 -39
  569. package/components/identity.federation/operations/lib/Configuration.js.map +0 -1
  570. package/components/identity.federation/operations/lib/Ctx.d.ts +0 -8
  571. package/components/identity.federation/operations/lib/Ctx.js.map +0 -1
  572. package/components/identity.federation/operations/lib/Payload.d.ts +0 -5
  573. package/components/identity.federation/operations/lib/Payload.js.map +0 -1
  574. package/components/identity.federation/operations/lib/decode.d.ts +0 -3
  575. package/components/identity.federation/operations/lib/decode.js.map +0 -1
  576. package/components/identity.federation/operations/lib/discovery.d.ts +0 -5
  577. package/components/identity.federation/operations/lib/discovery.js.map +0 -1
  578. package/components/identity.federation/operations/lib/errors.d.ts +0 -70
  579. package/components/identity.federation/operations/lib/errors.js.map +0 -1
  580. package/components/identity.federation/operations/lib/exchange.d.ts +0 -3
  581. package/components/identity.federation/operations/lib/exchange.js.map +0 -1
  582. package/components/identity.federation/operations/lib/index.d.ts +0 -4
  583. package/components/identity.federation/operations/lib/index.js.map +0 -1
  584. package/components/identity.federation/operations/lib/jose.d.ts +0 -1
  585. package/components/identity.federation/operations/lib/jose.js.map +0 -1
  586. package/components/identity.federation/operations/lib/resolve.d.ts +0 -3
  587. package/components/identity.federation/operations/lib/resolve.js.map +0 -1
  588. package/components/identity.federation/operations/list.d.ts +0 -7
  589. package/components/identity.federation/operations/list.js.map +0 -1
  590. package/components/identity.federation/operations/types/Scheme.d.ts +0 -1
  591. package/components/identity.federation/operations/types/Scheme.js.map +0 -1
  592. package/components/identity.federation/operations/types/configuration.d.ts +0 -22
  593. package/components/identity.federation/operations/types/configuration.js.map +0 -1
  594. package/components/identity.federation/operations/types/context.d.ts +0 -35
  595. package/components/identity.federation/operations/types/context.js.map +0 -1
  596. package/components/identity.federation/operations/types/entity.d.ts +0 -9
  597. package/components/identity.federation/operations/types/entity.js.map +0 -1
  598. package/components/identity.federation/operations/types/index.d.ts +0 -4
  599. package/components/identity.federation/operations/types/index.js.map +0 -1
  600. package/components/identity.keys/operations/create.d.ts +0 -22
  601. package/components/identity.keys/operations/create.js.map +0 -1
  602. package/components/identity.keys/operations/disable.d.ts +0 -5
  603. package/components/identity.keys/operations/disable.js.map +0 -1
  604. package/components/identity.keys/operations/revoke.d.ts +0 -15
  605. package/components/identity.keys/operations/revoke.js.map +0 -1
  606. package/components/identity.otp/operations/authenticate.d.ts +0 -12
  607. package/components/identity.otp/operations/authenticate.js.map +0 -1
  608. package/components/identity.otp/operations/issue.d.ts +0 -12
  609. package/components/identity.otp/operations/issue.js.map +0 -1
  610. package/components/identity.otp/operations/lib/Context.d.ts +0 -14
  611. package/components/identity.otp/operations/lib/Context.js.map +0 -1
  612. package/components/identity.otp/operations/lib/Entity.d.ts +0 -6
  613. package/components/identity.otp/operations/lib/Entity.js.map +0 -1
  614. package/components/identity.otp/operations/lib/index.d.ts +0 -1
  615. package/components/identity.otp/operations/lib/index.js.map +0 -1
  616. package/components/identity.passkeys/operations/authenticate.d.ts +0 -16
  617. package/components/identity.passkeys/operations/authenticate.js.map +0 -1
  618. package/components/identity.passkeys/operations/challenge.d.ts +0 -35
  619. package/components/identity.passkeys/operations/challenge.js.map +0 -1
  620. package/components/identity.passkeys/operations/create.d.ts +0 -19
  621. package/components/identity.passkeys/operations/create.js.map +0 -1
  622. package/components/identity.passkeys/operations/delete.d.ts +0 -8
  623. package/components/identity.passkeys/operations/delete.js.map +0 -1
  624. package/components/identity.passkeys/operations/lib/const.d.ts +0 -1
  625. package/components/identity.passkeys/operations/lib/const.js.map +0 -1
  626. package/components/identity.passkeys/operations/list.d.ts +0 -7
  627. package/components/identity.passkeys/operations/list.js.map +0 -1
  628. package/components/identity.passkeys/operations/types/Configuration.d.ts +0 -6
  629. package/components/identity.passkeys/operations/types/Configuration.js.map +0 -1
  630. package/components/identity.passkeys/operations/types/Context.d.ts +0 -15
  631. package/components/identity.passkeys/operations/types/Context.js.map +0 -1
  632. package/components/identity.passkeys/operations/types/Passkey.d.ts +0 -12
  633. package/components/identity.passkeys/operations/types/Passkey.js.map +0 -1
  634. package/components/identity.passkeys/operations/types/index.d.ts +0 -2
  635. package/components/identity.passkeys/operations/types/index.js.map +0 -1
  636. package/components/identity.passkeys/operations/use.d.ts +0 -16
  637. package/components/identity.passkeys/operations/use.js.map +0 -1
  638. package/components/identity.roles/operations/grant.d.ts +0 -10
  639. package/components/identity.roles/operations/grant.js.map +0 -1
  640. package/components/identity.roles/operations/lib/Entity.d.ts +0 -5
  641. package/components/identity.roles/operations/lib/Entity.js.map +0 -1
  642. package/components/identity.roles/operations/list.d.ts +0 -2
  643. package/components/identity.roles/operations/list.js.map +0 -1
  644. package/components/identity.roles/operations/principal.d.ts +0 -13
  645. package/components/identity.roles/operations/principal.js.map +0 -1
  646. package/components/identity.tokens/operations/authenticate.d.ts +0 -9
  647. package/components/identity.tokens/operations/authenticate.js.map +0 -1
  648. package/components/identity.tokens/operations/decrypt.d.ts +0 -15
  649. package/components/identity.tokens/operations/decrypt.js.map +0 -1
  650. package/components/identity.tokens/operations/encrypt.d.ts +0 -8
  651. package/components/identity.tokens/operations/encrypt.js.map +0 -1
  652. package/components/identity.tokens/operations/issue.d.ts +0 -24
  653. package/components/identity.tokens/operations/issue.js.map +0 -1
  654. package/components/identity.tokens/operations/lib/index.d.ts +0 -3
  655. package/components/identity.tokens/operations/lib/index.js.map +0 -1
  656. package/components/identity.tokens/operations/lib/jose.d.ts +0 -1
  657. package/components/identity.tokens/operations/lib/jose.js.map +0 -1
  658. package/components/identity.tokens/operations/lib/key.d.ts +0 -1
  659. package/components/identity.tokens/operations/lib/key.js.map +0 -1
  660. package/components/identity.tokens/operations/lib/pad.d.ts +0 -1
  661. package/components/identity.tokens/operations/lib/pad.js.map +0 -1
  662. package/components/identity.tokens/operations/lib/types.d.ts +0 -88
  663. package/components/identity.tokens/operations/lib/types.js +0 -2
  664. package/components/identity.tokens/operations/lib/types.js.map +0 -1
  665. package/components/identity.tokens/operations/revoke.d.ts +0 -2
  666. package/components/identity.tokens/operations/revoke.js.map +0 -1
  667. package/components/identity.tokens/source/lib/types.ts +0 -102
@@ -1 +1 @@
1
- {"version":3,"file":"Directive.js","sourceRoot":"","sources":["../source/Directive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Directive.js","sourceRoot":"","sources":["../source/Directive.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,18 @@ export declare class Endpoint implements RTD.Endpoint {
10
10
  private readonly mapping;
11
11
  private readonly discovery;
12
12
  private remote;
13
+ /** What the operation says, with what the route takes already split out of it. */
14
+ private introspection;
13
15
  constructor(endpoint: string, mapping: Mapping, discovery: Promise<Remote>);
14
16
  call(context: http.Context, parameters: RTD.Parameter[]): Promise<http.OutgoingMessage>;
15
17
  explain(parameters: RTD.Parameter[]): Promise<Introspection>;
18
+ /**
19
+ * `Remote.explain` answers the contract's own object, whose `input` is the manifest's by
20
+ * reference. What follows takes properties out of it, and two routes mounting one endpoint
21
+ * share one remote — so the copy is what keeps the second from describing what the first
22
+ * took away.
23
+ */
24
+ private introspect;
16
25
  close(): Promise<void>;
17
26
  private conditionalGet;
18
27
  private query;
@@ -1,6 +1,7 @@
1
1
  import { Readable } from 'node:stream';
2
2
  import { console } from 'openspan';
3
3
  import { Mapping } from './Mapping.js';
4
+ import { take } from './Introspection.js';
4
5
  import { redact } from './redact.js';
5
6
  import * as http from './HTTP/index.js';
6
7
  export class Endpoint {
@@ -8,6 +9,8 @@ export class Endpoint {
8
9
  mapping;
9
10
  discovery;
10
11
  remote = null;
12
+ /** What the operation says, with what the route takes already split out of it. */
13
+ introspection = null;
11
14
  constructor(endpoint, mapping, discovery) {
12
15
  this.endpoint = endpoint;
13
16
  this.mapping = mapping;
@@ -42,19 +45,32 @@ export class Endpoint {
42
45
  return message;
43
46
  }
44
47
  async explain(parameters) {
48
+ this.introspection ??= await this.introspect(parameters);
49
+ // what a directive narrows is this caller's answer, not the next caller's
50
+ return structuredClone(this.introspection);
51
+ }
52
+ /**
53
+ * `Remote.explain` answers the contract's own object, whose `input` is the manifest's by
54
+ * reference. What follows takes properties out of it, and two routes mounting one endpoint
55
+ * share one remote — so the copy is what keeps the second from describing what the first
56
+ * took away.
57
+ */
58
+ async introspect(parameters) {
45
59
  this.remote ??= await this.discovery;
46
- const operation = await this.remote.explain(this.endpoint);
60
+ const operation = structuredClone(await this.remote.explain(this.endpoint));
61
+ // what the operation states it is, is the Introspection's to read and not a resource's:
62
+ // an operation is written without knowledge of any route, and the same one mounted twice
63
+ // is two methods. What a method states is what its route states, which `mcp:tool` gives.
64
+ delete operation.description;
47
65
  let route = null;
48
- if (operation.input?.type === 'object')
49
- for (const parameter of parameters) {
50
- const schema = operation.input.properties[parameter.name];
51
- // eslint-disable-next-line max-depth
52
- if (schema !== undefined) {
53
- route ??= {};
54
- route[parameter.name] = schema;
55
- delete operation.input.properties[parameter.name];
56
- }
57
- }
66
+ // a variable the operation names is taken by the path, so it is not the body's to send
67
+ for (const parameter of parameters) {
68
+ const schema = take(operation, parameter.name);
69
+ if (schema === undefined)
70
+ continue;
71
+ route ??= {};
72
+ route[parameter.name] = schema;
73
+ }
58
74
  const query = this.mapping.explain(operation);
59
75
  const introspection = {};
60
76
  if (route !== null)
@@ -1 +1 @@
1
- {"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../source/Endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../source/Endpoint.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@ import { Composition } from './Composition.js';
12
12
  import * as root from './root.js';
13
13
  import { ATOM_GROUP } from './const.js';
14
14
  import { Interception } from './Interception.js';
15
+ import { Dispatcher } from './RPC/index.js';
16
+ import { Server as Model } from './MCP/index.js';
15
17
  import * as http from './HTTP/index.js';
16
18
  export class Factory {
17
19
  host;
@@ -41,10 +43,12 @@ export class Factory {
41
43
  const node = root.resolve();
42
44
  const methods = new EndpointsFactory(remotes);
43
45
  const directives = new DirectivesFactory(families, remotes, this.host, options);
44
- const interception = new Interception(interceptors);
46
+ const interception = new Interception(interceptors, options);
45
47
  const tree = new Tree(node, methods, directives);
46
48
  const composition = new Composition(this.host);
47
- const gateway = new Gateway(broadcast, tree, interception);
49
+ const dispatcher = options.rpc === undefined ? null : new Dispatcher(options.rpc);
50
+ const mcp = options.mcp === undefined ? null : new Model(options.mcp, tree);
51
+ const gateway = new Gateway(broadcast, tree, interception, directives, dispatcher, mcp);
48
52
  gateway.depends(remotes);
49
53
  gateway.depends(composition);
50
54
  // what the directives meter through; one atom per process, connected once
@@ -1 +1 @@
1
- {"version":3,"file":"Factory.js","sourceRoot":"","sources":["../source/Factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Factory.js","sourceRoot":"","sources":["../source/Factory.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,37 @@
1
1
  import { type bindings, Connector } from '@toa.io/core';
2
2
  import * as http from './HTTP/index.js';
3
3
  import type { Interception } from './Interception.js';
4
- import type { Tree } from './RTD/index.js';
4
+ import type { Dispatcher } from './RPC/index.js';
5
+ import type { Server } from './MCP/index.js';
6
+ import type { DirectiveFactory, Tree } from './RTD/index.js';
5
7
  import type { Label } from './discovery.js';
6
8
  export declare class Gateway extends Connector {
7
9
  private readonly broadcast;
8
10
  private readonly tree;
9
11
  private readonly interceptor;
12
+ private readonly directives;
13
+ /** JSON-RPC is served only where the annotation asked for it. */
14
+ private readonly dispatcher;
15
+ /** And the same of MCP. */
16
+ private readonly mcp;
10
17
  private readonly branches;
11
18
  private lastMerge;
12
19
  private widestGap;
13
20
  private lastPing;
14
21
  private stopped;
15
22
  private resolveFirstMerge;
16
- constructor(broadcast: Broadcast, tree: Tree, interception: Interception);
23
+ constructor(broadcast: Broadcast, tree: Tree, interception: Interception, directives: DirectiveFactory, dispatcher: Dispatcher | null, mcp: Server | null);
17
24
  process(context: http.Context): Promise<http.OutgoingMessage>;
25
+ /**
26
+ * What answers the request: a pinned endpoint that makes calls of its own, or the route
27
+ * the path names.
28
+ */
29
+ private endpoint;
30
+ /**
31
+ * One call: everything that needs a node. A request makes one of these, and a request
32
+ * that carries several calls makes one per call.
33
+ */
34
+ private route;
18
35
  protected open(): Promise<void>;
19
36
  /**
20
37
  * Both of these reach into components, and a dependency is torn down only once this has
@@ -3,39 +3,73 @@ import { setTimeout } from 'node:timers/promises';
3
3
  import { console } from 'openspan';
4
4
  import { Connector } from '@toa.io/core';
5
5
  import * as http from './HTTP/index.js';
6
+ import { MCP, RPC } from './const.js';
6
7
  import { rethrow } from './exceptions.js';
7
8
  import { decide } from './Branch.js';
8
9
  export class Gateway extends Connector {
9
10
  broadcast;
10
11
  tree;
11
12
  interceptor;
13
+ directives;
14
+ /** JSON-RPC is served only where the annotation asked for it. */
15
+ dispatcher;
16
+ /** And the same of MCP. */
17
+ mcp;
12
18
  branches = new Map();
13
19
  lastMerge = 0;
14
20
  widestGap = 0;
15
21
  lastPing = 0;
16
22
  stopped = false;
17
23
  resolveFirstMerge = null;
18
- constructor(broadcast, tree, interception) {
24
+ // eslint-disable-next-line max-params
25
+ constructor(broadcast, tree, interception, directives, dispatcher, mcp) {
19
26
  super();
20
27
  this.broadcast = broadcast;
21
28
  this.tree = tree;
22
29
  this.interceptor = interception;
30
+ this.directives = directives;
31
+ this.dispatcher = dispatcher;
32
+ this.mcp = mcp;
23
33
  this.depends(broadcast);
24
34
  }
25
35
  async process(context) {
26
36
  const interception = await context.timing.capture('intercept', this.interceptor.intercept(context));
27
37
  if (interception !== null)
28
38
  return interception;
39
+ // request-scoped, before anything is routed: this is where a credential is read
40
+ await context.timing.capture('preflight', this.directives.preflight(context)).catch(rethrow);
41
+ const response = await this.endpoint(context);
42
+ // request-scoped, on whatever is going back: this is where a credential is re-issued
43
+ await context.timing.capture('depart', this.directives.depart(context, response)).catch(rethrow);
44
+ return response;
45
+ }
46
+ /**
47
+ * What answers the request: a pinned endpoint that makes calls of its own, or the route
48
+ * the path names.
49
+ */
50
+ async endpoint(context) {
51
+ const route = async (call) => await this.route(call);
52
+ if (this.dispatcher !== null && context.url.pathname === RPC)
53
+ return await context.timing.capture('rpc', this.dispatcher.dispatch(context, route));
54
+ if (this.mcp !== null && context.url.pathname === MCP)
55
+ return await context.timing.capture('mcp', this.mcp.process(context, route));
56
+ return await this.route(context);
57
+ }
58
+ /**
59
+ * One call: everything that needs a node. A request makes one of these, and a request
60
+ * that carries several calls makes one per call.
61
+ */
62
+ async route(context) {
29
63
  const { node, parameters } = this.match(context);
30
64
  if (context.request.method === 'OPTIONS')
31
- return await this.explain(node, parameters);
65
+ return await this.explain(context, node, parameters);
32
66
  let verb = context.request.method;
33
67
  if (!(verb in node.methods) && verb === 'HEAD' && 'GET' in node.methods)
34
68
  verb = 'GET';
35
69
  if (!(verb in node.methods))
36
70
  throw new http.MethodNotAllowed();
37
71
  const method = node.methods[verb];
38
- const interruption = await context.timing.capture('preflight', method.directives.preflight(context, parameters)).catch(rethrow);
72
+ const interruption = await context.timing.capture('precall', method.directives.precall(context, parameters)).catch(rethrow);
39
73
  const response = interruption ??
40
74
  await context.timing.capture('call', this.call(method, context, parameters));
41
75
  await context.timing.capture('settle', method.directives.settle(context, response)).catch(rethrow);
@@ -43,7 +77,13 @@ export class Gateway extends Connector {
43
77
  }
44
78
  async open() {
45
79
  await this.discover();
46
- console.info('Gateway started');
80
+ // what is served besides the tree, so that turning one on can be seen to have worked
81
+ const pinned = [];
82
+ if (this.dispatcher !== null)
83
+ pinned.push(RPC);
84
+ if (this.mcp !== null)
85
+ pinned.push(MCP);
86
+ console.info('Gateway started', { endpoints: pinned.length === 0 ? 'none' : pinned.join(' ') });
47
87
  }
48
88
  /**
49
89
  * Both of these reach into components, and a dependency is torn down only once this has
@@ -87,11 +127,13 @@ export class Gateway extends Connector {
87
127
  .call(context, parameters)
88
128
  .catch(rethrow);
89
129
  }
90
- async explain(node, parameters) {
91
- const body = await node.explain(parameters);
92
- const allow = [...Object.keys(node.methods)].join(', ');
93
- const headers = new Headers({ allow });
94
- return { body, headers };
130
+ async explain(context, node, parameters) {
131
+ const body = await node.explain(context, parameters);
132
+ const verbs = Object.keys(body);
133
+ // what a caller may not use is not a resource to them, and describing it would be the leak
134
+ if (verbs.length === 0 && Object.keys(node.methods).length > 0)
135
+ throw new http.Forbidden();
136
+ return { body, headers: new Headers({ allow: verbs.join(', ') }) };
95
137
  }
96
138
  async discover() {
97
139
  const first = new Promise((resolve) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Gateway.js","sourceRoot":"","sources":["../source/Gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Gateway.js","sourceRoot":"","sources":["../source/Gateway.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAiB,SAAS,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAQpC,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACnB,SAAS,CAAW;IACpB,IAAI,CAAM;IACV,WAAW,CAAc;IACzB,UAAU,CAAkB;IAE7C,iEAAiE;IAChD,UAAU,CAAmB;IAE9C,2BAA2B;IACV,GAAG,CAAe;IAClB,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAA;IAC9C,SAAS,GAAG,CAAC,CAAA;IACb,SAAS,GAAG,CAAC,CAAA;IACb,QAAQ,GAAG,CAAC,CAAA;IACZ,OAAO,GAAG,KAAK,CAAA;IACf,iBAAiB,GAAwB,IAAI,CAAA;IAErD,sCAAsC;IACtC,YAAoB,SAAoB,EAAE,IAAU,EAAE,YAA0B,EAC9E,UAA4B,EAAE,UAA6B,EAAE,GAAkB;QAC/E,KAAK,EAAE,CAAA;QAEP,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAA;QAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAEd,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACzB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAE,OAAqB;QACzC,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAC3D,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;QAEtC,IAAI,YAAY,KAAK,IAAI;YACvB,OAAO,YAAY,CAAA;QAErB,gFAAgF;QAChF,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EACtC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAE7C,qFAAqF;QACrF,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EACnC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAE3D,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,QAAQ,CAAE,OAAqB;QAC3C,MAAM,KAAK,GAAmB,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEpE,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,GAAG;YAC1D,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;QAEtF,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,GAAG;YACnD,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;QAE9E,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,KAAK,CAAE,OAAqB;QACxC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEhD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS;YACtC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;QAEtD,IAAI,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAA;QAEjC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,MAAM,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO;YACrE,IAAI,GAAG,KAAK,CAAA;QAEd,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC;YACzB,MAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAEnC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAEjC,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EACzD,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEhE,MAAM,QAAQ,GAAG,YAAY;YAC3B,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;QAE9E,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EACnC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAE7D,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEkB,KAAK,CAAC,IAAI;QAC3B,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QAErB,qFAAqF;QACrF,MAAM,MAAM,GAAa,EAAE,CAAA;QAE3B,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;YAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAElB,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;YACnB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAElB,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACjG,CAAC;IAED;;;;;OAKG;IACgB,KAAK,CAAC,KAAK;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QAEnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;IACrB,CAAC;IAEkB,OAAO;QACxB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IACnC,CAAC;IAEO,KAAK,CAAE,OAAqB;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAEnD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,2DAA2D;YAC3D,IAAI,CAAC,MAAM,EAAE,CAAA;YAEb,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QAC5C,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,IAAI;YAC7B,OAAO,KAAK,CAAA;QAEd,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAC1D,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YACV,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,CAAA;YAElF,MAAM,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,EAAE,wBAAwB,IAAI,aAAa,CAAC,CAAA;YAEzE,OAAO,IAAI,KAAK,EAAE,CAAA;QACpB,CAAC,CAAC,CAAA;QAEJ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAE5C,MAAM,CAAC,EAAE,CAAC,OAAO,KAAK,IAAI,EAAE,2BAA2B,CAAC,CAAA;QAExD,OAAO,OAAO,CAAA;IAChB,CAAC;IAEO,KAAK,CAAC,IAAI,CAAE,MAAc,EAAE,OAAqB,EAAE,UAAuB;QAChF,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG;YAC/D,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAA;QAEvD,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;YAC1B,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAA;QAEhC,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;YAC1B,MAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAEnC,OAAO,MAAM,MAAM,CAAC,QAAQ;aACzB,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC;aACzB,KAAK,CAAC,OAAO,CAAyB,CAAA;IAC3C,CAAC;IAEO,KAAK,CAAC,OAAO,CAAE,OAAqB,EAAE,IAAU,EACtD,UAAuB;QACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE/B,2FAA2F;QAC3F,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;YAC5D,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAA;QAE5B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;IACpE,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,MAAM,KAAK,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAC1C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAA;QAClC,CAAC,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAS,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAErE,KAAK,IAAI,CAAC,KAAK,EAAE,CAAA;QAEjB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,KAAK;QACjB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,OAAO;gBACd,OAAM;YAER,IAAI,KAAK,GAAG,CAAC;gBACX,MAAM,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;YAEpD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,OAAO;YACd,OAAM;QAER,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAE1B,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAO,MAAM,EAAE,IAAI,CAAC;aAC9C,KAAK,CAAC,CAAC,SAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAChE,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IACtC,CAAC;IAEO,MAAM;QACZ,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,aAAa;YAC5C,OAAM;QAER,KAAK,IAAI,CAAC,IAAI,EAAE,CAAA;IAClB,CAAC;IAEO,KAAK,CAAC,OAAO,CAAE,KAAoB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAA;QAC5C,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAA;QAEnC,0EAA0E;QAC1E,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;aACzF,OAAO,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA,CAAC,CAAC,CAAC;aAChC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAElB,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAA;YAEhE,OAAM;QACR,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ;gBACxB,MAAK;YAEP,MAAM,UAAU,CAAC,WAAW,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,mBAAmB,CAAA;QAErD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACzE,CAAC;IAEO,KAAK,CAAE,MAAc;QAC3B,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,GAAG,GAAG,MAAM,CAAC,SAAS,CAAA;QAEpD,MAAM,UAAU,GAAG;YACjB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAA;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAErC,IAAI,OAAO,KAAK,SAAS;YACvB,QAAQ,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;gBAChC,yEAAyE;gBACzE,KAAK,SAAS;oBACZ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAChC,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAA;oBAE7C,OAAM;gBAER,KAAK,YAAY;oBACf,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE;wBACjC,GAAG,UAAU;wBACb,SAAS,EAAE,MAAM,CAAC,SAAS;wBAC3B,OAAO,EAAE,OAAO,CAAC,SAAS;qBAC3B,CAAC,CAAA;oBAEF,OAAM;YACV,CAAC;QAEH,IAAI,KAAa,CAAA;QAEjB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC9C,CAAC;QAAC,OAAO,SAAkB,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAA;YAEhF,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC,CAAA;YAEnE,OAAM;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;QAEtF,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAA;QAExE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC3B,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAA;QAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;QAE7B,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;IAC3C,CAAC;CACF;AAID,MAAM,gBAAgB,GAAG,GAAG,CAAA;AAC5B,MAAM,gBAAgB,GAAG,MAAM,CAAA;AAC/B,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAC7B,MAAM,cAAc,GAAG,MAAM,CAAA;AAC7B,MAAM,WAAW,GAAG,EAAE,CAAA;AACtB,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AACzC,MAAM,aAAa,GAAG,KAAK,CAAA"}
@@ -13,6 +13,12 @@ export declare class Context {
13
13
  readonly encoder: Format | null;
14
14
  readonly timing: Timing;
15
15
  readonly debug: boolean;
16
+ /**
17
+ * Whether this is a procedure a request made, rather than the request. What forks one
18
+ * says so, and a directive that answers differently to a procedure than to a request
19
+ * reads it here.
20
+ */
21
+ readonly procedural: boolean;
16
22
  readonly pipelines: Pipelines;
17
23
  private consumed;
18
24
  constructor(authority: string, request: IncomingMessage, properties: Properties, url: URL);
@@ -17,6 +17,12 @@ export class Context {
17
17
  encoder = null;
18
18
  timing;
19
19
  debug;
20
+ /**
21
+ * Whether this is a procedure a request made, rather than the request. What forks one
22
+ * says so, and a directive that answers differently to a procedure than to a request
23
+ * reads it here.
24
+ */
25
+ procedural = false;
20
26
  pipelines = {
21
27
  body: [],
22
28
  response: []
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../source/HTTP/Context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../source/HTTP/Context.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,11 @@ import { Connector } from '@toa.io/core';
2
2
  import { type OutgoingMessage } from './messages.js';
3
3
  import { Context } from './Context.js';
4
4
  import type { Protocol } from './types.js';
5
- import type { Bouncer } from '../Annotation.js';
5
+ import type { Bouncer, MCP, OAuth, RPC } from '../Annotation.js';
6
6
  export declare class Server extends Connector {
7
7
  private readonly server;
8
8
  private readonly properties;
9
+ /** Host to authority. A map: a `Host` of `constructor` names what a plain object answers. */
9
10
  private readonly authorities;
10
11
  /** Tracked for the drain: `Http2Server` has no `closeIdleConnections`. */
11
12
  private readonly sessions;
@@ -40,6 +41,12 @@ interface Properties {
40
41
  ip?: string;
41
42
  /** Failed authentications an address may make; none are metered unless set. */
42
43
  bouncer?: Bouncer;
44
+ /** The authorization server this context exposes; none is exposed without it. */
45
+ oauth?: OAuth;
46
+ /** JSON-RPC at `/.rpc`; none is served without it. */
47
+ rpc?: RPC;
48
+ /** MCP at `/.mcp`; none is served without it. */
49
+ mcp?: MCP;
43
50
  }
44
51
  export type Options = {
45
52
  authorities: Properties['authorities'];
@@ -14,6 +14,7 @@ import { PROBE, Probe } from './Probe.js';
14
14
  export class Server extends Connector {
15
15
  server;
16
16
  properties;
17
+ /** Host to authority. A map: a `Host` of `constructor` names what a plain object answers. */
17
18
  authorities;
18
19
  /** Tracked for the drain: `Http2Server` has no `closeIdleConnections`. */
19
20
  sessions = new Set();
@@ -22,7 +23,7 @@ export class Server extends Connector {
22
23
  constructor(properties) {
23
24
  super();
24
25
  this.properties = properties;
25
- this.authorities = Object.fromEntries(Object.entries(properties.authorities).map(([key, value]) => [value, key]));
26
+ this.authorities = new Map(Object.entries(properties.authorities).map(([key, value]) => [value, key]));
26
27
  this.server = instantiate(properties.protocol);
27
28
  this.probe = new Probe(properties.probe);
28
29
  this.server.on('request', (req, res) => this.listener(req, res));
@@ -120,7 +121,7 @@ export class Server extends Connector {
120
121
  return;
121
122
  }
122
123
  assert(this.process !== undefined, 'Request processor is not attached');
123
- const authority = this.authorities[host] ?? host;
124
+ const authority = this.authorities.get(host) ?? host;
124
125
  // if the request carries no trace context, the trace starts here
125
126
  const remote = trace(request.headers);
126
127
  const processing = remote === null
@@ -178,7 +179,7 @@ export class Server extends Connector {
178
179
  span.status = 'error';
179
180
  if (!response.writableEnded) {
180
181
  response.statusCode = status;
181
- const message = { status: response.statusCode };
182
+ const message = { status: response.statusCode, authentic: true };
182
183
  // eslint-disable-next-line max-depth
183
184
  if (exception instanceof Exception && exception.headers !== undefined)
184
185
  message.headers = exception.headers;
@@ -1 +1 @@
1
- {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../source/HTTP/Server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../source/HTTP/Server.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export declare class NotFound extends ClientError {
20
20
  constructor(body?: any);
21
21
  }
22
22
  export declare class MethodNotAllowed extends ClientError {
23
- constructor();
23
+ constructor(headers?: Headers);
24
24
  }
25
25
  export declare class NotAcceptable extends ClientError {
26
26
  constructor();
@@ -33,8 +33,8 @@ export class NotFound extends ClientError {
33
33
  }
34
34
  }
35
35
  export class MethodNotAllowed extends ClientError {
36
- constructor() {
37
- super(405);
36
+ constructor(headers) {
37
+ super(405, undefined, headers);
38
38
  }
39
39
  }
40
40
  export class NotAcceptable extends ClientError {
@@ -1 +1 @@
1
- {"version":3,"file":"exceptions.js","sourceRoot":"","sources":["../../source/HTTP/exceptions.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClB,MAAM,CAAQ;IACd,IAAI,CAAM;IAE1B,+EAA+E;IAC/D,OAAO,CAAU;IAEjC,YAAuB,MAAc,EAAE,IAAU,EAAE,OAAiB;QAClE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,SAAS;CACzC;AAED,MAAM,OAAO,UAAW,SAAQ,WAAW;IACzC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,WAAW;IAC3C,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,SAAU,SAAQ,WAAW;IACxC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAC/C;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IACjD;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,WAAW;IACpD,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,WAAW;IACnD;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,WAAW;IAClD,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,gEAAgE;IAChE,YAAoB,KAAc;QAChC,KAAK,CAAC,GAAG,EAAE,SAAS,EAClB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACpF,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,SAAS;IAC/C,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF"}
1
+ {"version":3,"file":"exceptions.js","sourceRoot":"","sources":["../../source/HTTP/exceptions.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClB,MAAM,CAAQ;IACd,IAAI,CAAM;IAE1B,+EAA+E;IAC/D,OAAO,CAAU;IAEjC,YAAuB,MAAc,EAAE,IAAU,EAAE,OAAiB;QAClE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,SAAS;CACzC;AAED,MAAM,OAAO,UAAW,SAAQ,WAAW;IACzC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,WAAW;IAC3C,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,SAAU,SAAQ,WAAW;IACxC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAC/C,YAAoB,OAAiB;QACnC,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;IAChC,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IACjD;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,WAAW;IACpD,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,WAAW;IACnD;QACE,KAAK,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,WAAW;IAClD,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,gEAAgE;IAChE,YAAoB,KAAc;QAChC,KAAK,CAAC,GAAG,EAAE,SAAS,EAClB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACpF,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,SAAS;IAC/C,YAAoB,IAAU;QAC5B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClB,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ export declare const type = "application/x-www-form-urlencoded";
2
+ /**
3
+ * A form is read and never written: it is what an HTML form and a handful of protocols send,
4
+ * and nothing asks for a reply in it.
5
+ *
6
+ * A name repeated in a form is a list, which is how a form says one — `URLSearchParams` keeps
7
+ * every value, and a name given once stays the string it was written as.
8
+ */
9
+ export declare function decode(buffer: Buffer, charset?: string): any;
@@ -0,0 +1,18 @@
1
+ export const type = 'application/x-www-form-urlencoded';
2
+ /**
3
+ * A form is read and never written: it is what an HTML form and a handful of protocols send,
4
+ * and nothing asks for a reply in it.
5
+ *
6
+ * A name repeated in a form is a list, which is how a form says one — `URLSearchParams` keeps
7
+ * every value, and a name given once stays the string it was written as.
8
+ */
9
+ export function decode(buffer, charset = 'utf-8') {
10
+ const params = new URLSearchParams(buffer.toString(charset));
11
+ const value = {};
12
+ for (const name of new Set(params.keys())) {
13
+ const values = params.getAll(name);
14
+ value[name] = values.length === 1 ? values[0] : values;
15
+ }
16
+ return value;
17
+ }
18
+ //# sourceMappingURL=form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../source/HTTP/formats/form.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,mCAAmC,CAAA;AAEvD;;;;;;GAMG;AACH,MAAM,UAAU,MAAM,CAAE,MAAc,EAAE,OAAO,GAAG,OAAO;IACvD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAyB,CAAC,CAAC,CAAA;IAC9E,MAAM,KAAK,GAAsC,EAAE,CAAA;IAEnD,KAAK,MAAM,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAElC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IACxD,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC"}