@mastra/server 0.0.0-bundle-recursion-20251030002519 → 0.0.0-bundle-studio-cloud-20251222034739

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 (376) hide show
  1. package/CHANGELOG.md +1341 -3
  2. package/README.md +2 -2
  3. package/dist/chunk-3BXS37TQ.js +1105 -0
  4. package/dist/chunk-3BXS37TQ.js.map +1 -0
  5. package/dist/chunk-3OAAPDGI.js +27529 -0
  6. package/dist/chunk-3OAAPDGI.js.map +1 -0
  7. package/dist/chunk-3SFLFUKY.js +116 -0
  8. package/dist/chunk-3SFLFUKY.js.map +1 -0
  9. package/dist/{chunk-KIHM7IDM.cjs → chunk-3XI22UQR.cjs} +31 -17
  10. package/dist/chunk-3XI22UQR.cjs.map +1 -0
  11. package/dist/chunk-5W4RPVTK.cjs +49 -0
  12. package/dist/chunk-5W4RPVTK.cjs.map +1 -0
  13. package/dist/{chunk-7NADHFD2.cjs → chunk-64ITUOXI.cjs} +2 -2
  14. package/dist/chunk-64ITUOXI.cjs.map +1 -0
  15. package/dist/{chunk-MMROOK5J.js → chunk-6QWQZI4Q.js} +2 -2
  16. package/dist/{chunk-7NADHFD2.cjs.map → chunk-6QWQZI4Q.js.map} +1 -1
  17. package/dist/chunk-6V57U52D.js +196 -0
  18. package/dist/chunk-6V57U52D.js.map +1 -0
  19. package/dist/chunk-7KOS32XA.cjs +928 -0
  20. package/dist/chunk-7KOS32XA.cjs.map +1 -0
  21. package/dist/chunk-AZIH2QEC.js +83 -0
  22. package/dist/chunk-AZIH2QEC.js.map +1 -0
  23. package/dist/{chunk-LPM6BBAX.cjs → chunk-BMLUV4BH.cjs} +2 -53
  24. package/dist/chunk-BMLUV4BH.cjs.map +1 -0
  25. package/dist/chunk-BMYZ4DO6.cjs +269 -0
  26. package/dist/chunk-BMYZ4DO6.cjs.map +1 -0
  27. package/dist/chunk-BNGT3NIC.cjs +211 -0
  28. package/dist/chunk-BNGT3NIC.cjs.map +1 -0
  29. package/dist/chunk-C3UIIRAT.cjs +920 -0
  30. package/dist/chunk-C3UIIRAT.cjs.map +1 -0
  31. package/dist/chunk-DRUNNM4C.js +328 -0
  32. package/dist/chunk-DRUNNM4C.js.map +1 -0
  33. package/dist/{chunk-SHWNNZBL.js → chunk-DVSCJECS.js} +13 -17
  34. package/dist/chunk-DVSCJECS.js.map +1 -0
  35. package/dist/chunk-DW3WE4M4.js +250 -0
  36. package/dist/chunk-DW3WE4M4.js.map +1 -0
  37. package/dist/{chunk-RQK4FQUD.js → chunk-E646Y4FQ.js} +3 -45
  38. package/dist/chunk-E646Y4FQ.js.map +1 -0
  39. package/dist/chunk-EUBTCHQC.js +83 -0
  40. package/dist/chunk-EUBTCHQC.js.map +1 -0
  41. package/dist/chunk-FWSKVWS7.cjs +88 -0
  42. package/dist/chunk-FWSKVWS7.cjs.map +1 -0
  43. package/dist/chunk-FYY54HZC.js +310 -0
  44. package/dist/chunk-FYY54HZC.js.map +1 -0
  45. package/dist/chunk-GFF2I6UD.js +354 -0
  46. package/dist/chunk-GFF2I6UD.js.map +1 -0
  47. package/dist/{chunk-LZKJT7QP.cjs → chunk-GU4EWMZB.cjs} +34 -64
  48. package/dist/chunk-GU4EWMZB.cjs.map +1 -0
  49. package/dist/chunk-H2RMXG2Q.cjs +167 -0
  50. package/dist/chunk-H2RMXG2Q.cjs.map +1 -0
  51. package/dist/chunk-HAJOEDNB.js +274 -0
  52. package/dist/chunk-HAJOEDNB.js.map +1 -0
  53. package/dist/chunk-HT4LP3BO.js +75 -0
  54. package/dist/chunk-HT4LP3BO.js.map +1 -0
  55. package/dist/chunk-I6LR6CPC.cjs +125 -0
  56. package/dist/chunk-I6LR6CPC.cjs.map +1 -0
  57. package/dist/chunk-IEYXQTUW.cjs +284 -0
  58. package/dist/chunk-IEYXQTUW.cjs.map +1 -0
  59. package/dist/{chunk-X3G3KC47.cjs → chunk-JUYWLFVT.cjs} +239 -35
  60. package/dist/chunk-JUYWLFVT.cjs.map +1 -0
  61. package/dist/{chunk-2PLXW4ZX.cjs → chunk-K73YS7YB.cjs} +74 -74
  62. package/dist/{chunk-2PLXW4ZX.cjs.map → chunk-K73YS7YB.cjs.map} +1 -1
  63. package/dist/chunk-KPSSRYGH.js +234 -0
  64. package/dist/chunk-KPSSRYGH.js.map +1 -0
  65. package/dist/{chunk-GQRJOUV7.js → chunk-LF2ZLOFP.js} +34 -64
  66. package/dist/chunk-LF2ZLOFP.js.map +1 -0
  67. package/dist/{chunk-QU6N55W6.cjs → chunk-LKTCAPBD.cjs} +17 -21
  68. package/dist/chunk-LKTCAPBD.cjs.map +1 -0
  69. package/dist/chunk-LQSZ4FJJ.cjs +205 -0
  70. package/dist/chunk-LQSZ4FJJ.cjs.map +1 -0
  71. package/dist/chunk-LXXDQQSW.cjs +27571 -0
  72. package/dist/chunk-LXXDQQSW.cjs.map +1 -0
  73. package/dist/chunk-MCYD5LW7.cjs +90 -0
  74. package/dist/chunk-MCYD5LW7.cjs.map +1 -0
  75. package/dist/chunk-MQLS6Z7A.js +891 -0
  76. package/dist/chunk-MQLS6Z7A.js.map +1 -0
  77. package/dist/chunk-P3H4AZKI.cjs +252 -0
  78. package/dist/chunk-P3H4AZKI.cjs.map +1 -0
  79. package/dist/chunk-P6S2HIVE.cjs +1149 -0
  80. package/dist/chunk-P6S2HIVE.cjs.map +1 -0
  81. package/dist/chunk-PUFCKXFW.cjs +312 -0
  82. package/dist/chunk-PUFCKXFW.cjs.map +1 -0
  83. package/dist/chunk-Q7NPRJRV.cjs +88 -0
  84. package/dist/chunk-Q7NPRJRV.cjs.map +1 -0
  85. package/dist/chunk-S3TIWWQL.cjs +322 -0
  86. package/dist/chunk-S3TIWWQL.cjs.map +1 -0
  87. package/dist/{chunk-THWIEXQQ.js → chunk-S5XBFHJL.js} +233 -35
  88. package/dist/chunk-S5XBFHJL.js.map +1 -0
  89. package/dist/chunk-SRQY5IWD.js +204 -0
  90. package/dist/chunk-SRQY5IWD.js.map +1 -0
  91. package/dist/{chunk-ZULZ2752.js → chunk-SV4AUWGY.js} +3 -3
  92. package/dist/{chunk-ZULZ2752.js.map → chunk-SV4AUWGY.js.map} +1 -1
  93. package/dist/chunk-SXVANU23.js +164 -0
  94. package/dist/chunk-SXVANU23.js.map +1 -0
  95. package/dist/chunk-TYZ6ZISQ.cjs +368 -0
  96. package/dist/chunk-TYZ6ZISQ.cjs.map +1 -0
  97. package/dist/chunk-UWRAKVAJ.js +903 -0
  98. package/dist/chunk-UWRAKVAJ.js.map +1 -0
  99. package/dist/{chunk-CY4TP3FK.js → chunk-UXGQZUYZ.js} +3 -3
  100. package/dist/{chunk-CY4TP3FK.js.map → chunk-UXGQZUYZ.js.map} +1 -1
  101. package/dist/{chunk-RE4RPXT2.cjs → chunk-V5WWQN7P.cjs} +4 -4
  102. package/dist/{chunk-RE4RPXT2.cjs.map → chunk-V5WWQN7P.cjs.map} +1 -1
  103. package/dist/{chunk-AQCEVRZV.js → chunk-WBLT2HL3.js} +22 -8
  104. package/dist/chunk-WBLT2HL3.js.map +1 -0
  105. package/dist/chunk-X43DWDXB.cjs +346 -0
  106. package/dist/chunk-X43DWDXB.cjs.map +1 -0
  107. package/dist/chunk-XW2HXQDO.js +302 -0
  108. package/dist/chunk-XW2HXQDO.js.map +1 -0
  109. package/dist/chunk-XWGAT2DA.js +44 -0
  110. package/dist/chunk-XWGAT2DA.js.map +1 -0
  111. package/dist/dist-2J26LQO2.cjs +16 -0
  112. package/dist/{dist-P4MXBQ3U.cjs.map → dist-2J26LQO2.cjs.map} +1 -1
  113. package/dist/{dist-X7XR3M3Z.js → dist-4CMHRWC4.js} +3 -3
  114. package/dist/{dist-X7XR3M3Z.js.map → dist-4CMHRWC4.js.map} +1 -1
  115. package/dist/{dist-PQZUVLPC.js → dist-AEJONJSS.js} +3 -3
  116. package/dist/{dist-PQZUVLPC.js.map → dist-AEJONJSS.js.map} +1 -1
  117. package/dist/{dist-G2BYZJOC.cjs → dist-AF7EUPXA.cjs} +28 -28
  118. package/dist/{dist-G2BYZJOC.cjs.map → dist-AF7EUPXA.cjs.map} +1 -1
  119. package/dist/dist-MEN73GGI.js +3 -0
  120. package/dist/{dist-YREX2TJT.js.map → dist-MEN73GGI.js.map} +1 -1
  121. package/dist/{dist-FZYCV3VB.cjs → dist-NVXXJWBO.cjs} +26 -26
  122. package/dist/{dist-FZYCV3VB.cjs.map → dist-NVXXJWBO.cjs.map} +1 -1
  123. package/dist/{dist-RFMYFILX.cjs → dist-Q2ST4SUQ.cjs} +30 -30
  124. package/dist/{dist-RFMYFILX.cjs.map → dist-Q2ST4SUQ.cjs.map} +1 -1
  125. package/dist/{dist-XVBSOGFK.js → dist-TE7XRSWH.js} +3 -3
  126. package/dist/{dist-XVBSOGFK.js.map → dist-TE7XRSWH.js.map} +1 -1
  127. package/dist/{dist-R7WYX6LC.js → dist-VPYZNWNG.js} +3 -3
  128. package/dist/{dist-R7WYX6LC.js.map → dist-VPYZNWNG.js.map} +1 -1
  129. package/dist/{dist-4MVGNSRL.cjs → dist-Y5SYUVLY.cjs} +20 -20
  130. package/dist/{dist-4MVGNSRL.cjs.map → dist-Y5SYUVLY.cjs.map} +1 -1
  131. package/dist/server/auth/defaults.d.ts +3 -0
  132. package/dist/server/auth/defaults.d.ts.map +1 -0
  133. package/dist/server/auth/helpers.d.ts +14 -0
  134. package/dist/server/auth/helpers.d.ts.map +1 -0
  135. package/dist/server/auth/index.cjs +137 -0
  136. package/dist/server/auth/index.cjs.map +1 -0
  137. package/dist/server/auth/index.d.ts +3 -0
  138. package/dist/server/auth/index.d.ts.map +1 -0
  139. package/dist/server/auth/index.js +127 -0
  140. package/dist/server/auth/index.js.map +1 -0
  141. package/dist/server/handlers/a2a.cjs +15 -7
  142. package/dist/server/handlers/a2a.d.ts +492 -10
  143. package/dist/server/handlers/a2a.d.ts.map +1 -1
  144. package/dist/server/handlers/a2a.js +1 -1
  145. package/dist/server/handlers/agent-builder.cjs +37 -45
  146. package/dist/server/handlers/agent-builder.d.ts +631 -99
  147. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  148. package/dist/server/handlers/agent-builder.js +1 -1
  149. package/dist/server/handlers/agents.cjs +55 -39
  150. package/dist/server/handlers/agents.d.ts +3302 -151
  151. package/dist/server/handlers/agents.d.ts.map +1 -1
  152. package/dist/server/handlers/agents.js +1 -1
  153. package/dist/server/handlers/error.cjs +2 -2
  154. package/dist/server/handlers/error.js +1 -1
  155. package/dist/server/handlers/logs.cjs +7 -7
  156. package/dist/server/handlers/logs.d.ts +135 -27
  157. package/dist/server/handlers/logs.d.ts.map +1 -1
  158. package/dist/server/handlers/logs.js +1 -1
  159. package/dist/server/handlers/mcp.cjs +40 -0
  160. package/dist/server/handlers/mcp.cjs.map +1 -0
  161. package/dist/server/handlers/mcp.d.ts +110 -0
  162. package/dist/server/handlers/mcp.d.ts.map +1 -0
  163. package/dist/server/handlers/mcp.js +3 -0
  164. package/dist/server/handlers/mcp.js.map +1 -0
  165. package/dist/server/handlers/memory.cjs +63 -31
  166. package/dist/server/handlers/memory.d.ts +934 -103
  167. package/dist/server/handlers/memory.d.ts.map +1 -1
  168. package/dist/server/handlers/memory.js +1 -1
  169. package/dist/server/handlers/observability.cjs +24 -8
  170. package/dist/server/handlers/observability.d.ts +128 -21
  171. package/dist/server/handlers/observability.d.ts.map +1 -1
  172. package/dist/server/handlers/observability.js +1 -1
  173. package/dist/server/handlers/scores.cjs +13 -13
  174. package/dist/server/handlers/scores.d.ts +110 -141
  175. package/dist/server/handlers/scores.d.ts.map +1 -1
  176. package/dist/server/handlers/scores.js +1 -1
  177. package/dist/server/handlers/stored-agents.cjs +28 -0
  178. package/dist/server/handlers/stored-agents.cjs.map +1 -0
  179. package/dist/server/handlers/stored-agents.d.ts +289 -0
  180. package/dist/server/handlers/stored-agents.d.ts.map +1 -0
  181. package/dist/server/handlers/stored-agents.js +3 -0
  182. package/dist/server/handlers/stored-agents.js.map +1 -0
  183. package/dist/server/handlers/test-utils.cjs +15 -0
  184. package/dist/server/handlers/test-utils.cjs.map +1 -0
  185. package/dist/server/handlers/test-utils.d.ts +6 -0
  186. package/dist/server/handlers/test-utils.d.ts.map +1 -0
  187. package/dist/server/handlers/test-utils.js +13 -0
  188. package/dist/server/handlers/test-utils.js.map +1 -0
  189. package/dist/server/handlers/tools.cjs +11 -11
  190. package/dist/server/handlers/tools.d.ts +69 -23
  191. package/dist/server/handlers/tools.d.ts.map +1 -1
  192. package/dist/server/handlers/tools.js +1 -1
  193. package/dist/server/handlers/utils.cjs +11 -3
  194. package/dist/server/handlers/utils.d.ts +5 -0
  195. package/dist/server/handlers/utils.d.ts.map +1 -1
  196. package/dist/server/handlers/utils.js +1 -1
  197. package/dist/server/handlers/vector.cjs +31 -7
  198. package/dist/server/handlers/vector.d.ts +93 -9
  199. package/dist/server/handlers/vector.d.ts.map +1 -1
  200. package/dist/server/handlers/vector.js +1 -1
  201. package/dist/server/handlers/voice.cjs +21 -9
  202. package/dist/server/handlers/voice.d.ts +81 -40
  203. package/dist/server/handlers/voice.d.ts.map +1 -1
  204. package/dist/server/handlers/voice.js +1 -1
  205. package/dist/server/handlers/workflows.cjs +65 -41
  206. package/dist/server/handlers/workflows.d.ts +998 -87
  207. package/dist/server/handlers/workflows.d.ts.map +1 -1
  208. package/dist/server/handlers/workflows.js +1 -1
  209. package/dist/server/handlers.cjs +33 -33
  210. package/dist/server/handlers.d.ts +1 -1
  211. package/dist/server/handlers.d.ts.map +1 -1
  212. package/dist/server/handlers.js +12 -12
  213. package/dist/server/http-exception.d.ts +0 -5
  214. package/dist/server/http-exception.d.ts.map +1 -1
  215. package/dist/server/schemas/a2a.d.ts +786 -0
  216. package/dist/server/schemas/a2a.d.ts.map +1 -0
  217. package/dist/server/schemas/agent-builder.d.ts +213 -0
  218. package/dist/server/schemas/agent-builder.d.ts.map +1 -0
  219. package/dist/server/schemas/agents.d.ts +1401 -0
  220. package/dist/server/schemas/agents.d.ts.map +1 -0
  221. package/dist/server/schemas/common.d.ts +179 -0
  222. package/dist/server/schemas/common.d.ts.map +1 -0
  223. package/dist/server/schemas/logs.d.ts +124 -0
  224. package/dist/server/schemas/logs.d.ts.map +1 -0
  225. package/dist/server/schemas/mcp.d.ts +299 -0
  226. package/dist/server/schemas/mcp.d.ts.map +1 -0
  227. package/dist/server/schemas/memory.d.ts +998 -0
  228. package/dist/server/schemas/memory.d.ts.map +1 -0
  229. package/dist/server/schemas/observability.d.ts +402 -0
  230. package/dist/server/schemas/observability.d.ts.map +1 -0
  231. package/dist/server/schemas/scores.d.ts +259 -0
  232. package/dist/server/schemas/scores.d.ts.map +1 -0
  233. package/dist/server/schemas/stored-agents.d.ts +792 -0
  234. package/dist/server/schemas/stored-agents.d.ts.map +1 -0
  235. package/dist/server/schemas/vectors.d.ts +107 -0
  236. package/dist/server/schemas/vectors.d.ts.map +1 -0
  237. package/dist/server/schemas/workflows.d.ts +668 -0
  238. package/dist/server/schemas/workflows.d.ts.map +1 -0
  239. package/dist/server/server-adapter/index.cjs +485 -0
  240. package/dist/server/server-adapter/index.cjs.map +1 -0
  241. package/dist/server/server-adapter/index.d.ts +91 -0
  242. package/dist/server/server-adapter/index.d.ts.map +1 -0
  243. package/dist/server/server-adapter/index.js +470 -0
  244. package/dist/server/server-adapter/index.js.map +1 -0
  245. package/dist/server/server-adapter/openapi-utils.d.ts +59 -0
  246. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
  247. package/dist/server/server-adapter/redact.d.ts +26 -0
  248. package/dist/server/server-adapter/redact.d.ts.map +1 -0
  249. package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
  250. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
  251. package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
  252. package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
  253. package/dist/server/server-adapter/routes/agents.d.ts +3 -0
  254. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
  255. package/dist/server/server-adapter/routes/index.d.ts +50 -0
  256. package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
  257. package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
  258. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
  259. package/dist/server/server-adapter/routes/logs.d.ts +3 -0
  260. package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
  261. package/dist/server/server-adapter/routes/mcp.d.ts +9 -0
  262. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -0
  263. package/dist/server/server-adapter/routes/memory.d.ts +3 -0
  264. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
  265. package/dist/server/server-adapter/routes/observability.d.ts +3 -0
  266. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
  267. package/dist/server/server-adapter/routes/route-builder.d.ts +52 -0
  268. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
  269. package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
  270. package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
  271. package/dist/server/server-adapter/routes/stored-agents.d.ts +8 -0
  272. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -0
  273. package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
  274. package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
  275. package/dist/server/server-adapter/routes/tools.d.ts +3 -0
  276. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
  277. package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
  278. package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
  279. package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
  280. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
  281. package/dist/server/utils.d.ts +4 -3
  282. package/dist/server/utils.d.ts.map +1 -1
  283. package/dist/{token-375W3LEI.cjs → token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs} +11 -12
  284. package/dist/token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs.map +1 -0
  285. package/dist/{token-C3IMNCC4.js → token-6GSAFR2W-KVDFAJ2M-LNX5VF3I.js} +8 -9
  286. package/dist/token-6GSAFR2W-KVDFAJ2M-LNX5VF3I.js.map +1 -0
  287. package/dist/token-6GSAFR2W-KVDFAJ2M-SDYXODLX.cjs +63 -0
  288. package/dist/token-6GSAFR2W-KVDFAJ2M-SDYXODLX.cjs.map +1 -0
  289. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js +61 -0
  290. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js.map +1 -0
  291. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs +10 -0
  292. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs.map +1 -0
  293. package/dist/token-util-NEHG7TUY-DJYRKLRD-BSQMRUEW.js +8 -0
  294. package/dist/token-util-NEHG7TUY-DJYRKLRD-BSQMRUEW.js.map +1 -0
  295. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js +8 -0
  296. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js.map +1 -0
  297. package/dist/token-util-NEHG7TUY-DJYRKLRD-MFJRDVVF.cjs +10 -0
  298. package/dist/token-util-NEHG7TUY-DJYRKLRD-MFJRDVVF.cjs.map +1 -0
  299. package/package.json +36 -9
  300. package/dist/chunk-2P4VRXBT.js +0 -533
  301. package/dist/chunk-2P4VRXBT.js.map +0 -1
  302. package/dist/chunk-2S4IMB6E.cjs +0 -130
  303. package/dist/chunk-2S4IMB6E.cjs.map +0 -1
  304. package/dist/chunk-3PXWQX3J.js +0 -692
  305. package/dist/chunk-3PXWQX3J.js.map +0 -1
  306. package/dist/chunk-3SNGNFUJ.cjs +0 -128
  307. package/dist/chunk-3SNGNFUJ.cjs.map +0 -1
  308. package/dist/chunk-4AKQUEI2.js +0 -698
  309. package/dist/chunk-4AKQUEI2.js.map +0 -1
  310. package/dist/chunk-4APSL4XM.cjs +0 -713
  311. package/dist/chunk-4APSL4XM.cjs.map +0 -1
  312. package/dist/chunk-4QCXUEAT.js +0 -25
  313. package/dist/chunk-4QCXUEAT.js.map +0 -1
  314. package/dist/chunk-ABRFV4XP.js +0 -83
  315. package/dist/chunk-ABRFV4XP.js.map +0 -1
  316. package/dist/chunk-AQCEVRZV.js.map +0 -1
  317. package/dist/chunk-AW5BU3RQ.js +0 -192
  318. package/dist/chunk-AW5BU3RQ.js.map +0 -1
  319. package/dist/chunk-BATEJLED.js +0 -124
  320. package/dist/chunk-BATEJLED.js.map +0 -1
  321. package/dist/chunk-EP3JQDPD.cjs +0 -131
  322. package/dist/chunk-EP3JQDPD.cjs.map +0 -1
  323. package/dist/chunk-EVI5NLZG.js +0 -323
  324. package/dist/chunk-EVI5NLZG.js.map +0 -1
  325. package/dist/chunk-FTBY7JHX.js +0 -19460
  326. package/dist/chunk-FTBY7JHX.js.map +0 -1
  327. package/dist/chunk-G4PUALCE.cjs +0 -28
  328. package/dist/chunk-G4PUALCE.cjs.map +0 -1
  329. package/dist/chunk-GDUKGVFI.cjs +0 -550
  330. package/dist/chunk-GDUKGVFI.cjs.map +0 -1
  331. package/dist/chunk-GQRJOUV7.js.map +0 -1
  332. package/dist/chunk-HQYKLJHG.cjs +0 -19501
  333. package/dist/chunk-HQYKLJHG.cjs.map +0 -1
  334. package/dist/chunk-KIHM7IDM.cjs.map +0 -1
  335. package/dist/chunk-LPM6BBAX.cjs.map +0 -1
  336. package/dist/chunk-LZKJT7QP.cjs.map +0 -1
  337. package/dist/chunk-MMROOK5J.js.map +0 -1
  338. package/dist/chunk-MYR4PVGN.js +0 -123
  339. package/dist/chunk-MYR4PVGN.js.map +0 -1
  340. package/dist/chunk-QQXMIP6C.js +0 -122
  341. package/dist/chunk-QQXMIP6C.js.map +0 -1
  342. package/dist/chunk-QU6N55W6.cjs.map +0 -1
  343. package/dist/chunk-RC5UZM7H.js +0 -160
  344. package/dist/chunk-RC5UZM7H.js.map +0 -1
  345. package/dist/chunk-RQK4FQUD.js.map +0 -1
  346. package/dist/chunk-SHWNNZBL.js.map +0 -1
  347. package/dist/chunk-SPRRK3P7.cjs +0 -200
  348. package/dist/chunk-SPRRK3P7.cjs.map +0 -1
  349. package/dist/chunk-THWIEXQQ.js.map +0 -1
  350. package/dist/chunk-TOCYBDP2.js +0 -46
  351. package/dist/chunk-TOCYBDP2.js.map +0 -1
  352. package/dist/chunk-X3G3KC47.cjs.map +0 -1
  353. package/dist/chunk-X6C7BUWN.cjs +0 -48
  354. package/dist/chunk-X6C7BUWN.cjs.map +0 -1
  355. package/dist/chunk-XN74I6VW.cjs +0 -88
  356. package/dist/chunk-XN74I6VW.cjs.map +0 -1
  357. package/dist/chunk-XUOE3PBE.cjs +0 -720
  358. package/dist/chunk-XUOE3PBE.cjs.map +0 -1
  359. package/dist/chunk-YAYIYIMS.cjs +0 -335
  360. package/dist/chunk-YAYIYIMS.cjs.map +0 -1
  361. package/dist/chunk-YYXITBYY.cjs +0 -167
  362. package/dist/chunk-YYXITBYY.cjs.map +0 -1
  363. package/dist/dist-P4MXBQ3U.cjs +0 -16
  364. package/dist/dist-YREX2TJT.js +0 -3
  365. package/dist/server/handlers/legacyWorkflows.cjs +0 -48
  366. package/dist/server/handlers/legacyWorkflows.cjs.map +0 -1
  367. package/dist/server/handlers/legacyWorkflows.d.ts +0 -59
  368. package/dist/server/handlers/legacyWorkflows.d.ts.map +0 -1
  369. package/dist/server/handlers/legacyWorkflows.js +0 -3
  370. package/dist/server/handlers/legacyWorkflows.js.map +0 -1
  371. package/dist/token-375W3LEI.cjs.map +0 -1
  372. package/dist/token-C3IMNCC4.js.map +0 -1
  373. package/dist/token-util-CV3RRG6K.cjs +0 -9
  374. package/dist/token-util-CV3RRG6K.cjs.map +0 -1
  375. package/dist/token-util-E5QO2RCL.js +0 -7
  376. package/dist/token-util-E5QO2RCL.js.map +0 -1
