@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,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=drinen-hooks.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drinen-hooks.types.js","sourceRoot":"","sources":["../../../src/types/drinen-hooks.types.ts"],"names":[],"mappings":"","sourcesContent":["import { Type } from '../common';\n\nexport type AnyStage = string & {};\n\n\nexport interface GenericHook<Ctx = unknown> {\n providedBy: string;\n priority?(): number;\n filter?(ctx: Ctx): boolean | Promise<boolean>;\n aroundExecute?: (ctx: Ctx, next: () => Promise<unknown>) => Promise<unknown>;\n [stage: string]: any; // stage handler methods (will*/did*/on*)\n}\n\nexport interface CollectHooksFn<Ctx> {\n (\n stage: AnyStage,\n options: {\n resolve: <T>(cls: any) => T;\n globalHooksByStage?: Partial<Record<AnyStage, Type[]>>;\n localHooksByStage?: Partial<Record<AnyStage, Type[]>>;\n ctx: Ctx;\n owner?: { name?: string };\n },\n ): Promise<GenericHook<Ctx>[]>;\n}\n"]}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ControlRetryAfter = exports.ControlAbort = exports.ControlRespond = void 0;
4
- class ControlRespond extends Error {
5
- value;
6
- constructor(value) {
7
- super('CONTROL_RESPOND');
8
- this.value = value;
9
- }
10
- }
11
- exports.ControlRespond = ControlRespond;
12
- class ControlAbort extends Error {
13
- reason;
14
- code;
15
- httpStatus;
16
- constructor(reason, code, httpStatus) {
17
- super('CONTROL_ABORT');
18
- this.reason = reason;
19
- this.code = code;
20
- this.httpStatus = httpStatus;
21
- }
22
- }
23
- exports.ControlAbort = ControlAbort;
24
- class ControlRetryAfter extends Error {
25
- ms;
26
- reason;
27
- constructor(ms, reason) {
28
- super('CONTROL_RETRY_AFTER');
29
- this.ms = ms;
30
- this.reason = reason;
31
- }
32
- }
33
- exports.ControlRetryAfter = ControlRetryAfter;
34
- //# sourceMappingURL=invoke.type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"invoke.type.js","sourceRoot":"","sources":["../../../src/types/invoke.type.ts"],"names":[],"mappings":";;;AAAA,MAAa,cAAe,SAAQ,KAAK;IACpB;IAAnB,YAAmB,KAAc;QAC/B,KAAK,CAAC,iBAAiB,CAAC,CAAC;QADR,UAAK,GAAL,KAAK,CAAS;IAEjC,CAAC;CACF;AAJD,wCAIC;AACD,MAAa,YAAa,SAAQ,KAAK;IAE5B;IACA;IACA;IAHT,YACS,MAAc,EACd,IAAa,EACb,UAAmB;QAE1B,KAAK,CAAC,eAAe,CAAC,CAAC;QAJhB,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAS;QACb,eAAU,GAAV,UAAU,CAAS;IAG5B,CAAC;CACF;AARD,oCAQC;AACD,MAAa,iBAAkB,SAAQ,KAAK;IACvB;IAAmB;IAAtC,YAAmB,EAAU,EAAS,MAAe;QACnD,KAAK,CAAC,qBAAqB,CAAC,CAAC;QADZ,OAAE,GAAF,EAAE,CAAQ;QAAS,WAAM,GAAN,MAAM,CAAS;IAErD,CAAC;CACF;AAJD,8CAIC","sourcesContent":["export class ControlRespond extends Error {\n constructor(public value: unknown) {\n super('CONTROL_RESPOND');\n }\n}\nexport class ControlAbort extends Error {\n constructor(\n public reason: string,\n public code?: string,\n public httpStatus?: number\n ) {\n super('CONTROL_ABORT');\n }\n}\nexport class ControlRetryAfter extends Error {\n constructor(public ms: number, public reason?: string) {\n super('CONTROL_RETRY_AFTER');\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=token.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token.types.js","sourceRoot":"","sources":["../../../src/types/token.types.ts"],"names":[],"mappings":"","sourcesContent":["import { Type } from '../common';\n\nexport type Ctor<T> = new (...args: any[]) => T;\n"]}
@@ -1,194 +0,0 @@
1
- "use strict";
2
- // file: libs/sdk/src/utils/content.utils.ts
3
- // Content building and sanitization utilities for MCP responses
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.sanitizeToJson = sanitizeToJson;
6
- exports.toStructuredContent = toStructuredContent;
7
- exports.buildResourceContent = buildResourceContent;
8
- exports.inferMimeType = inferMimeType;
9
- /**
10
- * Sanitize arbitrary JS values into JSON-safe objects suitable for:
11
- * - MCP `structuredContent`
12
- * - JSON.stringify without circular reference errors
13
- *
14
- * Rules:
15
- * - Drop functions and symbols.
16
- * - BigInt → string.
17
- * - Date → ISO string.
18
- * - Error → { name, message, stack }.
19
- * - Map → plain object.
20
- * - Set → array.
21
- * - Protect against circular references via WeakSet.
22
- */
23
- function sanitizeToJson(value) {
24
- const seen = new WeakSet();
25
- function sanitize(val) {
26
- if (typeof val === 'function' || typeof val === 'symbol') {
27
- return undefined;
28
- }
29
- if (typeof val === 'bigint') {
30
- return val.toString();
31
- }
32
- if (val instanceof Date) {
33
- return val.toISOString();
34
- }
35
- if (val instanceof Error) {
36
- return {
37
- name: val.name,
38
- message: val.message,
39
- stack: val.stack,
40
- };
41
- }
42
- if (val instanceof Map) {
43
- const obj = {};
44
- for (const [k, v] of val.entries()) {
45
- obj[String(k)] = sanitize(v);
46
- }
47
- return obj;
48
- }
49
- if (val instanceof Set) {
50
- return Array.from(val).map(sanitize);
51
- }
52
- if (Array.isArray(val)) {
53
- if (seen.has(val)) {
54
- return undefined;
55
- }
56
- seen.add(val);
57
- return val.map(sanitize);
58
- }
59
- if (val && typeof val === 'object') {
60
- if (seen.has(val)) {
61
- // Drop circular references
62
- return undefined;
63
- }
64
- seen.add(val);
65
- const sanitized = {};
66
- for (const [key, value] of Object.entries(val)) {
67
- const clean = sanitize(value);
68
- if (clean !== undefined) {
69
- sanitized[key] = clean;
70
- }
71
- }
72
- return sanitized;
73
- }
74
- // Primitives pass through
75
- return val;
76
- }
77
- return sanitize(value);
78
- }
79
- /**
80
- * Convert a value to MCP structuredContent format.
81
- * Returns Record<string, unknown> or undefined (matching MCP's structuredContent type).
82
- * Primitives and arrays are wrapped in { value: ... }.
83
- */
84
- function toStructuredContent(value) {
85
- const result = sanitizeToJson(value);
86
- if (result === undefined || result === null)
87
- return undefined;
88
- if (typeof result === 'object' && !Array.isArray(result)) {
89
- return result;
90
- }
91
- // Wrap primitives and arrays in an object
92
- return { value: result };
93
- }
94
- /**
95
- * Build a resource content item for MCP ReadResourceResult format.
96
- * Handles both text and binary (blob) content.
97
- *
98
- * @param uri - The resource URI
99
- * @param content - The content to serialize (string, Buffer, object, etc.)
100
- * @param mimeType - Optional MIME type override
101
- */
102
- function buildResourceContent(uri, content, mimeType) {
103
- // If content is already in the expected format
104
- if (content && typeof content === 'object') {
105
- const obj = content;
106
- if ('blob' in obj && typeof obj['blob'] === 'string') {
107
- return {
108
- uri,
109
- mimeType: obj['mimeType'] || mimeType,
110
- blob: obj['blob'],
111
- };
112
- }
113
- if ('text' in obj && typeof obj['text'] === 'string') {
114
- return {
115
- uri,
116
- mimeType: obj['mimeType'] || mimeType,
117
- text: obj['text'],
118
- };
119
- }
120
- }
121
- // Binary content (Buffer, Uint8Array)
122
- if (Buffer.isBuffer(content) || content instanceof Uint8Array) {
123
- const buffer = Buffer.isBuffer(content) ? content : Buffer.from(content);
124
- return {
125
- uri,
126
- mimeType: mimeType || 'application/octet-stream',
127
- blob: buffer.toString('base64'),
128
- };
129
- }
130
- // String content
131
- if (typeof content === 'string') {
132
- return {
133
- uri,
134
- mimeType: mimeType || 'text/plain',
135
- text: content,
136
- };
137
- }
138
- // JSON-serializable content
139
- try {
140
- return {
141
- uri,
142
- mimeType: mimeType || 'application/json',
143
- text: JSON.stringify(content),
144
- };
145
- }
146
- catch {
147
- return {
148
- uri,
149
- mimeType: mimeType || 'text/plain',
150
- text: String(content),
151
- };
152
- }
153
- }
154
- /**
155
- * Infer MIME type from file extension or content.
156
- */
157
- function inferMimeType(uri, content) {
158
- // Try to infer from URI extension
159
- const ext = uri.split('.').pop()?.toLowerCase();
160
- const mimeTypes = {
161
- json: 'application/json',
162
- xml: 'application/xml',
163
- html: 'text/html',
164
- htm: 'text/html',
165
- css: 'text/css',
166
- js: 'application/javascript',
167
- ts: 'application/typescript',
168
- txt: 'text/plain',
169
- md: 'text/markdown',
170
- yaml: 'application/yaml',
171
- yml: 'application/yaml',
172
- csv: 'text/csv',
173
- png: 'image/png',
174
- jpg: 'image/jpeg',
175
- jpeg: 'image/jpeg',
176
- gif: 'image/gif',
177
- svg: 'image/svg+xml',
178
- pdf: 'application/pdf',
179
- };
180
- if (ext && mimeTypes[ext]) {
181
- return mimeTypes[ext];
182
- }
183
- // Try to infer from content
184
- if (typeof content === 'string') {
185
- if (content.trim().startsWith('{') || content.trim().startsWith('[')) {
186
- return 'application/json';
187
- }
188
- if (content.trim().startsWith('<')) {
189
- return content.includes('<!DOCTYPE html') || content.includes('<html') ? 'text/html' : 'application/xml';
190
- }
191
- }
192
- return 'text/plain';
193
- }
194
- //# sourceMappingURL=content.utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"content.utils.js","sourceRoot":"","sources":["../../../src/utils/content.utils.ts"],"names":[],"mappings":"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","sourcesContent":["// file: libs/sdk/src/utils/content.utils.ts\n// Content building and sanitization utilities for MCP responses\n\n/**\n * Sanitize arbitrary JS values into JSON-safe objects suitable for:\n * - MCP `structuredContent`\n * - JSON.stringify without circular reference errors\n *\n * Rules:\n * - Drop functions and symbols.\n * - BigInt → string.\n * - Date → ISO string.\n * - Error → { name, message, stack }.\n * - Map → plain object.\n * - Set → array.\n * - Protect against circular references via WeakSet.\n */\nexport function sanitizeToJson(value: unknown): unknown {\n const seen = new WeakSet<object>();\n\n function sanitize(val: unknown): unknown {\n if (typeof val === 'function' || typeof val === 'symbol') {\n return undefined;\n }\n\n if (typeof val === 'bigint') {\n return val.toString();\n }\n\n if (val instanceof Date) {\n return val.toISOString();\n }\n\n if (val instanceof Error) {\n return {\n name: val.name,\n message: val.message,\n stack: val.stack,\n };\n }\n\n if (val instanceof Map) {\n const obj: Record<string, unknown> = {};\n for (const [k, v] of val.entries()) {\n obj[String(k)] = sanitize(v);\n }\n return obj;\n }\n\n if (val instanceof Set) {\n return Array.from(val).map(sanitize);\n }\n\n if (Array.isArray(val)) {\n if (seen.has(val)) {\n return undefined;\n }\n seen.add(val);\n return val.map(sanitize);\n }\n\n if (val && typeof val === 'object') {\n if (seen.has(val)) {\n // Drop circular references\n return undefined;\n }\n seen.add(val);\n\n const sanitized: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(val)) {\n const clean = sanitize(value);\n if (clean !== undefined) {\n sanitized[key] = clean;\n }\n }\n return sanitized;\n }\n\n // Primitives pass through\n return val;\n }\n\n return sanitize(value);\n}\n\n/**\n * Convert a value to MCP structuredContent format.\n * Returns Record<string, unknown> or undefined (matching MCP's structuredContent type).\n * Primitives and arrays are wrapped in { value: ... }.\n */\nexport function toStructuredContent(value: unknown): Record<string, unknown> | undefined {\n const result = sanitizeToJson(value);\n if (result === undefined || result === null) return undefined;\n if (typeof result === 'object' && !Array.isArray(result)) {\n return result as Record<string, unknown>;\n }\n // Wrap primitives and arrays in an object\n return { value: result };\n}\n\n/** MCP-compatible text resource content */\nexport type TextContent = {\n uri: string;\n mimeType?: string;\n text: string;\n};\n\n/** MCP-compatible blob resource content */\nexport type BlobContent = {\n uri: string;\n mimeType?: string;\n blob: string;\n};\n\n/** MCP-compatible resource content (text or blob) */\nexport type ResourceContent = TextContent | BlobContent;\n\n/**\n * Build a resource content item for MCP ReadResourceResult format.\n * Handles both text and binary (blob) content.\n *\n * @param uri - The resource URI\n * @param content - The content to serialize (string, Buffer, object, etc.)\n * @param mimeType - Optional MIME type override\n */\nexport function buildResourceContent(uri: string, content: unknown, mimeType?: string): ResourceContent {\n // If content is already in the expected format\n if (content && typeof content === 'object') {\n const obj = content as Record<string, unknown>;\n if ('blob' in obj && typeof obj['blob'] === 'string') {\n return {\n uri,\n mimeType: (obj['mimeType'] as string) || mimeType,\n blob: obj['blob'],\n };\n }\n if ('text' in obj && typeof obj['text'] === 'string') {\n return {\n uri,\n mimeType: (obj['mimeType'] as string) || mimeType,\n text: obj['text'],\n };\n }\n }\n\n // Binary content (Buffer, Uint8Array)\n if (Buffer.isBuffer(content) || content instanceof Uint8Array) {\n const buffer = Buffer.isBuffer(content) ? content : Buffer.from(content);\n return {\n uri,\n mimeType: mimeType || 'application/octet-stream',\n blob: buffer.toString('base64'),\n };\n }\n\n // String content\n if (typeof content === 'string') {\n return {\n uri,\n mimeType: mimeType || 'text/plain',\n text: content,\n };\n }\n\n // JSON-serializable content\n try {\n return {\n uri,\n mimeType: mimeType || 'application/json',\n text: JSON.stringify(content),\n };\n } catch {\n return {\n uri,\n mimeType: mimeType || 'text/plain',\n text: String(content),\n };\n }\n}\n\n/**\n * Infer MIME type from file extension or content.\n */\nexport function inferMimeType(uri: string, content?: unknown): string {\n // Try to infer from URI extension\n const ext = uri.split('.').pop()?.toLowerCase();\n const mimeTypes: Record<string, string> = {\n json: 'application/json',\n xml: 'application/xml',\n html: 'text/html',\n htm: 'text/html',\n css: 'text/css',\n js: 'application/javascript',\n ts: 'application/typescript',\n txt: 'text/plain',\n md: 'text/markdown',\n yaml: 'application/yaml',\n yml: 'application/yaml',\n csv: 'text/csv',\n png: 'image/png',\n jpg: 'image/jpeg',\n jpeg: 'image/jpeg',\n gif: 'image/gif',\n svg: 'image/svg+xml',\n pdf: 'application/pdf',\n };\n\n if (ext && mimeTypes[ext]) {\n return mimeTypes[ext];\n }\n\n // Try to infer from content\n if (typeof content === 'string') {\n if (content.trim().startsWith('{') || content.trim().startsWith('[')) {\n return 'application/json';\n }\n if (content.trim().startsWith('<')) {\n return content.includes('<!DOCTYPE html') || content.includes('<html') ? 'text/html' : 'application/xml';\n }\n }\n\n return 'text/plain';\n}\n"]}
@@ -1,55 +0,0 @@
1
- "use strict";
2
- // file: libs/sdk/src/utils/index.ts
3
- // Centralized exports for SDK utilities
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.hasAsyncWith = exports.setMetadata = exports.getMetadata = exports.idFromString = exports.inferMimeType = exports.buildResourceContent = exports.toStructuredContent = exports.sanitizeToJson = exports.depsOfFunc = exports.depsOfClass = exports.isPromise = exports.isClass = exports.tokenName = exports.expandUriTemplate = exports.matchUriTemplate = exports.parseUriTemplate = exports.isValidMcpUriTemplate = exports.extractUriScheme = exports.isValidMcpUri = exports.isAncestorLineage = exports.lineagesEqual = exports.lineageDepth = exports.parseQualifiedName = exports.qualifiedNameOf = exports.ownerKeyOf = exports.ensureMaxLen = exports.shortHash = exports.normalizeOwnerPath = exports.normalizeProviderId = exports.normalizeSegment = exports.sepFor = exports.toCase = exports.splitWords = void 0;
6
- // Naming and case conversion utilities
7
- var naming_utils_1 = require("./naming.utils");
8
- Object.defineProperty(exports, "splitWords", { enumerable: true, get: function () { return naming_utils_1.splitWords; } });
9
- Object.defineProperty(exports, "toCase", { enumerable: true, get: function () { return naming_utils_1.toCase; } });
10
- Object.defineProperty(exports, "sepFor", { enumerable: true, get: function () { return naming_utils_1.sepFor; } });
11
- Object.defineProperty(exports, "normalizeSegment", { enumerable: true, get: function () { return naming_utils_1.normalizeSegment; } });
12
- Object.defineProperty(exports, "normalizeProviderId", { enumerable: true, get: function () { return naming_utils_1.normalizeProviderId; } });
13
- Object.defineProperty(exports, "normalizeOwnerPath", { enumerable: true, get: function () { return naming_utils_1.normalizeOwnerPath; } });
14
- Object.defineProperty(exports, "shortHash", { enumerable: true, get: function () { return naming_utils_1.shortHash; } });
15
- Object.defineProperty(exports, "ensureMaxLen", { enumerable: true, get: function () { return naming_utils_1.ensureMaxLen; } });
16
- // Owner lineage and qualified name utilities
17
- var lineage_utils_1 = require("./lineage.utils");
18
- Object.defineProperty(exports, "ownerKeyOf", { enumerable: true, get: function () { return lineage_utils_1.ownerKeyOf; } });
19
- Object.defineProperty(exports, "qualifiedNameOf", { enumerable: true, get: function () { return lineage_utils_1.qualifiedNameOf; } });
20
- Object.defineProperty(exports, "parseQualifiedName", { enumerable: true, get: function () { return lineage_utils_1.parseQualifiedName; } });
21
- Object.defineProperty(exports, "lineageDepth", { enumerable: true, get: function () { return lineage_utils_1.lineageDepth; } });
22
- Object.defineProperty(exports, "lineagesEqual", { enumerable: true, get: function () { return lineage_utils_1.lineagesEqual; } });
23
- Object.defineProperty(exports, "isAncestorLineage", { enumerable: true, get: function () { return lineage_utils_1.isAncestorLineage; } });
24
- // URI validation utilities (RFC 3986)
25
- var uri_validation_utils_1 = require("./uri-validation.utils");
26
- Object.defineProperty(exports, "isValidMcpUri", { enumerable: true, get: function () { return uri_validation_utils_1.isValidMcpUri; } });
27
- Object.defineProperty(exports, "extractUriScheme", { enumerable: true, get: function () { return uri_validation_utils_1.extractUriScheme; } });
28
- Object.defineProperty(exports, "isValidMcpUriTemplate", { enumerable: true, get: function () { return uri_validation_utils_1.isValidMcpUriTemplate; } });
29
- // URI template parsing and matching utilities
30
- var uri_template_utils_1 = require("./uri-template.utils");
31
- Object.defineProperty(exports, "parseUriTemplate", { enumerable: true, get: function () { return uri_template_utils_1.parseUriTemplate; } });
32
- Object.defineProperty(exports, "matchUriTemplate", { enumerable: true, get: function () { return uri_template_utils_1.matchUriTemplate; } });
33
- Object.defineProperty(exports, "expandUriTemplate", { enumerable: true, get: function () { return uri_template_utils_1.expandUriTemplate; } });
34
- // Token utilities
35
- var token_utils_1 = require("./token.utils");
36
- Object.defineProperty(exports, "tokenName", { enumerable: true, get: function () { return token_utils_1.tokenName; } });
37
- Object.defineProperty(exports, "isClass", { enumerable: true, get: function () { return token_utils_1.isClass; } });
38
- Object.defineProperty(exports, "isPromise", { enumerable: true, get: function () { return token_utils_1.isPromise; } });
39
- Object.defineProperty(exports, "depsOfClass", { enumerable: true, get: function () { return token_utils_1.depsOfClass; } });
40
- Object.defineProperty(exports, "depsOfFunc", { enumerable: true, get: function () { return token_utils_1.depsOfFunc; } });
41
- // Content utilities
42
- var content_utils_1 = require("./content.utils");
43
- Object.defineProperty(exports, "sanitizeToJson", { enumerable: true, get: function () { return content_utils_1.sanitizeToJson; } });
44
- Object.defineProperty(exports, "toStructuredContent", { enumerable: true, get: function () { return content_utils_1.toStructuredContent; } });
45
- Object.defineProperty(exports, "buildResourceContent", { enumerable: true, get: function () { return content_utils_1.buildResourceContent; } });
46
- Object.defineProperty(exports, "inferMimeType", { enumerable: true, get: function () { return content_utils_1.inferMimeType; } });
47
- // String utilities
48
- var string_utils_1 = require("./string.utils");
49
- Object.defineProperty(exports, "idFromString", { enumerable: true, get: function () { return string_utils_1.idFromString; } });
50
- // Metadata utilities
51
- var metadata_utils_1 = require("./metadata.utils");
52
- Object.defineProperty(exports, "getMetadata", { enumerable: true, get: function () { return metadata_utils_1.getMetadata; } });
53
- Object.defineProperty(exports, "setMetadata", { enumerable: true, get: function () { return metadata_utils_1.setMetadata; } });
54
- Object.defineProperty(exports, "hasAsyncWith", { enumerable: true, get: function () { return metadata_utils_1.hasAsyncWith; } });
55
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;AACpC,wCAAwC;;;AAExC,uCAAuC;AACvC,+CAUwB;AARtB,0GAAA,UAAU,OAAA;AACV,sGAAA,MAAM,OAAA;AACN,sGAAA,MAAM,OAAA;AACN,gHAAA,gBAAgB,OAAA;AAChB,mHAAA,mBAAmB,OAAA;AACnB,kHAAA,kBAAkB,OAAA;AAClB,yGAAA,SAAS,OAAA;AACT,4GAAA,YAAY,OAAA;AAGd,6CAA6C;AAC7C,iDAOyB;AANvB,2GAAA,UAAU,OAAA;AACV,gHAAA,eAAe,OAAA;AACf,mHAAA,kBAAkB,OAAA;AAClB,6GAAA,YAAY,OAAA;AACZ,8GAAA,aAAa,OAAA;AACb,kHAAA,iBAAiB,OAAA;AAGnB,sCAAsC;AACtC,+DAAgG;AAAvF,qHAAA,aAAa,OAAA;AAAE,wHAAA,gBAAgB,OAAA;AAAE,6HAAA,qBAAqB,OAAA;AAE/D,8CAA8C;AAC9C,2DAA6F;AAApF,sHAAA,gBAAgB,OAAA;AAAE,sHAAA,gBAAgB,OAAA;AAAE,uHAAA,iBAAiB,OAAA;AAE9D,kBAAkB;AAClB,6CAAuF;AAA9E,wGAAA,SAAS,OAAA;AAAE,sGAAA,OAAO,OAAA;AAAE,wGAAA,SAAS,OAAA;AAAE,0GAAA,WAAW,OAAA;AAAE,yGAAA,UAAU,OAAA;AAE/D,oBAAoB;AACpB,iDAQyB;AAPvB,+GAAA,cAAc,OAAA;AACd,oHAAA,mBAAmB,OAAA;AAInB,qHAAA,oBAAoB,OAAA;AACpB,8GAAA,aAAa,OAAA;AAGf,mBAAmB;AACnB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAErB,qBAAqB;AACrB,mDAA0E;AAAjE,6GAAA,WAAW,OAAA;AAAE,6GAAA,WAAW,OAAA;AAAE,8GAAA,YAAY,OAAA","sourcesContent":["// file: libs/sdk/src/utils/index.ts\n// Centralized exports for SDK utilities\n\n// Naming and case conversion utilities\nexport {\n NameCase,\n splitWords,\n toCase,\n sepFor,\n normalizeSegment,\n normalizeProviderId,\n normalizeOwnerPath,\n shortHash,\n ensureMaxLen,\n} from './naming.utils';\n\n// Owner lineage and qualified name utilities\nexport {\n ownerKeyOf,\n qualifiedNameOf,\n parseQualifiedName,\n lineageDepth,\n lineagesEqual,\n isAncestorLineage,\n} from './lineage.utils';\n\n// URI validation utilities (RFC 3986)\nexport { isValidMcpUri, extractUriScheme, isValidMcpUriTemplate } from './uri-validation.utils';\n\n// URI template parsing and matching utilities\nexport { parseUriTemplate, matchUriTemplate, expandUriTemplate } from './uri-template.utils';\n\n// Token utilities\nexport { tokenName, isClass, isPromise, depsOfClass, depsOfFunc } from './token.utils';\n\n// Content utilities\nexport {\n sanitizeToJson,\n toStructuredContent,\n TextContent,\n BlobContent,\n ResourceContent,\n buildResourceContent,\n inferMimeType,\n} from './content.utils';\n\n// String utilities\nexport { idFromString } from './string.utils';\n\n// Metadata utilities\nexport { getMetadata, setMetadata, hasAsyncWith } from './metadata.utils';\n"]}
@@ -1,82 +0,0 @@
1
- "use strict";
2
- // file: libs/sdk/src/utils/lineage.utils.ts
3
- // Owner lineage and qualified name utilities
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.ownerKeyOf = ownerKeyOf;
6
- exports.qualifiedNameOf = qualifiedNameOf;
7
- exports.parseQualifiedName = parseQualifiedName;
8
- exports.lineageDepth = lineageDepth;
9
- exports.lineagesEqual = lineagesEqual;
10
- exports.isAncestorLineage = isAncestorLineage;
11
- /**
12
- * Convert an entry lineage to a string key.
13
- *
14
- * @example
15
- * ownerKeyOf([{ kind: 'app', id: 'Portal' }, { kind: 'plugin', id: 'Auth' }])
16
- * => "app:Portal/plugin:Auth"
17
- */
18
- function ownerKeyOf(lineage) {
19
- return lineage.map((o) => `${o.kind}:${o.id}`).join('/');
20
- }
21
- /**
22
- * Create a fully qualified name from lineage and name.
23
- *
24
- * @example
25
- * qualifiedNameOf([{ kind: 'app', id: 'Portal' }], 'myTool')
26
- * => "app:Portal:myTool"
27
- */
28
- function qualifiedNameOf(lineage, name) {
29
- return `${ownerKeyOf(lineage)}:${name}`;
30
- }
31
- /**
32
- * Parse a qualified name back into lineage and name.
33
- *
34
- * @example
35
- * parseQualifiedName("app:Portal/plugin:Auth:myTool")
36
- * => { lineage: [{ kind: 'app', id: 'Portal' }, { kind: 'plugin', id: 'Auth' }], name: 'myTool' }
37
- */
38
- function parseQualifiedName(qualifiedName) {
39
- const lastColon = qualifiedName.lastIndexOf(':');
40
- if (lastColon === -1)
41
- return null;
42
- const ownerKey = qualifiedName.slice(0, lastColon);
43
- const name = qualifiedName.slice(lastColon + 1);
44
- const lineage = [];
45
- const parts = ownerKey.split('/');
46
- for (const part of parts) {
47
- const colonIdx = part.indexOf(':');
48
- if (colonIdx === -1)
49
- continue;
50
- const kind = part.slice(0, colonIdx);
51
- if (kind !== 'scope' && kind !== 'app' && kind !== 'plugin')
52
- continue;
53
- const id = part.slice(colonIdx + 1);
54
- // `ref` is required by EntryOwnerRef but cannot be resolved from string parsing.
55
- // Callers must resolve the ref from context if needed.
56
- lineage.push({ kind, id, ref: undefined });
57
- }
58
- return { lineage, name };
59
- }
60
- /**
61
- * Get the depth of a lineage (number of owners).
62
- */
63
- function lineageDepth(lineage) {
64
- return lineage.length;
65
- }
66
- /**
67
- * Check if two lineages are equal.
68
- */
69
- function lineagesEqual(a, b) {
70
- if (a.length !== b.length)
71
- return false;
72
- return a.every((owner, i) => owner.kind === b[i].kind && owner.id === b[i].id);
73
- }
74
- /**
75
- * Check if lineage `a` is an ancestor of lineage `b`.
76
- */
77
- function isAncestorLineage(ancestor, descendant) {
78
- if (ancestor.length >= descendant.length)
79
- return false;
80
- return ancestor.every((owner, i) => owner.kind === descendant[i].kind && owner.id === descendant[i].id);
81
- }
82
- //# sourceMappingURL=lineage.utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lineage.utils.js","sourceRoot":"","sources":["../../../src/utils/lineage.utils.ts"],"names":[],"mappings":";AAAA,4CAA4C;AAC5C,6CAA6C;;AAW7C,gCAEC;AASD,0CAEC;AASD,gDAsBC;AAKD,oCAEC;AAKD,sCAGC;AAKD,8CAGC;AA1ED;;;;;;GAMG;AACH,SAAgB,UAAU,CAAC,OAAqB;IAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,eAAe,CAAC,OAAqB,EAAE,IAAY;IACjE,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,aAAqB;IACtD,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,SAAS,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAElC,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAEhD,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,QAAQ,KAAK,CAAC,CAAC;YAAE,SAAS;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,QAAQ;YAAE,SAAS;QACtE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACpC,iFAAiF;QACjF,uDAAuD;QACvD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,SAAgB,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,OAAqB;IAChD,OAAO,OAAO,CAAC,MAAM,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,CAAe,EAAE,CAAe;IAC5D,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,QAAsB,EAAE,UAAwB;IAChF,IAAI,QAAQ,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACvD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC1G,CAAC","sourcesContent":["// file: libs/sdk/src/utils/lineage.utils.ts\n// Owner lineage and qualified name utilities\n\nimport { EntryLineage } from '../common';\n\n/**\n * Convert an entry lineage to a string key.\n *\n * @example\n * ownerKeyOf([{ kind: 'app', id: 'Portal' }, { kind: 'plugin', id: 'Auth' }])\n * => \"app:Portal/plugin:Auth\"\n */\nexport function ownerKeyOf(lineage: EntryLineage): string {\n return lineage.map((o) => `${o.kind}:${o.id}`).join('/');\n}\n\n/**\n * Create a fully qualified name from lineage and name.\n *\n * @example\n * qualifiedNameOf([{ kind: 'app', id: 'Portal' }], 'myTool')\n * => \"app:Portal:myTool\"\n */\nexport function qualifiedNameOf(lineage: EntryLineage, name: string): string {\n return `${ownerKeyOf(lineage)}:${name}`;\n}\n\n/**\n * Parse a qualified name back into lineage and name.\n *\n * @example\n * parseQualifiedName(\"app:Portal/plugin:Auth:myTool\")\n * => { lineage: [{ kind: 'app', id: 'Portal' }, { kind: 'plugin', id: 'Auth' }], name: 'myTool' }\n */\nexport function parseQualifiedName(qualifiedName: string): { lineage: EntryLineage; name: string } | null {\n const lastColon = qualifiedName.lastIndexOf(':');\n if (lastColon === -1) return null;\n\n const ownerKey = qualifiedName.slice(0, lastColon);\n const name = qualifiedName.slice(lastColon + 1);\n\n const lineage: EntryLineage = [];\n const parts = ownerKey.split('/');\n\n for (const part of parts) {\n const colonIdx = part.indexOf(':');\n if (colonIdx === -1) continue;\n const kind = part.slice(0, colonIdx);\n if (kind !== 'scope' && kind !== 'app' && kind !== 'plugin') continue;\n const id = part.slice(colonIdx + 1);\n // `ref` is required by EntryOwnerRef but cannot be resolved from string parsing.\n // Callers must resolve the ref from context if needed.\n lineage.push({ kind, id, ref: undefined as any });\n }\n\n return { lineage, name };\n}\n\n/**\n * Get the depth of a lineage (number of owners).\n */\nexport function lineageDepth(lineage: EntryLineage): number {\n return lineage.length;\n}\n\n/**\n * Check if two lineages are equal.\n */\nexport function lineagesEqual(a: EntryLineage, b: EntryLineage): boolean {\n if (a.length !== b.length) return false;\n return a.every((owner, i) => owner.kind === b[i].kind && owner.id === b[i].id);\n}\n\n/**\n * Check if lineage `a` is an ancestor of lineage `b`.\n */\nexport function isAncestorLineage(ancestor: EntryLineage, descendant: EntryLineage): boolean {\n if (ancestor.length >= descendant.length) return false;\n return ancestor.every((owner, i) => owner.kind === descendant[i].kind && owner.id === descendant[i].id);\n}\n"]}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMetadata = getMetadata;
4
- exports.setMetadata = setMetadata;
5
- exports.hasAsyncWith = hasAsyncWith;
6
- require("reflect-metadata");
7
- const common_1 = require("../common");
8
- function getMetadata(key, target, propertyKey) {
9
- // Reflect.getMetadata is provided by reflect-metadata polyfill
10
- return (propertyKey !== undefined)
11
- ? Reflect.getMetadata(key, target, propertyKey)
12
- : Reflect.getMetadata(key, target);
13
- }
14
- function setMetadata(key, value, target, propertyKey) {
15
- if (propertyKey !== undefined) {
16
- Reflect.defineMetadata(key, value, target, propertyKey);
17
- }
18
- else {
19
- Reflect.defineMetadata(key, value, target);
20
- }
21
- }
22
- function hasAsyncWith(klass) {
23
- return (!!getMetadata(common_1.META_ASYNC_WITH, klass) &&
24
- typeof klass.with === 'function');
25
- }
26
- //# sourceMappingURL=metadata.utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata.utils.js","sourceRoot":"","sources":["../../../src/utils/metadata.utils.ts"],"names":[],"mappings":";;AAGA,kCAKC;AAED,kCAMC;AAED,oCAKC;AAvBD,4BAA0B;AAC1B,sCAAkD;AAElD,SAAgB,WAAW,CAAU,GAAQ,EAAE,MAAW,EAAE,WAA6B;IACvF,+DAA+D;IAC/D,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC;QAChC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC;QAC/C,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACvC,CAAC;AAED,SAAgB,WAAW,CAAC,GAAQ,EAAE,KAAU,EAAE,MAAW,EAAE,WAA6B;IAC1F,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAe,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACL,OAAe,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED,SAAiB,YAAY,CAAC,KAAgB;IAC5C,OAAO,CACL,CAAC,CAAC,WAAW,CAAC,wBAAe,EAAE,KAAK,CAAC;QACrC,OAAQ,KAAa,CAAC,IAAI,KAAK,UAAU,CAC1C,CAAC;AACJ,CAAC","sourcesContent":["import 'reflect-metadata';\nimport { META_ASYNC_WITH, Type } from '../common';\n\nexport function getMetadata<T = any>(key: any, target: any, propertyKey?: string | symbol): T | undefined {\n // Reflect.getMetadata is provided by reflect-metadata polyfill\n return (propertyKey !== undefined)\n ? Reflect.getMetadata(key, target, propertyKey)\n : Reflect.getMetadata(key, target);\n}\n\nexport function setMetadata(key: any, value: any, target: any, propertyKey?: string | symbol): void {\n if (propertyKey !== undefined) {\n (Reflect as any).defineMetadata(key, value, target, propertyKey);\n } else {\n (Reflect as any).defineMetadata(key, value, target);\n }\n}\n\nexport function hasAsyncWith(klass: Type<any>): boolean {\n return (\n !!getMetadata(META_ASYNC_WITH, klass) &&\n typeof (klass as any).with === 'function'\n );\n}\n"]}
@@ -1,136 +0,0 @@
1
- "use strict";
2
- // file: libs/sdk/src/utils/naming.utils.ts
3
- // Shared naming and case conversion utilities for MCP-compliant identifiers
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.splitWords = splitWords;
6
- exports.toCase = toCase;
7
- exports.sepFor = sepFor;
8
- exports.normalizeSegment = normalizeSegment;
9
- exports.normalizeProviderId = normalizeProviderId;
10
- exports.normalizeOwnerPath = normalizeOwnerPath;
11
- exports.shortHash = shortHash;
12
- exports.ensureMaxLen = ensureMaxLen;
13
- // Allowed chars per MCP spec: a-zA-Z0-9 _ - . /
14
- const MCP_ALLOWED = /[A-Za-z0-9_\-./]/;
15
- /**
16
- * Split a string into words, handling camelCase, PascalCase, and delimiters.
17
- *
18
- * @example
19
- * splitWords("myFunctionName") => ["my", "Function", "Name"]
20
- * splitWords("my_function_name") => ["my", "function", "name"]
21
- */
22
- function splitWords(input) {
23
- const parts = [];
24
- let buff = '';
25
- for (let i = 0; i < input.length; i++) {
26
- const ch = input[i];
27
- const isAlphaNum = /[A-Za-z0-9]/.test(ch);
28
- if (!isAlphaNum) {
29
- if (buff) {
30
- parts.push(buff);
31
- buff = '';
32
- }
33
- continue;
34
- }
35
- if (buff && /[a-z]/.test(buff[buff.length - 1]) && /[A-Z]/.test(ch)) {
36
- parts.push(buff);
37
- buff = ch;
38
- }
39
- else {
40
- buff += ch;
41
- }
42
- }
43
- if (buff)
44
- parts.push(buff);
45
- return parts;
46
- }
47
- /**
48
- * Convert words to a specific naming case.
49
- *
50
- * @example
51
- * toCase(["my", "function"], "snake") => "my_function"
52
- * toCase(["my", "function"], "camel") => "myFunction"
53
- */
54
- function toCase(words, kind) {
55
- const safe = words.filter(Boolean);
56
- switch (kind) {
57
- case 'snake':
58
- return safe.map((w) => w.toLowerCase()).join('_');
59
- case 'kebab':
60
- return safe.map((w) => w.toLowerCase()).join('-');
61
- case 'dot':
62
- return safe.map((w) => w.toLowerCase()).join('.');
63
- case 'camel':
64
- if (safe.length === 0)
65
- return '';
66
- return (safe[0].toLowerCase() +
67
- safe
68
- .slice(1)
69
- .map((w) => w.charAt(0).toUpperCase() + w.slice(1).toLowerCase())
70
- .join(''));
71
- }
72
- }
73
- /**
74
- * Get the separator character for a naming case.
75
- */
76
- function sepFor(kind) {
77
- return kind === 'snake' ? '_' : kind === 'kebab' ? '-' : kind === 'dot' ? '.' : '';
78
- }
79
- /**
80
- * Normalize a single segment (name part) to MCP-safe characters.
81
- */
82
- function normalizeSegment(raw, kind) {
83
- const words = splitWords(raw);
84
- let cased = toCase(words, kind);
85
- cased = [...cased].filter((ch) => MCP_ALLOWED.test(ch)).join('');
86
- return cased || 'x';
87
- }
88
- /**
89
- * Normalize a provider ID to MCP-safe characters.
90
- */
91
- function normalizeProviderId(raw, kind) {
92
- if (!raw)
93
- return undefined;
94
- const tokens = raw.split(/\W+/);
95
- const cased = toCase(tokens, kind);
96
- const safe = [...cased].filter((ch) => MCP_ALLOWED.test(ch)).join('');
97
- return safe || undefined;
98
- }
99
- /**
100
- * Normalize an owner path (app:id/plugin:id) to the specified naming case.
101
- */
102
- function normalizeOwnerPath(ownerKey, kind) {
103
- const levels = ownerKey.split('/');
104
- const normLevels = levels.map((level) => {
105
- const parts = level.split(':'); // ["app","Portal"]
106
- return parts.map((p) => normalizeSegment(p, kind)).join(sepFor(kind));
107
- });
108
- if (kind === 'camel')
109
- return normLevels.map((seg) => seg.charAt(0).toLowerCase() + seg.slice(1)).join('');
110
- return normLevels.join(sepFor(kind));
111
- }
112
- /**
113
- * Generate a short hash (6 hex chars) from a string.
114
- * Uses djb2 algorithm for fast, reasonable distribution.
115
- */
116
- function shortHash(s) {
117
- let h = 5381;
118
- for (let i = 0; i < s.length; i++)
119
- h = (h << 5) + h + s.charCodeAt(i);
120
- return (h >>> 0).toString(16).slice(-6).padStart(6, '0');
121
- }
122
- /**
123
- * Ensure a name fits within a maximum length, using hash truncation if needed.
124
- * Preserves meaningful suffix while adding a hash for uniqueness.
125
- */
126
- function ensureMaxLen(name, max) {
127
- if (name.length <= max)
128
- return name;
129
- const hash = shortHash(name);
130
- const lastSep = Math.max(name.lastIndexOf('_'), name.lastIndexOf('-'), name.lastIndexOf('.'), name.lastIndexOf('/'));
131
- const tail = lastSep > 0 ? name.slice(lastSep + 1) : name.slice(-Math.max(3, Math.min(16, Math.floor(max / 4))));
132
- const budget = Math.max(1, max - (1 + hash.length + 1 + tail.length));
133
- const prefix = name.slice(0, budget);
134
- return `${prefix}-${hash}-${tail}`.slice(0, max);
135
- }
136
- //# sourceMappingURL=naming.utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naming.utils.js","sourceRoot":"","sources":["../../../src/utils/naming.utils.ts"],"names":[],"mappings":"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","sourcesContent":["// file: libs/sdk/src/utils/naming.utils.ts\n// Shared naming and case conversion utilities for MCP-compliant identifiers\n\n/**\n * Supported naming conventions for MCP identifiers\n */\nexport type NameCase = 'snake' | 'kebab' | 'dot' | 'camel';\n\n// Allowed chars per MCP spec: a-zA-Z0-9 _ - . /\nconst MCP_ALLOWED = /[A-Za-z0-9_\\-./]/;\n\n/**\n * Split a string into words, handling camelCase, PascalCase, and delimiters.\n *\n * @example\n * splitWords(\"myFunctionName\") => [\"my\", \"Function\", \"Name\"]\n * splitWords(\"my_function_name\") => [\"my\", \"function\", \"name\"]\n */\nexport function splitWords(input: string): string[] {\n const parts: string[] = [];\n let buff = '';\n for (let i = 0; i < input.length; i++) {\n const ch = input[i];\n const isAlphaNum = /[A-Za-z0-9]/.test(ch);\n if (!isAlphaNum) {\n if (buff) {\n parts.push(buff);\n buff = '';\n }\n continue;\n }\n if (buff && /[a-z]/.test(buff[buff.length - 1]) && /[A-Z]/.test(ch)) {\n parts.push(buff);\n buff = ch;\n } else {\n buff += ch;\n }\n }\n if (buff) parts.push(buff);\n return parts;\n}\n\n/**\n * Convert words to a specific naming case.\n *\n * @example\n * toCase([\"my\", \"function\"], \"snake\") => \"my_function\"\n * toCase([\"my\", \"function\"], \"camel\") => \"myFunction\"\n */\nexport function toCase(words: string[], kind: NameCase): string {\n const safe = words.filter(Boolean);\n switch (kind) {\n case 'snake':\n return safe.map((w) => w.toLowerCase()).join('_');\n case 'kebab':\n return safe.map((w) => w.toLowerCase()).join('-');\n case 'dot':\n return safe.map((w) => w.toLowerCase()).join('.');\n case 'camel':\n if (safe.length === 0) return '';\n return (\n safe[0].toLowerCase() +\n safe\n .slice(1)\n .map((w) => w.charAt(0).toUpperCase() + w.slice(1).toLowerCase())\n .join('')\n );\n }\n}\n\n/**\n * Get the separator character for a naming case.\n */\nexport function sepFor(kind: NameCase): string {\n return kind === 'snake' ? '_' : kind === 'kebab' ? '-' : kind === 'dot' ? '.' : '';\n}\n\n/**\n * Normalize a single segment (name part) to MCP-safe characters.\n */\nexport function normalizeSegment(raw: string, kind: NameCase): string {\n const words = splitWords(raw);\n let cased = toCase(words, kind);\n cased = [...cased].filter((ch) => MCP_ALLOWED.test(ch)).join('');\n return cased || 'x';\n}\n\n/**\n * Normalize a provider ID to MCP-safe characters.\n */\nexport function normalizeProviderId(raw: string | undefined, kind: NameCase): string | undefined {\n if (!raw) return undefined;\n const tokens = raw.split(/\\W+/);\n const cased = toCase(tokens, kind);\n const safe = [...cased].filter((ch) => MCP_ALLOWED.test(ch)).join('');\n return safe || undefined;\n}\n\n/**\n * Normalize an owner path (app:id/plugin:id) to the specified naming case.\n */\nexport function normalizeOwnerPath(ownerKey: string, kind: NameCase): string {\n const levels = ownerKey.split('/');\n const normLevels = levels.map((level) => {\n const parts = level.split(':'); // [\"app\",\"Portal\"]\n return parts.map((p) => normalizeSegment(p, kind)).join(sepFor(kind));\n });\n if (kind === 'camel') return normLevels.map((seg) => seg.charAt(0).toLowerCase() + seg.slice(1)).join('');\n return normLevels.join(sepFor(kind));\n}\n\n/**\n * Generate a short hash (6 hex chars) from a string.\n * Uses djb2 algorithm for fast, reasonable distribution.\n */\nexport function shortHash(s: string): string {\n let h = 5381;\n for (let i = 0; i < s.length; i++) h = (h << 5) + h + s.charCodeAt(i);\n return (h >>> 0).toString(16).slice(-6).padStart(6, '0');\n}\n\n/**\n * Ensure a name fits within a maximum length, using hash truncation if needed.\n * Preserves meaningful suffix while adding a hash for uniqueness.\n */\nexport function ensureMaxLen(name: string, max: number): string {\n if (name.length <= max) return name;\n const hash = shortHash(name);\n const lastSep = Math.max(name.lastIndexOf('_'), name.lastIndexOf('-'), name.lastIndexOf('.'), name.lastIndexOf('/'));\n const tail = lastSep > 0 ? name.slice(lastSep + 1) : name.slice(-Math.max(3, Math.min(16, Math.floor(max / 4))));\n const budget = Math.max(1, max - (1 + hash.length + 1 + tail.length));\n const prefix = name.slice(0, budget);\n return `${prefix}-${hash}-${tail}`.slice(0, max);\n}\n"]}