@frontmcp/sdk 0.2.3 → 0.3.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 (896) hide show
  1. package/README.md +81 -99
  2. package/package.json +24 -2
  3. package/src/adapter/adapter.instance.d.ts +11 -0
  4. package/src/adapter/adapter.instance.js +65 -0
  5. package/src/adapter/adapter.instance.js.map +1 -0
  6. package/src/adapter/adapter.regsitry.d.ts +13 -0
  7. package/src/adapter/adapter.regsitry.js +54 -0
  8. package/src/adapter/adapter.regsitry.js.map +1 -0
  9. package/src/adapter/adapter.utils.d.ts +10 -0
  10. package/src/adapter/adapter.utils.js +83 -0
  11. package/src/adapter/adapter.utils.js.map +1 -0
  12. package/src/app/app.registry.d.ts +12 -0
  13. package/src/app/app.registry.js +64 -0
  14. package/src/app/app.registry.js.map +1 -0
  15. package/src/app/app.utils.d.ts +15 -0
  16. package/src/app/app.utils.js +58 -0
  17. package/src/app/app.utils.js.map +1 -0
  18. package/src/app/instances/app.local.instance.d.ts +25 -0
  19. package/src/app/instances/app.local.instance.js +70 -0
  20. package/src/app/instances/app.local.instance.js.map +1 -0
  21. package/src/app/instances/app.remote.instance.d.ts +13 -0
  22. package/src/app/instances/app.remote.instance.js +36 -0
  23. package/src/app/instances/app.remote.instance.js.map +1 -0
  24. package/src/app/instances/index.d.ts +2 -0
  25. package/src/app/instances/index.js +6 -0
  26. package/src/app/instances/index.js.map +1 -0
  27. package/src/auth/auth.registry.d.ts +13 -0
  28. package/src/auth/auth.registry.js +81 -0
  29. package/src/auth/auth.registry.js.map +1 -0
  30. package/src/auth/auth.utils.d.ts +10 -0
  31. package/src/auth/auth.utils.js +85 -0
  32. package/src/auth/auth.utils.js.map +1 -0
  33. package/src/auth/flows/oauth.authorize.flow.d.ts +231 -0
  34. package/src/auth/flows/oauth.authorize.flow.js +154 -0
  35. package/src/auth/flows/oauth.authorize.flow.js.map +1 -0
  36. package/src/auth/flows/oauth.register.flow.d.ts +202 -0
  37. package/src/auth/flows/oauth.register.flow.js +201 -0
  38. package/src/auth/flows/oauth.register.flow.js.map +1 -0
  39. package/src/auth/flows/oauth.token.flow.d.ts +242 -0
  40. package/src/auth/flows/oauth.token.flow.js +181 -0
  41. package/src/auth/flows/oauth.token.flow.js.map +1 -0
  42. package/src/auth/flows/session.verify.flow.d.ts +404 -0
  43. package/src/auth/flows/session.verify.flow.js +205 -0
  44. package/src/auth/flows/session.verify.flow.js.map +1 -0
  45. package/src/auth/flows/well-known.jwks.flow.d.ts +261 -0
  46. package/src/auth/flows/well-known.jwks.flow.js +82 -0
  47. package/src/auth/flows/well-known.jwks.flow.js.map +1 -0
  48. package/src/auth/flows/well-known.oauth-authorization-server.flow.d.ts +282 -0
  49. package/src/auth/flows/well-known.oauth-authorization-server.flow.js +123 -0
  50. package/src/auth/flows/well-known.oauth-authorization-server.flow.js.map +1 -0
  51. package/src/auth/flows/well-known.prm.flow.d.ts +159 -0
  52. package/src/auth/flows/well-known.prm.flow.js +107 -0
  53. package/src/auth/flows/well-known.prm.flow.js.map +1 -0
  54. package/src/auth/instances/instance.local-primary-auth.d.ts +19 -0
  55. package/src/auth/instances/instance.local-primary-auth.js +76 -0
  56. package/src/auth/instances/instance.local-primary-auth.js.map +1 -0
  57. package/src/auth/instances/instance.remote-primary-auth.d.ts +14 -0
  58. package/src/auth/instances/instance.remote-primary-auth.js +47 -0
  59. package/src/auth/instances/instance.remote-primary-auth.js.map +1 -0
  60. package/src/auth/jwks/index.d.ts +2 -0
  61. package/src/auth/jwks/index.js +6 -0
  62. package/src/auth/jwks/index.js.map +1 -0
  63. package/src/auth/jwks/jwks.service.d.ts +41 -0
  64. package/src/auth/jwks/jwks.service.js +235 -0
  65. package/src/auth/jwks/jwks.service.js.map +1 -0
  66. package/src/auth/jwks/jwks.types.d.ts +25 -0
  67. package/src/auth/jwks/jwks.types.js +3 -0
  68. package/src/auth/jwks/jwks.types.js.map +1 -0
  69. package/src/auth/jwks/jwks.utils.d.ts +4 -0
  70. package/src/auth/jwks/jwks.utils.js +32 -0
  71. package/src/auth/jwks/jwks.utils.js.map +1 -0
  72. package/src/auth/oauth/flows/oauth.authorize.flow.d.ts +31 -0
  73. package/src/auth/oauth/flows/oauth.authorize.flow.js +33 -0
  74. package/src/auth/oauth/flows/oauth.authorize.flow.js.map +1 -0
  75. package/src/auth/oauth/flows/oauth.device-authorization.flow.d.ts +46 -0
  76. package/src/auth/oauth/flows/oauth.device-authorization.flow.js +48 -0
  77. package/src/auth/oauth/flows/oauth.device-authorization.flow.js.map +1 -0
  78. package/src/auth/oauth/flows/oauth.introspect.flow.d.ts +26 -0
  79. package/src/auth/oauth/flows/oauth.introspect.flow.js +28 -0
  80. package/src/auth/oauth/flows/oauth.introspect.flow.js.map +1 -0
  81. package/src/auth/oauth/flows/oauth.par.flow.d.ts +27 -0
  82. package/src/auth/oauth/flows/oauth.par.flow.js +29 -0
  83. package/src/auth/oauth/flows/oauth.par.flow.js.map +1 -0
  84. package/src/auth/oauth/flows/oauth.revoke.flow.d.ts +25 -0
  85. package/src/auth/oauth/flows/oauth.revoke.flow.js +27 -0
  86. package/src/auth/oauth/flows/oauth.revoke.flow.js.map +1 -0
  87. package/src/auth/oauth/flows/oauth.token.flow.d.ts +57 -0
  88. package/src/auth/oauth/flows/oauth.token.flow.js +59 -0
  89. package/src/auth/oauth/flows/oauth.token.flow.js.map +1 -0
  90. package/src/auth/oauth/flows/oauth.userinfo.flow.d.ts +22 -0
  91. package/src/auth/oauth/flows/oauth.userinfo.flow.js +24 -0
  92. package/src/auth/oauth/flows/oauth.userinfo.flow.js.map +1 -0
  93. package/src/auth/oauth/flows/oidc.logout.flow.d.ts +18 -0
  94. package/src/auth/oauth/flows/oidc.logout.flow.js +20 -0
  95. package/src/auth/oauth/flows/oidc.logout.flow.js.map +1 -0
  96. package/src/auth/path.utils.d.ts +20 -0
  97. package/src/auth/path.utils.js +71 -0
  98. package/src/auth/path.utils.js.map +1 -0
  99. package/src/auth/session/index.d.ts +4 -0
  100. package/src/auth/session/index.js +10 -0
  101. package/src/auth/session/index.js.map +1 -0
  102. package/src/auth/session/record/session.base.d.ts +103 -0
  103. package/src/auth/session/record/session.base.js +123 -0
  104. package/src/auth/session/record/session.base.js.map +1 -0
  105. package/src/auth/session/record/session.stateful.d.ts +20 -0
  106. package/src/auth/session/record/session.stateful.js +55 -0
  107. package/src/auth/session/record/session.stateful.js.map +1 -0
  108. package/src/auth/session/record/session.stateless.d.ts +17 -0
  109. package/src/auth/session/record/session.stateless.js +30 -0
  110. package/src/auth/session/record/session.stateless.js.map +1 -0
  111. package/src/auth/session/record/session.transparent.d.ts +17 -0
  112. package/src/auth/session/record/session.transparent.js +22 -0
  113. package/src/auth/session/record/session.transparent.js.map +1 -0
  114. package/src/auth/session/session.crypto.d.ts +7 -0
  115. package/src/auth/session/session.crypto.js +47 -0
  116. package/src/auth/session/session.crypto.js.map +1 -0
  117. package/src/auth/session/session.schema.d.ts +5 -0
  118. package/src/auth/session/session.schema.js +13 -0
  119. package/src/auth/session/session.schema.js.map +1 -0
  120. package/src/auth/session/session.service.d.ts +17 -0
  121. package/src/auth/session/session.service.js +111 -0
  122. package/src/auth/session/session.service.js.map +1 -0
  123. package/src/auth/session/session.transport.d.ts +4 -0
  124. package/src/auth/session/session.transport.js +20 -0
  125. package/src/auth/session/session.transport.js.map +1 -0
  126. package/src/auth/session/session.types.d.ts +65 -0
  127. package/src/auth/session/session.types.js +4 -0
  128. package/src/auth/session/session.types.js.map +1 -0
  129. package/src/auth/session/token.refresh.d.ts +60 -0
  130. package/src/auth/session/token.refresh.js +63 -0
  131. package/src/auth/session/token.refresh.js.map +1 -0
  132. package/src/auth/session/token.store.d.ts +35 -0
  133. package/src/auth/session/token.store.js +53 -0
  134. package/src/auth/session/token.store.js.map +1 -0
  135. package/src/auth/session/token.vault.d.ts +26 -0
  136. package/src/auth/session/token.vault.js +54 -0
  137. package/src/auth/session/token.vault.js.map +1 -0
  138. package/src/auth/session/utils/auth-token.utils.d.ts +11 -0
  139. package/src/auth/session/utils/auth-token.utils.js +57 -0
  140. package/src/auth/session/utils/auth-token.utils.js.map +1 -0
  141. package/src/auth/session/utils/session-id.utils.d.ts +17 -0
  142. package/src/auth/session/utils/session-id.utils.js +129 -0
  143. package/src/auth/session/utils/session-id.utils.js.map +1 -0
  144. package/src/auth/session/utils/tiny-ttl-cache.d.ts +7 -0
  145. package/src/auth/session/utils/tiny-ttl-cache.js +26 -0
  146. package/src/auth/session/utils/tiny-ttl-cache.js.map +1 -0
  147. package/src/common/common.schema.d.ts +29 -0
  148. package/src/common/common.schema.js +35 -0
  149. package/src/common/common.schema.js.map +1 -0
  150. package/src/common/constants.d.ts +2 -0
  151. package/src/common/constants.js +8 -0
  152. package/src/common/constants.js.map +1 -0
  153. package/src/common/decorators/adapter.decorator.js.map +1 -0
  154. package/src/common/decorators/app.decorator.js.map +1 -0
  155. package/src/common/decorators/auth-provider.decorator.js.map +1 -0
  156. package/src/common/decorators/flow.decorator.js.map +1 -0
  157. package/src/common/decorators/front-mcp.decorator.js +40 -0
  158. package/src/common/decorators/front-mcp.decorator.js.map +1 -0
  159. package/src/common/decorators/hook.decorator.js.map +1 -0
  160. package/src/common/decorators/index.js.map +1 -0
  161. package/src/common/decorators/logger.decorator.js.map +1 -0
  162. package/src/common/decorators/plugin.decorator.js.map +1 -0
  163. package/src/common/decorators/prompt.decorator.js.map +1 -0
  164. package/src/common/decorators/provider.decorator.js.map +1 -0
  165. package/src/common/decorators/resource.decorator.js.map +1 -0
  166. package/src/common/decorators/tool.decorator.d.ts +42 -0
  167. package/src/common/decorators/tool.decorator.js +46 -0
  168. package/src/common/decorators/tool.decorator.js.map +1 -0
  169. package/src/common/decorators-old/async-with.decorator.d.ts +10 -0
  170. package/src/common/decorators-old/async-with.decorator.js +24 -0
  171. package/src/common/decorators-old/async-with.decorator.js.map +1 -0
  172. package/src/common/decorators-old/auth-hook.decorator.js.map +1 -0
  173. package/src/common/decorators-old/session-hook.decorator.js.map +1 -0
  174. package/src/common/dynamic/dynamic.adapter.js.map +1 -0
  175. package/src/common/dynamic/dynamic.plugin.js.map +1 -0
  176. package/src/common/dynamic/dynamic.utils.d.ts +3 -0
  177. package/src/common/dynamic/dynamic.utils.js.map +1 -0
  178. package/src/common/dynamic/index.js.map +1 -0
  179. package/src/common/entries/adapter.entry.js.map +1 -0
  180. package/src/common/entries/app.entry.d.ts +13 -0
  181. package/src/common/entries/app.entry.js.map +1 -0
  182. package/src/common/entries/auth-provider.entry.js.map +1 -0
  183. package/src/common/entries/base.entry.js.map +1 -0
  184. package/src/common/entries/flow.entry.js.map +1 -0
  185. package/src/common/entries/hook.entry.js.map +1 -0
  186. package/src/common/entries/index.js.map +1 -0
  187. package/src/common/entries/logger.entry.js.map +1 -0
  188. package/src/common/entries/plugin.entry.js.map +1 -0
  189. package/src/common/entries/prompt.entry.js.map +1 -0
  190. package/src/common/entries/provider.entry.js.map +1 -0
  191. package/src/common/entries/resource.entry.js.map +1 -0
  192. package/src/common/entries/scope.entry.js.map +1 -0
  193. package/src/common/entries/tool.entry.js.map +1 -0
  194. package/src/common/index.d.ts +17 -0
  195. package/src/common/index.js +21 -0
  196. package/src/common/index.js.map +1 -0
  197. package/src/common/interfaces/adapter.interface.js.map +1 -0
  198. package/src/common/interfaces/app.interface.js.map +1 -0
  199. package/src/common/interfaces/auth-hook.interface.js.map +1 -0
  200. package/src/common/interfaces/auth-provider.interface.js.map +1 -0
  201. package/src/common/interfaces/base.interface.js.map +1 -0
  202. package/src/common/interfaces/flow.interface.d.ts +41 -0
  203. package/src/common/interfaces/flow.interface.js.map +1 -0
  204. package/src/common/interfaces/front-mcp.interface.js.map +1 -0
  205. package/src/common/interfaces/hook.interface.js.map +1 -0
  206. package/src/common/interfaces/index.js.map +1 -0
  207. package/src/common/interfaces/internal/flow.utils.d.ts +23 -0
  208. package/src/common/interfaces/internal/flow.utils.js.map +1 -0
  209. package/src/common/interfaces/internal/index.js.map +1 -0
  210. package/src/common/interfaces/internal/primary-auth-provider.interface.d.ts +24 -0
  211. package/src/common/interfaces/internal/primary-auth-provider.interface.js.map +1 -0
  212. package/src/common/interfaces/internal/registry.interface.d.ts +95 -0
  213. package/src/common/interfaces/internal/registry.interface.js.map +1 -0
  214. package/src/common/interfaces/logger.interface.js.map +1 -0
  215. package/src/common/interfaces/plugin.interface.js.map +1 -0
  216. package/src/common/interfaces/prompt.interface.js.map +1 -0
  217. package/src/common/interfaces/provider.interface.js.map +1 -0
  218. package/src/common/interfaces/resource.interface.js.map +1 -0
  219. package/src/common/interfaces/scope.interface.js.map +1 -0
  220. package/src/common/interfaces/server.interface.js.map +1 -0
  221. package/src/common/interfaces/session-hook.interface.js.map +1 -0
  222. package/src/common/interfaces/tool-hook.interface.js.map +1 -0
  223. package/src/common/interfaces/tool.interface.js.map +1 -0
  224. package/src/common/metadata/adapter.metadata.js.map +1 -0
  225. package/src/common/metadata/app.metadata.d.ts +872 -0
  226. package/src/common/metadata/app.metadata.js.map +1 -0
  227. package/src/common/metadata/auth-provider.metadata.js.map +1 -0
  228. package/src/common/metadata/flow.metadata.d.ts +77 -0
  229. package/src/common/metadata/flow.metadata.js.map +1 -0
  230. package/src/common/metadata/front-mcp.metadata.d.ts +1144 -0
  231. package/src/common/metadata/front-mcp.metadata.js.map +1 -0
  232. package/src/common/metadata/hook.metadata.js.map +1 -0
  233. package/src/common/metadata/index.js.map +1 -0
  234. package/src/common/metadata/logger.metadata.js.map +1 -0
  235. package/src/common/metadata/plugin.metadata.js.map +1 -0
  236. package/src/common/metadata/prompt.metadata.js.map +1 -0
  237. package/src/common/metadata/provider.metadata.js.map +1 -0
  238. package/src/common/metadata/resource.metadata.js.map +1 -0
  239. package/src/common/metadata/tool.metadata.d.ts +178 -0
  240. package/src/common/metadata/tool.metadata.js.map +1 -0
  241. package/src/common/providers/session.provider.js.map +1 -0
  242. package/src/common/records/adapter.record.js.map +1 -0
  243. package/src/common/records/app.record.js.map +1 -0
  244. package/src/common/records/auth-provider.record.js.map +1 -0
  245. package/src/common/records/flow.record.js.map +1 -0
  246. package/src/common/records/hook.record.js.map +1 -0
  247. package/src/common/records/index.js.map +1 -0
  248. package/src/common/records/logger.record.d.ts +11 -0
  249. package/src/common/records/logger.record.js.map +1 -0
  250. package/src/common/records/plugin.record.js.map +1 -0
  251. package/src/common/records/prompt.record.js.map +1 -0
  252. package/src/common/records/provider.record.js.map +1 -0
  253. package/src/common/records/resource.record.js.map +1 -0
  254. package/src/common/records/scope.record.js.map +1 -0
  255. package/src/common/records/tool.record.js.map +1 -0
  256. package/src/common/schemas/annotated-class.schema.js.map +1 -0
  257. package/src/common/schemas/http-input.schema.js.map +1 -0
  258. package/src/common/schemas/http-output.schema.d.ts +2011 -0
  259. package/src/common/schemas/http-output.schema.js.map +1 -0
  260. package/src/common/schemas/index.js.map +1 -0
  261. package/src/common/tokens/adapter.tokens.js.map +1 -0
  262. package/src/common/tokens/app.tokens.js.map +1 -0
  263. package/src/common/tokens/auth-provider.tokens.js.map +1 -0
  264. package/src/common/tokens/base.tokens.js.map +1 -0
  265. package/src/common/tokens/flow-hook.tokens.js.map +1 -0
  266. package/src/common/tokens/flow.tokens.js.map +1 -0
  267. package/src/common/tokens/front-mcp.tokens.js.map +1 -0
  268. package/src/common/tokens/index.js.map +1 -0
  269. package/src/common/tokens/logger.tokens.js.map +1 -0
  270. package/src/common/tokens/plugin.tokens.js.map +1 -0
  271. package/src/common/tokens/prompt.tokens.js.map +1 -0
  272. package/src/common/tokens/provider.tokens.js.map +1 -0
  273. package/src/common/tokens/resource.tokens.js.map +1 -0
  274. package/src/common/tokens/server.tokens.js.map +1 -0
  275. package/src/common/tokens/tool.tokens.js.map +1 -0
  276. package/src/common/types/auth/index.js.map +1 -0
  277. package/src/common/types/auth/jwt.types.js.map +1 -0
  278. package/src/common/types/auth/session.types.d.ts +263 -0
  279. package/src/common/types/auth/session.types.js.map +1 -0
  280. package/src/common/types/common.types.js.map +1 -0
  281. package/src/common/types/index.js.map +1 -0
  282. package/src/common/types/options/auth.options.d.ts +513 -0
  283. package/src/common/types/options/auth.options.js.map +1 -0
  284. package/src/common/types/options/http.options.js.map +1 -0
  285. package/src/common/types/options/index.js.map +1 -0
  286. package/src/common/types/options/logging.options.d.ts +39 -0
  287. package/src/common/types/options/logging.options.js.map +1 -0
  288. package/src/common/types/options/server-info.options.d.ts +48 -0
  289. package/src/common/types/options/server-info.options.js.map +1 -0
  290. package/src/common/types/options/session.options.d.ts +67 -0
  291. package/src/common/types/options/session.options.js.map +1 -0
  292. package/src/common/utils/decide-request-intent.utils.d.ts +79 -0
  293. package/src/common/utils/decide-request-intent.utils.js.map +1 -0
  294. package/src/common/utils/index.js.map +1 -0
  295. package/src/common/utils/path.utils.d.ts +20 -0
  296. package/src/common/utils/path.utils.js.map +1 -0
  297. package/src/exceptions/mcp-exceptions/session-missing.exception.d.ts +3 -0
  298. package/src/exceptions/mcp-exceptions/session-missing.exception.js +11 -0
  299. package/src/exceptions/mcp-exceptions/session-missing.exception.js.map +1 -0
  300. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.d.ts +5 -0
  301. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.js +15 -0
  302. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.js.map +1 -0
  303. package/src/flows/flow.instance.d.ts +16 -0
  304. package/src/flows/flow.instance.js +332 -0
  305. package/src/flows/flow.instance.js.map +1 -0
  306. package/src/flows/flow.registry.d.ts +14 -0
  307. package/src/flows/flow.registry.js +79 -0
  308. package/src/flows/flow.registry.js.map +1 -0
  309. package/src/flows/flow.stages.d.ts +12 -0
  310. package/src/flows/flow.stages.js +110 -0
  311. package/src/flows/flow.stages.js.map +1 -0
  312. package/src/flows/flow.utils.d.ts +8 -0
  313. package/src/flows/flow.utils.js +36 -0
  314. package/src/flows/flow.utils.js.map +1 -0
  315. package/src/front-mcp/front-mcp.d.ts +12 -0
  316. package/src/front-mcp/front-mcp.js +44 -0
  317. package/src/front-mcp/front-mcp.js.map +1 -0
  318. package/src/front-mcp/front-mcp.providers.d.ts +198 -0
  319. package/src/front-mcp/front-mcp.providers.js +30 -0
  320. package/src/front-mcp/front-mcp.providers.js.map +1 -0
  321. package/src/front-mcp/front-mcp.tokens.d.ts +2 -0
  322. package/src/front-mcp/front-mcp.tokens.js +5 -0
  323. package/src/front-mcp/front-mcp.tokens.js.map +1 -0
  324. package/src/front-mcp/index.d.ts +1 -0
  325. package/src/front-mcp/index.js +5 -0
  326. package/src/front-mcp/index.js.map +1 -0
  327. package/src/hooks/hook.instance.d.ts +7 -0
  328. package/src/hooks/hook.instance.js +23 -0
  329. package/src/hooks/hook.instance.js.map +1 -0
  330. package/src/hooks/hook.registry.d.ts +34 -0
  331. package/src/hooks/hook.registry.js +138 -0
  332. package/src/hooks/hook.registry.js.map +1 -0
  333. package/src/hooks/hooks.utils.d.ts +3 -0
  334. package/src/hooks/hooks.utils.js +27 -0
  335. package/src/hooks/hooks.utils.js.map +1 -0
  336. package/src/index.d.ts +21 -18
  337. package/src/index.js +9 -18
  338. package/src/index.js.map +1 -1
  339. package/src/logger/instances/instance.console-logger.d.ts +10 -0
  340. package/src/logger/instances/instance.console-logger.js +75 -0
  341. package/src/logger/instances/instance.console-logger.js.map +1 -0
  342. package/src/logger/instances/instance.logger.d.ts +24 -0
  343. package/src/logger/instances/instance.logger.js +77 -0
  344. package/src/logger/instances/instance.logger.js.map +1 -0
  345. package/src/logger/logger.registry.d.ts +13 -0
  346. package/src/logger/logger.registry.js +91 -0
  347. package/src/logger/logger.registry.js.map +1 -0
  348. package/src/logger/logger.tokens.d.ts +1 -0
  349. package/src/logger/logger.tokens.js +3 -0
  350. package/src/logger/logger.tokens.js.map +1 -0
  351. package/src/logger/logger.types.d.ts +10 -0
  352. package/src/logger/logger.types.js +8 -0
  353. package/src/logger/logger.types.js.map +1 -0
  354. package/src/logger/logger.utils.d.ts +15 -0
  355. package/src/logger/logger.utils.js +42 -0
  356. package/src/logger/logger.utils.js.map +1 -0
  357. package/src/plugin/plugin.registry.d.ts +24 -0
  358. package/src/plugin/plugin.registry.js +137 -0
  359. package/src/plugin/plugin.registry.js.map +1 -0
  360. package/src/plugin/plugin.utils.d.ts +10 -0
  361. package/src/plugin/plugin.utils.js +88 -0
  362. package/src/plugin/plugin.utils.js.map +1 -0
  363. package/src/prompt/prompt.registry.d.ts +16 -0
  364. package/src/prompt/prompt.registry.js +34 -0
  365. package/src/prompt/prompt.registry.js.map +1 -0
  366. package/src/provider/provider.registry.d.ts +75 -0
  367. package/src/provider/provider.registry.js +679 -0
  368. package/src/provider/provider.registry.js.map +1 -0
  369. package/src/provider/provider.types.d.ts +9 -0
  370. package/src/provider/provider.types.js +3 -0
  371. package/src/provider/provider.types.js.map +1 -0
  372. package/src/provider/provider.utils.d.ts +13 -0
  373. package/src/provider/provider.utils.js +103 -0
  374. package/src/provider/provider.utils.js.map +1 -0
  375. package/src/regsitry/index.d.ts +1 -0
  376. package/src/regsitry/index.js +5 -0
  377. package/src/regsitry/index.js.map +1 -0
  378. package/src/regsitry/registry.base.d.ts +25 -0
  379. package/src/regsitry/registry.base.js +32 -0
  380. package/src/regsitry/registry.base.js.map +1 -0
  381. package/src/resource/resource.registry.d.ts +15 -0
  382. package/src/resource/resource.registry.js +31 -0
  383. package/src/resource/resource.registry.js.map +1 -0
  384. package/src/scope/flows/http.request.flow.d.ts +384 -0
  385. package/src/scope/flows/http.request.flow.js +210 -0
  386. package/src/scope/flows/http.request.flow.js.map +1 -0
  387. package/src/scope/index.d.ts +1 -0
  388. package/src/scope/index.js +6 -0
  389. package/src/scope/index.js.map +1 -0
  390. package/src/scope/scope.instance.d.ts +35 -0
  391. package/src/scope/scope.instance.js +120 -0
  392. package/src/scope/scope.instance.js.map +1 -0
  393. package/src/scope/scope.registry.d.ts +10 -0
  394. package/src/scope/scope.registry.js +93 -0
  395. package/src/scope/scope.registry.js.map +1 -0
  396. package/src/scope/scope.utils.d.ts +13 -0
  397. package/src/scope/scope.utils.js +59 -0
  398. package/src/scope/scope.utils.js.map +1 -0
  399. package/src/server/adapters/base.host.adapter.d.ts +7 -0
  400. package/src/server/adapters/base.host.adapter.js +8 -0
  401. package/src/server/adapters/base.host.adapter.js.map +1 -0
  402. package/src/server/adapters/express.host.adapter.d.ts +12 -0
  403. package/src/server/adapters/express.host.adapter.js +50 -0
  404. package/src/server/adapters/express.host.adapter.js.map +1 -0
  405. package/src/server/server.instance.d.ts +12 -0
  406. package/src/server/server.instance.js +47 -0
  407. package/src/server/server.instance.js.map +1 -0
  408. package/src/server/server.types.d.ts +24 -0
  409. package/src/server/server.types.js +3 -0
  410. package/src/server/server.types.js.map +1 -0
  411. package/src/server/server.validation.d.ts +2 -0
  412. package/src/server/server.validation.js +192 -0
  413. package/src/server/server.validation.js.map +1 -0
  414. package/src/store/adapters/store.base.adapter.d.ts +21 -0
  415. package/src/store/adapters/store.base.adapter.js +16 -0
  416. package/src/store/adapters/store.base.adapter.js.map +1 -0
  417. package/src/store/adapters/store.memory.adapter.d.ts +26 -0
  418. package/src/store/adapters/store.memory.adapter.js +87 -0
  419. package/src/store/adapters/store.memory.adapter.js.map +1 -0
  420. package/src/store/adapters/store.redis.adapter.d.ts +33 -0
  421. package/src/store/adapters/store.redis.adapter.js +104 -0
  422. package/src/store/adapters/store.redis.adapter.js.map +1 -0
  423. package/src/store/index.d.ts +8 -0
  424. package/src/store/index.js +12 -0
  425. package/src/store/index.js.map +1 -0
  426. package/src/store/store.helpers.d.ts +9 -0
  427. package/src/store/store.helpers.js +67 -0
  428. package/src/store/store.helpers.js.map +1 -0
  429. package/src/store/store.registry.d.ts +13 -0
  430. package/src/store/store.registry.js +37 -0
  431. package/src/store/store.registry.js.map +1 -0
  432. package/src/store/store.tokens.d.ts +3 -0
  433. package/src/store/store.tokens.js +7 -0
  434. package/src/store/store.tokens.js.map +1 -0
  435. package/src/store/store.types.d.ts +64 -0
  436. package/src/store/store.types.js +11 -0
  437. package/src/store/store.types.js.map +1 -0
  438. package/src/store/store.utils.d.ts +8 -0
  439. package/src/store/store.utils.js +18 -0
  440. package/src/store/store.utils.js.map +1 -0
  441. package/src/tool/flows/call-tool.flow.d.ts +875 -0
  442. package/src/tool/flows/call-tool.flow.js +249 -0
  443. package/src/tool/flows/call-tool.flow.js.map +1 -0
  444. package/src/tool/flows/tools-list.flow.d.ts +771 -0
  445. package/src/tool/flows/tools-list.flow.js +149 -0
  446. package/src/tool/flows/tools-list.flow.js.map +1 -0
  447. package/src/tool/tool.events.d.ts +17 -0
  448. package/src/tool/tool.events.js +16 -0
  449. package/src/tool/tool.events.js.map +1 -0
  450. package/src/tool/tool.instance.d.ts +15 -0
  451. package/src/tool/tool.instance.js +68 -0
  452. package/src/tool/tool.instance.js.map +1 -0
  453. package/src/tool/tool.registry.d.ts +72 -0
  454. package/src/tool/tool.registry.js +339 -0
  455. package/src/tool/tool.registry.js.map +1 -0
  456. package/src/tool/tool.types.d.ts +25 -0
  457. package/src/tool/tool.types.js +10 -0
  458. package/src/tool/tool.types.js.map +1 -0
  459. package/src/tool/tool.utils.d.ts +20 -0
  460. package/src/tool/tool.utils.js +157 -0
  461. package/src/tool/tool.utils.js.map +1 -0
  462. package/src/transport/adapters/transport.local.adapter.d.ts +41 -0
  463. package/src/transport/adapters/transport.local.adapter.js +127 -0
  464. package/src/transport/adapters/transport.local.adapter.js.map +1 -0
  465. package/src/transport/adapters/transport.sse.adapter.d.ts +14 -0
  466. package/src/transport/adapters/transport.sse.adapter.js +63 -0
  467. package/src/transport/adapters/transport.sse.adapter.js.map +1 -0
  468. package/src/transport/adapters/transport.streamable-http.adapter.d.ts +13 -0
  469. package/src/transport/adapters/transport.streamable-http.adapter.js +65 -0
  470. package/src/transport/adapters/transport.streamable-http.adapter.js.map +1 -0
  471. package/src/transport/flows/handle.sse.flow.d.ts +92 -0
  472. package/src/transport/flows/handle.sse.flow.js +129 -0
  473. package/src/transport/flows/handle.sse.flow.js.map +1 -0
  474. package/src/transport/flows/handle.streamable-http.flow.d.ts +93 -0
  475. package/src/transport/flows/handle.streamable-http.flow.js +125 -0
  476. package/src/transport/flows/handle.streamable-http.flow.js.map +1 -0
  477. package/src/transport/legacy/legacy.sse.tranporter.d.ts +75 -0
  478. package/src/transport/legacy/legacy.sse.tranporter.js +170 -0
  479. package/src/transport/legacy/legacy.sse.tranporter.js.map +1 -0
  480. package/src/transport/mcp-handlers/Initialized-notification.hanlder.d.ts +3 -0
  481. package/src/transport/mcp-handlers/Initialized-notification.hanlder.js +14 -0
  482. package/src/transport/mcp-handlers/Initialized-notification.hanlder.js.map +1 -0
  483. package/src/transport/mcp-handlers/call-tool-request.handler.d.ts +3 -0
  484. package/src/transport/mcp-handlers/call-tool-request.handler.js +15 -0
  485. package/src/transport/mcp-handlers/call-tool-request.handler.js.map +1 -0
  486. package/src/transport/mcp-handlers/index.d.ts +521 -0
  487. package/src/transport/mcp-handlers/index.js +20 -0
  488. package/src/transport/mcp-handlers/index.js.map +1 -0
  489. package/src/transport/mcp-handlers/initialize-request.handler.d.ts +3 -0
  490. package/src/transport/mcp-handlers/initialize-request.handler.js +33 -0
  491. package/src/transport/mcp-handlers/initialize-request.handler.js.map +1 -0
  492. package/src/transport/mcp-handlers/list-tools-request.handler.d.ts +285 -0
  493. package/src/transport/mcp-handlers/list-tools-request.handler.js +11 -0
  494. package/src/transport/mcp-handlers/list-tools-request.handler.js.map +1 -0
  495. package/src/transport/mcp-handlers/mcp-handlers.types.d.ts +37 -0
  496. package/src/transport/mcp-handlers/mcp-handlers.types.js +3 -0
  497. package/src/transport/mcp-handlers/mcp-handlers.types.js.map +1 -0
  498. package/src/transport/transport.error.d.ts +4 -0
  499. package/src/transport/transport.error.js +25 -0
  500. package/src/transport/transport.error.js.map +1 -0
  501. package/src/transport/transport.event-store.d.ts +10 -0
  502. package/src/transport/transport.event-store.js +36 -0
  503. package/src/transport/transport.event-store.js.map +1 -0
  504. package/src/transport/transport.local.d.ts +17 -0
  505. package/src/transport/transport.local.js +65 -0
  506. package/src/transport/transport.local.js.map +1 -0
  507. package/src/transport/transport.registry.d.ts +23 -0
  508. package/src/transport/transport.registry.js +138 -0
  509. package/src/transport/transport.registry.js.map +1 -0
  510. package/src/transport/transport.remote.d.ts +15 -0
  511. package/src/transport/transport.remote.js +31 -0
  512. package/src/transport/transport.remote.js.map +1 -0
  513. package/src/transport/transport.types.d.ts +54 -0
  514. package/src/transport/transport.types.js +3 -0
  515. package/src/transport/transport.types.js.map +1 -0
  516. package/src/types/drinen-hooks.types.d.ts +20 -0
  517. package/src/types/drinen-hooks.types.js +3 -0
  518. package/src/types/drinen-hooks.types.js.map +1 -0
  519. package/src/types/invoke.type.d.ts +15 -0
  520. package/src/types/invoke.type.js +34 -0
  521. package/src/types/invoke.type.js.map +1 -0
  522. package/src/types/token.types.d.ts +1 -0
  523. package/src/types/token.types.js +3 -0
  524. package/src/types/token.types.js.map +1 -0
  525. package/src/utils/metadata.utils.d.ts +5 -0
  526. package/src/utils/metadata.utils.js +26 -0
  527. package/src/utils/metadata.utils.js.map +1 -0
  528. package/src/utils/server.utils.d.ts +19 -0
  529. package/src/utils/server.utils.js +59 -0
  530. package/src/utils/server.utils.js.map +1 -0
  531. package/src/utils/string.utils.d.ts +1 -0
  532. package/src/utils/string.utils.js +10 -0
  533. package/src/utils/string.utils.js.map +1 -0
  534. package/src/utils/token.utils.d.ts +11 -0
  535. package/src/utils/token.utils.js +65 -0
  536. package/src/utils/token.utils.js.map +1 -0
  537. package/src/utils/types.utils.d.ts +7 -0
  538. package/src/utils/types.utils.js +3 -0
  539. package/src/utils/types.utils.js.map +1 -0
  540. package/src/constants.d.ts +0 -30
  541. package/src/constants.js +0 -36
  542. package/src/constants.js.map +0 -1
  543. package/src/decorators/adapter.decorator.js.map +0 -1
  544. package/src/decorators/app.decorator.js.map +0 -1
  545. package/src/decorators/auth-provider.decorator.js.map +0 -1
  546. package/src/decorators/flow.decorator.js.map +0 -1
  547. package/src/decorators/front-mcp.decorator.js +0 -40
  548. package/src/decorators/front-mcp.decorator.js.map +0 -1
  549. package/src/decorators/hook.decorator.js.map +0 -1
  550. package/src/decorators/index.js.map +0 -1
  551. package/src/decorators/logger.decorator.js.map +0 -1
  552. package/src/decorators/plugin.decorator.js.map +0 -1
  553. package/src/decorators/prompt.decorator.js.map +0 -1
  554. package/src/decorators/provider.decorator.js.map +0 -1
  555. package/src/decorators/resource.decorator.js.map +0 -1
  556. package/src/decorators/tool.decorator.d.ts +0 -42
  557. package/src/decorators/tool.decorator.js +0 -45
  558. package/src/decorators/tool.decorator.js.map +0 -1
  559. package/src/decorators-old/async-with.decorator.d.ts +0 -9
  560. package/src/decorators-old/async-with.decorator.js +0 -23
  561. package/src/decorators-old/async-with.decorator.js.map +0 -1
  562. package/src/decorators-old/auth-hook.decorator.js.map +0 -1
  563. package/src/decorators-old/session-hook.decorator.js.map +0 -1
  564. package/src/decorators-old/tool-hook.decorator.d.ts +0 -14
  565. package/src/decorators-old/tool-hook.decorator.js +0 -27
  566. package/src/decorators-old/tool-hook.decorator.js.map +0 -1
  567. package/src/dynamic/dynamic.adapter.js.map +0 -1
  568. package/src/dynamic/dynamic.plugin.js.map +0 -1
  569. package/src/dynamic/dynamic.utils.d.ts +0 -3
  570. package/src/dynamic/dynamic.utils.js.map +0 -1
  571. package/src/dynamic/index.js.map +0 -1
  572. package/src/entries/adapter.entry.js.map +0 -1
  573. package/src/entries/app.entry.d.ts +0 -13
  574. package/src/entries/app.entry.js.map +0 -1
  575. package/src/entries/auth-provider.entry.js.map +0 -1
  576. package/src/entries/base.entry.js.map +0 -1
  577. package/src/entries/flow.entry.js.map +0 -1
  578. package/src/entries/hook.entry.js.map +0 -1
  579. package/src/entries/index.js.map +0 -1
  580. package/src/entries/logger.entry.js.map +0 -1
  581. package/src/entries/plugin.entry.js.map +0 -1
  582. package/src/entries/prompt.entry.js.map +0 -1
  583. package/src/entries/provider.entry.js.map +0 -1
  584. package/src/entries/resource.entry.js.map +0 -1
  585. package/src/entries/scope.entry.js.map +0 -1
  586. package/src/entries/tool.entry.js.map +0 -1
  587. package/src/interfaces/adapter.interface.js.map +0 -1
  588. package/src/interfaces/app.interface.js.map +0 -1
  589. package/src/interfaces/auth-hook.interface.js.map +0 -1
  590. package/src/interfaces/auth-provider.interface.js.map +0 -1
  591. package/src/interfaces/base.interface.js.map +0 -1
  592. package/src/interfaces/flow.interface.d.ts +0 -41
  593. package/src/interfaces/flow.interface.js.map +0 -1
  594. package/src/interfaces/front-mcp.interface.js.map +0 -1
  595. package/src/interfaces/hook.interface.js.map +0 -1
  596. package/src/interfaces/index.js.map +0 -1
  597. package/src/interfaces/internal/flow.utils.d.ts +0 -24
  598. package/src/interfaces/internal/flow.utils.js.map +0 -1
  599. package/src/interfaces/internal/index.js.map +0 -1
  600. package/src/interfaces/internal/primary-auth-provider.interface.d.ts +0 -24
  601. package/src/interfaces/internal/primary-auth-provider.interface.js.map +0 -1
  602. package/src/interfaces/internal/registry.interface.d.ts +0 -97
  603. package/src/interfaces/internal/registry.interface.js.map +0 -1
  604. package/src/interfaces/logger.interface.js.map +0 -1
  605. package/src/interfaces/plugin.interface.js.map +0 -1
  606. package/src/interfaces/prompt.interface.js.map +0 -1
  607. package/src/interfaces/provider.interface.js.map +0 -1
  608. package/src/interfaces/resource.interface.js.map +0 -1
  609. package/src/interfaces/scope.interface.js.map +0 -1
  610. package/src/interfaces/server.interface.js.map +0 -1
  611. package/src/interfaces/session-hook.interface.js.map +0 -1
  612. package/src/interfaces/tool-hook.interface.js.map +0 -1
  613. package/src/interfaces/tool.interface.js.map +0 -1
  614. package/src/metadata/adapter.metadata.js.map +0 -1
  615. package/src/metadata/app.metadata.d.ts +0 -872
  616. package/src/metadata/app.metadata.js.map +0 -1
  617. package/src/metadata/auth-provider.metadata.js.map +0 -1
  618. package/src/metadata/flow.metadata.d.ts +0 -77
  619. package/src/metadata/flow.metadata.js.map +0 -1
  620. package/src/metadata/front-mcp.metadata.d.ts +0 -1144
  621. package/src/metadata/front-mcp.metadata.js.map +0 -1
  622. package/src/metadata/hook.metadata.js.map +0 -1
  623. package/src/metadata/index.js.map +0 -1
  624. package/src/metadata/logger.metadata.js.map +0 -1
  625. package/src/metadata/plugin.metadata.js.map +0 -1
  626. package/src/metadata/prompt.metadata.js.map +0 -1
  627. package/src/metadata/provider.metadata.js.map +0 -1
  628. package/src/metadata/resource.metadata.js.map +0 -1
  629. package/src/metadata/tool.metadata.d.ts +0 -178
  630. package/src/metadata/tool.metadata.js.map +0 -1
  631. package/src/providers/session.provider.js.map +0 -1
  632. package/src/records/adapter.record.js.map +0 -1
  633. package/src/records/app.record.js.map +0 -1
  634. package/src/records/auth-provider.record.js.map +0 -1
  635. package/src/records/flow.record.js.map +0 -1
  636. package/src/records/hook.record.js.map +0 -1
  637. package/src/records/index.js.map +0 -1
  638. package/src/records/logger.record.d.ts +0 -11
  639. package/src/records/logger.record.js.map +0 -1
  640. package/src/records/plugin.record.js.map +0 -1
  641. package/src/records/prompt.record.js.map +0 -1
  642. package/src/records/provider.record.js.map +0 -1
  643. package/src/records/resource.record.js.map +0 -1
  644. package/src/records/scope.record.js.map +0 -1
  645. package/src/records/tool.record.js.map +0 -1
  646. package/src/schemas/annotated-class.schema.js.map +0 -1
  647. package/src/schemas/http-input.schema.js.map +0 -1
  648. package/src/schemas/http-output.schema.d.ts +0 -2011
  649. package/src/schemas/http-output.schema.js.map +0 -1
  650. package/src/schemas/index.js.map +0 -1
  651. package/src/tokens/adapter.tokens.js.map +0 -1
  652. package/src/tokens/app.tokens.js.map +0 -1
  653. package/src/tokens/auth-provider.tokens.js.map +0 -1
  654. package/src/tokens/base.tokens.js.map +0 -1
  655. package/src/tokens/flow-hook.tokens.js.map +0 -1
  656. package/src/tokens/flow.tokens.js.map +0 -1
  657. package/src/tokens/front-mcp.tokens.js.map +0 -1
  658. package/src/tokens/index.js.map +0 -1
  659. package/src/tokens/logger.tokens.js.map +0 -1
  660. package/src/tokens/plugin.tokens.js.map +0 -1
  661. package/src/tokens/prompt.tokens.js.map +0 -1
  662. package/src/tokens/provider.tokens.js.map +0 -1
  663. package/src/tokens/resource.tokens.js.map +0 -1
  664. package/src/tokens/server.tokens.js.map +0 -1
  665. package/src/tokens/tool.tokens.js.map +0 -1
  666. package/src/types/auth/index.js.map +0 -1
  667. package/src/types/auth/jwt.types.js.map +0 -1
  668. package/src/types/auth/session.types.d.ts +0 -263
  669. package/src/types/auth/session.types.js.map +0 -1
  670. package/src/types/common.types.js.map +0 -1
  671. package/src/types/index.js.map +0 -1
  672. package/src/types/options/auth.options.d.ts +0 -513
  673. package/src/types/options/auth.options.js.map +0 -1
  674. package/src/types/options/http.options.js.map +0 -1
  675. package/src/types/options/index.js.map +0 -1
  676. package/src/types/options/logging.options.d.ts +0 -39
  677. package/src/types/options/logging.options.js.map +0 -1
  678. package/src/types/options/server-info.options.d.ts +0 -48
  679. package/src/types/options/server-info.options.js.map +0 -1
  680. package/src/types/options/session.options.d.ts +0 -67
  681. package/src/types/options/session.options.js.map +0 -1
  682. package/src/utils/decide-request-intent.utils.d.ts +0 -79
  683. package/src/utils/decide-request-intent.utils.js.map +0 -1
  684. package/src/utils/index.js.map +0 -1
  685. package/src/utils/path.utils.d.ts +0 -20
  686. package/src/utils/path.utils.js.map +0 -1
  687. /package/src/{decorators → common/decorators}/adapter.decorator.d.ts +0 -0
  688. /package/src/{decorators → common/decorators}/adapter.decorator.js +0 -0
  689. /package/src/{decorators → common/decorators}/app.decorator.d.ts +0 -0
  690. /package/src/{decorators → common/decorators}/app.decorator.js +0 -0
  691. /package/src/{decorators → common/decorators}/auth-provider.decorator.d.ts +0 -0
  692. /package/src/{decorators → common/decorators}/auth-provider.decorator.js +0 -0
  693. /package/src/{decorators → common/decorators}/flow.decorator.d.ts +0 -0
  694. /package/src/{decorators → common/decorators}/flow.decorator.js +0 -0
  695. /package/src/{decorators → common/decorators}/front-mcp.decorator.d.ts +0 -0
  696. /package/src/{decorators → common/decorators}/hook.decorator.d.ts +0 -0
  697. /package/src/{decorators → common/decorators}/hook.decorator.js +0 -0
  698. /package/src/{decorators → common/decorators}/index.d.ts +0 -0
  699. /package/src/{decorators → common/decorators}/index.js +0 -0
  700. /package/src/{decorators → common/decorators}/logger.decorator.d.ts +0 -0
  701. /package/src/{decorators → common/decorators}/logger.decorator.js +0 -0
  702. /package/src/{decorators → common/decorators}/plugin.decorator.d.ts +0 -0
  703. /package/src/{decorators → common/decorators}/plugin.decorator.js +0 -0
  704. /package/src/{decorators → common/decorators}/prompt.decorator.d.ts +0 -0
  705. /package/src/{decorators → common/decorators}/prompt.decorator.js +0 -0
  706. /package/src/{decorators → common/decorators}/provider.decorator.d.ts +0 -0
  707. /package/src/{decorators → common/decorators}/provider.decorator.js +0 -0
  708. /package/src/{decorators → common/decorators}/resource.decorator.d.ts +0 -0
  709. /package/src/{decorators → common/decorators}/resource.decorator.js +0 -0
  710. /package/src/{decorators-old → common/decorators-old}/auth-hook.decorator.d.ts +0 -0
  711. /package/src/{decorators-old → common/decorators-old}/auth-hook.decorator.js +0 -0
  712. /package/src/{decorators-old → common/decorators-old}/session-hook.decorator.d.ts +0 -0
  713. /package/src/{decorators-old → common/decorators-old}/session-hook.decorator.js +0 -0
  714. /package/src/{dynamic → common/dynamic}/dynamic.adapter.d.ts +0 -0
  715. /package/src/{dynamic → common/dynamic}/dynamic.adapter.js +0 -0
  716. /package/src/{dynamic → common/dynamic}/dynamic.plugin.d.ts +0 -0
  717. /package/src/{dynamic → common/dynamic}/dynamic.plugin.js +0 -0
  718. /package/src/{dynamic → common/dynamic}/dynamic.utils.js +0 -0
  719. /package/src/{dynamic → common/dynamic}/index.d.ts +0 -0
  720. /package/src/{dynamic → common/dynamic}/index.js +0 -0
  721. /package/src/{entries → common/entries}/adapter.entry.d.ts +0 -0
  722. /package/src/{entries → common/entries}/adapter.entry.js +0 -0
  723. /package/src/{entries → common/entries}/app.entry.js +0 -0
  724. /package/src/{entries → common/entries}/auth-provider.entry.d.ts +0 -0
  725. /package/src/{entries → common/entries}/auth-provider.entry.js +0 -0
  726. /package/src/{entries → common/entries}/base.entry.d.ts +0 -0
  727. /package/src/{entries → common/entries}/base.entry.js +0 -0
  728. /package/src/{entries → common/entries}/flow.entry.d.ts +0 -0
  729. /package/src/{entries → common/entries}/flow.entry.js +0 -0
  730. /package/src/{entries → common/entries}/hook.entry.d.ts +0 -0
  731. /package/src/{entries → common/entries}/hook.entry.js +0 -0
  732. /package/src/{entries → common/entries}/index.d.ts +0 -0
  733. /package/src/{entries → common/entries}/index.js +0 -0
  734. /package/src/{entries → common/entries}/logger.entry.d.ts +0 -0
  735. /package/src/{entries → common/entries}/logger.entry.js +0 -0
  736. /package/src/{entries → common/entries}/plugin.entry.d.ts +0 -0
  737. /package/src/{entries → common/entries}/plugin.entry.js +0 -0
  738. /package/src/{entries → common/entries}/prompt.entry.d.ts +0 -0
  739. /package/src/{entries → common/entries}/prompt.entry.js +0 -0
  740. /package/src/{entries → common/entries}/provider.entry.d.ts +0 -0
  741. /package/src/{entries → common/entries}/provider.entry.js +0 -0
  742. /package/src/{entries → common/entries}/resource.entry.d.ts +0 -0
  743. /package/src/{entries → common/entries}/resource.entry.js +0 -0
  744. /package/src/{entries → common/entries}/scope.entry.d.ts +0 -0
  745. /package/src/{entries → common/entries}/scope.entry.js +0 -0
  746. /package/src/{entries → common/entries}/tool.entry.d.ts +0 -0
  747. /package/src/{entries → common/entries}/tool.entry.js +0 -0
  748. /package/src/{interfaces → common/interfaces}/adapter.interface.d.ts +0 -0
  749. /package/src/{interfaces → common/interfaces}/adapter.interface.js +0 -0
  750. /package/src/{interfaces → common/interfaces}/app.interface.d.ts +0 -0
  751. /package/src/{interfaces → common/interfaces}/app.interface.js +0 -0
  752. /package/src/{interfaces → common/interfaces}/auth-hook.interface.d.ts +0 -0
  753. /package/src/{interfaces → common/interfaces}/auth-hook.interface.js +0 -0
  754. /package/src/{interfaces → common/interfaces}/auth-provider.interface.d.ts +0 -0
  755. /package/src/{interfaces → common/interfaces}/auth-provider.interface.js +0 -0
  756. /package/src/{interfaces → common/interfaces}/base.interface.d.ts +0 -0
  757. /package/src/{interfaces → common/interfaces}/base.interface.js +0 -0
  758. /package/src/{interfaces → common/interfaces}/flow.interface.js +0 -0
  759. /package/src/{interfaces → common/interfaces}/front-mcp.interface.d.ts +0 -0
  760. /package/src/{interfaces → common/interfaces}/front-mcp.interface.js +0 -0
  761. /package/src/{interfaces → common/interfaces}/hook.interface.d.ts +0 -0
  762. /package/src/{interfaces → common/interfaces}/hook.interface.js +0 -0
  763. /package/src/{interfaces → common/interfaces}/index.d.ts +0 -0
  764. /package/src/{interfaces → common/interfaces}/index.js +0 -0
  765. /package/src/{interfaces → common/interfaces}/internal/flow.utils.js +0 -0
  766. /package/src/{interfaces → common/interfaces}/internal/index.d.ts +0 -0
  767. /package/src/{interfaces → common/interfaces}/internal/index.js +0 -0
  768. /package/src/{interfaces → common/interfaces}/internal/primary-auth-provider.interface.js +0 -0
  769. /package/src/{interfaces → common/interfaces}/internal/registry.interface.js +0 -0
  770. /package/src/{interfaces → common/interfaces}/logger.interface.d.ts +0 -0
  771. /package/src/{interfaces → common/interfaces}/logger.interface.js +0 -0
  772. /package/src/{interfaces → common/interfaces}/plugin.interface.d.ts +0 -0
  773. /package/src/{interfaces → common/interfaces}/plugin.interface.js +0 -0
  774. /package/src/{interfaces → common/interfaces}/prompt.interface.d.ts +0 -0
  775. /package/src/{interfaces → common/interfaces}/prompt.interface.js +0 -0
  776. /package/src/{interfaces → common/interfaces}/provider.interface.d.ts +0 -0
  777. /package/src/{interfaces → common/interfaces}/provider.interface.js +0 -0
  778. /package/src/{interfaces → common/interfaces}/resource.interface.d.ts +0 -0
  779. /package/src/{interfaces → common/interfaces}/resource.interface.js +0 -0
  780. /package/src/{interfaces → common/interfaces}/scope.interface.d.ts +0 -0
  781. /package/src/{interfaces → common/interfaces}/scope.interface.js +0 -0
  782. /package/src/{interfaces → common/interfaces}/server.interface.d.ts +0 -0
  783. /package/src/{interfaces → common/interfaces}/server.interface.js +0 -0
  784. /package/src/{interfaces → common/interfaces}/session-hook.interface.d.ts +0 -0
  785. /package/src/{interfaces → common/interfaces}/session-hook.interface.js +0 -0
  786. /package/src/{interfaces → common/interfaces}/tool-hook.interface.d.ts +0 -0
  787. /package/src/{interfaces → common/interfaces}/tool-hook.interface.js +0 -0
  788. /package/src/{interfaces → common/interfaces}/tool.interface.d.ts +0 -0
  789. /package/src/{interfaces → common/interfaces}/tool.interface.js +0 -0
  790. /package/src/{metadata → common/metadata}/adapter.metadata.d.ts +0 -0
  791. /package/src/{metadata → common/metadata}/adapter.metadata.js +0 -0
  792. /package/src/{metadata → common/metadata}/app.metadata.js +0 -0
  793. /package/src/{metadata → common/metadata}/auth-provider.metadata.d.ts +0 -0
  794. /package/src/{metadata → common/metadata}/auth-provider.metadata.js +0 -0
  795. /package/src/{metadata → common/metadata}/flow.metadata.js +0 -0
  796. /package/src/{metadata → common/metadata}/front-mcp.metadata.js +0 -0
  797. /package/src/{metadata → common/metadata}/hook.metadata.d.ts +0 -0
  798. /package/src/{metadata → common/metadata}/hook.metadata.js +0 -0
  799. /package/src/{metadata → common/metadata}/index.d.ts +0 -0
  800. /package/src/{metadata → common/metadata}/index.js +0 -0
  801. /package/src/{metadata → common/metadata}/logger.metadata.d.ts +0 -0
  802. /package/src/{metadata → common/metadata}/logger.metadata.js +0 -0
  803. /package/src/{metadata → common/metadata}/plugin.metadata.d.ts +0 -0
  804. /package/src/{metadata → common/metadata}/plugin.metadata.js +0 -0
  805. /package/src/{metadata → common/metadata}/prompt.metadata.d.ts +0 -0
  806. /package/src/{metadata → common/metadata}/prompt.metadata.js +0 -0
  807. /package/src/{metadata → common/metadata}/provider.metadata.d.ts +0 -0
  808. /package/src/{metadata → common/metadata}/provider.metadata.js +0 -0
  809. /package/src/{metadata → common/metadata}/resource.metadata.d.ts +0 -0
  810. /package/src/{metadata → common/metadata}/resource.metadata.js +0 -0
  811. /package/src/{metadata → common/metadata}/tool.metadata.js +0 -0
  812. /package/src/{providers → common/providers}/session.provider.d.ts +0 -0
  813. /package/src/{providers → common/providers}/session.provider.js +0 -0
  814. /package/src/{records → common/records}/adapter.record.d.ts +0 -0
  815. /package/src/{records → common/records}/adapter.record.js +0 -0
  816. /package/src/{records → common/records}/app.record.d.ts +0 -0
  817. /package/src/{records → common/records}/app.record.js +0 -0
  818. /package/src/{records → common/records}/auth-provider.record.d.ts +0 -0
  819. /package/src/{records → common/records}/auth-provider.record.js +0 -0
  820. /package/src/{records → common/records}/flow.record.d.ts +0 -0
  821. /package/src/{records → common/records}/flow.record.js +0 -0
  822. /package/src/{records → common/records}/hook.record.d.ts +0 -0
  823. /package/src/{records → common/records}/hook.record.js +0 -0
  824. /package/src/{records → common/records}/index.d.ts +0 -0
  825. /package/src/{records → common/records}/index.js +0 -0
  826. /package/src/{records → common/records}/logger.record.js +0 -0
  827. /package/src/{records → common/records}/plugin.record.d.ts +0 -0
  828. /package/src/{records → common/records}/plugin.record.js +0 -0
  829. /package/src/{records → common/records}/prompt.record.d.ts +0 -0
  830. /package/src/{records → common/records}/prompt.record.js +0 -0
  831. /package/src/{records → common/records}/provider.record.d.ts +0 -0
  832. /package/src/{records → common/records}/provider.record.js +0 -0
  833. /package/src/{records → common/records}/resource.record.d.ts +0 -0
  834. /package/src/{records → common/records}/resource.record.js +0 -0
  835. /package/src/{records → common/records}/scope.record.d.ts +0 -0
  836. /package/src/{records → common/records}/scope.record.js +0 -0
  837. /package/src/{records → common/records}/tool.record.d.ts +0 -0
  838. /package/src/{records → common/records}/tool.record.js +0 -0
  839. /package/src/{schemas → common/schemas}/annotated-class.schema.d.ts +0 -0
  840. /package/src/{schemas → common/schemas}/annotated-class.schema.js +0 -0
  841. /package/src/{schemas → common/schemas}/http-input.schema.d.ts +0 -0
  842. /package/src/{schemas → common/schemas}/http-input.schema.js +0 -0
  843. /package/src/{schemas → common/schemas}/http-output.schema.js +0 -0
  844. /package/src/{schemas → common/schemas}/index.d.ts +0 -0
  845. /package/src/{schemas → common/schemas}/index.js +0 -0
  846. /package/src/{tokens → common/tokens}/adapter.tokens.d.ts +0 -0
  847. /package/src/{tokens → common/tokens}/adapter.tokens.js +0 -0
  848. /package/src/{tokens → common/tokens}/app.tokens.d.ts +0 -0
  849. /package/src/{tokens → common/tokens}/app.tokens.js +0 -0
  850. /package/src/{tokens → common/tokens}/auth-provider.tokens.d.ts +0 -0
  851. /package/src/{tokens → common/tokens}/auth-provider.tokens.js +0 -0
  852. /package/src/{tokens → common/tokens}/base.tokens.d.ts +0 -0
  853. /package/src/{tokens → common/tokens}/base.tokens.js +0 -0
  854. /package/src/{tokens → common/tokens}/flow-hook.tokens.d.ts +0 -0
  855. /package/src/{tokens → common/tokens}/flow-hook.tokens.js +0 -0
  856. /package/src/{tokens → common/tokens}/flow.tokens.d.ts +0 -0
  857. /package/src/{tokens → common/tokens}/flow.tokens.js +0 -0
  858. /package/src/{tokens → common/tokens}/front-mcp.tokens.d.ts +0 -0
  859. /package/src/{tokens → common/tokens}/front-mcp.tokens.js +0 -0
  860. /package/src/{tokens → common/tokens}/index.d.ts +0 -0
  861. /package/src/{tokens → common/tokens}/index.js +0 -0
  862. /package/src/{tokens → common/tokens}/logger.tokens.d.ts +0 -0
  863. /package/src/{tokens → common/tokens}/logger.tokens.js +0 -0
  864. /package/src/{tokens → common/tokens}/plugin.tokens.d.ts +0 -0
  865. /package/src/{tokens → common/tokens}/plugin.tokens.js +0 -0
  866. /package/src/{tokens → common/tokens}/prompt.tokens.d.ts +0 -0
  867. /package/src/{tokens → common/tokens}/prompt.tokens.js +0 -0
  868. /package/src/{tokens → common/tokens}/provider.tokens.d.ts +0 -0
  869. /package/src/{tokens → common/tokens}/provider.tokens.js +0 -0
  870. /package/src/{tokens → common/tokens}/resource.tokens.d.ts +0 -0
  871. /package/src/{tokens → common/tokens}/resource.tokens.js +0 -0
  872. /package/src/{tokens → common/tokens}/server.tokens.d.ts +0 -0
  873. /package/src/{tokens → common/tokens}/server.tokens.js +0 -0
  874. /package/src/{tokens → common/tokens}/tool.tokens.d.ts +0 -0
  875. /package/src/{tokens → common/tokens}/tool.tokens.js +0 -0
  876. /package/src/{types → common/types}/auth/index.d.ts +0 -0
  877. /package/src/{types → common/types}/auth/index.js +0 -0
  878. /package/src/{types → common/types}/auth/jwt.types.d.ts +0 -0
  879. /package/src/{types → common/types}/auth/jwt.types.js +0 -0
  880. /package/src/{types → common/types}/auth/session.types.js +0 -0
  881. /package/src/{types → common/types}/common.types.d.ts +0 -0
  882. /package/src/{types → common/types}/common.types.js +0 -0
  883. /package/src/{types → common/types}/index.d.ts +0 -0
  884. /package/src/{types → common/types}/index.js +0 -0
  885. /package/src/{types → common/types}/options/auth.options.js +0 -0
  886. /package/src/{types → common/types}/options/http.options.d.ts +0 -0
  887. /package/src/{types → common/types}/options/http.options.js +0 -0
  888. /package/src/{types → common/types}/options/index.d.ts +0 -0
  889. /package/src/{types → common/types}/options/index.js +0 -0
  890. /package/src/{types → common/types}/options/logging.options.js +0 -0
  891. /package/src/{types → common/types}/options/server-info.options.js +0 -0
  892. /package/src/{types → common/types}/options/session.options.js +0 -0
  893. /package/src/{utils → common/utils}/decide-request-intent.utils.js +0 -0
  894. /package/src/{utils → common/utils}/index.d.ts +0 -0
  895. /package/src/{utils → common/utils}/index.js +0 -0
  896. /package/src/{utils → common/utils}/path.utils.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.registry.js","sourceRoot":"","sources":["../../../src/provider/provider.registry.ts"],"names":[],"mappings":"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","sourcesContent":["import 'reflect-metadata';\nimport {\n Ctor,\n ProviderInterface,\n ProviderType,\n ProviderScope,\n Token,\n ProviderRegistryInterface,\n ProviderRecord,\n ProviderKind,\n ProviderInjectedRecord,\n ScopeEntry,\n RegistryKind,\n RegistryType, ProviderEntry, FrontMcpServer,\n} from '../common';\nimport {normalizeProvider, providerDiscoveryDeps, providerInvocationTokens} from './provider.utils';\nimport {depsOfClass, isClass, isPromise, tokenName} from '../utils/token.utils';\nimport {hasAsyncWith} from '../utils/metadata.utils';\nimport {RegistryAbstract, RegistryBuildMapResult} from '../regsitry';\nimport {ProviderViews} from './provider.types';\nimport {Scope} from '../scope';\nimport HookRegistry from \"../hooks/hook.registry\";\n\nexport default class ProviderRegistry extends RegistryAbstract<\n ProviderEntry,\n ProviderRecord,\n ProviderType[],\n ProviderRegistry | undefined\n> implements ProviderRegistryInterface {\n /** used to track which registry provided which token */\n private readonly providedBy: Map<Token, ProviderRegistry>;\n /** topo order (deps first) */\n private order: Set<Token> = new Set();\n\n // /** scoped instance stores by key */\n // private scoped = new Map<string, Map<Token, any>>();\n\n private registries: Map<RegistryKind, Set<RegistryType>> = new Map();\n\n constructor(list: ProviderType[], private readonly parentProviders?: ProviderRegistry) {\n super('ProviderRegistry', parentProviders, list, false);\n\n this.providedBy = new Map();\n\n this.buildGraph();\n this.topoSort();\n\n this.ready = this.initialize();\n }\n\n\n getProviders(): ProviderEntry[] {\n return [...this.instances.values()] as const;\n }\n\n /* -------------------- Hierarchy helpers -------------------- */\n\n /** Walk up the registry chain to find a def for a token. */\n private lookupDefInHierarchy(token: Token):\n | { registry: ProviderRegistry; rec: ProviderRecord }\n | undefined {\n if (this.defs.has(token as any)) return {registry: this, rec: this.defs.get(token as any)!};\n return this.providers?.lookupDefInHierarchy(token);\n }\n\n /** Resolve a DEFAULT-scoped dependency from the hierarchy, enforcing scope & instantiation. */\n private resolveDefaultFromHierarchy(token: Token): any {\n const found = this.lookupDefInHierarchy(token);\n if (!found) throw new Error(`Cannot resolve token ${tokenName(token)}: not registered in hierarchy.`);\n const {registry, rec} = found;\n const sc = registry.getScope(rec);\n if (sc !== ProviderScope.GLOBAL) {\n const scName = ProviderScope[sc];\n throw new Error(\n `Dependency ${tokenName(token)} is scoped (${scName}) in ${registry.constructor.name}; cannot use as DEFAULT.`,\n );\n }\n const inst = registry.instances.get(token);\n if (inst === undefined) {\n throw new Error(\n `Dependency ${tokenName(token)} (DEFAULT) is not instantiated in ${registry.constructor.name}`,\n );\n }\n return inst;\n }\n\n /* -------------------- Build phase -------------------- */\n\n protected override buildMap(list: ProviderType[]): RegistryBuildMapResult<ProviderRecord> {\n const tokens = new Set<Token>();\n const defs = new Map<Token, ProviderRecord>();\n const graph = new Map<Token, Set<Token>>();\n\n for (const raw of list) {\n const rec = normalizeProvider(raw);\n const provide = rec.provide;\n tokens.add(provide);\n defs.set(provide, rec);\n graph.set(provide, new Set());\n }\n\n return {tokens, defs, graph};\n }\n\n protected buildGraph() {\n for (const token of this.tokens) {\n const rec = this.defs.get(token)!;\n const deps = this.discoveryDeps(rec);\n\n for (const d of deps) {\n const isLocal = this.tokens.has(d);\n const up = isLocal ? undefined : this.lookupDefInHierarchy(d);\n\n if (!isLocal && !up) {\n throw new Error(\n `Provider ${tokenName(token)} depends on ${tokenName(d)}, which is not registered (local or parent).`,\n );\n }\n\n const depRec = isLocal ? this.defs.get(d)! : up!.rec;\n const depScope =\n isLocal ? this.getScope(depRec) : up!.registry.getScope(depRec);\n\n if (this.getScope(rec) === ProviderScope.GLOBAL && depScope !== ProviderScope.GLOBAL) {\n throw new Error(\n `Invalid dependency: DEFAULT-scoped provider ${tokenName(\n token,\n )} cannot depend on scoped provider ${tokenName(d)}.`,\n );\n }\n\n // Only wire local -> local edges in our local graph; parent deps are external to this DAG.\n if (isLocal) this.graph.get(token)!.add(d);\n }\n }\n }\n\n protected topoSort() {\n const WHITE = 0,\n GRAY = 1,\n BLACK = 2;\n const color = new Map<Token, number>();\n const order: Set<Token> = new Set();\n const path: Token[] = [];\n\n const dfs = (n: Token) => {\n color.set(n, GRAY);\n path.push(n);\n for (const dep of this.graph.get(n) ?? []) {\n const c = color.get(dep) ?? WHITE;\n if (c === GRAY) {\n const idx = path.findIndex((p) => p === dep);\n const cycle = [...path.slice(idx), dep].map((t) => tokenName(t)).join(' -> ');\n throw new Error(`Dependency cycle detected: ${cycle}`);\n }\n if (c === WHITE) dfs(dep);\n }\n color.set(n, BLACK);\n order.add(n);\n path.pop();\n };\n\n for (const n of this.graph.keys()) if ((color.get(n) ?? WHITE) === WHITE) dfs(n);\n this.order = order;\n }\n\n /** Incremental instantiation for DEFAULT providers.\n * - Skips already-built singletons unless force:true.\n * - Can limit to a subset via onlyTokens.\n */\n protected async initialize(opts?: { force?: boolean; onlyTokens?: Iterable<Token> }) {\n const force = !!opts?.force;\n const only = opts?.onlyTokens ? new Set(opts.onlyTokens) : null;\n\n for (const token of this.order) {\n const rec = this.defs.get(token)!;\n if (this.getScope(rec) !== ProviderScope.GLOBAL) continue;\n\n if (only && !only.has(token)) continue;\n if (!force && this.instances.has(token)) continue;\n\n if (force && this.instances.has(token)) {\n this.instances.delete(token);\n }\n\n try {\n await this.initiateOne(token, rec);\n } catch (e: any) {\n const msg = e?.message ?? e;\n console.error(`Failed instantiating`, e);\n throw new Error(`Failed constructing ${tokenName(token)}: ${msg}`);\n }\n }\n }\n\n /* -------------------- Views & session stores -------------------- */\n\n /** Return the live singleton map as a read-only view. No copying. */\n getAllSingletons(): ReadonlyMap<Token, unknown> {\n return this.instances; // exposed as ReadonlyMap in the type\n }\n\n // /** Get (or create) the mutable session store for a sessionId. */\n // sessionMap(sessionId: string): Map<Token, unknown> {\n // let store = this.scoped.get(sessionId);\n // if (!store) {\n // store = new Map<Token, unknown>();\n // this.scoped.set(sessionId, store);\n // }\n // return store;\n // }\n\n // /** Try to build SessionProvider from registered DI definition (CLASS/FACTORY/etc.). */\n // private async tryBuildRegisteredSessionProvider(\n // sessionId: string,\n // requestId?: string | number,\n // ): Promise<SessionProvider | undefined> {\n // // Prefer local def; otherwise look up in hierarchy\n // const found = this.lookupDefInHierarchy(SessionProvider as unknown as Token);\n // const rec = found?.rec;\n // const reg = found?.registry;\n //\n // if (!rec) return undefined;\n //\n // const sc = (rec as any).scope ?? ProviderScope.GLOBAL;\n // if (sc === ProviderScope.GLOBAL) {\n // // If someone registered a DEFAULT-scoped SessionProvider, use the singleton instance (from the owning registry)\n // if (!reg!.instances.has(SessionProvider)) {\n // throw new Error(\n // `Registered ${tokenName(SessionProvider)} (DEFAULT) not instantiated at bootstrap`,\n // );\n // }\n // return reg!.instances.get(SessionProvider) as SessionProvider;\n // }\n //\n // // Build into the session store using the owning registry's factory (so its metadata/defs are used)\n // const store = this.sessionMap(sessionId);\n // await reg!.buildIntoStore(\n // SessionProvider as unknown as Token,\n // rec,\n // store,\n // sessionId,\n // [sessionId, requestId],\n // );\n // const sp = store.get(SessionProvider as unknown as Token) as SessionProvider | undefined;\n //\n // // Ensure request id is set/updated, if setter exists\n // if (sp && requestId && typeof sp.setRequestId === 'function') sp.setRequestId(requestId);\n // return sp;\n // }\n\n // /** Ensure a SessionProvider is present in the session map (registered or anonymous).\n // * @deprecated\n // */\n // async ensureSessionProvider(sessionId: string, requestId?: string | number): Promise<SessionProvider> {\n // const store = this.sessionMap(sessionId);\n //\n // // already present\n // if (store.has(SessionProvider)) {\n // const sp = store.get(SessionProvider) as SessionProvider;\n // if (requestId && typeof sp.setRequestId === 'function') sp.setRequestId(requestId);\n // return sp;\n // }\n //\n // // try registered provider first (local or parent)\n // const registered = await this.tryBuildRegisteredSessionProvider(sessionId, requestId);\n // return registered as SessionProvider;\n //\n // }\n\n // /**\n // * Create (or get) an authenticated session store, seed SessionProvider if missing.\n // * @deprecated\n // * */\n // bootstrapSession(sessionId: string, requestId?: string): Map<Token, unknown> {\n // let store = this.scoped.get(sessionId);\n // if (!store) {\n // store = new Map<Token, unknown>();\n // this.scoped.set(sessionId, store);\n // }\n // if (!store.has(SessionProvider)) {\n // store.set(SessionProvider, {}); // new SessionProvider(sessionId, requestId ?? '', false));\n // } else if (requestId) {\n // (store.get(SessionProvider) as SessionProvider).setRequestId(requestId);\n // }\n // return store;\n // }\n\n // /**\n // * Returns all tokens that are registered as session-scoped (including SessionProvider).\n // * @deprecated\n // */\n // listSessionScopedTokens(): Token[] {\n // const out: Token[] = [];\n // // Only local scoped tokens are known here; parent-scoped tokens will be pulled on demand.\n // for (const [tok, rec] of this.defs.entries()) {\n // if (this.getScope(rec) === ProviderScope.SESSION) out.push(tok);\n // }\n // return out;\n // }\n\n // /** Eager build selected session providers into the given session store. */\n // private async buildSelectedSessionProviders(sessionId: string, requestId?: string | number): Promise<void> {\n // const store = this.sessionMap(sessionId);\n // await this.ensureSessionProvider(sessionId, requestId);\n //\n // // Iterate over all session-scoped tokens (local list). Parent-scoped will resolve on demand.\n // for (const tok of this.listSessionScopedTokens()) {\n // if (tok === (SessionProvider as any)) continue;\n //\n // if (store.has(tok)) continue; // already built\n //\n // const rec = this.defs.get(tok);\n // if (!rec) continue; // should not happen\n //\n // // Recursively build into this session store (handles scoped/default deps)\n // await this.buildIntoStore(tok, rec, store, sessionId);\n // }\n // }\n\n // /** Convenience: build all three maps you can pass straight into an invoke ctx. */\n // async buildViews(sessionId: string, requestId?: string | number): Promise<ProviderViews> {\n // await this.buildSelectedSessionProviders(sessionId, requestId);\n // return {\n // global: this.getAllSingletons(),\n // session: this.sessionMap(sessionId),\n // request: new Map<Token, unknown>(),\n // };\n // }\n\n discoveryDeps(rec: ProviderRecord): Token[] {\n return providerDiscoveryDeps(rec, this.tokens, (k, phase) => depsOfClass(k, phase));\n }\n\n invocationTokens(_token: Token, rec: ProviderRecord): Token[] {\n return providerInvocationTokens(rec, (k, phase) => depsOfClass(k, phase));\n }\n\n getScope(rec: ProviderRecord): ProviderScope {\n return rec.metadata?.scope ?? ProviderScope.GLOBAL;\n }\n\n /* -------------------- Instantiation -------------------- */\n\n private async withTimeout<T>(p: Promise<T>, ms: number, label: string): Promise<T> {\n if (ms <= 0 || !Number.isFinite(ms)) return p;\n let timer: any;\n try {\n const tm = new Promise<never>(\n (_, rej) => (timer = setTimeout(() => rej(new Error(`Timeout after ${ms}ms: ${label}`)), ms)),\n );\n return await Promise.race([p, tm]);\n } finally {\n clearTimeout(timer);\n }\n }\n\n private async resolveFactoryArg(t: Token, store: Map<Token, any>, scopeKey?: string): Promise<any> {\n if (store.has(t)) return store.get(t);\n if (this.instances.has(t)) return this.instances.get(t);\n\n // Local def?\n const rec = this.defs.get(t as any);\n if (rec) {\n const sc = this.getScope(rec);\n if (sc === ProviderScope.GLOBAL) {\n if (!this.instances.has(t)) {\n throw new Error(`Dependency ${tokenName(t)} (DEFAULT scope) is not instantiated`);\n }\n return this.instances.get(t);\n } else {\n await this.buildIntoStore(t, rec, store, scopeKey);\n return store.get(t);\n }\n }\n\n // Parent def?\n const up = this.lookupDefInHierarchy(t);\n if (up) {\n const sc = up.registry.getScope(up.rec);\n if (sc === ProviderScope.GLOBAL) {\n const inst = up.registry.instances.get(t);\n if (inst === undefined) {\n throw new Error(`Dependency ${tokenName(t)} (DEFAULT scope) is not instantiated in parent`);\n }\n return inst;\n } else {\n await up.registry.buildIntoStore(t, up.rec, store, scopeKey);\n return store.get(t);\n }\n }\n\n // Constructable fallback (non-DI)\n if (isClass(t)) {\n if (hasAsyncWith(t)) {\n const out = (t as any).with();\n return isPromise(out) ? await this.withTimeout(out, this.asyncTimeoutMs, `${t.name}.with(...)`) : out;\n }\n const instance = new (t as Ctor<any>)();\n const init = (instance as any)?.init;\n if (typeof init === 'function') {\n const ret = init.call(instance);\n if (isPromise(ret)) await this.withTimeout(ret, this.asyncTimeoutMs, `${t.name}.init()`);\n }\n return instance;\n }\n\n throw new Error(`Cannot resolve token ${tokenName(t)}: not registered in hierarchy and not constructable.`);\n }\n\n /** Build a single DEFAULT-scoped singleton (used by incremental instantiating). */\n private async initiateOne(token: Token, rec: ProviderRecord): Promise<void> {\n switch (rec.kind) {\n case ProviderKind.VALUE: {\n this.instances.set(token, (rec as any).useValue);\n return;\n }\n case ProviderKind.FACTORY: {\n const deps = this.invocationTokens(token, rec);\n const args: any[] = [];\n for (const d of deps) args.push(await this.resolveFactoryArg(d, this.instances));\n const out = (rec as any).useFactory(...args);\n const val = isPromise(out)\n ? await this.withTimeout(out, this.asyncTimeoutMs, `${tokenName(token)}.useFactory(...)`)\n : out;\n this.instances.set(token, val);\n return;\n }\n case ProviderKind.CLASS: {\n const depTokens = this.invocationTokens(token, rec);\n const deps = depTokens.map((t) => this.resolveDefaultFromHierarchy(t));\n const klass = (rec as any).useClass;\n if (hasAsyncWith(klass)) {\n const out = (klass as any).with(...deps);\n const val = isPromise(out)\n ? await this.withTimeout(out, this.asyncTimeoutMs, `${klass.name}.with(...)`)\n : out;\n this.instances.set(token, val);\n } else {\n const instance = new (klass as Ctor<any>)(...deps);\n const init = (instance as any)?.init;\n if (typeof init === 'function') {\n const ret = init.call(instance);\n if (isPromise(ret)) await this.withTimeout(ret, this.asyncTimeoutMs, `${klass.name}.init()`);\n }\n this.instances.set(token, instance);\n }\n return;\n }\n case ProviderKind.CLASS_TOKEN: {\n const depTokens = this.invocationTokens(token, rec);\n const deps = depTokens.map((t) => this.resolveDefaultFromHierarchy(t));\n const klass = (rec as any).provide;\n if (hasAsyncWith(klass)) {\n const out = (klass as any).with(...deps);\n const val = isPromise(out)\n ? await this.withTimeout(out, this.asyncTimeoutMs, `${klass.name}.with(...)`)\n : out;\n this.instances.set(token, val);\n } else {\n const instance = new (klass as Ctor<any>)(...deps);\n const init = (instance as any)?.init;\n if (typeof init === 'function') {\n const ret = init.call(instance);\n if (isPromise(ret)) await this.withTimeout(ret, this.asyncTimeoutMs, `${klass.name}.init()`);\n }\n this.instances.set(token, instance);\n }\n return;\n }\n }\n }\n\n // Build a registered provider into the given scoped store (recursive for scoped deps).\n private async buildIntoStore(\n token: Token,\n rec: ProviderRecord,\n store: Map<Token, any>,\n scopeKey?: string,\n injectedDeps?: any[],\n ): Promise<void> {\n if (store.has(token)) return;\n\n try {\n switch (rec.kind) {\n case ProviderKind.VALUE: {\n store.set(token, (rec as any).useValue);\n return;\n }\n case ProviderKind.FACTORY: {\n const deps = this.invocationTokens(token, rec);\n const args: any[] = [];\n for (const d of deps) args.push(await this.resolveFactoryArg(d, store, scopeKey));\n const out = (rec as any).useFactory(...args);\n const val = isPromise(out)\n ? await this.withTimeout(out, this.asyncTimeoutMs, `${tokenName(token)}.useFactory(...)`)\n : out;\n store.set(token, val);\n return;\n }\n case ProviderKind.CLASS: {\n const depsTokens = this.invocationTokens(token, rec);\n const deps: any[] = [];\n for (const d of depsTokens) deps.push(await this.resolveManagedForClass(d, store, scopeKey));\n const klass = (rec as any).useClass as Ctor<any>;\n if (hasAsyncWith(klass)) {\n const out = (klass as any).with(...deps);\n const val = isPromise(out)\n ? await this.withTimeout(out, this.asyncTimeoutMs, `${klass.name}.with(...)`)\n : out;\n store.set(token, val);\n } else {\n const instance = new (klass as Ctor<any>)(...deps);\n const init = (instance as any)?.init;\n if (typeof init === 'function') {\n const ret = init.call(instance);\n if (isPromise(ret)) await this.withTimeout(ret, this.asyncTimeoutMs, `${klass.name}.init()`);\n }\n store.set(token, instance);\n }\n return;\n }\n case ProviderKind.CLASS_TOKEN: {\n const depsTokens = this.invocationTokens(token, rec);\n const deps: any[] = injectedDeps ?? [];\n for (const d of depsTokens) deps.push(await this.resolveManagedForClass(d, store, scopeKey));\n const klass = (rec as any).provide as Ctor<any>;\n if (hasAsyncWith(klass)) {\n const out = (klass as any).with(...deps);\n const val = isPromise(out)\n ? await this.withTimeout(out, this.asyncTimeoutMs, `${klass.name}.with(...)`)\n : out;\n store.set(token, val);\n } else {\n const instance = new (klass as Ctor<any>)(...deps);\n const init = (instance as any)?.init;\n if (typeof init === 'function') {\n const ret = init.call(instance);\n if (isPromise(ret)) await this.withTimeout(ret, this.asyncTimeoutMs, `${klass.name}.init()`);\n }\n store.set(token, instance);\n }\n return;\n }\n }\n } catch (e: any) {\n const msg = e?.message ?? e;\n console.error(`Failed constructing`, e);\n throw new Error(`Failed constructing (scoped) ${tokenName(token)}: ${msg}`);\n }\n }\n\n // Ensure managed dependency value for CLASS/CLASS_TOKEN providers:\n // prefer scoped store, then singleton; recursively build scoped deps.\n // If not local, climb the hierarchy and either read DEFAULT instance or build scoped into this store.\n private async resolveManagedForClass(d: Token, store: Map<Token, any>, scopeKey?: string): Promise<any> {\n if (store.has(d)) return store.get(d);\n if (this.instances.has(d)) return this.instances.get(d);\n\n // Local DI?\n const depRec = this.defs.get(d as any);\n if (depRec) {\n const sc = this.getScope(depRec);\n if (sc === ProviderScope.GLOBAL) {\n const v = this.instances.get(d);\n if (v === undefined) throw new Error(`${tokenName(d)} (DEFAULT scope) is not instantiated`);\n return v;\n } else {\n await this.buildIntoStore(d, depRec, store, scopeKey);\n return store.get(d);\n }\n }\n\n // Parent DI?\n const up = this.lookupDefInHierarchy(d);\n if (up) {\n const sc = up.registry.getScope(up.rec);\n if (sc === ProviderScope.GLOBAL) {\n const v = up.registry.instances.get(d);\n if (v === undefined) throw new Error(`${tokenName(d)} (DEFAULT scope) is not instantiated in parent`);\n return v;\n } else {\n await up.registry.buildIntoStore(d, up.rec, store, scopeKey);\n return store.get(d);\n }\n }\n\n throw new Error(`${tokenName(d)} is not instantiated`);\n }\n\n get<T>(token: Token<T>): T {\n if (this.instances.has(token)) return this.instances.get(token) as T;\n\n const rec = this.defs.get(token as any);\n if (rec && this.getScope(rec) !== ProviderScope.GLOBAL) {\n const scName = ProviderScope[this.getScope(rec)];\n throw new Error(`Provider ${tokenName(token)} is scoped (${scName}). Use getScoped(token, key).`);\n }\n\n // bubble to parent\n if (this.providers) return this.providers.get<T>(token);\n\n throw new Error(`Provider ${tokenName(token)} is not available in local or parent registries`);\n }\n\n // noinspection JSUnusedGlobalSymbols\n addRegistry(type: RegistryKind, value: RegistryType) {\n let registry = this.registries.get(type);\n if (!registry) {\n this.registries.set(type, new Set());\n registry = this.registries.get(type);\n }\n registry!.add(value);\n }\n\n getRegistries<T extends RegistryKind>(type: T): RegistryType[T][] {\n return [...this.registries.get(type) ?? []] as any;\n }\n\n getHooksRegistry() {\n return this.getRegistries('HookRegistry')[0] as HookRegistry\n }\n\n // noinspection JSUnusedGlobalSymbols\n getScopeRegistry() {\n return this.getRegistries('ScopeRegistry')[0]!;\n }\n\n /** bootstrap helper: resolve a dependency usable during app bootstrap (must be GLOBAL). */\n async resolveBootstrapDep(t: Token): Promise<any> {\n if (this.instances.has(t)) return this.instances.get(t);\n if (this.registries.has(t as RegistryKind)) return this.registries.get(t as RegistryKind);\n\n const found = this.lookupDefInHierarchy(t);\n if (found) {\n const {registry, rec} = found;\n const sc = registry.getScope(rec);\n if (sc !== ProviderScope.GLOBAL)\n throw new Error(`Plugin dependency ${tokenName(t)} must be DEFAULT-scoped at bootstrap`);\n const v = registry.instances.get(t);\n if (v === undefined)\n throw new Error(`Plugin dependency ${tokenName(t)} (DEFAULT scope) is not instantiated`);\n return v;\n }\n throw new Error(`Cannot resolve plugin dependency ${tokenName(t)} (local or parent)`);\n }\n\n /** Lightweight, synchronous resolver for app-scoped DI.\n * - If `cls` is a registered DEFAULT provider token, returns the singleton (must be instantiated).\n * - If `cls` is SCOPED in DI, throws (use getScoped/buildViews instead).\n * - Otherwise, if `cls` is a constructable class not registered in DI, returns `new cls()`.\n * If it defines a synchronous init(), it will be invoked (async init() is NOT awaited).\n */\n resolve<T>(cls: any): T {\n // 1) If it's a registered token (local or parent), handle via DI rules\n const found = this.lookupDefInHierarchy(cls as any);\n if (found) {\n const {registry, rec} = found;\n const sc = registry.getScope(rec);\n if (sc !== ProviderScope.GLOBAL) {\n const scName = ProviderScope[sc];\n throw new Error(\n `Provider ${tokenName(cls)} is scoped (${scName}). Use getScoped(token, key) or buildViews(...).`,\n );\n }\n if (!registry.instances.has(cls)) {\n throw new Error(\n `Provider ${tokenName(cls)} (DEFAULT scope) is not instantiated. Call providers.instantiate() first.`,\n );\n }\n return registry.instances.get(cls) as T;\n }\n\n // 2) Not a registered token — best-effort construct (for tools/hooks/wrappers)\n if (isClass(cls)) {\n const instance = new (cls as Ctor<any>)();\n\n // Call sync init() if present (do NOT await)\n const init = (instance as any)?.init;\n if (typeof init === 'function') {\n // If someone accidentally made init async here, we intentionally do NOT await to keep it sync.\n init.call(instance);\n }\n\n return instance as T;\n }\n\n // 3) Unsupported token type\n throw new Error(\n `Cannot resolve ${tokenName(cls)}: not a registered DEFAULT provider and not a constructable class.`,\n );\n }\n\n mergeFromRegistry(\n providedBy: ProviderRegistry,\n exported: {\n token: Token<ProviderInterface>;\n def: ProviderRecord;\n instance: ProviderEntry;\n }[],\n ) {\n for (const {token, def, instance} of exported) {\n if (def.metadata.scope === ProviderScope.GLOBAL) {\n this.instances.set(token, instance);\n }\n this.defs.set(token, def);\n this.providedBy.set(token, providedBy);\n }\n }\n\n /**\n * Used by plugins to get the exported provider definitions.\n */\n getProviderInfo(token: Token<ProviderInterface>) {\n const def = this.defs.get(token);\n const instance = this.instances.get(token);\n if (!def || !instance)\n throw new Error(\n `Cannot get provider info for ${tokenName(\n token,\n )}: not a registered DEFAULT provider and not a constructable class.`,\n );\n return {\n token,\n def,\n instance,\n };\n }\n\n injectProvider(injected: Omit<ProviderInjectedRecord, 'kind'>) {\n const rec: ProviderInjectedRecord = {\n ...injected,\n kind: ProviderKind.INJECTED,\n };\n this.tokens.add(rec.provide);\n this.defs.set(rec.provide, rec);\n this.graph.set(rec.provide, new Set());\n this.instances.set(rec.provide, rec.value);\n }\n\n async addDynamicProviders(dynamicProviders: ProviderRecord[]) {\n return Promise.all(dynamicProviders.map((rec) => this.initiateOne(rec.provide, rec)))\n }\n\n private getWithParents<T>(token: Token<T>): T {\n if (this.instances.has(token)) {\n return this.get(token)\n }\n const parent = this.parentProviders\n if (!parent) {\n return this.get(token)\n }\n return parent.getWithParents(token)\n }\n\n getActiveScope(): Scope {\n return this.getWithParents(Scope)\n }\n\n getActiveServer(): FrontMcpServer {\n return this.getWithParents(FrontMcpServer)\n }\n\n async buildViews(session: string): Promise<ProviderViews> {\n return {\n global: new Map<Token, any>(),\n session: new Map<Token, any>(),\n request: new Map<Token, any>(),\n };\n }\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import { Token } from '../common';