@@ -0,0 +1,137 @@
1
+ 'use strict';
2
+
3
+ // src/server/auth/defaults.ts
4
+ var defaultAuthConfig = {
5
+ protected: ["/api/*"],
6
+ public: ["/api"],
7
+ // Simple rule system
8
+ rules: [
9
+ // Admin users can do anything
10
+ {
11
+ condition: (user) => {
12
+ if (typeof user === "object" && user !== null) {
13
+ if ("isAdmin" in user) {
14
+ return !!user.isAdmin;
15
+ }
16
+ if ("role" in user) {
17
+ return user.role === "admin";
18
+ }
19
+ }
20
+ return false;
21
+ },
22
+ allow: true
23
+ }
24
+ ]
25
+ };
26
+
27
+ // src/server/auth/helpers.ts
28
+ var isDevPlaygroundRequest = (path, method, getHeader, authConfig) => {
29
+ const protectedAccess = [...defaultAuthConfig.protected || [], ...authConfig.protected || []];
30
+ return process.env.MASTRA_DEV === "true" && (!isAnyMatch(path, method, protectedAccess) || getHeader("x-mastra-dev-playground") === "true");
31
+ };
32
+ var isCustomRoutePublic = (path, method, customRouteAuthConfig) => {
33
+ if (!customRouteAuthConfig) {
34
+ return false;
35
+ }
36
+ const routeKey = `${method}:${path}`;
37
+ if (customRouteAuthConfig.has(routeKey)) {
38
+ return !customRouteAuthConfig.get(routeKey);
39
+ }
40
+ const allRouteKey = `ALL:${path}`;
41
+ if (customRouteAuthConfig.has(allRouteKey)) {
42
+ return !customRouteAuthConfig.get(allRouteKey);
43
+ }
44
+ return false;
45
+ };
46
+ var isProtectedPath = (path, method, authConfig, customRouteAuthConfig) => {
47
+ const protectedAccess = [...defaultAuthConfig.protected || [], ...authConfig.protected || []];
48
+ return isAnyMatch(path, method, protectedAccess) || !isCustomRoutePublic(path, method, customRouteAuthConfig);
49
+ };
50
+ var canAccessPublicly = (path, method, authConfig) => {
51
+ const publicAccess = [...defaultAuthConfig.public || [], ...authConfig.public || []];
52
+ return isAnyMatch(path, method, publicAccess);
53
+ };
54
+ var isAnyMatch = (path, method, patterns) => {
55
+ if (!patterns) {
56
+ return false;
57
+ }
58
+ for (const patternPathOrMethod of patterns) {
59
+ if (patternPathOrMethod instanceof RegExp) {
60
+ if (patternPathOrMethod.test(path)) {
61
+ return true;
62
+ }
63
+ }
64
+ if (typeof patternPathOrMethod === "string" && pathMatchesPattern(path, patternPathOrMethod)) {
65
+ return true;
66
+ }
67
+ if (Array.isArray(patternPathOrMethod) && patternPathOrMethod.length === 2) {
68
+ const [pattern, methodOrMethods] = patternPathOrMethod;
69
+ if (pathMatchesPattern(path, pattern) && matchesOrIncludes(methodOrMethods, method)) {
70
+ return true;
71
+ }
72
+ }
73
+ }
74
+ return false;
75
+ };
76
+ var pathMatchesPattern = (path, pattern) => {
77
+ if (pattern.endsWith("*")) {
78
+ const prefix = pattern.slice(0, -1);
79
+ return path.startsWith(prefix);
80
+ }
81
+ return path === pattern;
82
+ };
83
+ var pathMatchesRule = (path, rulePath) => {
84
+ if (!rulePath) return true;
85
+ if (typeof rulePath === "string") {
86
+ return pathMatchesPattern(path, rulePath);
87
+ }
88
+ if (rulePath instanceof RegExp) {
89
+ return rulePath.test(path);
90
+ }
91
+ if (Array.isArray(rulePath)) {
92
+ return rulePath.some((p) => pathMatchesPattern(path, p));
93
+ }
94
+ return false;
95
+ };
96
+ var matchesOrIncludes = (values, value) => {
97
+ if (typeof values === "string") {
98
+ return values === value;
99
+ }
100
+ if (Array.isArray(values)) {
101
+ return values.includes(value);
102
+ }
103
+ return false;
104
+ };
105
+ var checkRules = async (rules, path, method, user) => {
106
+ for (const i in rules || []) {
107
+ const rule = rules?.[i];
108
+ if (!pathMatchesRule(path, rule.path)) {
109
+ continue;
110
+ }
111
+ if (rule.methods && !matchesOrIncludes(rule.methods, method)) {
112
+ continue;
113
+ }
114
+ const condition = rule.condition;
115
+ if (typeof condition === "function") {
116
+ const allowed = await Promise.resolve().then(() => condition(user)).catch(() => false);
117
+ if (allowed) {
118
+ return true;
119
+ }
120
+ } else if (rule.allow) {
121
+ return true;
122
+ }
123
+ }
124
+ return false;
125
+ };
126
+
127
+ exports.canAccessPublicly = canAccessPublicly;
128
+ exports.checkRules = checkRules;
129
+ exports.defaultAuthConfig = defaultAuthConfig;
130
+ exports.isCustomRoutePublic = isCustomRoutePublic;
131
+ exports.isDevPlaygroundRequest = isDevPlaygroundRequest;
132
+ exports.isProtectedPath = isProtectedPath;
133
+ exports.matchesOrIncludes = matchesOrIncludes;
134
+ exports.pathMatchesPattern = pathMatchesPattern;
135
+ exports.pathMatchesRule = pathMatchesRule;
136
+ //# sourceMappingURL=index.cjs.map
137
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/server/auth/defaults.ts","../../../src/server/auth/helpers.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["import type { MastraAuthConfig } from '@mastra/core/server';\n\n// Default configuration that can be extended by clients\nexport const defaultAuthConfig: MastraAuthConfig = {\n protected: ['/api/*'],\n public: ['/api'],\n // Simple rule system\n rules: [\n // Admin users can do anything\n {\n condition: user => {\n if (typeof user === 'object' && user !== null) {\n if ('isAdmin' in user) {\n return !!user.isAdmin;\n }\n\n if ('role' in user) {\n return user.role === 'admin';\n }\n }\n return false;\n },\n allow: true,\n },\n ],\n};\n","import type { MastraAuthConfig } from '@mastra/core/server';\n\nimport { defaultAuthConfig } from './defaults';\n\n/**\n * Check if request is from dev playground\n * @param getHeader - Function to get header value from request\n */\nexport const isDevPlaygroundRequest = (\n path: string,\n method: string,\n getHeader: (name: string) => string | undefined,\n authConfig: MastraAuthConfig,\n): boolean => {\n const protectedAccess = [...(defaultAuthConfig.protected || []), ...(authConfig.protected || [])];\n return (\n process.env.MASTRA_DEV === 'true' &&\n (!isAnyMatch(path, method, protectedAccess) || getHeader('x-mastra-dev-playground') === 'true')\n );\n};\n\nexport const isCustomRoutePublic = (\n path: string,\n method: string,\n customRouteAuthConfig?: Map<string, boolean>,\n): boolean => {\n if (!customRouteAuthConfig) {\n return false;\n }\n\n // Check exact match first\n const routeKey = `${method}:${path}`;\n if (customRouteAuthConfig.has(routeKey)) {\n return !customRouteAuthConfig.get(routeKey); // True when route opts out of auth\n }\n\n // Check ALL method\n const allRouteKey = `ALL:${path}`;\n if (customRouteAuthConfig.has(allRouteKey)) {\n return !customRouteAuthConfig.get(allRouteKey);\n }\n\n return false;\n};\n\nexport const isProtectedPath = (\n path: string,\n method: string,\n authConfig: MastraAuthConfig,\n customRouteAuthConfig?: Map<string, boolean>,\n): boolean => {\n const protectedAccess = [...(defaultAuthConfig.protected || []), ...(authConfig.protected || [])];\n return isAnyMatch(path, method, protectedAccess) || !isCustomRoutePublic(path, method, customRouteAuthConfig);\n};\n\nexport const canAccessPublicly = (path: string, method: string, authConfig: MastraAuthConfig): boolean => {\n // Check if this path+method combination is publicly accessible\n const publicAccess = [...(defaultAuthConfig.public || []), ...(authConfig.public || [])];\n\n return isAnyMatch(path, method, publicAccess);\n};\n\nconst isAnyMatch = (\n path: string,\n method: string,\n patterns: MastraAuthConfig['protected'] | MastraAuthConfig['public'],\n): boolean => {\n if (!patterns) {\n return false;\n }\n\n for (const patternPathOrMethod of patterns) {\n if (patternPathOrMethod instanceof RegExp) {\n if (patternPathOrMethod.test(path)) {\n return true;\n }\n }\n\n if (typeof patternPathOrMethod === 'string' && pathMatchesPattern(path, patternPathOrMethod)) {\n return true;\n }\n\n if (Array.isArray(patternPathOrMethod) && patternPathOrMethod.length === 2) {\n const [pattern, methodOrMethods] = patternPathOrMethod;\n if (pathMatchesPattern(path, pattern) && matchesOrIncludes(methodOrMethods, method)) {\n return true;\n }\n }\n }\n\n return false;\n};\n\nexport const pathMatchesPattern = (path: string, pattern: string): boolean => {\n // Simple pattern matching that supports wildcards\n // e.g., '/api/agents/*' matches '/api/agents/123'\n if (pattern.endsWith('*')) {\n const prefix = pattern.slice(0, -1);\n return path.startsWith(prefix);\n }\n return path === pattern;\n};\n\nexport const pathMatchesRule = (path: string, rulePath: string | RegExp | string[] | undefined): boolean => {\n if (!rulePath) return true; // No path specified means all paths\n\n if (typeof rulePath === 'string') {\n return pathMatchesPattern(path, rulePath);\n }\n\n if (rulePath instanceof RegExp) {\n return rulePath.test(path);\n }\n\n if (Array.isArray(rulePath)) {\n return rulePath.some(p => pathMatchesPattern(path, p));\n }\n\n return false;\n};\n\nexport const matchesOrIncludes = (values: string | string[], value: string): boolean => {\n if (typeof values === 'string') {\n return values === value;\n }\n\n if (Array.isArray(values)) {\n return values.includes(value);\n }\n\n return false;\n};\n\n// Check authorization rules\nexport const checkRules = async (\n rules: MastraAuthConfig['rules'],\n path: string,\n method: string,\n user: unknown,\n): Promise<boolean> => {\n // Go through rules in order (first match wins)\n for (const i in rules || []) {\n const rule = rules?.[i]!;\n // Check if rule applies to this path\n if (!pathMatchesRule(path, rule.path)) {\n continue;\n }\n\n // Check if rule applies to this method\n if (rule.methods && !matchesOrIncludes(rule.methods, method)) {\n continue;\n }\n\n // Rule matches, check conditions\n const condition = rule.condition;\n if (typeof condition === 'function') {\n const allowed = await Promise.resolve()\n .then(() => condition(user))\n .catch(() => false);\n\n if (allowed) {\n return true;\n }\n } else if (rule.allow) {\n return true;\n }\n }\n\n // No matching rules, deny by default\n return false;\n};\n"]}
@@ -0,0 +1,3 @@
1
+ export * from './helpers.js';
2
+ export * from './defaults.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,127 @@
1
+ // src/server/auth/defaults.ts
2
+ var defaultAuthConfig = {
3
+ protected: ["/api/*"],
4
+ public: ["/api"],
5
+ // Simple rule system
6
+ rules: [
7
+ // Admin users can do anything
8
+ {
9
+ condition: (user) => {
10
+ if (typeof user === "object" && user !== null) {
11
+ if ("isAdmin" in user) {
12
+ return !!user.isAdmin;
13
+ }
14
+ if ("role" in user) {
15
+ return user.role === "admin";
16
+ }
17
+ }
18
+ return false;
19
+ },
20
+ allow: true
21
+ }
22
+ ]
23
+ };
24
+
25
+ // src/server/auth/helpers.ts
26
+ var isDevPlaygroundRequest = (path, method, getHeader, authConfig) => {
27
+ const protectedAccess = [...defaultAuthConfig.protected || [], ...authConfig.protected || []];
28
+ return process.env.MASTRA_DEV === "true" && (!isAnyMatch(path, method, protectedAccess) || getHeader("x-mastra-dev-playground") === "true");
29
+ };
30
+ var isCustomRoutePublic = (path, method, customRouteAuthConfig) => {
31
+ if (!customRouteAuthConfig) {
32
+ return false;
33
+ }
34
+ const routeKey = `${method}:${path}`;
35
+ if (customRouteAuthConfig.has(routeKey)) {
36
+ return !customRouteAuthConfig.get(routeKey);
37
+ }
38
+ const allRouteKey = `ALL:${path}`;
39
+ if (customRouteAuthConfig.has(allRouteKey)) {
40
+ return !customRouteAuthConfig.get(allRouteKey);
41
+ }
42
+ return false;
43
+ };
44
+ var isProtectedPath = (path, method, authConfig, customRouteAuthConfig) => {
45
+ const protectedAccess = [...defaultAuthConfig.protected || [], ...authConfig.protected || []];
46
+ return isAnyMatch(path, method, protectedAccess) || !isCustomRoutePublic(path, method, customRouteAuthConfig);
47
+ };
48
+ var canAccessPublicly = (path, method, authConfig) => {
49
+ const publicAccess = [...defaultAuthConfig.public || [], ...authConfig.public || []];
50
+ return isAnyMatch(path, method, publicAccess);
51
+ };
52
+ var isAnyMatch = (path, method, patterns) => {
53
+ if (!patterns) {
54
+ return false;
55
+ }
56
+ for (const patternPathOrMethod of patterns) {
57
+ if (patternPathOrMethod instanceof RegExp) {
58
+ if (patternPathOrMethod.test(path)) {
59
+ return true;
60
+ }
61
+ }
62
+ if (typeof patternPathOrMethod === "string" && pathMatchesPattern(path, patternPathOrMethod)) {
63
+ return true;
64
+ }
65
+ if (Array.isArray(patternPathOrMethod) && patternPathOrMethod.length === 2) {
66
+ const [pattern, methodOrMethods] = patternPathOrMethod;
67
+ if (pathMatchesPattern(path, pattern) && matchesOrIncludes(methodOrMethods, method)) {
68
+ return true;
69
+ }
70
+ }
71
+ }
72
+ return false;
73
+ };
74
+ var pathMatchesPattern = (path, pattern) => {
75
+ if (pattern.endsWith("*")) {
76
+ const prefix = pattern.slice(0, -1);
77
+ return path.startsWith(prefix);
78
+ }
79
+ return path === pattern;
80
+ };
81
+ var pathMatchesRule = (path, rulePath) => {
82
+ if (!rulePath) return true;
83
+ if (typeof rulePath === "string") {
84
+ return pathMatchesPattern(path, rulePath);
85
+ }
86
+ if (rulePath instanceof RegExp) {
87
+ return rulePath.test(path);
88
+ }
89
+ if (Array.isArray(rulePath)) {
90
+ return rulePath.some((p) => pathMatchesPattern(path, p));
91
+ }
92
+ return false;
93
+ };
94
+ var matchesOrIncludes = (values, value) => {
95
+ if (typeof values === "string") {
96
+ return values === value;
97
+ }
98
+ if (Array.isArray(values)) {
99
+ return values.includes(value);
100
+ }
101
+ return false;
102
+ };
103
+ var checkRules = async (rules, path, method, user) => {
104
+ for (const i in rules || []) {
105
+ const rule = rules?.[i];
106
+ if (!pathMatchesRule(path, rule.path)) {
107
+ continue;
108
+ }
109
+ if (rule.methods && !matchesOrIncludes(rule.methods, method)) {
110
+ continue;
111
+ }
112
+ const condition = rule.condition;
113
+ if (typeof condition === "function") {
114
+ const allowed = await Promise.resolve().then(() => condition(user)).catch(() => false);
115
+ if (allowed) {
116
+ return true;
117
+ }
118
+ } else if (rule.allow) {
119
+ return true;
120
+ }
121
+ }
122
+ return false;
123
+ };
124
+
125
+ export { canAccessPublicly, checkRules, defaultAuthConfig, isCustomRoutePublic, isDevPlaygroundRequest, isProtectedPath, matchesOrIncludes, pathMatchesPattern, pathMatchesRule };
126
+ //# sourceMappingURL=index.js.map
127
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/server/auth/defaults.ts","../../../src/server/auth/helpers.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { MastraAuthConfig } from '@mastra/core/server';\n\n// Default configuration that can be extended by clients\nexport const defaultAuthConfig: MastraAuthConfig = {\n protected: ['/api/*'],\n public: ['/api'],\n // Simple rule system\n rules: [\n // Admin users can do anything\n {\n condition: user => {\n if (typeof user === 'object' && user !== null) {\n if ('isAdmin' in user) {\n return !!user.isAdmin;\n }\n\n if ('role' in user) {\n return user.role === 'admin';\n }\n }\n return false;\n },\n allow: true,\n },\n ],\n};\n","import type { MastraAuthConfig } from '@mastra/core/server';\n\nimport { defaultAuthConfig } from './defaults';\n\n/**\n * Check if request is from dev playground\n * @param getHeader - Function to get header value from request\n */\nexport const isDevPlaygroundRequest = (\n path: string,\n method: string,\n getHeader: (name: string) => string | undefined,\n authConfig: MastraAuthConfig,\n): boolean => {\n const protectedAccess = [...(defaultAuthConfig.protected || []), ...(authConfig.protected || [])];\n return (\n process.env.MASTRA_DEV === 'true' &&\n (!isAnyMatch(path, method, protectedAccess) || getHeader('x-mastra-dev-playground') === 'true')\n );\n};\n\nexport const isCustomRoutePublic = (\n path: string,\n method: string,\n customRouteAuthConfig?: Map<string, boolean>,\n): boolean => {\n if (!customRouteAuthConfig) {\n return false;\n }\n\n // Check exact match first\n const routeKey = `${method}:${path}`;\n if (customRouteAuthConfig.has(routeKey)) {\n return !customRouteAuthConfig.get(routeKey); // True when route opts out of auth\n }\n\n // Check ALL method\n const allRouteKey = `ALL:${path}`;\n if (customRouteAuthConfig.has(allRouteKey)) {\n return !customRouteAuthConfig.get(allRouteKey);\n }\n\n return false;\n};\n\nexport const isProtectedPath = (\n path: string,\n method: string,\n authConfig: MastraAuthConfig,\n customRouteAuthConfig?: Map<string, boolean>,\n): boolean => {\n const protectedAccess = [...(defaultAuthConfig.protected || []), ...(authConfig.protected || [])];\n return isAnyMatch(path, method, protectedAccess) || !isCustomRoutePublic(path, method, customRouteAuthConfig);\n};\n\nexport const canAccessPublicly = (path: string, method: string, authConfig: MastraAuthConfig): boolean => {\n // Check if this path+method combination is publicly accessible\n const publicAccess = [...(defaultAuthConfig.public || []), ...(authConfig.public || [])];\n\n return isAnyMatch(path, method, publicAccess);\n};\n\nconst isAnyMatch = (\n path: string,\n method: string,\n patterns: MastraAuthConfig['protected'] | MastraAuthConfig['public'],\n): boolean => {\n if (!patterns) {\n return false;\n }\n\n for (const patternPathOrMethod of patterns) {\n if (patternPathOrMethod instanceof RegExp) {\n if (patternPathOrMethod.test(path)) {\n return true;\n }\n }\n\n if (typeof patternPathOrMethod === 'string' && pathMatchesPattern(path, patternPathOrMethod)) {\n return true;\n }\n\n if (Array.isArray(patternPathOrMethod) && patternPathOrMethod.length === 2) {\n const [pattern, methodOrMethods] = patternPathOrMethod;\n if (pathMatchesPattern(path, pattern) && matchesOrIncludes(methodOrMethods, method)) {\n return true;\n }\n }\n }\n\n return false;\n};\n\nexport const pathMatchesPattern = (path: string, pattern: string): boolean => {\n // Simple pattern matching that supports wildcards\n // e.g., '/api/agents/*' matches '/api/agents/123'\n if (pattern.endsWith('*')) {\n const prefix = pattern.slice(0, -1);\n return path.startsWith(prefix);\n }\n return path === pattern;\n};\n\nexport const pathMatchesRule = (path: string, rulePath: string | RegExp | string[] | undefined): boolean => {\n if (!rulePath) return true; // No path specified means all paths\n\n if (typeof rulePath === 'string') {\n return pathMatchesPattern(path, rulePath);\n }\n\n if (rulePath instanceof RegExp) {\n return rulePath.test(path);\n }\n\n if (Array.isArray(rulePath)) {\n return rulePath.some(p => pathMatchesPattern(path, p));\n }\n\n return false;\n};\n\nexport const matchesOrIncludes = (values: string | string[], value: string): boolean => {\n if (typeof values === 'string') {\n return values === value;\n }\n\n if (Array.isArray(values)) {\n return values.includes(value);\n }\n\n return false;\n};\n\n// Check authorization rules\nexport const checkRules = async (\n rules: MastraAuthConfig['rules'],\n path: string,\n method: string,\n user: unknown,\n): Promise<boolean> => {\n // Go through rules in order (first match wins)\n for (const i in rules || []) {\n const rule = rules?.[i]!;\n // Check if rule applies to this path\n if (!pathMatchesRule(path, rule.path)) {\n continue;\n }\n\n // Check if rule applies to this method\n if (rule.methods && !matchesOrIncludes(rule.methods, method)) {\n continue;\n }\n\n // Rule matches, check conditions\n const condition = rule.condition;\n if (typeof condition === 'function') {\n const allowed = await Promise.resolve()\n .then(() => condition(user))\n .catch(() => false);\n\n if (allowed) {\n return true;\n }\n } else if (rule.allow) {\n return true;\n }\n }\n\n // No matching rules, deny by default\n return false;\n};\n"]}
@@ -1,32 +1,40 @@
1
1
  'use strict';
