@frontmcp/sdk 0.6.0 → 0.6.2

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 (1053) hide show
  1. package/{src/auth → auth}/instances/instance.local-primary-auth.d.ts +1 -1
  2. package/{src/auth → auth}/instances/instance.remote-primary-auth.d.ts +1 -1
  3. package/{src/auth → auth}/session/index.d.ts +1 -0
  4. package/auth/session/vercel-kv-session.store.d.ts +96 -0
  5. package/{src/common → common}/interfaces/internal/primary-auth-provider.interface.d.ts +1 -4
  6. package/{src/common → common}/metadata/front-mcp.metadata.d.ts +1779 -67
  7. package/{src/common → common}/metadata/prompt.metadata.d.ts +4 -0
  8. package/{src/common → common}/metadata/resource.metadata.d.ts +8 -0
  9. package/{src/common → common}/metadata/tool-ui.metadata.d.ts +2 -2
  10. package/{src/common → common}/metadata/tool.metadata.d.ts +4 -0
  11. package/{src/common → common}/schemas/http-output.schema.d.ts +24 -6
  12. package/common/types/options/auth/app-auth.schema.d.ts +275 -0
  13. package/common/types/options/auth/auth.interfaces.d.ts +461 -0
  14. package/common/types/options/auth/auth.schema.d.ts +284 -0
  15. package/common/types/options/auth/auth.utils.d.ts +32 -0
  16. package/common/types/options/auth/index.d.ts +16 -0
  17. package/common/types/options/auth/orchestrated.schema.d.ts +381 -0
  18. package/common/types/options/auth/public.schema.d.ts +42 -0
  19. package/common/types/options/auth/shared.schemas.d.ts +120 -0
  20. package/common/types/options/auth/transparent.schema.d.ts +56 -0
  21. package/common/types/options/auth/transport.deprecated.d.ts +63 -0
  22. package/{src/common → common}/types/options/index.d.ts +1 -1
  23. package/common/types/options/redis.options.d.ts +190 -0
  24. package/{src/common → common}/types/options/server-info.options.d.ts +4 -0
  25. package/{src/common → common}/types/options/transport.options.d.ts +74 -5
  26. package/{src/common → common}/utils/decide-request-intent.utils.d.ts +6 -7
  27. package/common/utils/global-config.utils.d.ts +36 -0
  28. package/{src/common → common}/utils/index.d.ts +1 -0
  29. package/{src/completion → completion}/flows/complete.flow.d.ts +6 -8
  30. package/{src/errors → errors}/index.d.ts +1 -1
  31. package/{src/errors → errors}/mcp.error.d.ts +9 -0
  32. package/esm/index.mjs +22664 -0
  33. package/esm/mcp-apps/index.mjs +723 -0
  34. package/esm/package.json +81 -0
  35. package/{src/front-mcp → front-mcp}/front-mcp.providers.d.ts +246 -38
  36. package/front-mcp/index.d.ts +2 -0
  37. package/{src/index.d.ts → index.d.ts} +1 -1
  38. package/index.js +22957 -0
  39. package/logger/logger.tokens.d.ts +1 -0
  40. package/{src/logging → logging}/flows/set-level.flow.d.ts +6 -8
  41. package/mcp-apps/index.js +799 -0
  42. package/package.json +37 -17
  43. package/{src/prompt → prompt}/flows/get-prompt.flow.d.ts +14 -8
  44. package/{src/prompt → prompt}/flows/prompts-list.flow.d.ts +8 -7
  45. package/{src/resource → resource}/flows/read-resource.flow.d.ts +8 -9
  46. package/{src/resource → resource}/flows/resource-templates-list.flow.d.ts +8 -7
  47. package/{src/resource → resource}/flows/resources-list.flow.d.ts +8 -7
  48. package/{src/resource → resource}/flows/subscribe-resource.flow.d.ts +6 -8
  49. package/{src/resource → resource}/flows/unsubscribe-resource.flow.d.ts +6 -8
  50. package/store/adapters/store.vercel-kv.adapter.d.ts +86 -0
  51. package/{src/store → store}/index.d.ts +2 -0
  52. package/store/store.factory.d.ts +86 -0
  53. package/{src/tool → tool}/flows/call-tool.flow.d.ts +18 -9
  54. package/{src/tool → tool}/flows/tools-list.flow.d.ts +9 -8
  55. package/{src/tool → tool}/ui/index.d.ts +4 -4
  56. package/{src/tool → tool}/ui/platform-adapters.d.ts +2 -2
  57. package/{src/tool → tool}/ui/template-helpers.d.ts +5 -7
  58. package/{src/tool → tool}/ui/ui-resource.handler.d.ts +1 -1
  59. package/{src/transport → transport}/mcp-handlers/complete-request.handler.d.ts +4 -15
  60. package/{src/transport → transport}/mcp-handlers/get-prompt-request.handler.d.ts +5 -15
  61. package/{src/transport → transport}/mcp-handlers/index.d.ts +67 -195
  62. package/{src/transport → transport}/mcp-handlers/list-prompts-request.handler.d.ts +5 -15
  63. package/{src/transport → transport}/mcp-handlers/list-resource-templates-request.handler.d.ts +5 -15
  64. package/{src/transport → transport}/mcp-handlers/list-resources-request.handler.d.ts +5 -15
  65. package/{src/transport → transport}/mcp-handlers/list-tools-request.handler.d.ts +5 -15
  66. package/{src/transport → transport}/mcp-handlers/logging-set-level-request.handler.d.ts +3 -14
  67. package/{src/transport → transport}/mcp-handlers/read-resource-request.handler.d.ts +4 -15
  68. package/{src/transport → transport}/mcp-handlers/subscribe-request.handler.d.ts +3 -14
  69. package/{src/transport → transport}/mcp-handlers/unsubscribe-request.handler.d.ts +3 -14
  70. package/{src/transport → transport}/transport.registry.d.ts +5 -1
  71. package/README.md +0 -460
  72. package/src/adapter/adapter.instance.js +0 -70
  73. package/src/adapter/adapter.instance.js.map +0 -1
  74. package/src/adapter/adapter.regsitry.js +0 -54
  75. package/src/adapter/adapter.regsitry.js.map +0 -1
  76. package/src/adapter/adapter.utils.js +0 -83
  77. package/src/adapter/adapter.utils.js.map +0 -1
  78. package/src/app/app.registry.js +0 -66
  79. package/src/app/app.registry.js.map +0 -1
  80. package/src/app/app.utils.js +0 -58
  81. package/src/app/app.utils.js.map +0 -1
  82. package/src/app/instances/app.local.instance.js +0 -67
  83. package/src/app/instances/app.local.instance.js.map +0 -1
  84. package/src/app/instances/app.remote.instance.js +0 -36
  85. package/src/app/instances/app.remote.instance.js.map +0 -1
  86. package/src/app/instances/index.js +0 -6
  87. package/src/app/instances/index.js.map +0 -1
  88. package/src/auth/auth.registry.js +0 -219
  89. package/src/auth/auth.registry.js.map +0 -1
  90. package/src/auth/auth.utils.js +0 -84
  91. package/src/auth/auth.utils.js.map +0 -1
  92. package/src/auth/authorization/authorization.class.js +0 -217
  93. package/src/auth/authorization/authorization.class.js.map +0 -1
  94. package/src/auth/authorization/authorization.types.js +0 -79
  95. package/src/auth/authorization/authorization.types.js.map +0 -1
  96. package/src/auth/authorization/index.js +0 -19
  97. package/src/auth/authorization/index.js.map +0 -1
  98. package/src/auth/authorization/orchestrated.authorization.js +0 -306
  99. package/src/auth/authorization/orchestrated.authorization.js.map +0 -1
  100. package/src/auth/authorization/public.authorization.js +0 -132
  101. package/src/auth/authorization/public.authorization.js.map +0 -1
  102. package/src/auth/authorization/transparent.authorization.js +0 -147
  103. package/src/auth/authorization/transparent.authorization.js.map +0 -1
  104. package/src/auth/consent/consent.types.js +0 -119
  105. package/src/auth/consent/consent.types.js.map +0 -1
  106. package/src/auth/consent/index.js +0 -13
  107. package/src/auth/consent/index.js.map +0 -1
  108. package/src/auth/detection/auth-provider-detection.js +0 -230
  109. package/src/auth/detection/auth-provider-detection.js.map +0 -1
  110. package/src/auth/detection/index.js +0 -15
  111. package/src/auth/detection/index.js.map +0 -1
  112. package/src/auth/flows/auth.verify.flow.js +0 -379
  113. package/src/auth/flows/auth.verify.flow.js.map +0 -1
  114. package/src/auth/flows/oauth.authorize.flow.js +0 -822
  115. package/src/auth/flows/oauth.authorize.flow.js.map +0 -1
  116. package/src/auth/flows/oauth.callback.flow.js +0 -357
  117. package/src/auth/flows/oauth.callback.flow.js.map +0 -1
  118. package/src/auth/flows/oauth.register.flow.js +0 -201
  119. package/src/auth/flows/oauth.register.flow.js.map +0 -1
  120. package/src/auth/flows/oauth.token.flow.js +0 -319
  121. package/src/auth/flows/oauth.token.flow.js.map +0 -1
  122. package/src/auth/flows/session.verify.flow.js +0 -304
  123. package/src/auth/flows/session.verify.flow.js.map +0 -1
  124. package/src/auth/flows/well-known.jwks.flow.js +0 -89
  125. package/src/auth/flows/well-known.jwks.flow.js.map +0 -1
  126. package/src/auth/flows/well-known.oauth-authorization-server.flow.js +0 -122
  127. package/src/auth/flows/well-known.oauth-authorization-server.flow.js.map +0 -1
  128. package/src/auth/flows/well-known.prm.flow.js +0 -106
  129. package/src/auth/flows/well-known.prm.flow.js.map +0 -1
  130. package/src/auth/instances/instance.local-primary-auth.js +0 -308
  131. package/src/auth/instances/instance.local-primary-auth.js.map +0 -1
  132. package/src/auth/instances/instance.remote-primary-auth.js +0 -49
  133. package/src/auth/instances/instance.remote-primary-auth.js.map +0 -1
  134. package/src/auth/jwks/dev-key-persistence.js +0 -219
  135. package/src/auth/jwks/dev-key-persistence.js.map +0 -1
  136. package/src/auth/jwks/index.js +0 -7
  137. package/src/auth/jwks/index.js.map +0 -1
  138. package/src/auth/jwks/jwks.service.js +0 -303
  139. package/src/auth/jwks/jwks.service.js.map +0 -1
  140. package/src/auth/jwks/jwks.types.js +0 -3
  141. package/src/auth/jwks/jwks.types.js.map +0 -1
  142. package/src/auth/jwks/jwks.utils.js +0 -32
  143. package/src/auth/jwks/jwks.utils.js.map +0 -1
  144. package/src/auth/machine-id.js +0 -32
  145. package/src/auth/machine-id.js.map +0 -1
  146. package/src/auth/oauth/flows/oauth.authorize.flow.js +0 -33
  147. package/src/auth/oauth/flows/oauth.authorize.flow.js.map +0 -1
  148. package/src/auth/oauth/flows/oauth.device-authorization.flow.js +0 -48
  149. package/src/auth/oauth/flows/oauth.device-authorization.flow.js.map +0 -1
  150. package/src/auth/oauth/flows/oauth.introspect.flow.js +0 -28
  151. package/src/auth/oauth/flows/oauth.introspect.flow.js.map +0 -1
  152. package/src/auth/oauth/flows/oauth.par.flow.js +0 -29
  153. package/src/auth/oauth/flows/oauth.par.flow.js.map +0 -1
  154. package/src/auth/oauth/flows/oauth.revoke.flow.js +0 -27
  155. package/src/auth/oauth/flows/oauth.revoke.flow.js.map +0 -1
  156. package/src/auth/oauth/flows/oauth.token.flow.js +0 -59
  157. package/src/auth/oauth/flows/oauth.token.flow.js.map +0 -1
  158. package/src/auth/oauth/flows/oauth.userinfo.flow.js +0 -24
  159. package/src/auth/oauth/flows/oauth.userinfo.flow.js.map +0 -1
  160. package/src/auth/oauth/flows/oidc.logout.flow.js +0 -20
  161. package/src/auth/oauth/flows/oidc.logout.flow.js.map +0 -1
  162. package/src/auth/session/authorization-vault.js +0 -817
  163. package/src/auth/session/authorization-vault.js.map +0 -1
  164. package/src/auth/session/authorization.store.js +0 -323
  165. package/src/auth/session/authorization.store.js.map +0 -1
  166. package/src/auth/session/encrypted-authorization-vault.js +0 -493
  167. package/src/auth/session/encrypted-authorization-vault.js.map +0 -1
  168. package/src/auth/session/index.js +0 -16
  169. package/src/auth/session/index.js.map +0 -1
  170. package/src/auth/session/record/session.base.js +0 -125
  171. package/src/auth/session/record/session.base.js.map +0 -1
  172. package/src/auth/session/record/session.stateful.js +0 -55
  173. package/src/auth/session/record/session.stateful.js.map +0 -1
  174. package/src/auth/session/record/session.stateless.js +0 -32
  175. package/src/auth/session/record/session.stateless.js.map +0 -1
  176. package/src/auth/session/record/session.transparent.js +0 -22
  177. package/src/auth/session/record/session.transparent.js.map +0 -1
  178. package/src/auth/session/redis-session.store.js +0 -204
  179. package/src/auth/session/redis-session.store.js.map +0 -1
  180. package/src/auth/session/session.crypto.js +0 -47
  181. package/src/auth/session/session.crypto.js.map +0 -1
  182. package/src/auth/session/session.schema.js +0 -13
  183. package/src/auth/session/session.schema.js.map +0 -1
  184. package/src/auth/session/session.service.js +0 -105
  185. package/src/auth/session/session.service.js.map +0 -1
  186. package/src/auth/session/session.transport.js +0 -20
  187. package/src/auth/session/session.transport.js.map +0 -1
  188. package/src/auth/session/session.types.js +0 -4
  189. package/src/auth/session/session.types.js.map +0 -1
  190. package/src/auth/session/token.refresh.js +0 -63
  191. package/src/auth/session/token.refresh.js.map +0 -1
  192. package/src/auth/session/token.store.js +0 -53
  193. package/src/auth/session/token.store.js.map +0 -1
  194. package/src/auth/session/token.vault.js +0 -54
  195. package/src/auth/session/token.vault.js.map +0 -1
  196. package/src/auth/session/transport-session.manager.js +0 -298
  197. package/src/auth/session/transport-session.manager.js.map +0 -1
  198. package/src/auth/session/transport-session.types.js +0 -111
  199. package/src/auth/session/transport-session.types.js.map +0 -1
  200. package/src/auth/session/utils/auth-token.utils.js +0 -57
  201. package/src/auth/session/utils/auth-token.utils.js.map +0 -1
  202. package/src/auth/session/utils/session-id.utils.js +0 -217
  203. package/src/auth/session/utils/session-id.utils.js.map +0 -1
  204. package/src/auth/session/utils/tiny-ttl-cache.js +0 -26
  205. package/src/auth/session/utils/tiny-ttl-cache.js.map +0 -1
  206. package/src/auth/session/vault-encryption.js +0 -263
  207. package/src/auth/session/vault-encryption.js.map +0 -1
  208. package/src/auth/ui/base-layout.js +0 -279
  209. package/src/auth/ui/base-layout.js.map +0 -1
  210. package/src/auth/ui/index.js +0 -34
  211. package/src/auth/ui/index.js.map +0 -1
  212. package/src/auth/ui/templates.js +0 -426
  213. package/src/auth/ui/templates.js.map +0 -1
  214. package/src/auth/utils/audience.validator.js +0 -196
  215. package/src/auth/utils/audience.validator.js.map +0 -1
  216. package/src/auth/utils/index.js +0 -7
  217. package/src/auth/utils/index.js.map +0 -1
  218. package/src/auth/utils/www-authenticate.utils.js +0 -183
  219. package/src/auth/utils/www-authenticate.utils.js.map +0 -1
  220. package/src/common/common.schema.js +0 -35
  221. package/src/common/common.schema.js.map +0 -1
  222. package/src/common/constants.js +0 -13
  223. package/src/common/constants.js.map +0 -1
  224. package/src/common/decorators/adapter.decorator.js +0 -20
  225. package/src/common/decorators/adapter.decorator.js.map +0 -1
  226. package/src/common/decorators/app.decorator.js +0 -44
  227. package/src/common/decorators/app.decorator.js.map +0 -1
  228. package/src/common/decorators/auth-provider.decorator.js +0 -20
  229. package/src/common/decorators/auth-provider.decorator.js.map +0 -1
  230. package/src/common/decorators/decorator-utils.js +0 -195
  231. package/src/common/decorators/decorator-utils.js.map +0 -1
  232. package/src/common/decorators/flow.decorator.js +0 -19
  233. package/src/common/decorators/flow.decorator.js.map +0 -1
  234. package/src/common/decorators/front-mcp.decorator.js +0 -67
  235. package/src/common/decorators/front-mcp.decorator.js.map +0 -1
  236. package/src/common/decorators/hook.decorator.js +0 -178
  237. package/src/common/decorators/hook.decorator.js.map +0 -1
  238. package/src/common/decorators/index.js +0 -16
  239. package/src/common/decorators/index.js.map +0 -1
  240. package/src/common/decorators/logger.decorator.js +0 -20
  241. package/src/common/decorators/logger.decorator.js.map +0 -1
  242. package/src/common/decorators/plugin.decorator.js +0 -39
  243. package/src/common/decorators/plugin.decorator.js.map +0 -1
  244. package/src/common/decorators/prompt.decorator.js +0 -38
  245. package/src/common/decorators/prompt.decorator.js.map +0 -1
  246. package/src/common/decorators/provider.decorator.js +0 -20
  247. package/src/common/decorators/provider.decorator.js.map +0 -1
  248. package/src/common/decorators/resource.decorator.js +0 -94
  249. package/src/common/decorators/resource.decorator.js.map +0 -1
  250. package/src/common/decorators/tool.decorator.js +0 -45
  251. package/src/common/decorators/tool.decorator.js.map +0 -1
  252. package/src/common/dynamic/dynamic.adapter.js +0 -28
  253. package/src/common/dynamic/dynamic.adapter.js.map +0 -1
  254. package/src/common/dynamic/dynamic.plugin.js +0 -42
  255. package/src/common/dynamic/dynamic.plugin.js.map +0 -1
  256. package/src/common/dynamic/dynamic.utils.js +0 -27
  257. package/src/common/dynamic/dynamic.utils.js.map +0 -1
  258. package/src/common/dynamic/index.js +0 -6
  259. package/src/common/dynamic/index.js.map +0 -1
  260. package/src/common/entries/adapter.entry.js +0 -8
  261. package/src/common/entries/adapter.entry.js.map +0 -1
  262. package/src/common/entries/app.entry.js +0 -9
  263. package/src/common/entries/app.entry.js.map +0 -1
  264. package/src/common/entries/auth-provider.entry.js +0 -8
  265. package/src/common/entries/auth-provider.entry.js.map +0 -1
  266. package/src/common/entries/base.entry.js +0 -17
  267. package/src/common/entries/base.entry.js.map +0 -1
  268. package/src/common/entries/flow.entry.js +0 -21
  269. package/src/common/entries/flow.entry.js.map +0 -1
  270. package/src/common/entries/hook.entry.js +0 -20
  271. package/src/common/entries/hook.entry.js.map +0 -1
  272. package/src/common/entries/index.js +0 -17
  273. package/src/common/entries/index.js.map +0 -1
  274. package/src/common/entries/logger.entry.js +0 -8
  275. package/src/common/entries/logger.entry.js.map +0 -1
  276. package/src/common/entries/plugin.entry.js +0 -8
  277. package/src/common/entries/plugin.entry.js.map +0 -1
  278. package/src/common/entries/prompt.entry.js +0 -18
  279. package/src/common/entries/prompt.entry.js.map +0 -1
  280. package/src/common/entries/provider.entry.js +0 -8
  281. package/src/common/entries/provider.entry.js.map +0 -1
  282. package/src/common/entries/resource.entry.js +0 -35
  283. package/src/common/entries/resource.entry.js.map +0 -1
  284. package/src/common/entries/scope.entry.js +0 -14
  285. package/src/common/entries/scope.entry.js.map +0 -1
  286. package/src/common/entries/tool.entry.js +0 -31
  287. package/src/common/entries/tool.entry.js.map +0 -1
  288. package/src/common/flow/flow.utils.js +0 -96
  289. package/src/common/flow/flow.utils.js.map +0 -1
  290. package/src/common/index.js +0 -20
  291. package/src/common/index.js.map +0 -1
  292. package/src/common/interfaces/adapter.interface.js +0 -3
  293. package/src/common/interfaces/adapter.interface.js.map +0 -1
  294. package/src/common/interfaces/app.interface.js +0 -3
  295. package/src/common/interfaces/app.interface.js.map +0 -1
  296. package/src/common/interfaces/auth-hook.interface.js +0 -135
  297. package/src/common/interfaces/auth-hook.interface.js.map +0 -1
  298. package/src/common/interfaces/auth-provider.interface.js +0 -18
  299. package/src/common/interfaces/auth-provider.interface.js.map +0 -1
  300. package/src/common/interfaces/base.interface.js +0 -3
  301. package/src/common/interfaces/base.interface.js.map +0 -1
  302. package/src/common/interfaces/execution-context.interface.js +0 -166
  303. package/src/common/interfaces/execution-context.interface.js.map +0 -1
  304. package/src/common/interfaces/flow.interface.js +0 -95
  305. package/src/common/interfaces/flow.interface.js.map +0 -1
  306. package/src/common/interfaces/front-mcp.interface.js +0 -3
  307. package/src/common/interfaces/front-mcp.interface.js.map +0 -1
  308. package/src/common/interfaces/hook.interface.js +0 -3
  309. package/src/common/interfaces/hook.interface.js.map +0 -1
  310. package/src/common/interfaces/index.js +0 -21
  311. package/src/common/interfaces/index.js.map +0 -1
  312. package/src/common/interfaces/internal/flow.utils.js +0 -83
  313. package/src/common/interfaces/internal/flow.utils.js.map +0 -1
  314. package/src/common/interfaces/internal/index.js +0 -7
  315. package/src/common/interfaces/internal/index.js.map +0 -1
  316. package/src/common/interfaces/internal/primary-auth-provider.interface.js +0 -81
  317. package/src/common/interfaces/internal/primary-auth-provider.interface.js.map +0 -1
  318. package/src/common/interfaces/internal/registry.interface.js +0 -3
  319. package/src/common/interfaces/internal/registry.interface.js.map +0 -1
  320. package/src/common/interfaces/logger.interface.js +0 -10
  321. package/src/common/interfaces/logger.interface.js.map +0 -1
  322. package/src/common/interfaces/plugin.interface.js +0 -3
  323. package/src/common/interfaces/plugin.interface.js.map +0 -1
  324. package/src/common/interfaces/prompt.interface.js +0 -81
  325. package/src/common/interfaces/prompt.interface.js.map +0 -1
  326. package/src/common/interfaces/provider.interface.js +0 -18
  327. package/src/common/interfaces/provider.interface.js.map +0 -1
  328. package/src/common/interfaces/resource.interface.js +0 -56
  329. package/src/common/interfaces/resource.interface.js.map +0 -1
  330. package/src/common/interfaces/scope.interface.js +0 -3
  331. package/src/common/interfaces/scope.interface.js.map +0 -1
  332. package/src/common/interfaces/server.interface.js +0 -18
  333. package/src/common/interfaces/server.interface.js.map +0 -1
  334. package/src/common/interfaces/session-hook.interface.js +0 -140
  335. package/src/common/interfaces/session-hook.interface.js.map +0 -1
  336. package/src/common/interfaces/tool-hook.interface.js +0 -92
  337. package/src/common/interfaces/tool-hook.interface.js.map +0 -1
  338. package/src/common/interfaces/tool.interface.js +0 -117
  339. package/src/common/interfaces/tool.interface.js.map +0 -1
  340. package/src/common/metadata/adapter.metadata.js +0 -10
  341. package/src/common/metadata/adapter.metadata.js.map +0 -1
  342. package/src/common/metadata/app.metadata.js +0 -30
  343. package/src/common/metadata/app.metadata.js.map +0 -1
  344. package/src/common/metadata/auth-provider.metadata.js +0 -19
  345. package/src/common/metadata/auth-provider.metadata.js.map +0 -1
  346. package/src/common/metadata/flow.metadata.js +0 -15
  347. package/src/common/metadata/flow.metadata.js.map +0 -1
  348. package/src/common/metadata/front-mcp.metadata.js +0 -29
  349. package/src/common/metadata/front-mcp.metadata.js.map +0 -1
  350. package/src/common/metadata/hook.metadata.js +0 -3
  351. package/src/common/metadata/hook.metadata.js.map +0 -1
  352. package/src/common/metadata/index.js +0 -17
  353. package/src/common/metadata/index.js.map +0 -1
  354. package/src/common/metadata/logger.metadata.js +0 -10
  355. package/src/common/metadata/logger.metadata.js.map +0 -1
  356. package/src/common/metadata/plugin.metadata.js +0 -18
  357. package/src/common/metadata/plugin.metadata.js.map +0 -1
  358. package/src/common/metadata/prompt.metadata.js +0 -27
  359. package/src/common/metadata/prompt.metadata.js.map +0 -1
  360. package/src/common/metadata/provider.metadata.js +0 -36
  361. package/src/common/metadata/provider.metadata.js.map +0 -1
  362. package/src/common/metadata/resource.metadata.js +0 -31
  363. package/src/common/metadata/resource.metadata.js.map +0 -1
  364. package/src/common/metadata/tool-ui.metadata.js +0 -12
  365. package/src/common/metadata/tool-ui.metadata.js.map +0 -1
  366. package/src/common/metadata/tool.metadata.js +0 -55
  367. package/src/common/metadata/tool.metadata.js.map +0 -1
  368. package/src/common/migrate/auth-transport.migrate.js +0 -140
  369. package/src/common/migrate/auth-transport.migrate.js.map +0 -1
  370. package/src/common/migrate/index.js +0 -6
  371. package/src/common/migrate/index.js.map +0 -1
  372. package/src/common/providers/base-config.provider.js +0 -128
  373. package/src/common/providers/base-config.provider.js.map +0 -1
  374. package/src/common/records/adapter.record.js +0 -11
  375. package/src/common/records/adapter.record.js.map +0 -1
  376. package/src/common/records/app.record.js +0 -9
  377. package/src/common/records/app.record.js.map +0 -1
  378. package/src/common/records/auth-provider.record.js +0 -12
  379. package/src/common/records/auth-provider.record.js.map +0 -1
  380. package/src/common/records/flow.record.js +0 -8
  381. package/src/common/records/flow.record.js.map +0 -1
  382. package/src/common/records/hook.record.js +0 -8
  383. package/src/common/records/hook.record.js.map +0 -1
  384. package/src/common/records/index.js +0 -16
  385. package/src/common/records/index.js.map +0 -1
  386. package/src/common/records/logger.record.js +0 -8
  387. package/src/common/records/logger.record.js.map +0 -1
  388. package/src/common/records/plugin.record.js +0 -11
  389. package/src/common/records/plugin.record.js.map +0 -1
  390. package/src/common/records/prompt.record.js +0 -9
  391. package/src/common/records/prompt.record.js.map +0 -1
  392. package/src/common/records/provider.record.js +0 -14
  393. package/src/common/records/provider.record.js.map +0 -1
  394. package/src/common/records/resource.record.js +0 -20
  395. package/src/common/records/resource.record.js.map +0 -1
  396. package/src/common/records/scope.record.js +0 -9
  397. package/src/common/records/scope.record.js.map +0 -1
  398. package/src/common/records/tool.record.js +0 -9
  399. package/src/common/records/tool.record.js.map +0 -1
  400. package/src/common/schemas/annotated-class.schema.js +0 -109
  401. package/src/common/schemas/annotated-class.schema.js.map +0 -1
  402. package/src/common/schemas/http-input.schema.js +0 -13
  403. package/src/common/schemas/http-input.schema.js.map +0 -1
  404. package/src/common/schemas/http-output.schema.js +0 -321
  405. package/src/common/schemas/http-output.schema.js.map +0 -1
  406. package/src/common/schemas/index.js +0 -8
  407. package/src/common/schemas/index.js.map +0 -1
  408. package/src/common/schemas/session-header.schema.js +0 -42
  409. package/src/common/schemas/session-header.schema.js.map +0 -1
  410. package/src/common/tokens/adapter.tokens.js +0 -11
  411. package/src/common/tokens/adapter.tokens.js.map +0 -1
  412. package/src/common/tokens/app.tokens.js +0 -30
  413. package/src/common/tokens/app.tokens.js.map +0 -1
  414. package/src/common/tokens/auth-provider.tokens.js +0 -12
  415. package/src/common/tokens/auth-provider.tokens.js.map +0 -1
  416. package/src/common/tokens/base.tokens.js +0 -9
  417. package/src/common/tokens/base.tokens.js.map +0 -1
  418. package/src/common/tokens/flow-hook.tokens.js +0 -9
  419. package/src/common/tokens/flow-hook.tokens.js.map +0 -1
  420. package/src/common/tokens/flow.tokens.js +0 -16
  421. package/src/common/tokens/flow.tokens.js.map +0 -1
  422. package/src/common/tokens/front-mcp.tokens.js +0 -24
  423. package/src/common/tokens/front-mcp.tokens.js.map +0 -1
  424. package/src/common/tokens/index.js +0 -17
  425. package/src/common/tokens/index.js.map +0 -1
  426. package/src/common/tokens/logger.tokens.js +0 -11
  427. package/src/common/tokens/logger.tokens.js.map +0 -1
  428. package/src/common/tokens/plugin.tokens.js +0 -18
  429. package/src/common/tokens/plugin.tokens.js.map +0 -1
  430. package/src/common/tokens/prompt.tokens.js +0 -14
  431. package/src/common/tokens/prompt.tokens.js.map +0 -1
  432. package/src/common/tokens/provider.tokens.js +0 -12
  433. package/src/common/tokens/provider.tokens.js.map +0 -1
  434. package/src/common/tokens/resource.tokens.js +0 -28
  435. package/src/common/tokens/resource.tokens.js.map +0 -1
  436. package/src/common/tokens/server.tokens.js +0 -11
  437. package/src/common/tokens/server.tokens.js.map +0 -1
  438. package/src/common/tokens/tool.tokens.js +0 -21
  439. package/src/common/tokens/tool.tokens.js.map +0 -1
  440. package/src/common/types/auth/index.js +0 -6
  441. package/src/common/types/auth/index.js.map +0 -1
  442. package/src/common/types/auth/jwt.types.js +0 -36
  443. package/src/common/types/auth/jwt.types.js.map +0 -1
  444. package/src/common/types/auth/session.types.js +0 -53
  445. package/src/common/types/auth/session.types.js.map +0 -1
  446. package/src/common/types/common.types.js +0 -3
  447. package/src/common/types/common.types.js.map +0 -1
  448. package/src/common/types/index.js +0 -7
  449. package/src/common/types/index.js.map +0 -1
  450. package/src/common/types/options/auth.options.d.ts +0 -1266
  451. package/src/common/types/options/auth.options.js +0 -560
  452. package/src/common/types/options/auth.options.js.map +0 -1
  453. package/src/common/types/options/http.options.js +0 -10
  454. package/src/common/types/options/http.options.js.map +0 -1
  455. package/src/common/types/options/index.js +0 -11
  456. package/src/common/types/options/index.js.map +0 -1
  457. package/src/common/types/options/logging.options.js +0 -33
  458. package/src/common/types/options/logging.options.js.map +0 -1
  459. package/src/common/types/options/redis.options.d.ts +0 -22
  460. package/src/common/types/options/redis.options.js +0 -45
  461. package/src/common/types/options/redis.options.js.map +0 -1
  462. package/src/common/types/options/server-info.options.js +0 -13
  463. package/src/common/types/options/server-info.options.js.map +0 -1
  464. package/src/common/types/options/session.options.js +0 -32
  465. package/src/common/types/options/session.options.js.map +0 -1
  466. package/src/common/types/options/transport.options.js +0 -121
  467. package/src/common/types/options/transport.options.js.map +0 -1
  468. package/src/common/utils/decide-request-intent.utils.js +0 -391
  469. package/src/common/utils/decide-request-intent.utils.js.map +0 -1
  470. package/src/common/utils/index.js +0 -6
  471. package/src/common/utils/index.js.map +0 -1
  472. package/src/common/utils/path.utils.js +0 -66
  473. package/src/common/utils/path.utils.js.map +0 -1
  474. package/src/completion/flows/complete.flow.js +0 -199
  475. package/src/completion/flows/complete.flow.js.map +0 -1
  476. package/src/context/frontmcp-context-storage.js +0 -183
  477. package/src/context/frontmcp-context-storage.js.map +0 -1
  478. package/src/context/frontmcp-context.js +0 -360
  479. package/src/context/frontmcp-context.js.map +0 -1
  480. package/src/context/frontmcp-context.provider.js +0 -61
  481. package/src/context/frontmcp-context.provider.js.map +0 -1
  482. package/src/context/index.js +0 -64
  483. package/src/context/index.js.map +0 -1
  484. package/src/context/request-context-storage.js +0 -183
  485. package/src/context/request-context-storage.js.map +0 -1
  486. package/src/context/request-context.js +0 -209
  487. package/src/context/request-context.js.map +0 -1
  488. package/src/context/request-context.provider.js +0 -51
  489. package/src/context/request-context.provider.js.map +0 -1
  490. package/src/context/session-key.provider.js +0 -65
  491. package/src/context/session-key.provider.js.map +0 -1
  492. package/src/context/trace-context.js +0 -142
  493. package/src/context/trace-context.js.map +0 -1
  494. package/src/errors/authorization-required.error.js +0 -274
  495. package/src/errors/authorization-required.error.js.map +0 -1
  496. package/src/errors/error-handler.js +0 -107
  497. package/src/errors/error-handler.js.map +0 -1
  498. package/src/errors/index.js +0 -44
  499. package/src/errors/index.js.map +0 -1
  500. package/src/errors/mcp.error.js +0 -398
  501. package/src/errors/mcp.error.js.map +0 -1
  502. package/src/exceptions/mcp-exceptions/session-missing.exception.js +0 -11
  503. package/src/exceptions/mcp-exceptions/session-missing.exception.js.map +0 -1
  504. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.js +0 -15
  505. package/src/exceptions/mcp-exceptions/unsupported-client-version.exception.js.map +0 -1
  506. package/src/flows/flow.instance.js +0 -420
  507. package/src/flows/flow.instance.js.map +0 -1
  508. package/src/flows/flow.registry.js +0 -121
  509. package/src/flows/flow.registry.js.map +0 -1
  510. package/src/flows/flow.stages.js +0 -113
  511. package/src/flows/flow.stages.js.map +0 -1
  512. package/src/flows/flow.utils.js +0 -36
  513. package/src/flows/flow.utils.js.map +0 -1
  514. package/src/front-mcp/front-mcp.js +0 -63
  515. package/src/front-mcp/front-mcp.js.map +0 -1
  516. package/src/front-mcp/front-mcp.providers.js +0 -29
  517. package/src/front-mcp/front-mcp.providers.js.map +0 -1
  518. package/src/front-mcp/front-mcp.tokens.js +0 -5
  519. package/src/front-mcp/front-mcp.tokens.js.map +0 -1
  520. package/src/front-mcp/index.d.ts +0 -1
  521. package/src/front-mcp/index.js +0 -5
  522. package/src/front-mcp/index.js.map +0 -1
  523. package/src/front-mcp/serverless-handler.js +0 -61
  524. package/src/front-mcp/serverless-handler.js.map +0 -1
  525. package/src/hooks/hook.instance.js +0 -26
  526. package/src/hooks/hook.instance.js.map +0 -1
  527. package/src/hooks/hook.registry.js +0 -152
  528. package/src/hooks/hook.registry.js.map +0 -1
  529. package/src/hooks/hooks.utils.js +0 -34
  530. package/src/hooks/hooks.utils.js.map +0 -1
  531. package/src/index.js +0 -36
  532. package/src/index.js.map +0 -1
  533. package/src/logger/instances/instance.console-logger.js +0 -75
  534. package/src/logger/instances/instance.console-logger.js.map +0 -1
  535. package/src/logger/instances/instance.logger.js +0 -77
  536. package/src/logger/instances/instance.logger.js.map +0 -1
  537. package/src/logger/logger.registry.js +0 -96
  538. package/src/logger/logger.registry.js.map +0 -1
  539. package/src/logger/logger.tokens.js +0 -3
  540. package/src/logger/logger.tokens.js.map +0 -1
  541. package/src/logger/logger.types.js +0 -8
  542. package/src/logger/logger.types.js.map +0 -1
  543. package/src/logger/logger.utils.js +0 -42
  544. package/src/logger/logger.utils.js.map +0 -1
  545. package/src/logging/flows/set-level.flow.js +0 -108
  546. package/src/logging/flows/set-level.flow.js.map +0 -1
  547. package/src/mcp-apps/csp.js +0 -267
  548. package/src/mcp-apps/csp.js.map +0 -1
  549. package/src/mcp-apps/index.js +0 -91
  550. package/src/mcp-apps/index.js.map +0 -1
  551. package/src/mcp-apps/schemas.js +0 -345
  552. package/src/mcp-apps/schemas.js.map +0 -1
  553. package/src/mcp-apps/template.js +0 -419
  554. package/src/mcp-apps/template.js.map +0 -1
  555. package/src/mcp-apps/types.js +0 -59
  556. package/src/mcp-apps/types.js.map +0 -1
  557. package/src/notification/index.js +0 -13
  558. package/src/notification/index.js.map +0 -1
  559. package/src/notification/notification.service.js +0 -731
  560. package/src/notification/notification.service.js.map +0 -1
  561. package/src/plugin/plugin.registry.js +0 -152
  562. package/src/plugin/plugin.registry.js.map +0 -1
  563. package/src/plugin/plugin.utils.js +0 -88
  564. package/src/plugin/plugin.utils.js.map +0 -1
  565. package/src/prompt/flows/get-prompt.flow.js +0 -214
  566. package/src/prompt/flows/get-prompt.flow.js.map +0 -1
  567. package/src/prompt/flows/prompts-list.flow.js +0 -176
  568. package/src/prompt/flows/prompts-list.flow.js.map +0 -1
  569. package/src/prompt/index.js +0 -17
  570. package/src/prompt/index.js.map +0 -1
  571. package/src/prompt/prompt.events.js +0 -25
  572. package/src/prompt/prompt.events.js.map +0 -1
  573. package/src/prompt/prompt.instance.js +0 -120
  574. package/src/prompt/prompt.instance.js.map +0 -1
  575. package/src/prompt/prompt.registry.js +0 -380
  576. package/src/prompt/prompt.registry.js.map +0 -1
  577. package/src/prompt/prompt.types.js +0 -11
  578. package/src/prompt/prompt.types.js.map +0 -1
  579. package/src/prompt/prompt.utils.js +0 -136
  580. package/src/prompt/prompt.utils.js.map +0 -1
  581. package/src/provider/provider.registry.js +0 -868
  582. package/src/provider/provider.registry.js.map +0 -1
  583. package/src/provider/provider.types.js +0 -3
  584. package/src/provider/provider.types.js.map +0 -1
  585. package/src/provider/provider.utils.js +0 -103
  586. package/src/provider/provider.utils.js.map +0 -1
  587. package/src/regsitry/index.js +0 -5
  588. package/src/regsitry/index.js.map +0 -1
  589. package/src/regsitry/registry.base.js +0 -32
  590. package/src/regsitry/registry.base.js.map +0 -1
  591. package/src/resource/flows/read-resource.flow.js +0 -270
  592. package/src/resource/flows/read-resource.flow.js.map +0 -1
  593. package/src/resource/flows/resource-templates-list.flow.js +0 -191
  594. package/src/resource/flows/resource-templates-list.flow.js.map +0 -1
  595. package/src/resource/flows/resources-list.flow.js +0 -196
  596. package/src/resource/flows/resources-list.flow.js.map +0 -1
  597. package/src/resource/flows/subscribe-resource.flow.js +0 -123
  598. package/src/resource/flows/subscribe-resource.flow.js.map +0 -1
  599. package/src/resource/flows/unsubscribe-resource.flow.js +0 -107
  600. package/src/resource/flows/unsubscribe-resource.flow.js.map +0 -1
  601. package/src/resource/index.js +0 -20
  602. package/src/resource/index.js.map +0 -1
  603. package/src/resource/resource.events.js +0 -17
  604. package/src/resource/resource.events.js.map +0 -1
  605. package/src/resource/resource.instance.js +0 -163
  606. package/src/resource/resource.instance.js.map +0 -1
  607. package/src/resource/resource.registry.js +0 -468
  608. package/src/resource/resource.registry.js.map +0 -1
  609. package/src/resource/resource.types.js +0 -11
  610. package/src/resource/resource.types.js.map +0 -1
  611. package/src/resource/resource.utils.js +0 -151
  612. package/src/resource/resource.utils.js.map +0 -1
  613. package/src/scope/flows/http.request.flow.js +0 -474
  614. package/src/scope/flows/http.request.flow.js.map +0 -1
  615. package/src/scope/index.js +0 -6
  616. package/src/scope/index.js.map +0 -1
  617. package/src/scope/scope.instance.js +0 -263
  618. package/src/scope/scope.instance.js.map +0 -1
  619. package/src/scope/scope.registry.js +0 -94
  620. package/src/scope/scope.registry.js.map +0 -1
  621. package/src/scope/scope.utils.js +0 -61
  622. package/src/scope/scope.utils.js.map +0 -1
  623. package/src/server/adapters/base.host.adapter.js +0 -8
  624. package/src/server/adapters/base.host.adapter.js.map +0 -1
  625. package/src/server/adapters/express.host.adapter.js +0 -70
  626. package/src/server/adapters/express.host.adapter.js.map +0 -1
  627. package/src/server/server.instance.js +0 -54
  628. package/src/server/server.instance.js.map +0 -1
  629. package/src/server/server.types.js +0 -3
  630. package/src/server/server.types.js.map +0 -1
  631. package/src/server/server.validation.js +0 -192
  632. package/src/server/server.validation.js.map +0 -1
  633. package/src/store/adapters/store.base.adapter.js +0 -16
  634. package/src/store/adapters/store.base.adapter.js.map +0 -1
  635. package/src/store/adapters/store.memory.adapter.js +0 -89
  636. package/src/store/adapters/store.memory.adapter.js.map +0 -1
  637. package/src/store/adapters/store.redis.adapter.js +0 -104
  638. package/src/store/adapters/store.redis.adapter.js.map +0 -1
  639. package/src/store/index.js +0 -12
  640. package/src/store/index.js.map +0 -1
  641. package/src/store/store.helpers.js +0 -67
  642. package/src/store/store.helpers.js.map +0 -1
  643. package/src/store/store.registry.js +0 -37
  644. package/src/store/store.registry.js.map +0 -1
  645. package/src/store/store.tokens.js +0 -7
  646. package/src/store/store.tokens.js.map +0 -1
  647. package/src/store/store.types.js +0 -11
  648. package/src/store/store.types.js.map +0 -1
  649. package/src/store/store.utils.js +0 -18
  650. package/src/store/store.utils.js.map +0 -1
  651. package/src/tool/flows/call-tool.flow.js +0 -616
  652. package/src/tool/flows/call-tool.flow.js.map +0 -1
  653. package/src/tool/flows/tools-list.flow.js +0 -328
  654. package/src/tool/flows/tools-list.flow.js.map +0 -1
  655. package/src/tool/tool.events.js +0 -16
  656. package/src/tool/tool.events.js.map +0 -1
  657. package/src/tool/tool.instance.js +0 -117
  658. package/src/tool/tool.instance.js.map +0 -1
  659. package/src/tool/tool.registry.js +0 -353
  660. package/src/tool/tool.registry.js.map +0 -1
  661. package/src/tool/tool.types.js +0 -10
  662. package/src/tool/tool.types.js.map +0 -1
  663. package/src/tool/tool.utils.js +0 -366
  664. package/src/tool/tool.utils.js.map +0 -1
  665. package/src/tool/ui/index.js +0 -63
  666. package/src/tool/ui/index.js.map +0 -1
  667. package/src/tool/ui/platform-adapters.js +0 -18
  668. package/src/tool/ui/platform-adapters.js.map +0 -1
  669. package/src/tool/ui/template-helpers.js +0 -112
  670. package/src/tool/ui/template-helpers.js.map +0 -1
  671. package/src/tool/ui/ui-resource-template.js +0 -64
  672. package/src/tool/ui/ui-resource-template.js.map +0 -1
  673. package/src/tool/ui/ui-resource.handler.js +0 -129
  674. package/src/tool/ui/ui-resource.handler.js.map +0 -1
  675. package/src/transport/adapters/transport.local.adapter.js +0 -148
  676. package/src/transport/adapters/transport.local.adapter.js.map +0 -1
  677. package/src/transport/adapters/transport.sse.adapter.js +0 -65
  678. package/src/transport/adapters/transport.sse.adapter.js.map +0 -1
  679. package/src/transport/adapters/transport.streamable-http.adapter.js +0 -112
  680. package/src/transport/adapters/transport.streamable-http.adapter.js.map +0 -1
  681. package/src/transport/flows/handle.sse.flow.js +0 -197
  682. package/src/transport/flows/handle.sse.flow.js.map +0 -1
  683. package/src/transport/flows/handle.stateless-http.flow.js +0 -102
  684. package/src/transport/flows/handle.stateless-http.flow.js.map +0 -1
  685. package/src/transport/flows/handle.streamable-http.flow.js +0 -315
  686. package/src/transport/flows/handle.streamable-http.flow.js.map +0 -1
  687. package/src/transport/legacy/legacy.sse.tranporter.js +0 -185
  688. package/src/transport/legacy/legacy.sse.tranporter.js.map +0 -1
  689. package/src/transport/mcp-handlers/Initialized-notification.hanlder.js +0 -14
  690. package/src/transport/mcp-handlers/Initialized-notification.hanlder.js.map +0 -1
  691. package/src/transport/mcp-handlers/call-tool-request.handler.js +0 -46
  692. package/src/transport/mcp-handlers/call-tool-request.handler.js.map +0 -1
  693. package/src/transport/mcp-handlers/complete-request.handler.js +0 -11
  694. package/src/transport/mcp-handlers/complete-request.handler.js.map +0 -1
  695. package/src/transport/mcp-handlers/get-prompt-request.handler.js +0 -11
  696. package/src/transport/mcp-handlers/get-prompt-request.handler.js.map +0 -1
  697. package/src/transport/mcp-handlers/index.js +0 -57
  698. package/src/transport/mcp-handlers/index.js.map +0 -1
  699. package/src/transport/mcp-handlers/initialize-request.handler.js +0 -109
  700. package/src/transport/mcp-handlers/initialize-request.handler.js.map +0 -1
  701. package/src/transport/mcp-handlers/list-prompts-request.handler.js +0 -11
  702. package/src/transport/mcp-handlers/list-prompts-request.handler.js.map +0 -1
  703. package/src/transport/mcp-handlers/list-resource-templates-request.handler.js +0 -12
  704. package/src/transport/mcp-handlers/list-resource-templates-request.handler.js.map +0 -1
  705. package/src/transport/mcp-handlers/list-resources-request.handler.js +0 -12
  706. package/src/transport/mcp-handlers/list-resources-request.handler.js.map +0 -1
  707. package/src/transport/mcp-handlers/list-tools-request.handler.js +0 -11
  708. package/src/transport/mcp-handlers/list-tools-request.handler.js.map +0 -1
  709. package/src/transport/mcp-handlers/logging-set-level-request.handler.js +0 -34
  710. package/src/transport/mcp-handlers/logging-set-level-request.handler.js.map +0 -1
  711. package/src/transport/mcp-handlers/mcp-handlers.types.js +0 -3
  712. package/src/transport/mcp-handlers/mcp-handlers.types.js.map +0 -1
  713. package/src/transport/mcp-handlers/read-resource-request.handler.js +0 -12
  714. package/src/transport/mcp-handlers/read-resource-request.handler.js.map +0 -1
  715. package/src/transport/mcp-handlers/roots-list-changed-notification.handler.js +0 -26
  716. package/src/transport/mcp-handlers/roots-list-changed-notification.handler.js.map +0 -1
  717. package/src/transport/mcp-handlers/subscribe-request.handler.js +0 -34
  718. package/src/transport/mcp-handlers/subscribe-request.handler.js.map +0 -1
  719. package/src/transport/mcp-handlers/unsubscribe-request.handler.js +0 -34
  720. package/src/transport/mcp-handlers/unsubscribe-request.handler.js.map +0 -1
  721. package/src/transport/transport.error.js +0 -25
  722. package/src/transport/transport.error.js.map +0 -1
  723. package/src/transport/transport.event-store.js +0 -36
  724. package/src/transport/transport.event-store.js.map +0 -1
  725. package/src/transport/transport.local.js +0 -71
  726. package/src/transport/transport.local.js.map +0 -1
  727. package/src/transport/transport.registry.js +0 -523
  728. package/src/transport/transport.registry.js.map +0 -1
  729. package/src/transport/transport.remote.js +0 -31
  730. package/src/transport/transport.remote.js.map +0 -1
  731. package/src/transport/transport.types.js +0 -3
  732. package/src/transport/transport.types.js.map +0 -1
  733. package/src/types/drinen-hooks.types.js +0 -3
  734. package/src/types/drinen-hooks.types.js.map +0 -1
  735. package/src/types/invoke.type.js +0 -34
  736. package/src/types/invoke.type.js.map +0 -1
  737. package/src/types/token.types.js +0 -3
  738. package/src/types/token.types.js.map +0 -1
  739. package/src/utils/content.utils.js +0 -194
  740. package/src/utils/content.utils.js.map +0 -1
  741. package/src/utils/index.js +0 -55
  742. package/src/utils/index.js.map +0 -1
  743. package/src/utils/lineage.utils.js +0 -82
  744. package/src/utils/lineage.utils.js.map +0 -1
  745. package/src/utils/metadata.utils.js +0 -26
  746. package/src/utils/metadata.utils.js.map +0 -1
  747. package/src/utils/naming.utils.js +0 -136
  748. package/src/utils/naming.utils.js.map +0 -1
  749. package/src/utils/server.utils.js +0 -59
  750. package/src/utils/server.utils.js.map +0 -1
  751. package/src/utils/string.utils.js +0 -10
  752. package/src/utils/string.utils.js.map +0 -1
  753. package/src/utils/token.utils.js +0 -65
  754. package/src/utils/token.utils.js.map +0 -1
  755. package/src/utils/types.utils.js +0 -3
  756. package/src/utils/types.utils.js.map +0 -1
  757. package/src/utils/uri-template.utils.js +0 -113
  758. package/src/utils/uri-template.utils.js.map +0 -1
  759. package/src/utils/uri-validation.utils.js +0 -76
  760. package/src/utils/uri-validation.utils.js.map +0 -1
  761. package/{src/adapter → adapter}/adapter.instance.d.ts +0 -0
  762. package/{src/adapter → adapter}/adapter.regsitry.d.ts +0 -0
  763. package/{src/adapter → adapter}/adapter.utils.d.ts +0 -0
  764. package/{src/app → app}/app.registry.d.ts +0 -0
  765. package/{src/app → app}/app.utils.d.ts +0 -0
  766. package/{src/app → app}/instances/app.local.instance.d.ts +0 -0
  767. package/{src/app → app}/instances/app.remote.instance.d.ts +0 -0
  768. package/{src/app → app}/instances/index.d.ts +0 -0
  769. package/{src/auth → auth}/auth.registry.d.ts +0 -0
  770. package/{src/auth → auth}/auth.utils.d.ts +0 -0
  771. package/{src/auth → auth}/authorization/authorization.class.d.ts +0 -0
  772. package/{src/auth → auth}/authorization/authorization.types.d.ts +0 -0
  773. package/{src/auth → auth}/authorization/index.d.ts +0 -0
  774. package/{src/auth → auth}/authorization/orchestrated.authorization.d.ts +0 -0
  775. package/{src/auth → auth}/authorization/public.authorization.d.ts +0 -0
  776. package/{src/auth → auth}/authorization/transparent.authorization.d.ts +0 -0
  777. package/{src/auth → auth}/consent/consent.types.d.ts +0 -0
  778. package/{src/auth → auth}/consent/index.d.ts +0 -0
  779. package/{src/auth → auth}/detection/auth-provider-detection.d.ts +0 -0
  780. package/{src/auth → auth}/detection/index.d.ts +0 -0
  781. package/{src/auth → auth}/flows/auth.verify.flow.d.ts +0 -0
  782. package/{src/auth → auth}/flows/oauth.authorize.flow.d.ts +0 -0
  783. package/{src/auth → auth}/flows/oauth.callback.flow.d.ts +0 -0
  784. package/{src/auth → auth}/flows/oauth.register.flow.d.ts +0 -0
  785. package/{src/auth → auth}/flows/oauth.token.flow.d.ts +0 -0
  786. package/{src/auth → auth}/flows/session.verify.flow.d.ts +0 -0
  787. package/{src/auth → auth}/flows/well-known.jwks.flow.d.ts +0 -0
  788. package/{src/auth → auth}/flows/well-known.oauth-authorization-server.flow.d.ts +0 -0
  789. package/{src/auth → auth}/flows/well-known.prm.flow.d.ts +0 -0
  790. package/{src/auth → auth}/jwks/dev-key-persistence.d.ts +0 -0
  791. package/{src/auth → auth}/jwks/index.d.ts +0 -0
  792. package/{src/auth → auth}/jwks/jwks.service.d.ts +0 -0
  793. package/{src/auth → auth}/jwks/jwks.types.d.ts +0 -0
  794. package/{src/auth → auth}/jwks/jwks.utils.d.ts +0 -0
  795. package/{src/auth → auth}/machine-id.d.ts +0 -0
  796. package/{src/auth → auth}/oauth/flows/oauth.authorize.flow.d.ts +0 -0
  797. package/{src/auth → auth}/oauth/flows/oauth.device-authorization.flow.d.ts +0 -0
  798. package/{src/auth → auth}/oauth/flows/oauth.introspect.flow.d.ts +0 -0
  799. package/{src/auth → auth}/oauth/flows/oauth.par.flow.d.ts +0 -0
  800. package/{src/auth → auth}/oauth/flows/oauth.revoke.flow.d.ts +0 -0
  801. package/{src/auth → auth}/oauth/flows/oauth.token.flow.d.ts +0 -0
  802. package/{src/auth → auth}/oauth/flows/oauth.userinfo.flow.d.ts +0 -0
  803. package/{src/auth → auth}/oauth/flows/oidc.logout.flow.d.ts +0 -0
  804. package/{src/auth → auth}/session/authorization-vault.d.ts +0 -0
  805. package/{src/auth → auth}/session/authorization.store.d.ts +0 -0
  806. package/{src/auth → auth}/session/encrypted-authorization-vault.d.ts +0 -0
  807. package/{src/auth → auth}/session/record/session.base.d.ts +0 -0
  808. package/{src/auth → auth}/session/record/session.stateful.d.ts +0 -0
  809. package/{src/auth → auth}/session/record/session.stateless.d.ts +0 -0
  810. package/{src/auth → auth}/session/record/session.transparent.d.ts +0 -0
  811. package/{src/auth → auth}/session/redis-session.store.d.ts +0 -0
  812. package/{src/auth → auth}/session/session.crypto.d.ts +0 -0
  813. package/{src/auth → auth}/session/session.schema.d.ts +0 -0
  814. package/{src/auth → auth}/session/session.service.d.ts +0 -0
  815. package/{src/auth → auth}/session/session.transport.d.ts +0 -0
  816. package/{src/auth → auth}/session/session.types.d.ts +0 -0
  817. package/{src/auth → auth}/session/token.refresh.d.ts +0 -0
  818. package/{src/auth → auth}/session/token.store.d.ts +0 -0
  819. package/{src/auth → auth}/session/token.vault.d.ts +0 -0
  820. package/{src/auth → auth}/session/transport-session.manager.d.ts +0 -0
  821. package/{src/auth → auth}/session/transport-session.types.d.ts +0 -0
  822. package/{src/auth → auth}/session/utils/auth-token.utils.d.ts +0 -0
  823. package/{src/auth → auth}/session/utils/session-id.utils.d.ts +0 -0
  824. package/{src/auth → auth}/session/utils/tiny-ttl-cache.d.ts +0 -0
  825. package/{src/auth → auth}/session/vault-encryption.d.ts +0 -0
  826. package/{src/auth → auth}/ui/base-layout.d.ts +0 -0
  827. package/{src/auth → auth}/ui/index.d.ts +0 -0
  828. package/{src/auth → auth}/ui/templates.d.ts +0 -0
  829. package/{src/auth → auth}/utils/audience.validator.d.ts +0 -0
  830. package/{src/auth → auth}/utils/index.d.ts +0 -0
  831. package/{src/auth → auth}/utils/www-authenticate.utils.d.ts +0 -0
  832. package/{src/common → common}/common.schema.d.ts +0 -0
  833. package/{src/common → common}/constants.d.ts +0 -0
  834. package/{src/common → common}/decorators/adapter.decorator.d.ts +0 -0
  835. package/{src/common → common}/decorators/app.decorator.d.ts +0 -0
  836. package/{src/common → common}/decorators/auth-provider.decorator.d.ts +0 -0
  837. package/{src/common → common}/decorators/decorator-utils.d.ts +0 -0
  838. package/{src/common → common}/decorators/flow.decorator.d.ts +0 -0
  839. package/{src/common → common}/decorators/front-mcp.decorator.d.ts +0 -0
  840. package/{src/common → common}/decorators/hook.decorator.d.ts +0 -0
  841. package/{src/common → common}/decorators/index.d.ts +0 -0
  842. package/{src/common → common}/decorators/logger.decorator.d.ts +0 -0
  843. package/{src/common → common}/decorators/plugin.decorator.d.ts +0 -0
  844. package/{src/common → common}/decorators/prompt.decorator.d.ts +0 -0
  845. package/{src/common → common}/decorators/provider.decorator.d.ts +0 -0
  846. package/{src/common → common}/decorators/resource.decorator.d.ts +0 -0
  847. package/{src/common → common}/decorators/tool.decorator.d.ts +0 -0
  848. package/{src/common → common}/dynamic/dynamic.adapter.d.ts +0 -0
  849. package/{src/common → common}/dynamic/dynamic.plugin.d.ts +0 -0
  850. package/{src/common → common}/dynamic/dynamic.utils.d.ts +0 -0
  851. package/{src/common → common}/dynamic/index.d.ts +0 -0
  852. package/{src/common → common}/entries/adapter.entry.d.ts +0 -0
  853. package/{src/common → common}/entries/app.entry.d.ts +0 -0
  854. package/{src/common → common}/entries/auth-provider.entry.d.ts +0 -0
  855. package/{src/common → common}/entries/base.entry.d.ts +0 -0
  856. package/{src/common → common}/entries/flow.entry.d.ts +0 -0
  857. package/{src/common → common}/entries/hook.entry.d.ts +0 -0
  858. package/{src/common → common}/entries/index.d.ts +0 -0
  859. package/{src/common → common}/entries/logger.entry.d.ts +0 -0
  860. package/{src/common → common}/entries/plugin.entry.d.ts +0 -0
  861. package/{src/common → common}/entries/prompt.entry.d.ts +0 -0
  862. package/{src/common → common}/entries/provider.entry.d.ts +0 -0
  863. package/{src/common → common}/entries/resource.entry.d.ts +0 -0
  864. package/{src/common → common}/entries/scope.entry.d.ts +0 -0
  865. package/{src/common → common}/entries/tool.entry.d.ts +0 -0
  866. package/{src/common → common}/flow/flow.utils.d.ts +0 -0
  867. package/{src/common → common}/index.d.ts +0 -0
  868. package/{src/common → common}/interfaces/adapter.interface.d.ts +0 -0
  869. package/{src/common → common}/interfaces/app.interface.d.ts +0 -0
  870. package/{src/common → common}/interfaces/auth-hook.interface.d.ts +0 -0
  871. package/{src/common → common}/interfaces/auth-provider.interface.d.ts +0 -0
  872. package/{src/common → common}/interfaces/base.interface.d.ts +0 -0
  873. package/{src/common → common}/interfaces/execution-context.interface.d.ts +0 -0
  874. package/{src/common → common}/interfaces/flow.interface.d.ts +0 -0
  875. package/{src/common → common}/interfaces/front-mcp.interface.d.ts +0 -0
  876. package/{src/common → common}/interfaces/hook.interface.d.ts +0 -0
  877. package/{src/common → common}/interfaces/index.d.ts +0 -0
  878. package/{src/common → common}/interfaces/internal/flow.utils.d.ts +0 -0
  879. package/{src/common → common}/interfaces/internal/index.d.ts +0 -0
  880. package/{src/common → common}/interfaces/internal/registry.interface.d.ts +0 -0
  881. package/{src/common → common}/interfaces/logger.interface.d.ts +0 -0
  882. package/{src/common → common}/interfaces/plugin.interface.d.ts +0 -0
  883. package/{src/common → common}/interfaces/prompt.interface.d.ts +0 -0
  884. package/{src/common → common}/interfaces/provider.interface.d.ts +0 -0
  885. package/{src/common → common}/interfaces/resource.interface.d.ts +0 -0
  886. package/{src/common → common}/interfaces/scope.interface.d.ts +0 -0
  887. package/{src/common → common}/interfaces/server.interface.d.ts +0 -0
  888. package/{src/common → common}/interfaces/session-hook.interface.d.ts +0 -0
  889. package/{src/common → common}/interfaces/tool-hook.interface.d.ts +0 -0
  890. package/{src/common → common}/interfaces/tool.interface.d.ts +0 -0
  891. package/{src/common → common}/metadata/adapter.metadata.d.ts +0 -0
  892. package/{src/common → common}/metadata/app.metadata.d.ts +42 -42
  893. /package/{src/common → common}/metadata/auth-provider.metadata.d.ts +0 -0
  894. /package/{src/common → common}/metadata/flow.metadata.d.ts +0 -0
  895. /package/{src/common → common}/metadata/hook.metadata.d.ts +0 -0
  896. /package/{src/common → common}/metadata/index.d.ts +0 -0
  897. /package/{src/common → common}/metadata/logger.metadata.d.ts +0 -0
  898. /package/{src/common → common}/metadata/plugin.metadata.d.ts +0 -0
  899. /package/{src/common → common}/metadata/provider.metadata.d.ts +0 -0
  900. /package/{src/common → common}/migrate/auth-transport.migrate.d.ts +0 -0
  901. /package/{src/common → common}/migrate/index.d.ts +0 -0
  902. /package/{src/common → common}/providers/base-config.provider.d.ts +0 -0
  903. /package/{src/common → common}/records/adapter.record.d.ts +0 -0
  904. /package/{src/common → common}/records/app.record.d.ts +0 -0
  905. /package/{src/common → common}/records/auth-provider.record.d.ts +0 -0
  906. /package/{src/common → common}/records/flow.record.d.ts +0 -0
  907. /package/{src/common → common}/records/hook.record.d.ts +0 -0
  908. /package/{src/common → common}/records/index.d.ts +0 -0
  909. /package/{src/common → common}/records/logger.record.d.ts +0 -0
  910. /package/{src/common → common}/records/plugin.record.d.ts +0 -0
  911. /package/{src/common → common}/records/prompt.record.d.ts +0 -0
  912. /package/{src/common → common}/records/provider.record.d.ts +0 -0
  913. /package/{src/common → common}/records/resource.record.d.ts +0 -0
  914. /package/{src/common → common}/records/scope.record.d.ts +0 -0
  915. /package/{src/common → common}/records/tool.record.d.ts +0 -0
  916. /package/{src/common → common}/schemas/annotated-class.schema.d.ts +0 -0
  917. /package/{src/common → common}/schemas/http-input.schema.d.ts +0 -0
  918. /package/{src/common → common}/schemas/index.d.ts +0 -0
  919. /package/{src/common → common}/schemas/session-header.schema.d.ts +0 -0
  920. /package/{src/common → common}/tokens/adapter.tokens.d.ts +0 -0
  921. /package/{src/common → common}/tokens/app.tokens.d.ts +0 -0
  922. /package/{src/common → common}/tokens/auth-provider.tokens.d.ts +0 -0
  923. /package/{src/common → common}/tokens/base.tokens.d.ts +0 -0
  924. /package/{src/common → common}/tokens/flow-hook.tokens.d.ts +0 -0
  925. /package/{src/common → common}/tokens/flow.tokens.d.ts +0 -0
  926. /package/{src/common → common}/tokens/front-mcp.tokens.d.ts +0 -0
  927. /package/{src/common → common}/tokens/index.d.ts +0 -0
  928. /package/{src/common → common}/tokens/logger.tokens.d.ts +0 -0
  929. /package/{src/common → common}/tokens/plugin.tokens.d.ts +0 -0
  930. /package/{src/common → common}/tokens/prompt.tokens.d.ts +0 -0
  931. /package/{src/common → common}/tokens/provider.tokens.d.ts +0 -0
  932. /package/{src/common → common}/tokens/resource.tokens.d.ts +0 -0
  933. /package/{src/common → common}/tokens/server.tokens.d.ts +0 -0
  934. /package/{src/common → common}/tokens/tool.tokens.d.ts +0 -0
  935. /package/{src/common → common}/types/auth/index.d.ts +0 -0
  936. /package/{src/common → common}/types/auth/jwt.types.d.ts +0 -0
  937. /package/{src/common → common}/types/auth/session.types.d.ts +0 -0
  938. /package/{src/common → common}/types/common.types.d.ts +0 -0
  939. /package/{src/common → common}/types/index.d.ts +0 -0
  940. /package/{src/logger/logger.tokens.d.ts → common/types/options/auth/auth.typecheck.d.ts} +0 -0
  941. /package/{src/common → common}/types/options/http.options.d.ts +0 -0
  942. /package/{src/common → common}/types/options/logging.options.d.ts +0 -0
  943. /package/{src/common → common}/types/options/session.options.d.ts +0 -0
  944. /package/{src/common → common}/utils/path.utils.d.ts +0 -0
  945. /package/{src/context → context}/frontmcp-context-storage.d.ts +0 -0
  946. /package/{src/context → context}/frontmcp-context.d.ts +0 -0
  947. /package/{src/context → context}/frontmcp-context.provider.d.ts +0 -0
  948. /package/{src/context → context}/index.d.ts +0 -0
  949. /package/{src/context → context}/request-context-storage.d.ts +0 -0
  950. /package/{src/context → context}/request-context.d.ts +0 -0
  951. /package/{src/context → context}/request-context.provider.d.ts +0 -0
  952. /package/{src/context → context}/session-key.provider.d.ts +0 -0
  953. /package/{src/context → context}/trace-context.d.ts +0 -0
  954. /package/{src/errors → errors}/authorization-required.error.d.ts +0 -0
  955. /package/{src/errors → errors}/error-handler.d.ts +0 -0
  956. /package/{src/exceptions → exceptions}/mcp-exceptions/session-missing.exception.d.ts +0 -0
  957. /package/{src/exceptions → exceptions}/mcp-exceptions/unsupported-client-version.exception.d.ts +0 -0
  958. /package/{src/flows → flows}/flow.instance.d.ts +0 -0
  959. /package/{src/flows → flows}/flow.registry.d.ts +0 -0
  960. /package/{src/flows → flows}/flow.stages.d.ts +0 -0
  961. /package/{src/flows → flows}/flow.utils.d.ts +0 -0
  962. /package/{src/front-mcp → front-mcp}/front-mcp.d.ts +0 -0
  963. /package/{src/front-mcp → front-mcp}/front-mcp.tokens.d.ts +0 -0
  964. /package/{src/front-mcp → front-mcp}/serverless-handler.d.ts +0 -0
  965. /package/{src/hooks → hooks}/hook.instance.d.ts +0 -0
  966. /package/{src/hooks → hooks}/hook.registry.d.ts +0 -0
  967. /package/{src/hooks → hooks}/hooks.utils.d.ts +0 -0
  968. /package/{src/logger → logger}/instances/instance.console-logger.d.ts +0 -0
  969. /package/{src/logger → logger}/instances/instance.logger.d.ts +0 -0
  970. /package/{src/logger → logger}/logger.registry.d.ts +0 -0
  971. /package/{src/logger → logger}/logger.types.d.ts +0 -0
  972. /package/{src/logger → logger}/logger.utils.d.ts +0 -0
  973. /package/{src/mcp-apps → mcp-apps}/csp.d.ts +0 -0
  974. /package/{src/mcp-apps → mcp-apps}/index.d.ts +0 -0
  975. /package/{src/mcp-apps → mcp-apps}/schemas.d.ts +0 -0
  976. /package/{src/mcp-apps → mcp-apps}/template.d.ts +0 -0
  977. /package/{src/mcp-apps → mcp-apps}/types.d.ts +0 -0
  978. /package/{src/notification → notification}/index.d.ts +0 -0
  979. /package/{src/notification → notification}/notification.service.d.ts +0 -0
  980. /package/{src/plugin → plugin}/plugin.registry.d.ts +0 -0
  981. /package/{src/plugin → plugin}/plugin.utils.d.ts +0 -0
  982. /package/{src/prompt → prompt}/index.d.ts +0 -0
  983. /package/{src/prompt → prompt}/prompt.events.d.ts +0 -0
  984. /package/{src/prompt → prompt}/prompt.instance.d.ts +0 -0
  985. /package/{src/prompt → prompt}/prompt.registry.d.ts +0 -0
  986. /package/{src/prompt → prompt}/prompt.types.d.ts +0 -0
  987. /package/{src/prompt → prompt}/prompt.utils.d.ts +0 -0
  988. /package/{src/provider → provider}/provider.registry.d.ts +0 -0
  989. /package/{src/provider → provider}/provider.types.d.ts +0 -0
  990. /package/{src/provider → provider}/provider.utils.d.ts +0 -0
  991. /package/{src/regsitry → regsitry}/index.d.ts +0 -0
  992. /package/{src/regsitry → regsitry}/registry.base.d.ts +0 -0
  993. /package/{src/resource → resource}/index.d.ts +0 -0
  994. /package/{src/resource → resource}/resource.events.d.ts +0 -0
  995. /package/{src/resource → resource}/resource.instance.d.ts +0 -0
  996. /package/{src/resource → resource}/resource.registry.d.ts +0 -0
  997. /package/{src/resource → resource}/resource.types.d.ts +0 -0
  998. /package/{src/resource → resource}/resource.utils.d.ts +0 -0
  999. /package/{src/scope → scope}/flows/http.request.flow.d.ts +0 -0
  1000. /package/{src/scope → scope}/index.d.ts +0 -0
  1001. /package/{src/scope → scope}/scope.instance.d.ts +0 -0
  1002. /package/{src/scope → scope}/scope.registry.d.ts +0 -0
  1003. /package/{src/scope → scope}/scope.utils.d.ts +0 -0
  1004. /package/{src/server → server}/adapters/base.host.adapter.d.ts +0 -0
  1005. /package/{src/server → server}/adapters/express.host.adapter.d.ts +0 -0
  1006. /package/{src/server → server}/server.instance.d.ts +0 -0
  1007. /package/{src/server → server}/server.types.d.ts +0 -0
  1008. /package/{src/server → server}/server.validation.d.ts +0 -0
  1009. /package/{src/store → store}/adapters/store.base.adapter.d.ts +0 -0
  1010. /package/{src/store → store}/adapters/store.memory.adapter.d.ts +0 -0
  1011. /package/{src/store → store}/adapters/store.redis.adapter.d.ts +0 -0
  1012. /package/{src/store → store}/store.helpers.d.ts +0 -0
  1013. /package/{src/store → store}/store.registry.d.ts +0 -0
  1014. /package/{src/store → store}/store.tokens.d.ts +0 -0
  1015. /package/{src/store → store}/store.types.d.ts +0 -0
  1016. /package/{src/store → store}/store.utils.d.ts +0 -0
  1017. /package/{src/tool → tool}/tool.events.d.ts +0 -0
  1018. /package/{src/tool → tool}/tool.instance.d.ts +0 -0
  1019. /package/{src/tool → tool}/tool.registry.d.ts +0 -0
  1020. /package/{src/tool → tool}/tool.types.d.ts +0 -0
  1021. /package/{src/tool → tool}/tool.utils.d.ts +0 -0
  1022. /package/{src/tool → tool}/ui/ui-resource-template.d.ts +0 -0
  1023. /package/{src/transport → transport}/adapters/transport.local.adapter.d.ts +0 -0
  1024. /package/{src/transport → transport}/adapters/transport.sse.adapter.d.ts +0 -0
  1025. /package/{src/transport → transport}/adapters/transport.streamable-http.adapter.d.ts +0 -0
  1026. /package/{src/transport → transport}/flows/handle.sse.flow.d.ts +0 -0
  1027. /package/{src/transport → transport}/flows/handle.stateless-http.flow.d.ts +0 -0
  1028. /package/{src/transport → transport}/flows/handle.streamable-http.flow.d.ts +0 -0
  1029. /package/{src/transport → transport}/legacy/legacy.sse.tranporter.d.ts +0 -0
  1030. /package/{src/transport → transport}/mcp-handlers/Initialized-notification.hanlder.d.ts +0 -0
  1031. /package/{src/transport → transport}/mcp-handlers/call-tool-request.handler.d.ts +0 -0
  1032. /package/{src/transport → transport}/mcp-handlers/initialize-request.handler.d.ts +0 -0
  1033. /package/{src/transport → transport}/mcp-handlers/mcp-handlers.types.d.ts +0 -0
  1034. /package/{src/transport → transport}/mcp-handlers/roots-list-changed-notification.handler.d.ts +0 -0
  1035. /package/{src/transport → transport}/transport.error.d.ts +0 -0
  1036. /package/{src/transport → transport}/transport.event-store.d.ts +0 -0
  1037. /package/{src/transport → transport}/transport.local.d.ts +0 -0
  1038. /package/{src/transport → transport}/transport.remote.d.ts +0 -0
  1039. /package/{src/transport → transport}/transport.types.d.ts +0 -0
  1040. /package/{src/types → types}/drinen-hooks.types.d.ts +0 -0
  1041. /package/{src/types → types}/invoke.type.d.ts +0 -0
  1042. /package/{src/types → types}/token.types.d.ts +0 -0
  1043. /package/{src/utils → utils}/content.utils.d.ts +0 -0
  1044. /package/{src/utils → utils}/index.d.ts +0 -0
  1045. /package/{src/utils → utils}/lineage.utils.d.ts +0 -0
  1046. /package/{src/utils → utils}/metadata.utils.d.ts +0 -0
  1047. /package/{src/utils → utils}/naming.utils.d.ts +0 -0
  1048. /package/{src/utils → utils}/server.utils.d.ts +0 -0
  1049. /package/{src/utils → utils}/string.utils.d.ts +0 -0
  1050. /package/{src/utils → utils}/token.utils.d.ts +0 -0
  1051. /package/{src/utils → utils}/types.utils.d.ts +0 -0
  1052. /package/{src/utils → utils}/uri-template.utils.d.ts +0 -0
  1053. /package/{src/utils → utils}/uri-validation.utils.d.ts +0 -0