2
+ export interface ProviderViews {
3
+ /** App-wide singletons, created at boot. Immutable from invoke’s POV. */
4
+ global: ReadonlyMap<Token, unknown>;
5
+ /** Session-scoped cache for this sessionId. Mutable. */
6
+ session: Map<Token, unknown>;
7
+ /** Request-scoped providers for this single invocation. Mutable. */
8
+ request: Map<Token, unknown>;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=provider.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.types.js","sourceRoot":"","sources":["../../../src/provider/provider.types.ts"],"names":[],"mappings":"","sourcesContent":["import { Token } from '../common';\n\nexport interface ProviderViews {\n /** App-wide singletons, created at boot. Immutable from invoke’s POV. */\n global: ReadonlyMap<Token, unknown>;\n /** Session-scoped cache for this sessionId. Mutable. */\n session: Map<Token, unknown>;\n /** Request-scoped providers for this single invocation. Mutable. */\n request: Map<Token, unknown>;\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import { Token, ProviderRecord } from '../common';
2
+ export declare function normalizeProvider(item: any): ProviderRecord;
3
+ /**
4
+ * For graph/cycle detection. Returns dependency tokens that should be graphed.
5
+ * - VALUE: no deps
6
+ * - FACTORY: only includes deps that are registered (others will be resolved ad-hoc)
7
+ * - CLASS / CLASS_TOKEN: deps come from the class constructor or static with(...)
8
+ */
9
+ export declare function providerDiscoveryDeps(rec: ProviderRecord, tokens: Set<Token>, depsOfClass: (klass: any, phase: 'discovery' | 'invocation') => Token[]): Token[];
10
+ /**
11
+ * For invocation time. Returns full dependency tokens list that must be resolved.
12
+ */
13
+ export declare function providerInvocationTokens(rec: ProviderRecord, depsOfClass: (klass: any, phase: 'invocation' | 'discovery') => Token[]): Token[];
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeProvider = normalizeProvider;
4
+ exports.providerDiscoveryDeps = providerDiscoveryDeps;
5
+ exports.providerInvocationTokens = providerInvocationTokens;
6
+ const common_1 = require("../common");
7
+ const token_utils_1 = require("../utils/token.utils");
8
+ const metadata_utils_1 = require("../utils/metadata.utils");
9
+ function collectProviderMetadata(cls) {
10
+ return Object.entries(common_1.FrontMcpProviderTokens).reduce((metadata, [key, token]) => {
11
+ return Object.assign(metadata, {
12
+ [key]: (0, metadata_utils_1.getMetadata)(token, cls),
13
+ });
14
+ }, {});
15
+ }
16
+ function normalizeProvider(item) {
17
+ if ((0, token_utils_1.isClass)(item)) {
18
+ // read McpProviderMetadata from class
19
+ const metadata = collectProviderMetadata(item);
20
+ return { kind: common_1.ProviderKind.CLASS_TOKEN, provide: item, metadata };
21
+ }
22
+ if (item && typeof item === 'object') {
23
+ const { provide, useClass, useValue, useFactory, inject } = item;
24
+ if (!provide) {
25
+ const name = item?.name ?? '[object]';
26
+ throw new Error(`Provider '${name}' is missing 'provide'.`);
27
+ }
28
+ if (useClass) {
29
+ if (!(0, token_utils_1.isClass)(useClass)) {
30
+ throw new Error(`'useClass' on provider '${(0, token_utils_1.tokenName)(provide)}' must be a class.`);
31
+ }
32
+ return {
33
+ kind: common_1.ProviderKind.CLASS,
34
+ provide,
35
+ useClass,
36
+ metadata: item.metadata,
37
+ };
38
+ }
39
+ if (useFactory) {
40
+ if (typeof useFactory !== 'function') {
41
+ throw new Error(`'useFactory' on provider '${(0, token_utils_1.tokenName)(provide)}' must be a function.`);
42
+ }
43
+ const inj = typeof inject === 'function' ? inject : () => [];
44
+ return {
45
+ kind: common_1.ProviderKind.FACTORY,
46
+ provide,
47
+ inject: inj,
48
+ useFactory,
49
+ metadata: item.metadata,
50
+ };
51
+ }
52
+ if ('useValue' in item) {
53
+ return {
54
+ kind: common_1.ProviderKind.VALUE,
55
+ provide,
56
+ useValue,
57
+ metadata: item.metadata,
58
+ };
59
+ }
60
+ }
61
+ const name = item?.name ?? String(item);
62
+ throw new Error(`Invalid provider '${name}'. Expected a class or a provider object.`);
63
+ }
64
+ /**
65
+ * For graph/cycle detection. Returns dependency tokens that should be graphed.
66
+ * - VALUE: no deps
67
+ * - FACTORY: only includes deps that are registered (others will be resolved ad-hoc)
68
+ * - CLASS / CLASS_TOKEN: deps come from the class constructor or static with(...)
69
+ */
70
+ function providerDiscoveryDeps(rec, tokens, depsOfClass) {
71
+ switch (rec.kind) {
72
+ case common_1.ProviderKind.VALUE:
73
+ return [];
74
+ case common_1.ProviderKind.FACTORY: {
75
+ const all = [...rec.inject()];
76
+ return all.filter((d) => tokens.has(d));
77
+ }
78
+ case common_1.ProviderKind.CLASS:
79
+ return depsOfClass(rec.useClass, 'discovery');
80
+ case common_1.ProviderKind.CLASS_TOKEN:
81
+ return depsOfClass(rec.provide, 'discovery');
82
+ case common_1.ProviderKind.INJECTED:
83
+ return depsOfClass(rec.value, 'discovery');
84
+ }
85
+ }
86
+ /**
87
+ * For invocation time. Returns full dependency tokens list that must be resolved.
88
+ */
89
+ function providerInvocationTokens(rec, depsOfClass) {
90
+ switch (rec.kind) {
91
+ case common_1.ProviderKind.VALUE:
92
+ return [];
93
+ case common_1.ProviderKind.FACTORY:
94
+ return [...rec.inject()];
95
+ case common_1.ProviderKind.CLASS:
96
+ return depsOfClass(rec.useClass, 'invocation');
97
+ case common_1.ProviderKind.CLASS_TOKEN:
98
+ return depsOfClass(rec.provide, 'invocation');
99
+ case common_1.ProviderKind.INJECTED:
100
+ return depsOfClass(rec.value, 'invocation');
101
+ }
102
+ }
103
+ //# sourceMappingURL=provider.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.utils.js","sourceRoot":"","sources":["../../../src/provider/provider.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ProviderMetadata,\n FrontMcpProviderTokens,\n Type,\n Token,\n ProviderRecord,\n ProviderKind,\n} from '../common';\nimport { isClass, tokenName } from '../utils/token.utils';\nimport { getMetadata } from '../utils/metadata.utils';\n\n\nfunction collectProviderMetadata(cls: Type): ProviderMetadata {\n return Object.entries(FrontMcpProviderTokens).reduce((metadata, [key, token]) => {\n return Object.assign(metadata, {\n [key]: getMetadata(token, cls),\n });\n }, {} as ProviderMetadata);\n}\n\nexport function normalizeProvider(item: any): ProviderRecord {\n if (isClass(item)) {\n // read McpProviderMetadata from class\n const metadata = collectProviderMetadata(item);\n return { kind: ProviderKind.CLASS_TOKEN, provide: item, metadata };\n }\n if (item && typeof item === 'object') {\n const { provide, useClass, useValue, useFactory, inject } = item;\n\n if (!provide) {\n const name = (item as any)?.name ?? '[object]';\n throw new Error(`Provider '${name}' is missing 'provide'.`);\n }\n\n if (useClass) {\n if (!isClass(useClass)) {\n throw new Error(\n `'useClass' on provider '${tokenName(provide)}' must be a class.`,\n );\n }\n return {\n kind: ProviderKind.CLASS,\n provide,\n useClass,\n metadata: (item as any).metadata,\n };\n }\n\n if (useFactory) {\n if (typeof useFactory !== 'function') {\n throw new Error(\n `'useFactory' on provider '${tokenName(provide)}' must be a function.`,\n );\n }\n const inj = typeof inject === 'function' ? inject : () => [] as const;\n return {\n kind: ProviderKind.FACTORY,\n provide,\n inject: inj,\n useFactory,\n metadata: item.metadata,\n };\n }\n\n if ('useValue' in item) {\n return {\n kind: ProviderKind.VALUE,\n provide,\n useValue,\n metadata: item.metadata,\n };\n }\n }\n\n const name = (item as any)?.name ?? String(item);\n throw new Error(\n `Invalid provider '${name}'. Expected a class or a provider object.`,\n );\n}\n\n\n/**\n * For graph/cycle detection. Returns dependency tokens that should be graphed.\n * - VALUE: no deps\n * - FACTORY: only includes deps that are registered (others will be resolved ad-hoc)\n * - CLASS / CLASS_TOKEN: deps come from the class constructor or static with(...)\n */\nexport function providerDiscoveryDeps(\n rec: ProviderRecord,\n tokens: Set<Token>,\n depsOfClass: (klass: any, phase: 'discovery' | 'invocation') => Token[],\n): Token[] {\n switch (rec.kind) {\n case ProviderKind.VALUE:\n return [];\n\n case ProviderKind.FACTORY: {\n const all = [...rec.inject()];\n return all.filter((d) => tokens.has(d));\n }\n\n case ProviderKind.CLASS:\n return depsOfClass(rec.useClass, 'discovery');\n\n case ProviderKind.CLASS_TOKEN:\n return depsOfClass(rec.provide, 'discovery');\n\n case ProviderKind.INJECTED:\n return depsOfClass(rec.value, 'discovery');\n }\n}\n\n/**\n * For invocation time. Returns full dependency tokens list that must be resolved.\n */\nexport function providerInvocationTokens(\n rec: ProviderRecord,\n depsOfClass: (klass: any, phase: 'invocation' | 'discovery') => Token[],\n): Token[] {\n switch (rec.kind) {\n case ProviderKind.VALUE:\n return [];\n case ProviderKind.FACTORY:\n return [...rec.inject()];\n case ProviderKind.CLASS:\n return depsOfClass(rec.useClass, 'invocation');\n case ProviderKind.CLASS_TOKEN:\n return depsOfClass(rec.provide, 'invocation');\n case ProviderKind.INJECTED:\n return depsOfClass(rec.value, 'invocation');\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './registry.base';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./registry.base"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/regsitry/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC","sourcesContent":["export * from './registry.base';"]}
@@ -0,0 +1,25 @@
1
+ import { RegistryKind, Token } from '../common';
2
+ import ProviderRegistry from '../provider/provider.registry';
3
+ export type RegistryBuildMapResult<Record> = {
4
+ tokens: Set<Token>;
5
+ defs: Map<Token, Record>;
6
+ graph: Map<Token, Set<Token>>;
7
+ };
8
+ export declare abstract class RegistryAbstract<Interface, Record, MetadataType, ProviderRegistryType extends (ProviderRegistry | undefined) = ProviderRegistry> {
9
+ protected asyncTimeoutMs: 30000;
10
+ ready: Promise<void>;
11
+ protected providers: ProviderRegistryType;
12
+ protected list: MetadataType;
13
+ /** All tokens that are provided (graph nodes) */
14
+ protected tokens: Set<Token>;
15
+ /** Record definition by token */
16
+ protected defs: Map<Token, Record>;
17
+ /** Dependency graph by token */
18
+ protected graph: Map<Token, Set<Token>>;
19
+ /** All apps that are provided (graph nodes) */
20
+ protected readonly instances: Map<Token<Interface>, Interface>;
21
+ protected constructor(name: RegistryKind, providers: ProviderRegistryType, metadata: MetadataType, auto?: boolean);
22
+ protected abstract buildMap(list: MetadataType): RegistryBuildMapResult<Record>;
23
+ protected abstract buildGraph(): void;
24
+ protected abstract initialize(): Promise<void>;
25
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RegistryAbstract = void 0;
4
+ class RegistryAbstract {
5
+ asyncTimeoutMs;
6
+ ready;
7
+ providers;
8
+ list;
9
+ /** All tokens that are provided (graph nodes) */
10
+ tokens;
11
+ /** Record definition by token */
12
+ defs;
13
+ /** Dependency graph by token */
14
+ graph;
15
+ /** All apps that are provided (graph nodes) */
16
+ instances = new Map();
17
+ constructor(name, providers, metadata, auto = true) {
18
+ providers?.addRegistry(name, this);
19
+ this.providers = providers;
20
+ this.list = metadata;
21
+ const { tokens, defs, graph } = this.buildMap(metadata);
22
+ this.tokens = tokens;
23
+ this.defs = defs;
24
+ this.graph = graph;
25
+ if (auto) {
26
+ this.buildGraph();
27
+ this.ready = this.initialize();
28
+ }
29
+ }
30
+ }
31
+ exports.RegistryAbstract = RegistryAbstract;
32
+ //# sourceMappingURL=registry.base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.base.js","sourceRoot":"","sources":["../../../src/regsitry/registry.base.ts"],"names":[],"mappings":";;;AAUA,MAAsB,gBAAgB;IAM1B,cAAc,CAAQ;IAGhC,KAAK,CAAgB;IAEX,SAAS,CAAuB;IAChC,IAAI,CAAe;IAE7B,iDAAiD;IACvC,MAAM,CAAa;IAC7B,iCAAiC;IACvB,IAAI,CAAqB;IACnC,gCAAgC;IACtB,KAAK,CAAyB;IAGxC,+CAA+C;IAC5B,SAAS,GAAqC,IAAI,GAAG,EAAE,CAAC;IAE3E,YAAsB,IAAkB,EAAE,SAA+B,EAAE,QAAsB,EAAE,IAAI,GAAG,IAAI;QAC5G,SAAS,EAAE,WAAW,CAAC,IAAI,EAAE,IAA2B,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QAErB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAExD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;CAOF;AA/CD,4CA+CC","sourcesContent":["import { RegistryKind, RegistryType, Token } from '../common';\nimport ProviderRegistry from '../provider/provider.registry';\n\n\nexport type RegistryBuildMapResult<Record> = {\n tokens: Set<Token>;\n defs: Map<Token, Record>;\n graph: Map<Token, Set<Token>>;\n}\n\nexport abstract class RegistryAbstract<\n Interface,\n Record,\n MetadataType,\n ProviderRegistryType extends (ProviderRegistry | undefined) = ProviderRegistry\n> {\n protected asyncTimeoutMs: 30000;\n\n\n ready: Promise<void>;\n\n protected providers: ProviderRegistryType;\n protected list: MetadataType;\n\n /** All tokens that are provided (graph nodes) */\n protected tokens: Set<Token>;\n /** Record definition by token */\n protected defs: Map<Token, Record>;\n /** Dependency graph by token */\n protected graph: Map<Token, Set<Token>>;\n\n\n /** All apps that are provided (graph nodes) */\n protected readonly instances: Map<Token<Interface>, Interface> = new Map();\n\n protected constructor(name: RegistryKind, providers: ProviderRegistryType, metadata: MetadataType, auto = true) {\n providers?.addRegistry(name, this as any as RegistryType);\n this.providers = providers;\n this.list = metadata;\n\n const { tokens, defs, graph } = this.buildMap(metadata);\n\n this.tokens = tokens;\n this.defs = defs;\n this.graph = graph;\n\n if (auto) {\n this.buildGraph();\n this.ready = this.initialize();\n }\n }\n\n protected abstract buildMap(list: MetadataType): RegistryBuildMapResult<Record>;\n\n protected abstract buildGraph(): void;\n\n protected abstract initialize(): Promise<void>;\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import ProviderRegistry from '../provider/provider.registry';
2
+ import { ResourceEntry, ResourceRecord, ResourceRegistryInterface, ResourceType, ToolType } from '../common';
3
+ import { RegistryAbstract } from '../regsitry';
4
+ export default class ResourceRegistry extends RegistryAbstract<ResourceEntry, ResourceRecord, ResourceType[]> implements ResourceRegistryInterface {
5
+ constructor(providers: ProviderRegistry, list: ToolType[]);
6
+ protected buildMap(list: ResourceType[]): {
7
+ tokens: Set<import("../common").Reference<any>>;
8
+ defs: Map<import("../common").Reference<any>, ResourceRecord>;
9
+ graph: Map<import("../common").Reference<any>, Set<import("../common").Reference<any>>>;
10
+ };
11
+ buildGraph(): void;
12
+ protected initialize(): Promise<void>;
13
+ getResources(): never[];
14
+ getInlineResources(): ResourceEntry<any, any>[];
15
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const regsitry_1 = require("../regsitry");
4
+ class ResourceRegistry extends regsitry_1.RegistryAbstract {
5
+ constructor(providers, list) {
6
+ super('ResourceRegistry', providers, list);
7
+ }
8
+ buildMap(list) {
9
+ const tokens = new Set();
10
+ const defs = new Map();
11
+ const graph = new Map();
12
+ return {
13
+ tokens,
14
+ defs,
15
+ graph,
16
+ };
17
+ }
18
+ buildGraph() {
19
+ }
20
+ initialize() {
21
+ return Promise.resolve();
22
+ }
23
+ getResources() {
24
+ return [];
25
+ }
26
+ getInlineResources() {
27
+ throw new Error('Method not implemented.');
28
+ }
29
+ }
30
+ exports.default = ResourceRegistry;
31
+ //# sourceMappingURL=resource.registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.registry.js","sourceRoot":"","sources":["../../../src/resource/resource.registry.ts"],"names":[],"mappings":";;AAQA,0CAA+C;AAG/C,MAAqB,gBAAiB,SAAQ,2BAA+D;IAG3G,YAAY,SAA2B,EAAE,IAAgB;QACvD,KAAK,CAAC,kBAAkB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAGS,QAAQ,CAAC,IAAoB;QACrC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAS,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAyB,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;QAE3C,OAAO;YACL,MAAM;YACN,IAAI;YACJ,KAAK;SACN,CAAC;IACJ,CAAC;IAED,UAAU;IAEV,CAAC;IAES,UAAU;QAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAGD,YAAY;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,kBAAkB;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;CACF;AApCD,mCAoCC","sourcesContent":["import ProviderRegistry from '../provider/provider.registry';\nimport {\n ResourceEntry, ResourceRecord,\n ResourceRegistryInterface,\n ResourceType,\n Token,\n ToolType,\n} from '../common';\nimport { RegistryAbstract } from '../regsitry';\n\n\nexport default class ResourceRegistry extends RegistryAbstract<ResourceEntry, ResourceRecord, ResourceType[]>\n implements ResourceRegistryInterface {\n\n constructor(providers: ProviderRegistry, list: ToolType[]) {\n super('ResourceRegistry', providers, list);\n }\n\n\n protected buildMap(list: ResourceType[]) {\n const tokens = new Set<Token>();\n const defs = new Map<Token, ResourceRecord>();\n const graph = new Map<Token, Set<Token>>();\n\n return {\n tokens,\n defs,\n graph,\n };\n }\n\n buildGraph() {\n\n }\n\n protected initialize() {\n return Promise.resolve();\n }\n\n\n getResources() {\n return [];\n }\n\n getInlineResources(): ResourceEntry<any, any>[] {\n throw new Error('Method not implemented.');\n }\n}\n"]}