2
2
 
3
- var chunkX3G3KC47_cjs = require('../../chunk-X3G3KC47.cjs');
3
+ var chunkJUYWLFVT_cjs = require('../../chunk-JUYWLFVT.cjs');
4
4
 
5
5
 
6
6
 
7
+ Object.defineProperty(exports, "AGENT_EXECUTION_ROUTE", {
8
+ enumerable: true,
9
+ get: function () { return chunkJUYWLFVT_cjs.AGENT_EXECUTION_ROUTE; }
10
+ });
11
+ Object.defineProperty(exports, "GET_AGENT_CARD_ROUTE", {
12
+ enumerable: true,
13
+ get: function () { return chunkJUYWLFVT_cjs.GET_AGENT_CARD_ROUTE; }
14
+ });
7
15
  Object.defineProperty(exports, "getAgentCardByIdHandler", {
8
16
  enumerable: true,
9
- get: function () { return chunkX3G3KC47_cjs.getAgentCardByIdHandler; }
17
+ get: function () { return chunkJUYWLFVT_cjs.getAgentCardByIdHandler; }
10
18
  });
11
19
  Object.defineProperty(exports, "getAgentExecutionHandler", {
12
20
  enumerable: true,
13
- get: function () { return chunkX3G3KC47_cjs.getAgentExecutionHandler; }
21
+ get: function () { return chunkJUYWLFVT_cjs.getAgentExecutionHandler; }
14
22
  });