@@ -1,366 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.qualifiedNameOf = exports.ownerKeyOf = exports.ensureMaxLen = exports.shortHash = exports.normalizeOwnerPath = exports.normalizeProviderId = exports.normalizeSegment = exports.sepFor = exports.toCase = exports.splitWords = void 0;
4
- exports.collectToolMetadata = collectToolMetadata;
5
- exports.normalizeTool = normalizeTool;
6
- exports.toolDiscoveryDeps = toolDiscoveryDeps;
7
- exports.buildParsedToolResult = buildParsedToolResult;
8
- // file: libs/sdk/src/tool/tool.utils.ts
9
- const common_1 = require("../common");
10
- const token_utils_1 = require("../utils/token.utils");
11
- const metadata_utils_1 = require("../utils/metadata.utils");
12
- const content_utils_1 = require("../utils/content.utils");
13
- const zod_1 = require("zod");
14
- // Re-export shared naming utilities for backwards compatibility
15
- var naming_utils_1 = require("../utils/naming.utils");
16
- Object.defineProperty(exports, "splitWords", { enumerable: true, get: function () { return naming_utils_1.splitWords; } });
17
- Object.defineProperty(exports, "toCase", { enumerable: true, get: function () { return naming_utils_1.toCase; } });
18
- Object.defineProperty(exports, "sepFor", { enumerable: true, get: function () { return naming_utils_1.sepFor; } });
19
- Object.defineProperty(exports, "normalizeSegment", { enumerable: true, get: function () { return naming_utils_1.normalizeSegment; } });
20
- Object.defineProperty(exports, "normalizeProviderId", { enumerable: true, get: function () { return naming_utils_1.normalizeProviderId; } });
21
- Object.defineProperty(exports, "normalizeOwnerPath", { enumerable: true, get: function () { return naming_utils_1.normalizeOwnerPath; } });
22
- Object.defineProperty(exports, "shortHash", { enumerable: true, get: function () { return naming_utils_1.shortHash; } });
23
- Object.defineProperty(exports, "ensureMaxLen", { enumerable: true, get: function () { return naming_utils_1.ensureMaxLen; } });
24
- // Re-export shared lineage utilities for backwards compatibility
25
- var lineage_utils_1 = require("../utils/lineage.utils");
26
- Object.defineProperty(exports, "ownerKeyOf", { enumerable: true, get: function () { return lineage_utils_1.ownerKeyOf; } });
27
- Object.defineProperty(exports, "qualifiedNameOf", { enumerable: true, get: function () { return lineage_utils_1.qualifiedNameOf; } });
28
- function collectToolMetadata(cls) {
29
- const extended = (0, metadata_utils_1.getMetadata)(common_1.extendedToolMetadata, cls);
30
- const seed = (extended ? { ...extended } : {});
31
- return Object.entries(common_1.FrontMcpToolTokens).reduce((metadata, [key, token]) => {
32
- const value = (0, metadata_utils_1.getMetadata)(token, cls);
33
- if (value) {
34
- return Object.assign(metadata, {
35
- [key]: value,
36
- });
37
- }
38
- else {
39
- return metadata;
40
- }
41
- }, seed);
42
- }
43
- function normalizeTool(item) {
44
- if (item &&
45
- typeof item === 'function' &&
46
- item[common_1.FrontMcpToolTokens.type] === 'function-tool' &&
47
- item[common_1.FrontMcpToolTokens.metadata]) {
48
- return {
49
- kind: common_1.ToolKind.FUNCTION,
50
- provide: item(),
51
- metadata: item[common_1.FrontMcpToolTokens.metadata],
52
- };
53
- }
54
- if ((0, token_utils_1.isClass)(item)) {
55
- // read McpToolMetadata from class
56
- const metadata = collectToolMetadata(item);
57
- return { kind: common_1.ToolKind.CLASS_TOKEN, provide: item, metadata };
58
- }
59
- const name = item?.name ?? String(item);
60
- throw new Error(`Invalid adapter '${name}'. Expected a class or a adapter object.`);
61
- }
62
- /**
63
- * For graph/cycle detection. Returns dependency tokens that should be graphed.
64
- * - FUNCTION: get function params without the first argument (the tool input)
65
- * - CLASS_TOKEN: deps come from the class constructor
66
- */
67
- function toolDiscoveryDeps(rec) {
68
- switch (rec.kind) {
69
- case common_1.ToolKind.FUNCTION: {
70
- return (0, token_utils_1.depsOfFunc)(rec.provide, 'discovery');
71
- }
72
- case common_1.ToolKind.CLASS_TOKEN:
73
- return (0, token_utils_1.depsOfClass)(rec.provide, 'discovery');
74
- }
75
- }
76
- function buildParsedToolResult(descriptor, raw) {
77
- const content = [];
78
- let structuredData;
79
- // No outputSchema → the best effort: treat the result as structured JSON and text fallback
80
- if (!descriptor) {
81
- const structuredContent = (0, content_utils_1.toStructuredContent)(raw);
82
- const sanitized = structuredContent ?? raw;
83
- content.push(makeJsonTextContent(sanitized));
84
- return { content, structuredContent };
85
- }
86
- if (Array.isArray(descriptor)) {
87
- // Multiple content items; expect raw to be an array of the same length.
88
- const values = Array.isArray(raw) ? raw : [raw];
89
- const parsedItems = [];
90
- // Parse all items first
91
- descriptor.forEach((singleDescriptor, idx) => {
92
- const value = values[idx];
93
- const { blocks, parsedValue, isPrimitive } = parseSingleValue(singleDescriptor, value);
94
- parsedItems.push({ blocks, parsedValue, isPrimitive });
95
- content.push(...blocks);
96
- });
97
- // Check if we have at least one non-primitive item
98
- const hasNonPrimitive = parsedItems.some((item) => !item.isPrimitive);
99
- if (hasNonPrimitive && parsedItems.length > 1) {
100
- // Multiple items with at least one non-string/primitive: use numeric indices
101
- structuredData = {};
102
- parsedItems.forEach((item, idx) => {
103
- if (item.parsedValue !== undefined) {
104
- structuredData[idx] = item.parsedValue;
105
- }
106
- });
107
- }
108
- else if (parsedItems.length === 1 && parsedItems[0].parsedValue !== undefined) {
109
- // Single item: wrap primitives in {content: value}, use objects directly
110
- if (parsedItems[0].isPrimitive) {
111
- structuredData = { content: parsedItems[0].parsedValue };
112
- }
113
- else if (typeof parsedItems[0].parsedValue === 'object' && parsedItems[0].parsedValue !== null) {
114
- // Non-primitive object (date, json, etc.) - use directly
115
- structuredData = parsedItems[0].parsedValue;
116
- }
117
- else {
118
- // Non-primitive but not an object (shouldn't happen, but handle it)
119
- structuredData = { content: parsedItems[0].parsedValue };
120
- }
121
- }
122
- else if (hasNonPrimitive) {
123
- // Multiple items but only one has a value
124
- structuredData = {};
125
- parsedItems.forEach((item, idx) => {
126
- if (item.parsedValue !== undefined) {
127
- structuredData[idx] = item.parsedValue;
128
- }
129
- });
130
- }
131
- }
132
- else {
133
- const { blocks, parsedValue, isPrimitive } = parseSingleValue(descriptor, raw);
134
- content.push(...blocks);
135
- // Single item: wrap primitives in {content: value}, use objects directly
136
- if (parsedValue !== undefined) {
137
- if (isPrimitive) {
138
- structuredData = { content: parsedValue };
139
- }
140
- else if (typeof parsedValue === 'object' && parsedValue !== null) {
141
- // Non-primitive object (date, json, etc.) - use directly
142
- structuredData = parsedValue;
143
- }
144
- else {
145
- // Non-primitive but not an object (number, boolean, etc.) - wrap it
146
- structuredData = { content: parsedValue };
147
- }
148
- }
149
- }
150
- const result = { content };
151
- // Add structuredContent if we have structured data
152
- if (structuredData !== undefined) {
153
- result.structuredContent = structuredData;
154
- }
155
- return result;
156
- }
157
- /**
158
- * Parse a single schema descriptor + value into one or more ContentBlocks.
159
- *
160
- * Returns:
161
- * - blocks: content blocks to append
162
- * - parsedValue: the parsed/validated value (for structuredContent)
163
- * - isPrimitive: whether this is a primitive string type
164
- */
165
- function parseSingleValue(descriptor, value) {
166
- // Literal primitives + special content types
167
- if (typeof descriptor === 'string') {
168
- switch (descriptor) {
169
- case 'string':
170
- return {
171
- blocks: [makePrimitiveTextContent(value)],
172
- parsedValue: value,
173
- isPrimitive: true,
174
- };
175
- case 'number': {
176
- const numValue = typeof value === 'number' ? value : Number(value);
177
- return {
178
- blocks: [makePrimitiveTextContent(value)],
179
- parsedValue: isNaN(numValue) ? null : numValue,
180
- isPrimitive: false,
181
- };
182
- }
183
- case 'boolean': {
184
- const boolValue = typeof value === 'boolean' ? value : Boolean(value);
185
- return {
186
- blocks: [makePrimitiveTextContent(value)],
187
- parsedValue: boolValue,
188
- isPrimitive: false,
189
- };
190
- }
191
- case 'date': {
192
- let dateValue = null;
193
- if (value instanceof Date) {
194
- dateValue = value;
195
- }
196
- else if (typeof value === 'string' || typeof value === 'number') {
197
- const parsed = new Date(value);
198
- if (!isNaN(parsed.getTime())) {
199
- dateValue = parsed;
200
- }
201
- }
202
- return {
203
- blocks: [makePrimitiveTextContent(value)],
204
- parsedValue: dateValue
205
- ? {
206
- iso: dateValue.toISOString(),
207
- timeInMilli: dateValue.getTime(),
208
- }
209
- : null,
210
- isPrimitive: false,
211
- };
212
- }
213
- case 'image':
214
- return {
215
- blocks: toContentArray('image', value),
216
- parsedValue: undefined,
217
- isPrimitive: false,
218
- };
219
- case 'audio':
220
- return {
221
- blocks: toContentArray('audio', value),
222
- parsedValue: undefined,
223
- isPrimitive: false,
224
- };
225
- case 'resource':
226
- return {
227
- blocks: toContentArray('resource', value),
228
- parsedValue: undefined,
229
- isPrimitive: false,
230
- };
231
- case 'resource_link':
232
- return {
233
- blocks: toContentArray('resource_link', value),
234
- parsedValue: undefined,
235
- isPrimitive: false,
236
- };
237
- default:
238
- // Unknown literal: just stringify as text
239
- return {
240
- blocks: [makePrimitiveTextContent(value)],
241
- parsedValue: value,
242
- isPrimitive: true,
243
- };
244
- }
245
- }
246
- // Zod primitives
247
- if (descriptor instanceof zod_1.ZodString) {
248
- return {
249
- blocks: [makePrimitiveTextContent(value)],
250
- parsedValue: value,
251
- isPrimitive: true,
252
- };
253
- }
254
- if (descriptor instanceof zod_1.ZodNumber) {
255
- const parseResult = descriptor.safeParse(value);
256
- const numValue = parseResult.success ? parseResult.data : typeof value === 'number' ? value : Number(value);
257
- return {
258
- blocks: [makePrimitiveTextContent(value)],
259
- parsedValue: isNaN(numValue) ? null : numValue,
260
- isPrimitive: false,
261
- };
262
- }
263
- if (descriptor instanceof zod_1.ZodBoolean) {
264
- const parseResult = descriptor.safeParse(value);
265
- const boolValue = parseResult.success ? parseResult.data : Boolean(value);
266
- return {
267
- blocks: [makePrimitiveTextContent(value)],
268
- parsedValue: boolValue,
269
- isPrimitive: false,
270
- };
271
- }
272
- if (descriptor instanceof zod_1.ZodBigInt) {
273
- const parseResult = descriptor.safeParse(value);
274
- const bigIntValue = parseResult.success ? parseResult.data : typeof value === 'bigint' ? value : null;
275
- return {
276
- blocks: [makePrimitiveTextContent(value)],
277
- parsedValue: bigIntValue !== null ? bigIntValue.toString() : null,
278
- isPrimitive: false,
279
- };
280
- }
281
- if (descriptor instanceof zod_1.ZodDate) {
282
- const parseResult = descriptor.safeParse(value);
283
- const dateValue = parseResult.success ? parseResult.data : value instanceof Date ? value : null;
284
- return {
285
- blocks: [makePrimitiveTextContent(value)],
286
- parsedValue: dateValue
287
- ? {
288
- iso: dateValue.toISOString(),
289
- timeInMilli: dateValue.getTime(),
290
- }
291
- : null,
292
- isPrimitive: false,
293
- };
294
- }
295
- // Anything else (Zod object/array/union, ZodRawShape, plain object) → JSON/structured
296
- // Use Zod parsing if it's a Zod schema
297
- let parsedValue;
298
- if (descriptor instanceof zod_1.z.ZodType) {
299
- // Use Zod to parse and validate
300
- const parseResult = descriptor.safeParse(value);
301
- if (parseResult.success) {
302
- parsedValue = (0, content_utils_1.toStructuredContent)(parseResult.data);
303
- }
304
- else {
305
- // Validation failed, use sanitized raw value
306
- parsedValue = (0, content_utils_1.toStructuredContent)(value);
307
- }
308
- }
309
- else if (typeof descriptor === 'object' && descriptor !== null) {
310
- // ZodRawShape or plain object - try to create a Zod object schema
311
- try {
312
- const schema = zod_1.z.object(descriptor);
313
- const parseResult = schema.safeParse(value);
314
- if (parseResult.success) {
315
- parsedValue = (0, content_utils_1.toStructuredContent)(parseResult.data);
316
- }
317
- else {
318
- parsedValue = (0, content_utils_1.toStructuredContent)(value);
319
- }
320
- }
321
- catch {
322
- // Fallback to sanitized content
323
- parsedValue = (0, content_utils_1.toStructuredContent)(value);
324
- }
325
- }
326
- else {
327
- parsedValue = (0, content_utils_1.toStructuredContent)(value);
328
- }
329
- return {
330
- blocks: [makeJsonTextContent(parsedValue)],
331
- parsedValue,
332
- isPrimitive: false,
333
- };
334
- }
335
- function makePrimitiveTextContent(value) {
336
- return {
337
- type: 'text',
338
- text: value == null ? '' : String(value),
339
- };
340
- }
341
- function makeJsonTextContent(jsonValue) {
342
- let text;
343
- try {
344
- text = JSON.stringify(jsonValue);
345
- }
346
- catch {
347
- text = jsonValue == null ? '' : String(jsonValue);
348
- }
349
- return { type: 'text', text };
350
- }
351
- /**
352
- * Normalize any `value` into an array of content objects with the given MCP `type`.
353
- * If `value` is already a single content object (with a matching type), it's wrapped.
354
- * If it's an array, every element is assumed to already be a content object.
355
- */
356
- function toContentArray(expectedType, value) {
357
- if (Array.isArray(value)) {
358
- return value.filter(Boolean).map((v) => v);
359
- }
360
- if (value && typeof value === 'object' && value.type === expectedType) {
361
- return [value];
362
- }
363
- // If the value is null/undefined or doesn't match, we just skip it.
364
- return [];
365
- }
366
- //# sourceMappingURL=tool.utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool.utils.js","sourceRoot":"","sources":["../../../src/tool/tool.utils.ts"],"names":[],"mappings":"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","sourcesContent":["// file: libs/sdk/src/tool/tool.utils.ts\nimport {\n ToolMetadata,\n FrontMcpToolTokens,\n ToolType,\n Token,\n ToolRecord,\n ToolKind,\n Type,\n ToolContext,\n extendedToolMetadata,\n ParsedToolResult,\n} from '../common';\nimport { depsOfClass, depsOfFunc, isClass } from '../utils/token.utils';\nimport { getMetadata } from '../utils/metadata.utils';\nimport { toStructuredContent } from '../utils/content.utils';\nimport {\n AudioContent,\n ContentBlock,\n EmbeddedResource,\n ImageContent,\n ResourceLink,\n TextContent,\n} from '@modelcontextprotocol/sdk/types.js';\nimport { z, ZodBigInt, ZodBoolean, ZodDate, ZodNumber, ZodString } from 'zod';\n\n// Re-export shared naming utilities for backwards compatibility\nexport {\n type NameCase,\n splitWords,\n toCase,\n sepFor,\n normalizeSegment,\n normalizeProviderId,\n normalizeOwnerPath,\n shortHash,\n ensureMaxLen,\n} from '../utils/naming.utils';\n\n// Re-export shared lineage utilities for backwards compatibility\nexport { ownerKeyOf, qualifiedNameOf } from '../utils/lineage.utils';\n\nexport function collectToolMetadata(cls: ToolType): ToolMetadata {\n const extended = getMetadata(extendedToolMetadata, cls);\n const seed = (extended ? { ...extended } : {}) as ToolMetadata;\n return Object.entries(FrontMcpToolTokens).reduce((metadata, [key, token]) => {\n const value = getMetadata(token, cls);\n if (value) {\n return Object.assign(metadata, {\n [key]: value,\n });\n } else {\n return metadata;\n }\n }, seed);\n}\n\nexport function normalizeTool(item: any): ToolRecord {\n if (\n item &&\n typeof item === 'function' &&\n item[FrontMcpToolTokens.type] === 'function-tool' &&\n item[FrontMcpToolTokens.metadata]\n ) {\n return {\n kind: ToolKind.FUNCTION,\n provide: item(),\n metadata: item[FrontMcpToolTokens.metadata] as ToolMetadata,\n };\n }\n\n if (isClass(item)) {\n // read McpToolMetadata from class\n const metadata = collectToolMetadata(item);\n return { kind: ToolKind.CLASS_TOKEN, provide: item as Type<ToolContext>, metadata };\n }\n const name = (item as any)?.name ?? String(item);\n throw new Error(`Invalid adapter '${name}'. Expected a class or a adapter object.`);\n}\n\n/**\n * For graph/cycle detection. Returns dependency tokens that should be graphed.\n * - FUNCTION: get function params without the first argument (the tool input)\n * - CLASS_TOKEN: deps come from the class constructor\n */\nexport function toolDiscoveryDeps(rec: ToolRecord): Token[] {\n switch (rec.kind) {\n case ToolKind.FUNCTION: {\n return depsOfFunc(rec.provide, 'discovery');\n }\n case ToolKind.CLASS_TOKEN:\n return depsOfClass(rec.provide, 'discovery');\n }\n}\n\nexport function buildParsedToolResult(descriptor: any, raw: unknown): ParsedToolResult {\n const content: ContentBlock[] = [];\n let structuredData: Record<string, any> | undefined;\n\n // No outputSchema → the best effort: treat the result as structured JSON and text fallback\n if (!descriptor) {\n const structuredContent = toStructuredContent(raw);\n const sanitized = structuredContent ?? raw;\n content.push(makeJsonTextContent(sanitized));\n return { content, structuredContent };\n }\n\n if (Array.isArray(descriptor)) {\n // Multiple content items; expect raw to be an array of the same length.\n const values = Array.isArray(raw) ? raw : [raw];\n const parsedItems: Array<{ blocks: ContentBlock[]; parsedValue?: any; isPrimitive: boolean }> = [];\n\n // Parse all items first\n descriptor.forEach((singleDescriptor: any, idx: number) => {\n const value = values[idx];\n const { blocks, parsedValue, isPrimitive } = parseSingleValue(singleDescriptor, value);\n parsedItems.push({ blocks, parsedValue, isPrimitive });\n content.push(...blocks);\n });\n\n // Check if we have at least one non-primitive item\n const hasNonPrimitive = parsedItems.some((item) => !item.isPrimitive);\n\n if (hasNonPrimitive && parsedItems.length > 1) {\n // Multiple items with at least one non-string/primitive: use numeric indices\n structuredData = {};\n parsedItems.forEach((item, idx) => {\n if (item.parsedValue !== undefined) {\n structuredData![idx] = item.parsedValue;\n }\n });\n } else if (parsedItems.length === 1 && parsedItems[0].parsedValue !== undefined) {\n // Single item: wrap primitives in {content: value}, use objects directly\n if (parsedItems[0].isPrimitive) {\n structuredData = { content: parsedItems[0].parsedValue };\n } else if (typeof parsedItems[0].parsedValue === 'object' && parsedItems[0].parsedValue !== null) {\n // Non-primitive object (date, json, etc.) - use directly\n structuredData = parsedItems[0].parsedValue;\n } else {\n // Non-primitive but not an object (shouldn't happen, but handle it)\n structuredData = { content: parsedItems[0].parsedValue };\n }\n } else if (hasNonPrimitive) {\n // Multiple items but only one has a value\n structuredData = {};\n parsedItems.forEach((item, idx) => {\n if (item.parsedValue !== undefined) {\n structuredData![idx] = item.parsedValue;\n }\n });\n }\n } else {\n const { blocks, parsedValue, isPrimitive } = parseSingleValue(descriptor, raw);\n content.push(...blocks);\n\n // Single item: wrap primitives in {content: value}, use objects directly\n if (parsedValue !== undefined) {\n if (isPrimitive) {\n structuredData = { content: parsedValue };\n } else if (typeof parsedValue === 'object' && parsedValue !== null) {\n // Non-primitive object (date, json, etc.) - use directly\n structuredData = parsedValue;\n } else {\n // Non-primitive but not an object (number, boolean, etc.) - wrap it\n structuredData = { content: parsedValue };\n }\n }\n }\n\n const result: ParsedToolResult = { content };\n\n // Add structuredContent if we have structured data\n if (structuredData !== undefined) {\n result.structuredContent = structuredData;\n }\n\n return result;\n}\n\n/**\n * Parse a single schema descriptor + value into one or more ContentBlocks.\n *\n * Returns:\n * - blocks: content blocks to append\n * - parsedValue: the parsed/validated value (for structuredContent)\n * - isPrimitive: whether this is a primitive string type\n */\nfunction parseSingleValue(\n descriptor: any,\n value: unknown,\n): { blocks: ContentBlock[]; parsedValue?: any; isPrimitive: boolean } {\n // Literal primitives + special content types\n if (typeof descriptor === 'string') {\n switch (descriptor) {\n case 'string':\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: value,\n isPrimitive: true,\n };\n\n case 'number': {\n const numValue = typeof value === 'number' ? value : Number(value);\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: isNaN(numValue) ? null : numValue,\n isPrimitive: false,\n };\n }\n\n case 'boolean': {\n const boolValue = typeof value === 'boolean' ? value : Boolean(value);\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: boolValue,\n isPrimitive: false,\n };\n }\n\n case 'date': {\n let dateValue: Date | null = null;\n if (value instanceof Date) {\n dateValue = value;\n } else if (typeof value === 'string' || typeof value === 'number') {\n const parsed = new Date(value);\n if (!isNaN(parsed.getTime())) {\n dateValue = parsed;\n }\n }\n\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: dateValue\n ? {\n iso: dateValue.toISOString(),\n timeInMilli: dateValue.getTime(),\n }\n : null,\n isPrimitive: false,\n };\n }\n\n case 'image':\n return {\n blocks: toContentArray<ImageContent>('image', value),\n parsedValue: undefined,\n isPrimitive: false,\n };\n\n case 'audio':\n return {\n blocks: toContentArray<AudioContent>('audio', value),\n parsedValue: undefined,\n isPrimitive: false,\n };\n\n case 'resource':\n return {\n blocks: toContentArray<EmbeddedResource>('resource', value),\n parsedValue: undefined,\n isPrimitive: false,\n };\n\n case 'resource_link':\n return {\n blocks: toContentArray<ResourceLink>('resource_link', value),\n parsedValue: undefined,\n isPrimitive: false,\n };\n\n default:\n // Unknown literal: just stringify as text\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: value,\n isPrimitive: true,\n };\n }\n }\n\n // Zod primitives\n if (descriptor instanceof ZodString) {\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: value,\n isPrimitive: true,\n };\n }\n\n if (descriptor instanceof ZodNumber) {\n const parseResult = descriptor.safeParse(value);\n const numValue = parseResult.success ? parseResult.data : typeof value === 'number' ? value : Number(value);\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: isNaN(numValue) ? null : numValue,\n isPrimitive: false,\n };\n }\n\n if (descriptor instanceof ZodBoolean) {\n const parseResult = descriptor.safeParse(value);\n const boolValue = parseResult.success ? parseResult.data : Boolean(value);\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: boolValue,\n isPrimitive: false,\n };\n }\n\n if (descriptor instanceof ZodBigInt) {\n const parseResult = descriptor.safeParse(value);\n const bigIntValue = parseResult.success ? parseResult.data : typeof value === 'bigint' ? value : null;\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: bigIntValue !== null ? bigIntValue.toString() : null,\n isPrimitive: false,\n };\n }\n\n if (descriptor instanceof ZodDate) {\n const parseResult = descriptor.safeParse(value);\n const dateValue = parseResult.success ? parseResult.data : value instanceof Date ? value : null;\n return {\n blocks: [makePrimitiveTextContent(value)],\n parsedValue: dateValue\n ? {\n iso: dateValue.toISOString(),\n timeInMilli: dateValue.getTime(),\n }\n : null,\n isPrimitive: false,\n };\n }\n\n // Anything else (Zod object/array/union, ZodRawShape, plain object) → JSON/structured\n // Use Zod parsing if it's a Zod schema\n let parsedValue: any;\n\n if (descriptor instanceof z.ZodType) {\n // Use Zod to parse and validate\n const parseResult = descriptor.safeParse(value);\n if (parseResult.success) {\n parsedValue = toStructuredContent(parseResult.data);\n } else {\n // Validation failed, use sanitized raw value\n parsedValue = toStructuredContent(value);\n }\n } else if (typeof descriptor === 'object' && descriptor !== null) {\n // ZodRawShape or plain object - try to create a Zod object schema\n try {\n const schema = z.object(descriptor);\n const parseResult = schema.safeParse(value);\n if (parseResult.success) {\n parsedValue = toStructuredContent(parseResult.data);\n } else {\n parsedValue = toStructuredContent(value);\n }\n } catch {\n // Fallback to sanitized content\n parsedValue = toStructuredContent(value);\n }\n } else {\n parsedValue = toStructuredContent(value);\n }\n\n return {\n blocks: [makeJsonTextContent(parsedValue)],\n parsedValue,\n isPrimitive: false,\n };\n}\n\nfunction makePrimitiveTextContent(value: unknown): TextContent {\n return {\n type: 'text',\n text: value == null ? '' : String(value),\n };\n}\n\nfunction makeJsonTextContent(jsonValue: unknown): TextContent {\n let text: string;\n try {\n text = JSON.stringify(jsonValue);\n } catch {\n text = jsonValue == null ? '' : String(jsonValue);\n }\n return { type: 'text', text };\n}\n\n/**\n * Normalize any `value` into an array of content objects with the given MCP `type`.\n * If `value` is already a single content object (with a matching type), it's wrapped.\n * If it's an array, every element is assumed to already be a content object.\n */\nfunction toContentArray<T extends ContentBlock>(expectedType: T['type'], value: unknown): ContentBlock[] {\n if (Array.isArray(value)) {\n return value.filter(Boolean).map((v) => v as T);\n }\n\n if (value && typeof value === 'object' && (value as any).type === expectedType) {\n return [value as T];\n }\n\n // If the value is null/undefined or doesn't match, we just skip it.\n return [];\n}\n"]}
@@ -1,63 +0,0 @@
1
- "use strict";
2
- /**
3
- * Tool UI Module
4
- *
5
- * Provides UI template rendering and platform-specific metadata generation
6
- * for MCP tool responses.
7
- *
8
- * Three serving modes:
9
- * - **inline**: HTML is rendered per-request and embedded in _meta['ui/html']
10
- * - **static**: Static widget is pre-compiled at startup, client fetches via resources/read
11
- * - **hybrid**: Shell (React + renderer) cached at startup, component + data in response
12
- *
13
- * NOTE: Core Tool UI functionality has moved to @frontmcp/ui/registry for standalone usage.
14
- * This module re-exports from @frontmcp/ui/registry for backwards compatibility.
15
- */
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.StaticWidgetResourceTemplate = exports.createUIResourceHandler = exports.handleUIResourceRead = exports.resetIdCounter = exports.createTemplateHelpers = exports.jsonEmbed = exports.uniqueId = exports.formatCurrency = exports.formatDate = exports.escapeHtml = exports.buildUIMeta = exports.getUIResourceMimeType = exports.buildStaticWidgetUri = exports.parseWidgetUri = exports.isStaticWidgetUri = exports.isUIResourceUri = exports.UI_RESOURCE_SCHEME = exports.containsMdxSyntax = exports.isReactComponent = exports.hasUIConfig = exports.renderToolTemplate = exports.renderToolTemplateAsync = exports.ToolUIRegistry = void 0;
18
- // ============================================
19
- // Core Registry (from @frontmcp/ui/registry)
20
- // ============================================
21
- var registry_1 = require("@frontmcp/ui/registry");
22
- // Registry
23
- Object.defineProperty(exports, "ToolUIRegistry", { enumerable: true, get: function () { return registry_1.ToolUIRegistry; } });
24
- // Template rendering
25
- Object.defineProperty(exports, "renderToolTemplateAsync", { enumerable: true, get: function () { return registry_1.renderToolTemplateAsync; } });
26
- Object.defineProperty(exports, "renderToolTemplate", { enumerable: true, get: function () { return registry_1.renderToolTemplate; } });
27
- Object.defineProperty(exports, "hasUIConfig", { enumerable: true, get: function () { return registry_1.hasUIConfig; } });
28
- Object.defineProperty(exports, "isReactComponent", { enumerable: true, get: function () { return registry_1.isReactComponent; } });
29
- Object.defineProperty(exports, "containsMdxSyntax", { enumerable: true, get: function () { return registry_1.containsMdxSyntax; } });
30
- // URI utilities
31
- Object.defineProperty(exports, "UI_RESOURCE_SCHEME", { enumerable: true, get: function () { return registry_1.UI_RESOURCE_SCHEME; } });
32
- Object.defineProperty(exports, "isUIResourceUri", { enumerable: true, get: function () { return registry_1.isUIResourceUri; } });
33
- Object.defineProperty(exports, "isStaticWidgetUri", { enumerable: true, get: function () { return registry_1.isStaticWidgetUri; } });
34
- Object.defineProperty(exports, "parseWidgetUri", { enumerable: true, get: function () { return registry_1.parseWidgetUri; } });
35
- Object.defineProperty(exports, "buildStaticWidgetUri", { enumerable: true, get: function () { return registry_1.buildStaticWidgetUri; } });
36
- Object.defineProperty(exports, "getUIResourceMimeType", { enumerable: true, get: function () { return registry_1.getUIResourceMimeType; } });
37
- // ============================================
38
- // Platform Adapters (from @frontmcp/ui/adapters)
39
- // ============================================
40
- var platform_adapters_1 = require("./platform-adapters");
41
- Object.defineProperty(exports, "buildUIMeta", { enumerable: true, get: function () { return platform_adapters_1.buildUIMeta; } });
42
- // ============================================
43
- // Template Helpers (from @frontmcp/ui/runtime)
44
- // ============================================
45
- var template_helpers_1 = require("./template-helpers");
46
- Object.defineProperty(exports, "escapeHtml", { enumerable: true, get: function () { return template_helpers_1.escapeHtml; } });
47
- Object.defineProperty(exports, "formatDate", { enumerable: true, get: function () { return template_helpers_1.formatDate; } });
48
- Object.defineProperty(exports, "formatCurrency", { enumerable: true, get: function () { return template_helpers_1.formatCurrency; } });
49
- Object.defineProperty(exports, "uniqueId", { enumerable: true, get: function () { return template_helpers_1.uniqueId; } });
50
- Object.defineProperty(exports, "jsonEmbed", { enumerable: true, get: function () { return template_helpers_1.jsonEmbed; } });
51
- Object.defineProperty(exports, "createTemplateHelpers", { enumerable: true, get: function () { return template_helpers_1.createTemplateHelpers; } });
52
- Object.defineProperty(exports, "resetIdCounter", { enumerable: true, get: function () { return template_helpers_1.resetIdCounter; } });
53
- // ============================================
54
- // SDK-Specific (MCP Integration)
55
- // ============================================
56
- // UI Resource Handler - SDK-specific functions for MCP resource handling
57
- var ui_resource_handler_1 = require("./ui-resource.handler");
58
- Object.defineProperty(exports, "handleUIResourceRead", { enumerable: true, get: function () { return ui_resource_handler_1.handleUIResourceRead; } });
59
- Object.defineProperty(exports, "createUIResourceHandler", { enumerable: true, get: function () { return ui_resource_handler_1.createUIResourceHandler; } });
60
- // UI Resource Templates (for capability advertisement)
61
- var ui_resource_template_1 = require("./ui-resource-template");
62
- Object.defineProperty(exports, "StaticWidgetResourceTemplate", { enumerable: true, get: function () { return ui_resource_template_1.StaticWidgetResourceTemplate; } });
63
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tool/ui/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,+CAA+C;AAC/C,6CAA6C;AAC7C,+CAA+C;AAC/C,kDAgB+B;AAf7B,WAAW;AACX,0GAAA,cAAc,OAAA;AACd,qBAAqB;AACrB,mHAAA,uBAAuB,OAAA;AACvB,8GAAA,kBAAkB,OAAA;AAClB,uGAAA,WAAW,OAAA;AACX,4GAAA,gBAAgB,OAAA;AAChB,6GAAA,iBAAiB,OAAA;AACjB,gBAAgB;AAChB,8GAAA,kBAAkB,OAAA;AAClB,2GAAA,eAAe,OAAA;AACf,6GAAA,iBAAiB,OAAA;AACjB,0GAAA,cAAc,OAAA;AACd,gHAAA,oBAAoB,OAAA;AACpB,iHAAA,qBAAqB,OAAA;AAgBvB,+CAA+C;AAC/C,iDAAiD;AACjD,+CAA+C;AAC/C,yDAAkD;AAAzC,gHAAA,WAAW,OAAA;AAGpB,+CAA+C;AAC/C,+CAA+C;AAC/C,+CAA+C;AAC/C,uDAQ4B;AAP1B,8GAAA,UAAU,OAAA;AACV,8GAAA,UAAU,OAAA;AACV,kHAAA,cAAc,OAAA;AACd,4GAAA,QAAQ,OAAA;AACR,6GAAA,SAAS,OAAA;AACT,yHAAA,qBAAqB,OAAA;AACrB,kHAAA,cAAc,OAAA;AAGhB,+CAA+C;AAC/C,iCAAiC;AACjC,+CAA+C;AAC/C,yEAAyE;AACzE,6DAAsF;AAA7E,2HAAA,oBAAoB,OAAA;AAAE,8HAAA,uBAAuB,OAAA;AAGtD,uDAAuD;AACvD,+DAAsE;AAA7D,oIAAA,4BAA4B,OAAA","sourcesContent":["/**\n * Tool UI Module\n *\n * Provides UI template rendering and platform-specific metadata generation\n * for MCP tool responses.\n *\n * Three serving modes:\n * - **inline**: HTML is rendered per-request and embedded in _meta['ui/html']\n * - **static**: Static widget is pre-compiled at startup, client fetches via resources/read\n * - **hybrid**: Shell (React + renderer) cached at startup, component + data in response\n *\n * NOTE: Core Tool UI functionality has moved to @frontmcp/ui/registry for standalone usage.\n * This module re-exports from @frontmcp/ui/registry for backwards compatibility.\n */\n\n// ============================================\n// Core Registry (from @frontmcp/ui/registry)\n// ============================================\nexport {\n // Registry\n ToolUIRegistry,\n // Template rendering\n renderToolTemplateAsync,\n renderToolTemplate,\n hasUIConfig,\n isReactComponent,\n containsMdxSyntax,\n // URI utilities\n UI_RESOURCE_SCHEME,\n isUIResourceUri,\n isStaticWidgetUri,\n parseWidgetUri,\n buildStaticWidgetUri,\n getUIResourceMimeType,\n} from '@frontmcp/ui/registry';\n\nexport type {\n // Registry types\n RenderOptions,\n UIRenderResult,\n CompileStaticWidgetOptions,\n HybridComponentPayload,\n BuildHybridComponentPayloadOptions,\n // Template types\n RenderTemplateOptions,\n // URI types\n ParsedWidgetUri,\n} from '@frontmcp/ui/registry';\n\n// ============================================\n// Platform Adapters (from @frontmcp/ui/adapters)\n// ============================================\nexport { buildUIMeta } from './platform-adapters';\nexport type { UIMetadata, BuildUIMetaOptions } from './platform-adapters';\n\n// ============================================\n// Template Helpers (from @frontmcp/ui/runtime)\n// ============================================\nexport {\n escapeHtml,\n formatDate,\n formatCurrency,\n uniqueId,\n jsonEmbed,\n createTemplateHelpers,\n resetIdCounter,\n} from './template-helpers';\n\n// ============================================\n// SDK-Specific (MCP Integration)\n// ============================================\n// UI Resource Handler - SDK-specific functions for MCP resource handling\nexport { handleUIResourceRead, createUIResourceHandler } from './ui-resource.handler';\nexport type { UIResourceHandleResult, UIResourceHandlerOptions, HandleUIResourceOptions } from './ui-resource.handler';\n\n// UI Resource Templates (for capability advertisement)\nexport { StaticWidgetResourceTemplate } from './ui-resource-template';\n"]}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- /**
3
- * Platform Adapters
4
- *
5
- * Re-exports platform adapter functions from @frontmcp/ui/adapters for SDK consumers.
6
- * This provides a single source of truth for platform-specific metadata building
7
- * while maintaining backwards compatibility.
8
- *
9
- * @see {@link https://docs.agentfront.dev/docs/servers/tools#tool-ui | Tool UI Documentation}
10
- */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.buildOpenAICSP = exports.buildToolDiscoveryMeta = exports.buildUIMeta = void 0;
13
- // Re-export platform adapter types and functions from @frontmcp/ui
14
- var adapters_1 = require("@frontmcp/ui/adapters");
15
- Object.defineProperty(exports, "buildUIMeta", { enumerable: true, get: function () { return adapters_1.buildUIMeta; } });
16
- Object.defineProperty(exports, "buildToolDiscoveryMeta", { enumerable: true, get: function () { return adapters_1.buildToolDiscoveryMeta; } });
17
- Object.defineProperty(exports, "buildOpenAICSP", { enumerable: true, get: function () { return adapters_1.buildOpenAICSP; } });
18
- //# sourceMappingURL=platform-adapters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"platform-adapters.js","sourceRoot":"","sources":["../../../../src/tool/ui/platform-adapters.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,mEAAmE;AACnE,kDAQ+B;AAH7B,uGAAA,WAAW,OAAA;AACX,kHAAA,sBAAsB,OAAA;AACtB,0GAAA,cAAc,OAAA","sourcesContent":["/**\n * Platform Adapters\n *\n * Re-exports platform adapter functions from @frontmcp/ui/adapters for SDK consumers.\n * This provides a single source of truth for platform-specific metadata building\n * while maintaining backwards compatibility.\n *\n * @see {@link https://docs.agentfront.dev/docs/servers/tools#tool-ui | Tool UI Documentation}\n */\n\n// Re-export platform adapter types and functions from @frontmcp/ui\nexport {\n type AIPlatformType,\n type UIMetadata,\n type BuildUIMetaOptions,\n type BuildToolDiscoveryMetaOptions,\n buildUIMeta,\n buildToolDiscoveryMeta,\n buildOpenAICSP,\n} from '@frontmcp/ui/adapters';\n"]}
@@ -1,112 +0,0 @@
1
- "use strict";
2
- /**
3
- * Template Helpers
4
- *
5
- * Re-exports template helper utilities from @frontmcp/ui/runtime.
6
- * Also provides individual helper functions for backwards compatibility.
7
- *
8
- * @see {@link https://docs.agentfront.dev/docs/servers/tools#tool-ui | Tool UI Documentation}
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.createTemplateHelpers = void 0;
12
- exports.escapeHtml = escapeHtml;
13
- exports.formatDate = formatDate;
14
- exports.formatCurrency = formatCurrency;
15
- exports.uniqueId = uniqueId;
16
- exports.jsonEmbed = jsonEmbed;
17
- exports.createTemplateHelpersLocal = createTemplateHelpersLocal;
18
- exports.resetIdCounter = resetIdCounter;
19
- // Re-export createTemplateHelpers from @frontmcp/ui
20
- var runtime_1 = require("@frontmcp/ui/runtime");
21
- Object.defineProperty(exports, "createTemplateHelpers", { enumerable: true, get: function () { return runtime_1.createTemplateHelpers; } });
22
- // ============================================
23
- // Individual Helper Functions (Backwards Compatibility)
24
- // ============================================
25
- // These are exported individually for SDK consumers who import them directly.
26
- // For new code, prefer using createTemplateHelpers() instead.
27
- let idCounter = 0;
28
- /**
29
- * Escape HTML special characters to prevent XSS.
30
- */
31
- function escapeHtml(str) {
32
- if (typeof str !== 'string') {
33
- return String(str ?? '');
34
- }
35
- return str
36
- .replace(/&/g, '&amp;')
37
- .replace(/</g, '&lt;')
38
- .replace(/>/g, '&gt;')
39
- .replace(/"/g, '&quot;')
40
- .replace(/'/g, '&#039;');
41
- }
42
- /**
43
- * Format a date for display.
44
- * @param date - Date object or ISO string
45
- * @param format - Optional format: 'iso', 'time', 'datetime', or default (localized date)
46
- */
47
- function formatDate(date, format) {
48
- const d = typeof date === 'string' ? new Date(date) : date;
49
- if (isNaN(d.getTime())) {
50
- return String(date);
51
- }
52
- switch (format) {
53
- case 'iso':
54
- return d.toISOString();
55
- case 'time':
56
- return d.toLocaleTimeString();
57
- case 'datetime':
58
- return d.toLocaleString();
59
- default:
60
- return d.toLocaleDateString();
61
- }
62
- }
63
- /**
64
- * Format a number as currency.
65
- * @param amount - The numeric amount
66
- * @param currency - ISO 4217 currency code (default: 'USD')
67
- */
68
- function formatCurrency(amount, currency = 'USD') {
69
- return new Intl.NumberFormat('en-US', {
70
- style: 'currency',
71
- currency,
72
- }).format(amount);
73
- }
74
- /**
75
- * Generate a unique ID for DOM elements.
76
- * @param prefix - Optional prefix for the ID
77
- */
78
- function uniqueId(prefix = 'mcp') {
79
- return `${prefix}-${++idCounter}-${Date.now().toString(36)}`;
80
- }
81
- /**
82
- * Safely embed JSON data in HTML.
83
- * Escapes characters that could break out of script tags or HTML.
84
- */
85
- function jsonEmbed(data) {
86
- return JSON.stringify(data)
87
- .replace(/</g, '\\u003c')
88
- .replace(/>/g, '\\u003e')
89
- .replace(/&/g, '\\u0026')
90
- .replace(/'/g, '\\u0027');
91
- }
92
- /**
93
- * Create a TemplateHelpers object with all helper functions.
94
- * @deprecated Use createTemplateHelpers from @frontmcp/ui/runtime instead
95
- */
96
- function createTemplateHelpersLocal() {
97
- return {
98
- escapeHtml,
99
- formatDate,
100
- formatCurrency,
101
- uniqueId,
102
- jsonEmbed,
103
- };
104
- }
105
- /**
106
- * Reset the ID counter (useful for testing).
107
- * @internal
108
- */
109
- function resetIdCounter() {
110
- idCounter = 0;
111
- }
112
- //# sourceMappingURL=template-helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"template-helpers.js","sourceRoot":"","sources":["../../../../src/tool/ui/template-helpers.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAkBH,gCAUC;AAOD,gCAgBC;AAOD,wCAKC;AAMD,4BAEC;AAMD,8BAMC;AAMD,gEAQC;AAMD,wCAEC;AArGD,oDAAoD;AACpD,gDAA6D;AAApD,gHAAA,qBAAqB,OAAA;AAE9B,+CAA+C;AAC/C,wDAAwD;AACxD,+CAA+C;AAC/C,8EAA8E;AAC9E,8DAA8D;AAE9D,IAAI,SAAS,GAAG,CAAC,CAAC;AAElB;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG;SACP,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAAmB,EAAE,MAAe;IAC7D,MAAM,CAAC,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,IAAI,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACzB,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;QAChC,KAAK,UAAU;YACb,OAAO,CAAC,CAAC,cAAc,EAAE,CAAC;QAC5B;YACE,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAClC,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,MAAc,EAAE,QAAQ,GAAG,KAAK;IAC7D,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;QACpC,KAAK,EAAE,UAAU;QACjB,QAAQ;KACT,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,SAAgB,QAAQ,CAAC,MAAM,GAAG,KAAK;IACrC,OAAO,GAAG,MAAM,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,IAAa;IACrC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SACxB,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;SACxB,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;SACxB,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;SACxB,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,SAAgB,0BAA0B;IACxC,OAAO;QACL,UAAU;QACV,UAAU;QACV,cAAc;QACd,QAAQ;QACR,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc;IAC5B,SAAS,GAAG,CAAC,CAAC;AAChB,CAAC","sourcesContent":["/**\n * Template Helpers\n *\n * Re-exports template helper utilities from @frontmcp/ui/runtime.\n * Also provides individual helper functions for backwards compatibility.\n *\n * @see {@link https://docs.agentfront.dev/docs/servers/tools#tool-ui | Tool UI Documentation}\n */\n\nimport type { TemplateHelpers } from '../../common/metadata/tool-ui.metadata';\n\n// Re-export createTemplateHelpers from @frontmcp/ui\nexport { createTemplateHelpers } from '@frontmcp/ui/runtime';\n\n// ============================================\n// Individual Helper Functions (Backwards Compatibility)\n// ============================================\n// These are exported individually for SDK consumers who import them directly.\n// For new code, prefer using createTemplateHelpers() instead.\n\nlet idCounter = 0;\n\n/**\n * Escape HTML special characters to prevent XSS.\n */\nexport function escapeHtml(str: string): string {\n if (typeof str !== 'string') {\n return String(str ?? '');\n }\n return str\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&#039;');\n}\n\n/**\n * Format a date for display.\n * @param date - Date object or ISO string\n * @param format - Optional format: 'iso', 'time', 'datetime', or default (localized date)\n */\nexport function formatDate(date: Date | string, format?: string): string {\n const d = typeof date === 'string' ? new Date(date) : date;\n if (isNaN(d.getTime())) {\n return String(date);\n }\n\n switch (format) {\n case 'iso':\n return d.toISOString();\n case 'time':\n return d.toLocaleTimeString();\n case 'datetime':\n return d.toLocaleString();\n default:\n return d.toLocaleDateString();\n }\n}\n\n/**\n * Format a number as currency.\n * @param amount - The numeric amount\n * @param currency - ISO 4217 currency code (default: 'USD')\n */\nexport function formatCurrency(amount: number, currency = 'USD'): string {\n return new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency,\n }).format(amount);\n}\n\n/**\n * Generate a unique ID for DOM elements.\n * @param prefix - Optional prefix for the ID\n */\nexport function uniqueId(prefix = 'mcp'): string {\n return `${prefix}-${++idCounter}-${Date.now().toString(36)}`;\n}\n\n/**\n * Safely embed JSON data in HTML.\n * Escapes characters that could break out of script tags or HTML.\n */\nexport function jsonEmbed(data: unknown): string {\n return JSON.stringify(data)\n .replace(/</g, '\\\\u003c')\n .replace(/>/g, '\\\\u003e')\n .replace(/&/g, '\\\\u0026')\n .replace(/'/g, '\\\\u0027');\n}\n\n/**\n * Create a TemplateHelpers object with all helper functions.\n * @deprecated Use createTemplateHelpers from @frontmcp/ui/runtime instead\n */\nexport function createTemplateHelpersLocal(): TemplateHelpers {\n return {\n escapeHtml,\n formatDate,\n formatCurrency,\n uniqueId,\n jsonEmbed,\n };\n}\n\n/**\n * Reset the ID counter (useful for testing).\n * @internal\n */\nexport function resetIdCounter(): void {\n idCounter = 0;\n}\n"]}