15
23
  Object.defineProperty(exports, "handleMessageSend", {
16
24
  enumerable: true,
17
- get: function () { return chunkX3G3KC47_cjs.handleMessageSend; }
25
+ get: function () { return chunkJUYWLFVT_cjs.handleMessageSend; }
18
26
  });
19
27
  Object.defineProperty(exports, "handleMessageStream", {
20
28
  enumerable: true,
21
- get: function () { return chunkX3G3KC47_cjs.handleMessageStream; }
29
+ get: function () { return chunkJUYWLFVT_cjs.handleMessageStream; }
22
30
  });
23
31
  Object.defineProperty(exports, "handleTaskCancel", {
24
32
  enumerable: true,
25
- get: function () { return chunkX3G3KC47_cjs.handleTaskCancel; }
33
+ get: function () { return chunkJUYWLFVT_cjs.handleTaskCancel; }
26
34
  });
27
35
  Object.defineProperty(exports, "handleTaskGet", {
28
36
  enumerable: true,
29
- get: function () { return chunkX3G3KC47_cjs.handleTaskGet; }
37
+ get: function () { return chunkJUYWLFVT_cjs.handleTaskGet; }
30
38
  });
31
39
  //# sourceMappingURL=a2a.cjs.map
32
40
  //# sourceMappingURL=a2a.cjs.map